Clojure 1.12.1
Clojure 1.12.1 is now available! Find download and usage information on the Downloads page. CLJ-2899 - Revert change in semantics of qualified symbol in invocation position if field and method of same name CLJ-2898 - Objects that are both IFn and FunctionalInterface unnecessarily get converted to FI CLJ-2888 - gen-class - did not support new array class symbol syntax CLJ-2886 - add-libs - send only procurer keys to tool invocation CLJ-2906 - Add missing :added metadata to 1.12 functions

Clojure 1.12.1, the latest minor release of the popular functional programming language, has been made available for download. This update focuses on addressing several bugs and improving the overall stability of the platform. Developers who are already using Clojure 1.12 can now upgrade to version 1.12.1 to benefit from these enhancements.
One of the key changes in this release is the reversion of a change in the semantics of qualified symbols in the invocation position when both a field and a method of the same name exist. This correction, identified as CLJ-2899, ensures that the language behaves consistently with previous versions, providing a more predictable experience for developers.
Another significant improvement is the fix for an issue where objects that are both IFn and FunctionalInterface were unnecessarily converted to FI. This conversion could lead to unexpected behavior in certain scenarios, and the fix, labeled as CLJ-2898, resolves this problem, allowing developers to work with these objects more efficiently.
Clojure 1.12.1 also introduces support for the new array class symbol syntax in the `gen-class` function. This change, documented as CLJ-2888, ensures that users can leverage the latest Java features when working with Clojure's interoperability capabilities.
In addition, the `add-libs` function has been updated to send only procurer keys to tool invocation, as per the changes outlined in CLJ-2886. This modification enhances the efficiency and security of the library management process, reducing the amount of data transmitted during tool invocations.
Lastly, the release includes the addition of missing `:added` metadata to functions introduced in Clojure 1.12. This change, identified as CLJ-2906, ensures that users and tools can accurately track the availability of these functions, facilitating better maintenance and documentation efforts.
To download Clojure 1.12.1, users can visit the official Downloads page, where they will find the latest binaries and installation instructions. The Clojure team continues to prioritize stability and compatibility in each release, making it a reliable choice for developers seeking a powerful and expressive programming language.
In conclusion, Clojure 1.12.1 represents a solid update that addresses critical issues and improves the overall usability of the language. By reverting problematic changes, enhancing interoperability, and refining library management, this release demonstrates the Clojure community's commitment to delivering a high-quality, stable platform for functional programming. Developers are encouraged to upgrade to take advantage of these improvements and continue leveraging Clojure's unique features in their projects.










