nextjournal 2021-11-03

🀫 Clerk is now open source and we have a big new release out, please check it out: πŸ™ GitHub Repo https://github.com/nextjournal/clerk 🌟 Static Build https://storage.googleapis.com/nextjournal-snapshots/clerk/build/f46b5763cb41f78d86d62718cb20a01c1079d5c7/index.html πŸ“¦ Clojars: https://clojars.org/io.github.nextjournal/clerk πŸ§ͺ Demo Repo: https://github.com/nextjournal/clerk-demo πŸ™ To everybody here who helped test it! If we haven’t missed anything bad we’ll announce it in more public channels in a bit.

5
πŸŽ‰ 7

be sure to check out the static builds!

@mkvlr Thanks for the new release , awsome !

the large file support for tech dataset works very nice now.

πŸ‘ 1

As I played again with dataset objects, found one simple case, where thinks get out of sync:

max-size is 2 , but the rendering of datasets shows 10 values (the previous value of max-size)

and indeed, changing max-size does not change the dataset rendering.

Code to reproduce is this:

(ns tablecloth
  (:require [tablecloth.api :as tc]
            [nextjournal.clerk :as clerk]))

(def max-size 2)

(take max-size
      (repeat 1000 "a"))
 
(->
 (tc/dataset {:a (repeat 1000 "a")})
 (tc/head max-size))

thanks, I’ll look into this. Great to hear that large datasets work well for you know!

I works well, when I wrap te last expression in a def In that case, I cannot reproduce the issue:

(ns bug
  (:require [tablecloth.api :as tc]
            [nextjournal.clerk :as clerk]
            [nextjournal.clerk.hashing :as h]))



(def max-size 2)

(take max-size
      (repeat 1000 "a"))

(def y
  (->
   (tc/dataset {:a (repeat 1000 "a")})
   (tc/head max-size)))

It is unrelated to tech.dataset. It has something to do with the last expression not being a def

something like this

(def max-size 2)


(println
 {:x max-size
  :y {:z (range max-size)}})
  

behvaes as well "unexpected". The

println

is not re-executed when max-size gets changed.

sounds like an issue in the hashing used for the caching, should be easy to fix with this tiny repro

wrapping the println in a def solves it as well

can reproduce it and working on a fix

https://clojars.org/io.github.nextjournal/clerk/versions/0.2.214 is out and fixes this issue, thanks for the report!

πŸ™Œ 1