cascalog
cascalog copied to clipboard
Clojure 1.7.0 Warnings due to new core functions
When using Clojure 1.7.0 warnings are emitted:
WARNING: some? already refers to: #'clojure.core/some? in namespace: jackknife.seq, being replaced by: #'jackknife.seq/some?
Warning: protocol #'cascalog.cascading.flow/IRunnable is overwriting function run!
WARNING: run! already refers to: #'clojure.core/run! in namespace: cascalog.cascading.flow, being replaced by: #'cascalog.cascading.flow/run!
These can be addressed by modifying the ns form:
(:refer-clojure :exclude [some?])
I can submit a pull request if prefered (it is a very minor change)
midje.cascalog is especially noisy (about 50 warnings emitted)
...
WARNING: record? already refers to: #'clojure.core/record? in namespace: midje.data.project-state, being replaced by: #'midje.clojure.core/record?
Sure, that'd be great!
This is a blocker to using Clojure 1.7.0 with Cascalog. It's more than just warnings. I'm having all my tests fail when running Clojure 1.7.0. They pass with 1.6.0. Could we get this in and a new release? Some tools are starting to require 1.7.0 (clj-refactor for one).
Hi @dkincaid and you try out https://github.com/nathanmarz/cascalog/pull/293 and let me know if it works for you? I believe it is good to go, but am only a light user and so it would be good to know if there are things that were overlooked.
Sure I'll give it a try. Could you refresh my memory on how to build and install locally? I tried lein sub install
from the root and it's able to find the lib (cascalog/cascalog-core "3.0.0-SNAPSHOT"), but I'm getting a ClassNotFoundException when trying to run the tests in my project:
Caused by: java.lang.ClassNotFoundException: cascalog.cascading.types.CascadingPlatform
Interesting. There is no (:gen-class)
in cascalog.cascading.types.clj
and no :aot
in project.clj
. Don't we need those for leiningen to compile the Java classes? I added those, rebuilt and it's running now.
Unfortunately, my tests are still failing under clojure 1.7.0. I'm not getting the warnings anymore about run! being overridden though. So it appears there is a more fundamental problem with at least midje-cascalog.
Hey @dkincaid, can you give us an example of a test that fails under 1.7.0? Would love to get this fixed.