Today is "Get Your App on Clojure 1.2" Day

27 views
Skip to first unread message

Stuart Halloway

unread,
Jul 30, 2010, 11:05:21 AM7/30/10
to clo...@googlegroups.com
Clojure 1.2 has been pretty stable for quite a while now, and with the RC1 release this morning, today would be a great day to move your project to 1.2.

The Clojure/core team will be hanging out on IRC and monitoring this mailing list closely until 5:00 Eastern (US) today, to help out with migration questions you may have.

So what are you waiting for? :-)

Stu

Mark Engelberg

unread,
Jul 30, 2010, 11:42:14 AM7/30/10
to clo...@googlegroups.com
On Fri, Jul 30, 2010 at 8:05 AM, Stuart Halloway <stuart....@gmail.com> wrote:
So what are you waiting for? :-)


Mostly, I'm waiting for performance reports on 1.1  vs 1.2.  Last time I ran some tests against the beta, 1.2 seemed a bit slower.

Also, can you provide a pointer in this thread to the list of changes from 1.1 to 1.2. 

Thanks!

Stuart Halloway

unread,
Jul 30, 2010, 11:52:05 AM7/30/10
to clo...@googlegroups.com
Changelist is


Also, while microbenchmarks are often misleading, if you have some that seem to show 1.2 issues I would be happy to run them and take a look.

Stu

--
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

ngocdaothanh

unread,
Jul 30, 2010, 12:18:13 PM7/30/10
to Clojure
My project.clj:

(defproject maho "0.1-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.2.0-RC1"]
[org.clojure/clojure-contrib "1.2.0-RC1"]
[ring "0.2.5"]
[clout "0.2.0"]

[clj-record "1.0-SNAPSHOT"]
[c3p0 "0.9.1"]
[postgresql "8.4-701.jdbc4"]])

Running with (set! *warn-on-reflection* true) gives the below warning.
Would Clojure be improved to remove the warnings?

Thanks.

Reflection warning, clojure/contrib/str_utils.clj:46 - call to
subSequence can't be resolved.
Reflection warning, clojure/contrib/str_utils.clj:49 - reference to
field length can't be resolved.
Reflection warning, clojure/contrib/str_utils.clj:50 - reference to
field length can't be resolved.
Reflection warning, clojure/contrib/str_utils.clj:50 - call to
subSequence can't be resolved.
Reflection warning, clojure/contrib/java_utils.clj:209 - call to
getDeclaredMethod can't be resolved.
Reflection warning, clojure/contrib/java_utils.clj:210 - call to
setAccessible can't be resolved.
Reflection warning, clojure/contrib/java_utils.clj:211 - call to
invoke can't be resolved.
Reflection warning, clojure/contrib/java_utils.clj:217 - call to
getDeclaredField can't be resolved.
Reflection warning, clojure/contrib/java_utils.clj:218 - call to
setAccessible can't be resolved.
Reflection warning, clojure/contrib/java_utils.clj:219 - call to get
can't be resolved.
Reflection warning, clojure/contrib/except.clj:90 - reference to field
getClassName can't be resolved.
Reflection warning, clojure/contrib/except.clj:90 - call to startsWith
can't be resolved.
Reflection warning, clojure/contrib/except.clj:91 - reference to field
getStackTrace can't be resolved.
Reflection warning, clojure/contrib/except.clj:94 - call to
setStackTrace can't be resolved.
Reflection warning, ring/util/response.clj:42 - reference to field
isDirectory can't be resolved.
Reflection warning, ring/util/response.clj:44 - reference to field
exists can't be resolved.
Reflection warning, ring/middleware/file.clj:24 - call to substring
can't be resolved.
Reflection warning, ring/middleware/file_info.clj:87 - call to parse
can't be resolved.
Reflection warning, ring/middleware/file_info.clj:108 - call to format
can't be resolved.
Reflection warning, clout/core.clj:36 - call to group can't be
resolved.
Reflection warning, clout/core.clj:36 - call to group can't be
resolved.
Reflection warning, clout/core.clj:35 - reference to field groupCount
can't be resolved.
Reflection warning, clout/core.clj:48 - call to substring can't be
resolved.
Reflection warning, clout/core.clj:91 - call to group can't be
resolved.
Reflection warning, clout/core.clj:101 - reference to field group
can't be resolved.
Reflection warning, clojure/contrib/io.clj:336 - call to write can't
be resolved.
Reflection warning, clojure/contrib/io.clj:343 - call to write can't
be resolved.
Reflection warning, clojure/contrib/seq.clj:156 - call to
java.util.ArrayList ctor can't be resolved.
Reflection warning, clojure/contrib/seq.clj:198 - call to
java.util.concurrent.LinkedBlockingQueue ctor can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:87 - call to
getConnection can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:89 - reference to
field getConnection can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:91 - call to
java.util.Hashtable ctor can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:93 - call to
lookup can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:94 - reference to
field getConnection can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:102 - reference
to field close can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:117 - reference
to field getMessage can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:118 - reference
to field getSQLState can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:119 - reference
to field getErrorCode can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:110 - call to
println can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:127 - reference
to field getNextException can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:132 - call to
println can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:133 - reference
to field getUpdateCounts can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:134 - call to
println can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:134 - call to
println can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:142 - reference
to field getMessage can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:156 - reference
to field getAutoCommit can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:158 - call to
setAutoCommit can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:172 - reference
to field rollback can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:173 - reference
to field commit can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:175 - call to
setAutoCommit can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:190 - call to
prepareStatement can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:192 - call to
setObject can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:192 - call to
setObject can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:193 - reference
to field executeQuery can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:193 - reference
to field close can't be resolved.
Reflection warning, clojure/contrib/sql/internal.clj:190 - reference
to field close can't be resolved.
Reflection warning, clojure/contrib/sql.clj:84 - reference to field
createStatement can't be resolved.
Reflection warning, clojure/contrib/sql.clj:86 - call to addBatch
can't be resolved.
Reflection warning, clojure/contrib/sql.clj:86 - call to addBatch
can't be resolved.
Reflection warning, clojure/contrib/sql.clj:88 - reference to field
executeBatch can't be resolved.
Reflection warning, clojure/contrib/sql.clj:84 - reference to field
close can't be resolved.
Reflection warning, clojure/contrib/sql.clj:95 - call to
prepareStatement can't be resolved.
Reflection warning, clojure/contrib/sql.clj:98 - call to setObject
can't be resolved.
Reflection warning, clojure/contrib/sql.clj:98 - call to setObject
can't be resolved.
Reflection warning, clojure/contrib/sql.clj:99 - reference to field
addBatch can't be resolved.
Reflection warning, clojure/contrib/sql.clj:98 - call to setObject
can't be resolved.
Reflection warning, clojure/contrib/sql.clj:98 - call to setObject
can't be resolved.
Reflection warning, clojure/contrib/sql.clj:99 - reference to field
addBatch can't be resolved.
Reflection warning, clojure/contrib/sql.clj:101 - reference to field
executeBatch can't be resolved.
Reflection warning, clojure/contrib/sql.clj:95 - reference to field
close can't be resolved.

