clojureboot-clj

What is the meaning of "RELEASE" in Clojure boot-clj?


I have created a new Clojure boot-clj project using boot-new. In the 'build.boot' file I see the below line.

[org.clojure/clojure "RELEASE"]

What does the "RELEASE" mean in the above context? And what version that dependency points to? I don't see any files that pass some environment variable or something. If it means "the latest version", won't it cause issues if some backward compatibility breaks?


Solution

  • This is a Maven feature (like all JVM dependency management tools Boot integrates with the Maven infrastructure). RELEASE refers to the latest release (not snapshot) version.

    Maven repositories record the latest released version. See for example the metadata for org.clojure/clojure at Maven central, https://repo1.maven.org/maven2/org/clojure/clojure/maven-metadata.xml, at path metadata/versioning/release.

    An argument can be made for and against using this. For me, pinning of the version and reproducibility are important, so I avoid this notation.