[ANN] Clojure 1.8.0-RC3

1,276 views
Skip to first unread message

Alex Miller

unread,
Dec 2, 2015, 11:03:31 AM12/2/15
to Clojure
Clojure 1.8.0-RC3 is now available. This build is a "release candidate"! We would appreciate any and all testing you can do on your own libraries or internal projects to find problems. 

Try it via
Below are the changes since 1.8.0-RC2. See the full 1.8 change log here: https://github.com/clojure/clojure/blob/master/changes.md.
  • CLJ-1845 / CLJ-1851 New ^:redef to mark vars that should not be direct linked
    • The metadata ^:redef can be used to mark function vars that should not be direct linked
    • clojure.core/load was previously marked with ^:dynamic for this purpose, but is now marked ^:redef
  • CLJ-1856 Direct linking breaks clojure.test location reporting for failures
  • CLJ-1854 Set line number in bytecode prior to invokeStatic call
  • CLJ-1853 In socket server, require the ns of the accept-fn before resolving it

Sreenivas Reddy T

unread,
Dec 2, 2015, 11:20:03 AM12/2/15
to clo...@googlegroups.com

I would love a project where the tool runs all  test cases of libraries against new release candidate. 

--
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 the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Nicola Mometto

unread,
Dec 2, 2015, 11:21:45 AM12/2/15
to clo...@googlegroups.com
all the clojure contrib libraries are regularly tested against new clojure versions
http://build.clojure.org/

Alex Miller

unread,
Dec 2, 2015, 11:30:02 AM12/2/15
to Clojure
"regularly" == once per week

Additionally, I do a full rebuild for each release.


On Wednesday, December 2, 2015 at 10:21:45 AM UTC-6, Nicola Mometto wrote:
all the clojure contrib libraries are regularly tested against new clojure versions
http://build.clojure.org/

Daniel Compton

unread,
Dec 2, 2015, 4:30:16 PM12/2/15
to Clojure
Has the case for Direct Linking been well established yet? I've seen a lot of concerns about it and most benchmarks show marginal at best performance increases. Tom Crayford ran it against his extensive performance benchmarking suite and didn't find much benefit.

On Thu, Dec 3, 2015 at 5:40 AM Alex Miller <al...@puredanger.com> wrote:
"regularly" == once per week

Additionally, I do a full rebuild for each release.


On Wednesday, December 2, 2015 at 10:21:45 AM UTC-6, Nicola Mometto wrote:
all the clojure contrib libraries are regularly tested against new clojure versions
http://build.clojure.org/

> On 2 Dec 2015, at 16:17, Sreenivas Reddy T <thatiparth...@gmail.com> wrote:
>
> I would love a project where the tool runs all  test cases of libraries against new release candidate.
>

--
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 the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Daniel

Alex Miller

unread,
Dec 2, 2015, 5:03:43 PM12/2/15
to Clojure
We believe it will make a difference in some apps and have no plans to pull it out. 

Serzh Nechyporchuk

unread,
Dec 3, 2015, 5:32:12 AM12/3/15
to clo...@googlegroups.com
In our app we have 30% speed improvements. Although direct-linking helps us with code obfuscation.

Alex Miller

unread,
Dec 7, 2015, 4:36:25 PM12/7/15
to Clojure
Just a reminder that this is a release candidate - that means that if we don't hear any issues, we will release it as 1.8.0.

If you haven't yet, please give it a try....

Thanks,
Alex

Andy Fingerhut

unread,
Dec 7, 2015, 7:39:40 PM12/7/15
to clo...@googlegroups.com
I have done my usual 'mvn clean test' on multiple OS/JDK combos not tested on build.clojure.org, and found nothing amiss with 1.8.0-RC3.

Is http://dev.clojure.org/jira/browse/CLJ-1863 considered problematic enough to fix before 1.8.0 goes out?

Andy

--

Alex Miller

unread,
Dec 7, 2015, 7:49:52 PM12/7/15
to Clojure
Re CLJ-1863, this was already problematic before 1.8 in some contexts. I would say it's undecided.

Sean Corfield

unread,
Dec 7, 2015, 8:21:31 PM12/7/15
to clo...@googlegroups.com
We’ve had it in QA since 12/2 but it hasn’t had much of a work out yet due to various staff vacations etc. This build is our first with direct linking enabled for our whole code base. I don’t know when we’ll get it into production.

We’ve had RC2 in production since 11/24 with no issues. That used the default setting regards direct linking (so, just clojure.core).

Sean Corfield -- (904) 302-SEAN
World Singles -- http://worldsingles.com/

Howard Lewis Ship

unread,
Dec 7, 2015, 8:47:15 PM12/7/15
to clo...@googlegroups.com
I suspect there's a few cases where we would like to use direct linking, but will not be able to, because it will disrupt a 3rd party library we use.  This is hypothetical, so I'll keep you posted ... I may run some experiments in the next couple of days.

Certainly, the use of alter-var-root by, say, io.aviso/pretty (and others of its ilk) may be affected; I'll want to review which Vars, in which namespaces, have been annotated with ^:redef (if not already ^:dynamic).

It's possible a solution where we can provide a list of namespaced symbols to exclude from dynamic linking will be needed for full adoption.


--
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 the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Howard M. Lewis Ship

Senior Mobile Developer at Walmart Labs

Creator of Apache Tapestry

Alex Miller

unread,
Dec 7, 2015, 11:17:27 PM12/7/15
to Clojure
Happy to consider stuff like that, sooner better than later though.

The only var in core that has been marked ^:redef so far is clojure.core/load.

Sean Grove

unread,
Dec 8, 2015, 12:46:30 AM12/8/15
to clojure
It's not super compelling for us (we can upgrade with some work), but we've run into an issue with [org.clojure/clojure-contrib "1.2.0"] when requiring clojure.contrib.math:

Exception in thread "main" java.lang.RuntimeException: Unable to resolve symbol: remainder in this context, compiling:(clojure/contrib/math.clj:46:1)


As I said, I can look into it deeper if need be, but we're on clojure 1.5 and I expect we'll need to spend time updating dependencies soon anyway. Just wanted to mention it in case it affects anyone else.

Shantanu Kumar

unread,
Dec 8, 2015, 12:49:07 AM12/8/15
to Clojure


On Tuesday, 8 December 2015 07:17:15 UTC+5:30, Howard M. Lewis Ship wrote:
I suspect there's a few cases where we would like to use direct linking, but will not be able to, because it will disrupt a 3rd party library we use.  This is hypothetical, so I'll keep you posted ... I may run some experiments in the next couple of days.

Certainly, the use of alter-var-root by, say, io.aviso/pretty (and others of its ilk) may be affected; I'll want to review which Vars, in which namespaces, have been annotated with ^:redef (if not already ^:dynamic).

It's possible a solution where we can provide a list of namespaced symbols to exclude from dynamic linking will be needed for full adoption.

+1 (I guess you meant `direct` linking in the last sentence above?)

Another use case is instrumentation using `alter-var-root`, for which providing a namespaced list of symbols to exclude from direct linking would be really useful.

Shantanu

Alex Miller

unread,
Dec 8, 2015, 12:58:56 AM12/8/15
to Clojure
Given how long clojure-contrib has been deprecated, I'm not going to prioritize this unless there is a specific reproducible issue that is related to 1.7 vs 1.8.

Noam Ben-Ari

unread,
Dec 8, 2015, 8:05:43 AM12/8/15
to Clojure
Hi,
I have just tried 1.8.0-RC3 and saw a problem.

I have a project in which I run tests with `lein midje`, and this runs fine with 1.7.0.

When I change the clojure dependency to 1.8.0-RC3 and run it I get this exception:

---

Exception in thread "main" java.lang.RuntimeException: Too many arguments to throw, throw expects a single Throwable instance, compiling:(reduce_fsm.clj:203:5)

---

Let me know what other information I can give to help.

Thanks,
Noam.

Nicola Mometto

unread,
Dec 8, 2015, 8:07:34 AM12/8/15
to clo...@googlegroups.com
Before 1.8, clojure would accept wrong forms like (throw my-exception 1 2 3).

This is now an exception http://dev.clojure.org/jira/browse/CLJ-1456.

Noam Ben-Ari

