New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nREPL barfing in non-project REPLs #1625

Closed
trptcolin opened this Issue Aug 6, 2014 · 29 comments

Comments

@trptcolin
Copy link
Collaborator

trptcolin commented Aug 6, 2014

When starting up an in-project lein repl, everything seems to work fine. But outside of a project, something's trying to use tools.nrepl version 0.2.0-beta5 (shown by the bottom of this trace). I haven't been able to find what's pulling 0.2.0-beta5 in (as opposed to 0.2.3, which is the latest and what we're actually trying to depend on). I think it must be an AOT thing or possibly some other deployment issue, because running from the code in master works fine for me locally.

I have all my plugins cleared out.

I'm thinking this must mean that the lein uberjar must contain nrepl 0.2.0-beta5 somehow. And my suspicion is that drawbridge 0.0.6 is what's causing it, since it's the only relevant-looking thing on http://www.clojuresphere.com/org.clojure/tools.nrepl/0.2.0-beta5

I can release a new version of REPLy that adds a tools.nrepl exclusion to drawbridge, but I don't understand how/why the transitive dependencies that get pulled in could change out from under us like this. The nrepl/drawbridge dependencies haven't changed since the last release.

Exception in thread "nREPL-worker-0" java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I
    at clojure.tools.nrepl.middleware.session$session_out$fn__7630.doInvoke(session.clj:43)
    at clojure.lang.RestFn.invoke(RestFn.java:460)
    at clojure.tools.nrepl.middleware.session.proxy$java.io.Writer$ff19274a.write(Unknown Source)
    at java.io.PrintWriter.write(PrintWriter.java:456)
    at java.io.PrintWriter.write(PrintWriter.java:473)
    at clojure.core$fn__5471.invoke(core_print.clj:191)
    at clojure.lang.MultiFn.invoke(MultiFn.java:231)
    at clojure.core$pr_on.invoke(core.clj:3392)
    at clojure.core$pr.invoke(core.clj:3404)
    at clojure.lang.AFn.applyToHelper(AFn.java:154)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$prn.doInvoke(core.clj:3437)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$println.doInvoke(core.clj:3457)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.main$repl_caught.invoke(main.clj:158)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569$fn__7582.invoke(interruptible_eval.clj:76)
    at clojure.main$repl$fn__6634.invoke(main.clj:259)
    at clojure.main$repl.doInvoke(main.clj:257)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569.invoke(interruptible_eval.clj:56)
    at clojure.lang.AFn.applyToHelper(AFn.java:152)
    at clojure.lang.AFn.applyTo(AFn.java:144)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
    at clojure.lang.RestFn.invoke(RestFn.java:425)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:41)
    at clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__7610$fn__7613.invoke(interruptible_eval.clj:171)
    at clojure.core$comp$fn__4192.invoke(core.clj:2402)
    at clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__7603.invoke(interruptible_eval.clj:138)
    at clojure.lang.AFn.run(AFn.java:22)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)
REPL-y 0.3.2, nREPL 0.2.0-beta5NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)#<Namespace user>

Error loading namespace; falling back to userException in thread "nREPL-worker-2" java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I

@hypirion hypirion added the bug label Aug 6, 2014

trptcolin added a commit to trptcolin/reply that referenced this issue Aug 6, 2014

trptcolin added a commit that referenced this issue Aug 6, 2014

@trptcolin

This comment has been minimized.

Copy link
Collaborator

trptcolin commented Aug 6, 2014

OK, this should fix the immediate issue, but the underlying thing should still be addresses. Happy to either leave this open or defer to another issue more directed at the underlying why-did-transitive-deps-change question.

@technomancy

This comment has been minimized.

Copy link
Owner

technomancy commented Aug 6, 2014

I can confirm the wrong version is in the uberjar, but I can't reproduce the crash.

@mstram

This comment has been minimized.

Copy link

mstram commented Aug 6, 2014

When starting up an in-project lein repl, everything seems to work fine.

