[ANN] Clojure 1.10.1

133 views
Skip to first unread message

Alex Miller

unread,
Jun 6, 2019, 3:28:17 PM6/6/19
to Clojure

Clojure 1.10.1 is a small release focusing on two issues: working around a Java performance regression and improving error reporting from clojure.main.

Java performance regression

Recent builds of Java 8 (u202), 11 (11.0.2), 12, and 13 included some changes that drastically affect optimization performance of calls from static initializers to static fields. Clojure provides support for loading code on startup from a user.clj file and this occurred in the static initializer of the Clojure runtime (RT) class and was thus affected.

This issue may eventually be resolved in Java, but in Clojure we have modified runtime initialization to avoid loading user.clj in a static initializer, which mitigates the case where this caused a performance degradation.

clojure.main error reporting

clojure.main is frequently used as a Clojure program launcher by external tools. Previously, uncaught exceptions would be automatically printed by the JVM, which would also print the stack trace.

This release will now catch exceptions and use the same error triage and printing functionality as the Clojure repl. The full stack trace, ex-info, and other information will be printed to a target specified by the configuration. See clojure.main docs for configuration details.

Changelog

See the change log for a complete list of all changes in Clojure 1.10.1.

Sean Corfield

unread,
Jun 6, 2019, 4:31:01 PM6/6/19
to Clojure
Thanks for all the work on this!

Can you confirm that this is the same as 1.10.1-RC1?

Sean

Alex Miller

unread,
Jun 6, 2019, 6:34:00 PM6/6/19
to clo...@googlegroups.com
Correct, no changes were made between 1.10.1-RC1 and 1.10.1.

--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clo...@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+u...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to a topic in the Google Groups "Clojure" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/clojure/dkfAXW9lZxk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to clojure+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/clojure/01fe6d24-ae4a-409e-989e-987760b389a9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages