Fork me on GitHub
#tools-deps
<
2022-04-19
>
favila22:04:26

FYI, I’m still seeing the “HashMap$Node cannot be cast to HashMap$TreeNode” issue with latest Clojure CLI tools. https://ask.clojure.org/index.php/10703/error-building-classpath?show=11784#c11784

Alex Miller (Clojure team)00:04:52

Yeah, I had another report about it. Haven't had a chance to look at it. Doesn't make any sense to me as everything should be thread local, but obviously something unexpected Is happening

emccue12:04:59

my current hypothesis is that the DefaultModelValidator is truly a global singleton in some fashion.

favila12:04:38

DefaultRepositorySystem is what makes them if you want to chase that down. Or I guess just run a tools deps system, then inspect all the DefaultModelValidator instances

Alex Miller (Clojure team)13:04:50

I assume it's something like that, because Maven is awful

Alex Miller (Clojure team)13:04:59

it is a giant tower of mutable maps, disguised in Java classes, glued together with 3 kinds of dependency injection. there's no reason for any of it to be mutable. why would a validator be mutable - that is a function. bleh.

emccue13:04:43

https://get-coursier.io/ if scala's bytecode compatibility wasn't as odious as it is I would almost say this would be an option

Alex Miller (Clojure team)13:04:28

I have to talk myself down from rewriting the whole thing every time I work on it

favila13:04:25

The mutability in the validator is for memoization (perf) afaikt

Alex Miller (Clojure team)13:04:02

I know, but you know what I mean

Alex Miller (Clojure team)17:04:22

@U09R86PA4 just released prerelease 1.11.1.1113 - please test

thanks3 1