I wish I could say the same :(
lein version
Leiningen 2.4.3 on Java 1.7.0_55 Java HotSpot(TM) 64-Bit Server VM

$ lein new app r3
Generating a project called r3 based on the 'app' template.

 lein repl

/home/action/bin/lein: line 357: 23005 Killed "$LEIN_JAVA_CMD" "${BOOTCLASSPATH[@]}" $LEIN_JVM_OPTS -Dfile.enco
ding=UTF-8 -Dmaven.wagon.http.ssl.easy=false -Dmaven.wagon.rto=10000 -Dleiningen.original.pwd="$ORIGINAL_PWD" -Dleiningen.script
="$SCRIPT" -classpath "$CLASSPATH" clojure.main -m leiningen.core.main "$@"


 cd r3
 ls  -lR

.:
total 36
drwxrwxr-x 2 action action 4096 Aug 6 23:43 doc
-rw-rw-r-- 1 action action 11218 Aug 6 23:43 LICENSE
-rw-rw-r-- 1 action action 0 Aug 6 23:45 oo
-rw-rw-r-- 1 action action 351 Aug 6 23:43 project.clj
-rw-rw-r-- 1 action action 455 Aug 6 23:43 README.md
drwxrwxr-x 2 action action 4096 Aug 6 23:43 resources
drwxrwxr-x 3 action action 4096 Aug 6 23:43 src
drwxrwxr-x 3 action action 4096 Aug 6 23:43 test

./doc:
total 4
-rw-rw-r-- 1 action action 100 Aug 6 23:43 intro.md

./resources:
total 0

./src:
total 4
drwxrwxr-x 2 action action 4096 Aug 6 23:43 r3

./src/r3:
total 4
-rw-rw-r-- 1 action action 117 Aug 6 23:43 core.clj

./test:
total 4
drwxrwxr-x 2 action action 4096 Aug 6 23:43 r3

./test/r3:
total 4
-rw-rw-r-- 1 action action 156 Aug 6 23:43 core_test.clj

@mstram

This comment has been minimized.

Copy link

mstram commented Aug 6, 2014

I.e. I can't run lein repl in / out of a project :(

And if I try to run clojure without lein, I get :

CompilerException java.lang.RuntimeException: Unable to resolve symbol: defproject in this context, compiling:(/home/action/cloj
ure/ring1/project.clj:1:1)

@mstram

This comment has been minimized.

Copy link

mstram commented Aug 6, 2014

I'm using the LEIN script linked on the main page of the repo noted as the "stable" version

@mstram

This comment has been minimized.

Copy link

mstram commented Aug 7, 2014

I deleted the .m2/repository, did lein deps in my project, but no improvement, same errors

@trptcolin

This comment has been minimized.

Copy link
Collaborator

trptcolin commented Aug 7, 2014

@mstram I think it's safe to say yours is a separate issue from the one in this ticket. Could you please open a new issue, with more detail on what exact commands you've used to download / install leiningen, and what exact commands you're running?

The first error message you pasted, /home/action/bin/lein: line 357: 23005 Killed "$LEIN_JAVA_CMD" [...] sounds like you've actually killed the process somehow; we don't have any insight from what you've given into what the actual problem is. Further, "if I try to run clojure without lein" doesn't make sense to me: are you running java -jar clojure.main project.clj or something? That's not a thing that makes sense to do.

@mstram

This comment has been minimized.

Copy link

mstram commented Aug 7, 2014

I found the problem.

I'm running on Nitrous.io, they require "0.0.0.0" instead of localhost for the nrepl server.

Now I'm trying to rebuild tools.nrepl, but am running into errors with Maven.

Ever seen that Monty Python sketch where the cameras are filming the cameras filming the cameras ...... :/

Mike

@douglarek

This comment has been minimized.

Copy link

douglarek commented Aug 7, 2014

~ λ lein repl
nREPL server started on port 65252 on host 127.0.0.1 - nrepl://127.0.0.1:65252
REPL-y 0.3.2, nREPL 0.2.0-beta5Exception in thread "nREPL-worker-0" NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I
    at clojure.tools.nrepl.middleware.session$session_out$fn__7630.doInvoke(session.clj:43)
    at clojure.lang.RestFn.invoke(RestFn.java:460)
    at clojure.tools.nrepl.middleware.session.proxy$java.io.Writer$ff19274a.write(Unknown Source)
    at java.io.PrintWriter.write(PrintWriter.java:456)
    at java.io.PrintWriter.write(PrintWriter.java:473)
    at clojure.core$fn__5471.invoke(core_print.clj:191)
    at clojure.lang.MultiFn.invoke(MultiFn.java:231)
    at clojure.core$pr_on.invoke(core.clj:3392)
    at clojure.core$pr.invoke(core.clj:3404)
    at clojure.lang.AFn.applyToHelper(AFn.java:154)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$prn.doInvoke(core.clj:3437)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$println.doInvoke(core.clj:3457)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.main$repl_caught.invoke(main.clj:158)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569$fn__7582.invoke(interruptible_eval.clj:76)
    at clojure.main$repl$fn__6634.invoke(main.clj:259)
    at clojure.main$repl.doInvoke(main.clj:257)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569.invoke(interruptible_eval.clj:56)
    at clojure.lang.AFn.applyToHelper(AFn.java:152)
    at clojure.lang.AFn.applyTo(AFn.java:144)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
    at clojure.lang.RestFn.invoke(RestFn.java:425)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:41)
    at clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__7610$fn__7613.invoke(interruptible_eval.clj:171)
    at clojure.core$comp$fn__4192.invoke(core.clj:2402)
    at clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__7603.invoke(interruptible_eval.clj:138)
    at clojure.lang.AFn.run(AFn.java:22)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
