Fork me on GitHub
#cljs-dev
<
2021-11-23
>
danielcompton01:11:08

I just upgraded to 1.10.891, one breaking change (of broken behaviour) was CLJS-3324. We had a function like

(defn f1 [a b & {:keys [c]}] [a b c])
Previously (f1 1 2 []) would return [1 2 nil] but now it throws with “No value supplied for key: []” Not saying the change shouldn’t have been made, but it’s likely there will be existing code that relies on the old (broken) behaviour.

dnolen03:11:26

Yes it has been reported already - but probably nothing much to do - it's a runtime fix for maps

dnolen03:11:48

It is noted in the changes list - was missing at first

danielcompton19:11:23

Yeah I saw the change but didn't think of all the implications

borkdude20:11:07

@dnolen @danielcompton actually in clojure 1.11 this is valid behavior.

$ clj
Clojure 1.11.0-alpha2
user=> (defn f1 [a b & {:keys [c]}] [a b c])
#'user/f1
user=> (f1 1 2 [])
[1 2 nil]

borkdude20:11:58

but CLJS is behind on the new kwarg support in 1.11 (probably because it's still alpha)