Fork me on GitHub

I'd prefer to just have the regular clojurescript jar contain no AOT code at all


and then an opt-in AOT variant with or without shading


the trouble with AOT being the default is that I can't reliably depend on the slim jar in shadow-cljs. since it is a different artifact many people will end up just including the regular clojurescript jar as well leading to having both on the classpath and nothing gained


the problem with shading in the mranderson style is duplicating all the deps and tool ending up loading most of them twice. eg. shadow-cljs will end up loading tools.reader and tools.json twice. I'm sure krell and pretty much all other tools will as well


at which point the benefit of AOT will be gone in the first place


I do ship a opt-in AOT variant under thheller/shadow-cljs$aot as well and that seems like the safer way to do this. people can still have full control over the other deps and no shading needed by just not using AOT