#<Namespace user>

Error loading namespace; falling back to userException in thread "nREPL-worker-1" java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I
    at clojure.tools.nrepl.middleware.session$session_out$fn__7630.doInvoke(session.clj:43)
    at clojure.lang.RestFn.invoke(RestFn.java:460)
    at clojure.tools.nrepl.middleware.session.proxy$java.io.Writer$ff19274a.write(Unknown Source)
    at java.io.PrintWriter.write(PrintWriter.java:456)
    at java.io.PrintWriter.write(PrintWriter.java:473)
    at clojure.core$fn__5471.invoke(core_print.clj:191)
    at clojure.lang.MultiFn.invoke(MultiFn.java:231)
    at clojure.core$pr_on.invoke(core.clj:3392)
    at clojure.core$pr.invoke(core.clj:3404)
    at clojure.lang.AFn.applyToHelper(AFn.java:154)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$prn.doInvoke(core.clj:3437)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$println.doInvoke(core.clj:3457)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.main$repl_caught.invoke(main.clj:158)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569$fn__7582.invoke(interruptible_eval.clj:76)
    at clojure.main$repl$fn__6634.invoke(main.clj:259)
    at clojure.main$repl.doInvoke(main.clj:257)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569.invoke(interruptible_eval.clj:56)
NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)    at clojure.lang.AFn.applyToHelper(AFn.java:152)
    at clojure.lang.AFn.applyTo(AFn.java:144)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
    at clojure.lang.RestFn.invoke(RestFn.java:425)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:41)
    at clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__7610$fn__7613.invoke(interruptible_eval.clj:171)
    at clojure.core$comp$fn__4192.invoke(core.clj:2402)
    at clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__7603.invoke(interruptible_eval.clj:138)
    at clojure.lang.AFn.run(AFn.java:22)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
user=>
@trptcolin

This comment has been minimized.

Copy link
Collaborator

trptcolin commented Aug 7, 2014

I'm closing this ticket. It's fixed on master. Opening a separate one for the mysterious root cause of the uberjar getting different transitive deps than running from source.

@ghost

This comment has been minimized.

Copy link

ghost commented Aug 9, 2014

Trying to install using the master branch lein file throws a 404 error as it's trying to download a 2.4.4-SNAPSHOT jar. Any workarounds?

@bruceadams

This comment has been minimized.

Copy link
Contributor

bruceadams commented Aug 9, 2014

@Decker108 Leiningen SNAPSHOTs are not available for download. To run the master branch of Leiningen, you need to run from a Leiningen checkout. Please see https://github.com/technomancy/leiningen/blob/master/CONTRIBUTING.md for instructions on running from a checkout.

@driventokill

This comment has been minimized.

Copy link

driventokill commented Aug 11, 2014

It complains while I'm trying in iTerm with zsh. But it's fine in eshell.

@technomancy

This comment has been minimized.

Copy link
Owner

technomancy commented Aug 11, 2014

Aha; that explains it. Setting TERM=dumb makes the bug go away, which is why I never noticed it.

@andrewchambers

This comment has been minimized.

Copy link

andrewchambers commented Aug 15, 2014

please release a fix, im getting this on both linux and windows.

@edbond

This comment has been minimized.

Copy link

edbond commented Aug 17, 2014

same bug here:

