Random thought that just struck me: the Clojure philosophy (both for core and the ecosystem) is make additive changes, not breaking changes. But with this philosophy comes the need to steer people from away from the old towards the new, and Clojure does not have an official way to mark something as deprecated like Java’s @Deprecated
. Has something akin to @Deprecated
ever been considered for the Clojure language?
if you look at core.clj some vars are tagged as deprecated, and they usually have DEPRECATED as the first word in the docstring
There is ^:deprecated in Clojure
There is also a pretty extensive ticket with enhanced support that’s ready to consider
https://ask.clojure.org/index.php/4625/make-use-of-deprecated-namespaces-vars-easier-to-spot
in the meantime, clj-kondo can warn on deprecated usages, and can selectively suppress warnings, which can be very handy