clojure-dev 2024-03-11

These seem to be new reflection warnings in tools.reader:

Reflection warning, clojure/tools/reader.clj:1025:74 - call to method setLength can't be resolved (target class is unknown).
Reflection warning, clojure/tools/reader.clj:1030:74 - call to method setLength can't be resolved (target class is unknown).
I haven't checked whether they are due to changes in tools.reader or Clojure 1.12 Alpha 9.

applied the fix (TRDR-72). really thought we had warn-on-reflection enabled already

released 1.4.1 with the fix

Alex Miller (Clojure team) 2024-03-11T17:57:21.502219Z

so these are new as of ... 1.12.0?

Unclear at the moment. We did some dependency updates this morning (but not of Clojure which was already on alpha 9) so I haven't tracked down exactly what causes these new warnings...

(I posted mostly as an FYI in case anyone had an immediate response that might save me some work)

Alex Miller (Clojure team) 2024-03-11T17:59:40.154569Z

new to me, but we can look into it

Alex Miller (Clojure team) 2024-03-11T18:02:07.443449Z

can easily repro in the lib, doesn't seem related to 1.12, will look

Alex Miller (Clojure team) 2024-03-11T18:04:57.045619Z

looks like it was in "TRDR-71: source-logging-push-back-reader throws" change from Nov

Ah, interesting. I wonder why we've only just started seeing it?

> clojure -Stree  -M:build:cfml-affiliate:dev:+default:test | fgrep tools.reader
      X org.clojure/tools.reader 1.3.6 :older-version
    X org.clojure/tools.reader 1.3.6 :parent-omitted
    . org.clojure/tools.reader 1.3.6
    X org.clojure/tools.reader 1.3.4 :older-version
      X org.clojure/tools.reader 1.3.6 :older-version
    . org.clojure/tools.reader 1.4.0
We don't depend on it directly so it could be due to our round of minor updates this morning bringing in 1.4.0?

(we exclude known reflection warnings from all our deps but this was an "unknown") 🙂

Ah, it's due to moving from tools.build 0.9.6 to 0.10.0 which brings in an updated tools.namespace which in turn brings in the updated tools.reader.

hmm, interesting, this should break lots of my graalvm native-image projects :)

haven't run into it yet though