unread,
Dec 8, 2015, 8:14:21 AM12/8/15
to Clojure
Thanks for the prompt response, I have filed a ticket to the library author:

Noam Ben-Ari

unread,
Dec 8, 2015, 3:51:25 PM12/8/15
to Clojure
After upgrading to [reduce-fsm "0.1.4"] all my tests pass with RC3 :-)

James Elliott

unread,
Dec 8, 2015, 8:39:25 PM12/8/15
to Clojure
I’ve been working with it for a few days and have seen no issues yet.


On Wednesday, December 2, 2015 at 10:03:31 AM UTC-6, Alex Miller wrote:

Michael Blume

unread,
Dec 10, 2015, 2:32:25 AM12/10/15
to Clojure
No issues here.

--

Gary Trakhman

unread,
Dec 10, 2015, 8:47:44 AM12/10/15
to Clojure
We've been using it on our development branch without a hitch since Dec 2.

Sean Corfield

unread,
Dec 10, 2015, 5:17:55 PM12/10/15
to clo...@googlegroups.com
I said:
We’ve had it in QA since 12/2 but it hasn’t had much of a work out yet due to various staff vacations etc. This build is our first with direct linking enabled for our whole code base. I don’t know when we’ll get it into production.

We’ve decided to do no new production builds until after the holidays so we won’t get direct linking and 1.8.0-RC3 into production until January (by which time I expect 1.8.0 Gold will be available?).

Sean

Matthias Nehlsen

unread,
Dec 10, 2015, 8:19:34 PM12/10/15
to Clojure
No problems here, I updated it in all my projects and everything is working nicely. Thanks!

Serzh Nechyporchuk

unread,
Dec 11, 2015, 2:15:42 AM12/11/15
to clo...@googlegroups.com
We also considered no issues with update to 1.8.

--
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 the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email to clojure+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Best regards,
Serhii Nechyporchuk

Brian Marick

unread,
Dec 14, 2015, 5:42:01 PM12/14/15
to clo...@googlegroups.com
Noam: does this mean it's not an issue with Midje? If it is, I'll look
into it.

Noam Ben-Ari wrote:
> After upgrading to [reduce-fsm "0.1.4"] all my tests pass with RC3 :-)
>
> On Tuesday, December 8, 2015 at 3:14:21 PM UTC+2, Noam Ben-Ari wrote:
>
> Thanks for the prompt response, I have filed a ticket to the library
> author:
>
> https://github.com/cdorrat/reduce-fsm/issues/9
> <https://github.com/cdorrat/reduce-fsm/issues/9>
>
> On Tuesday, December 8, 2015 at 3:07:34 PM UTC+2, Nicola Mometto wrote:
>
> Before 1.8, clojure would accept wrong forms like (throw
> my-exception 1 2 3).
>
> This is now an exception
> http://dev.clojure.org/jira/browse/CLJ-1456
> <http://dev.clojure.org/jira/browse/CLJ-1456>.
> <https://github.com/clojure/clojure/blob/master/changes.md>.
> <https://groups.google.com/d/optout>.
>
> --
> 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 the Google
> Groups "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to clojure+u...@googlegroups.com
> <mailto:clojure+u...@googlegroups.com>.

Noam Ben-Ari

unread,
Dec 14, 2015, 6:24:00 PM12/14/15
to clo...@googlegroups.com
Brian: it's not an issue with Midje.
--- 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/psZJDF0m6Xk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to clojure+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Beau Fabry

unread,
Dec 14, 2015, 6:27:28 PM12/14/15
to Clojure
@Brian no, is an issue with reduce-fsm (which is fixed) https://github.com/cdorrat/reduce-fsm/issues/9

Ted McFadden

unread,
Dec 14, 2015, 8:23:02 PM12/14/15
to Clojure
Hi,

Finally had some time to try out 1.8RC3. No issues or changes in behaviour from our 1.7 production system observed in limited testing.

Cheers,

Ted

Amar

unread,
Dec 15, 2015, 9:21:59 PM12/15/15
to Clojure
We've been running with 1.8.0-RC3 in production for over a week now without any issues.  Thanks for all the work.
Reply all
Reply to author
Forward
0 new messages