Stuart Halloway

unread,
Jul 30, 2010, 12:25:39 PM7/30/10
to clo...@googlegroups.com
None of these warnings appear to be from clojure -- they are from other libs, mostly contrib.

Stu

Bootvis

unread,
Jul 30, 2010, 6:33:59 PM7/30/10
to Clojure
There seems to be a problem with the RC on Windows. I was following
http://mmcgrana.github.com/2010/07/develop-deploy-clojure-web-applications.html
using the RC and doing "lein.bat run script/run.clj" errors with:

Exception in thread "main" clojure.lang.LispReader$ReaderException:
java.lang.Exception: Invalid token: C:

Is this problem known?

Mark Engelberg

unread,
Aug 1, 2010, 4:30:36 AM8/1/10
to clo...@googlegroups.com
On Fri, Jul 30, 2010 at 8:52 AM, Stuart Halloway <stuart....@gmail.com> wrote:

Also, while microbenchmarks are often misleading, if you have some that seem to show 1.2 issues I would be happy to run them and take a look.

Stu


Yeah, I'm not talking about microbenchmarks -- my actual projects tend to run about 10% slower in 1.2. 

Just to give you one concrete example that you can try on your machine, to see if you get the same results as I:
(use 'clojure.contrib.combinatorics)
(time (dorun (permutations (range 10))))
or
(time (dorun (permutations (range 11))))

I see a 10% slowdown on this function moving to 1.2 (both running under java -server -Xmx1500m, sampled several times), just like I see on all the code I have tested so far.

Phil Hagelberg

unread,
Aug 1, 2010, 10:20:15 AM8/1/10
to clo...@googlegroups.com
On Fri, Jul 30, 2010 at 3:33 PM, Bootvis <bobj...@gmail.com> wrote:
> There seems to be a problem with the RC on Windows. I was following
> http://mmcgrana.github.com/2010/07/develop-deploy-clojure-web-applications.html
> using the RC and doing "lein.bat run script/run.clj" errors with:
>
> Exception in thread "main" clojure.lang.LispReader$ReaderException:
> java.lang.Exception: Invalid token: C:
>
> Is this problem known?

That's a bug in lein.bat, not in Clojure. It has been fixed in the
latest version, which should see a release next week.

-Phil

lozh

unread,
Jul 31, 2010, 5:40:12 PM7/31/10
to Clojure
These should be fixed in technomancy's github. He pushed
http://github.com/downloads/technomancy/leiningen/leiningen-1.3.0-SNAPSHOT-standalone.jar
yesterday, which I'd expect to include the fixes, though I haven't
tested it myself.

On Jul 30, 11:33 pm, Bootvis <bobjan...@gmail.com> wrote:
> There seems to be a problem with the RC on Windows. I was followinghttp://mmcgrana.github.com/2010/07/develop-deploy-clojure-web-applica...

Dmitry Gutov

unread,
Jul 31, 2010, 8:11:57 PM7/31/10
to Clojure
That's leiningen bug 62: http://github.com/technomancy/leiningen/issues/closed/#issue/62
It should be fixed in trunk.

On Jul 31, 2:33 am, Bootvis <bobjan...@gmail.com> wrote:
> There seems to be a problem with the RC on Windows. I was followinghttp://mmcgrana.github.com/2010/07/develop-deploy-clojure-web-applica...
Reply all
Reply to author
Forward
0 new messages