off-topic

https://github.com/clojurians/community-development/blob/master/Code-of-Conduct.md Clojurians Slack Community Code of Conduct. Searchable message archives are at https://clojurians-log.clojureverse.org/
vemv 2021-06-25T09:41:24.008100Z

is there some lib or tool in the JVM ecosystem that tries enumerating which methods in the JDK stdlib are side-effectul / side-effect-free?

borkdude 2021-06-25T09:49:53.009200Z

@vemv GraalVM tries to analyze this to decide if static initalizers can be initialized at build time, perhaps look inside their codebase if they have some list. Not sure if they do it on the bytecode level or on a higher level.

👀 1
souenzzo 2021-06-25T10:19:10.009400Z

V8 engine has it in some way When you write a function in the console, if it is side effect free, it show you the result as a preview. Anyway. I have interest too. Please share is you find something

borkdude 2021-06-25T19:32:44.011600Z

Does anyone happen to know where aether determines the default m2 directory where to look for stuff? I have a native compilation of tools deps alpha, but somehow this location is captured at compile time

borkdude 2021-06-25T19:33:05.012Z

which results in weird errors like:

Caused by: java.io.FileNotFoundException: /home/circleci/.m2/repository/babashka/fs/0.0.1/fs-0.0.1.pom.part.lock (No such file or directory)
on a system that's not CI ;)

alexmiller 2021-06-25T19:39:04.012400Z

clojure.tools.deps.alpha.util.maven/default-local-repo
would be my guess

borkdude 2021-06-25T19:39:54.012700Z

ah, thanks!

alexmiller 2021-06-25T19:40:13.013200Z

I could probably delay that computation

borkdude 2021-06-25T19:40:28.013500Z

that would be helpful :) I'll try in a fork

borkdude 2021-06-25T20:07:15.014300Z

aw yeah, it works :) macOS: https://67-275632984-gh.circle-artifacts.com/0/release/tools-deps-native-0.0.1-SNAPSHOT-macos-amd64.zip linux: https://66-275632984-gh.circle-artifacts.com/0/release/tools-deps-native-0.0.1-SNAPSHOT-linux-amd64.zip usage:

./tools-deps-native '{:deps {babashka/fs {:mvn/version "0.0.1"}}}'

borkdude 2021-06-25T20:13:09.014800Z

thanks!

borkdude 2021-06-25T20:18:21.015500Z

I think I could now make this into a tools deps babashka pod so you can use the tools deps API in a babashka script, for whatever reason

borkdude 2021-06-25T20:19:52.015900Z

but also other graal compiled tools which use tools deps should now work with this change