→  lein repl
nREPL server started on port 37316 on host 127.0.0.1 - nrepl://127.0.0.1:37316
Exception in thread "nREPL-worker-0" java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I
    at clojure.tools.nrepl.middleware.session$session_out$fn__7630.doInvoke(session.clj:43)
    at clojure.lang.RestFn.invoke(RestFn.java:460)
    at clojure.tools.nrepl.middleware.session.proxy$java.io.Writer$ff19274a.write(Unknown Source)
    at java.io.PrintWriter.write(PrintWriter.java:456)
    at java.io.PrintWriter.write(PrintWriter.java:473)
    at clojure.core$fn__5471.invoke(core_print.clj:191)
    at clojure.lang.MultiFn.invoke(MultiFn.java:231)
    at clojure.core$pr_on.invoke(core.clj:3392)
    at clojure.core$pr.invoke(core.clj:3404)
    at clojure.lang.AFn.applyToHelper(AFn.java:154)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$prn.doInvoke(core.clj:3437)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$println.doInvoke(core.clj:3457)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.main$repl_caught.invoke(main.clj:158)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569$fn__7582.invoke(interruptible_eval.clj:76)
    at clojure.main$repl$fn__6634.invoke(main.clj:259)
    at clojure.main$repl.doInvoke(main.clj:257)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569.invoke(interruptible_eval.clj:56)
    at clojure.lang.AFn.applyToHelper(AFn.java:152)
    at clojure.lang.AFn.applyTo(AFn.java:144)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
    at clojure.lang.RestFn.invoke(RestFn.java:425)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:41)
    at clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__7610$fn__7613.invoke(interruptible_eval.clj:171)
    at clojure.core$comp$fn__4192.invoke(core.clj:2402)
    at clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__7603.invoke(interruptible_eval.clj:138)
    at clojure.lang.AFn.run(AFn.java:22)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
ABRT problem creation: 'failure'
REPL-y 0.3.2, nREPL 0.2.0-beta5NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)#<Namespace user>Exception in thread "nREPL-worker-2" java.lang.NoSuchMethodError: clojure.tools.nrepl.StdOutBuffer.length()I
    at clojure.tools.nrepl.middleware.session$session_out$fn__7630.doInvoke(session.clj:43)
    at clojure.lang.RestFn.invoke(RestFn.java:460)
    at clojure.tools.nrepl.middleware.session.proxy$java.io.Writer$ff19274a.write(Unknown Source)
    at java.io.PrintWriter.write(PrintWriter.java:456)
    at java.io.PrintWriter.write(PrintWriter.java:473)
    at clojure.core$fn__5471.invoke(core_print.clj:191)
    at clojure.lang.MultiFn.invoke(MultiFn.java:231)
    at clojure.core$pr_on.invoke(core.clj:3392)
    at clojure.core$pr.invoke(core.clj:3404)
    at clojure.lang.AFn.applyToHelper(AFn.java:154)
    at clojure.lang.RestFn.applyTo(RestFn.java:132)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$prn.doInvoke(core.clj:3437)
    at clojure.lang.RestFn.applyTo(RestFn.java:137)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$println.doInvoke(core.clj:3457)
    at clojure.lang.RestFn.invoke(RestFn.java:408)
    at clojure.main$repl_caught.invoke(main.clj:158)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569$fn__7582.invoke(interruptible_eval.clj:76)
    at clojure.main$repl$fn__6634.invoke(main.clj:259)
    at clojure.main$repl.doInvoke(main.clj:257)
    at clojure.lang.RestFn.invoke(RestFn.java:1096)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate$fn__7569.invoke(interruptible_eval.clj:56)
    at clojure.lang.AFn.applyToHelper(AFn.java:152)
    at clojure.lang.AFn.applyTo(AFn.java:144)
    at clojure.core$apply.invoke(core.clj:624)
    at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
    at clojure.lang.RestFn.invoke(RestFn.java:425)
    at clojure.tools.nrepl.middleware.interruptible_eval$evaluate.invoke(interruptible_eval.clj:41)
    at clojure.tools.nrepl.middleware.interruptible_eval$interruptible_eval$fn__7610$fn__7613.invoke(interruptible_eval.clj:171)
    at clojure.core$comp$fn__4192.invoke(core.clj:2402)
    at clojure.tools.nrepl.middleware.interruptible_eval$run_next$fn__7603.invoke(interruptible_eval.clj:138)
    at clojure.lang.AFn.run(AFn.java:22)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
ABRT problem creation: 'failure'


Error loading namespace; falling back to userNoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)NoSuchMethodError clojure.tools.nrepl.StdOutBuffer.length()I  clojure.tools.nrepl.middleware.session/session-out/fn--7630 (session.clj:43)user=> 

zsh, TERM=dumb doesn't help.

@sharms

This comment has been minimized.

Copy link
Contributor

sharms commented Aug 22, 2014

I can confirm that this is still happening from the stable link on the main website

@scotthelm

This comment has been minimized.

Copy link

scotthelm commented Aug 25, 2014

I am having the same issue:

vagrant@clojure-dev:~$ lein version
Leiningen 2.4.3 on Java 1.7.0_65 OpenJDK 64-Bit Server VM

but when I try lein repl I get the same errors as above.

@edbond

This comment has been minimized.

Copy link

edbond commented Aug 25, 2014

@technomancy if it's fixed in master why not release 2.4.3.1 or 2.4.4? repl is an important lein and clojure thing.

@hypirion

This comment has been minimized.

Copy link
Collaborator

hypirion commented Aug 25, 2014

@edbond I believe that's mainly because of three things:

  1. We still don't know why this bug was caused – see #1629
  2. There is an easy workaround for this issue; doing lein downgrade 2.4.2 will solve the issue until a new version is out. (granted, for people new to Clojure, this is not easy to know)
  3. Lein devs have been busy the last days

That being said, I can understand the hassle it causes. I myself will attempt to put in hours on #1629 during tomorrow to find the root cause (unfortunately busy today).

See also the 2.4.4 milestone.

@technomancy

This comment has been minimized.

Copy link
Owner

technomancy commented Aug 25, 2014

I would like to cut a release, but I'm in the middle of a big move and selling my house right now. If anyone can investigate #1629 it would help us get the release out more promptly.

@scotthelm

This comment has been minimized.

Copy link

scotthelm commented Aug 25, 2014

In order to get past this, in my dev environment, I used this to pull down the 2.4.2 lein:

/usr/bin/wget --no-check-certificate -O /home/[your user]/bin/lein https://raw.githubusercontent.com/technomancy/leiningen/f73a9998ff2992ab7574448e5884e08417c21526/bin/lein

Then I chmod that to 755 and I was good to go. I plan to use this version until the stable version does not have the error. I hope that helps.

@technomancy

This comment has been minimized.

Copy link
Owner

technomancy commented Aug 25, 2014

Let's reopen this just in hopes that it will reduce dupes, even though it's fixed on master.

@crimsonalucard

This comment has been minimized.

Copy link

crimsonalucard commented Sep 2, 2014

Anyone know an easy way to fix this on a mac with brew? I can't seem to downgrade properly and when I install the HEAD version the whole thing doesn't even run...

@winks

This comment has been minimized.

Copy link
Collaborator

winks commented Sep 2, 2014

A totally non-supported way that sometimes worked for me:

  • which lein to find out where the launcher script landed
  • change export LEIN_VERSION="2.4.3" to export LEIN_VERSION="2.4.2" or 2.4.1
  • lein repl
@technomancy

This comment has been minimized.

Copy link
Owner

technomancy commented Sep 2, 2014

You can run lein downgrade 2.4.2 for the manually-installed one, but I'm not sure how that works with homebrew.

@technomancy technomancy added this to the 2.4.4 milestone Sep 2, 2014

@driventokill

This comment has been minimized.

Copy link

driventokill commented Sep 3, 2014

in homebrew:

brew uninstall leiningen
cd `brew --prefix`
git checkout 185bb57 /usr/local/Library/Formula/leiningen.rb
brew install leiningen

the 185bb57 can be found by brew versions leiningen

@jarcane

This comment has been minimized.

Copy link

jarcane commented Sep 9, 2014

Same error here on fresh install through the Windows installer on either JDK 7 or 8, Windows 8.1 64-bit: http://pastebin.com/hTrThtys

Did the downgrade to 2.4.2 and seems to work fine now.

@bts

This comment has been minimized.

Copy link

bts commented Sep 11, 2014

NB: The manual downgrade listed above (with git checkout) is no longer necessary because the homebrew recipe has been changed -- brew update && brew upgrade leiningen now pulls down 2.4.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment