Fork me on GitHub
#cider
<
2019-03-31
>
bherrmann01:03:33

blarg! cider-jack-in (latest cider, jdk1.8, latest clojure)

[nREPL] Starting server via /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'...
error in process sentinel: nrepl-server-sentinel: Could not start nREPL server: Exception in thread "main" java.io.FileNotFoundException: Could not locate nrepl/middleware/pr_values__init.class or nrepl/middleware/pr_values.clj on classpath. Please check that namespaces with dashes use underscores in the Clojure file name., compiling:(cider/nrepl.clj:1:1)

dpsutton01:03:25

Which version of lein?

yuhan01:03:41

I'm getting the same error too in a deps.edn project since upgrading to latest version of cider

yuhan01:03:22

problem seems to be the change in cider-latest-middleware-version

yuhan01:03:08

bumping it back down to "0.21.2-SNAPSHOT" solved the error

bherrmann01:03:16

its a deps.edn project..

bherrmann01:03:41

When I run the command that emacs/cider says it is running, aka

$ /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'

bherrmann01:03:48

I get the same error,

bherrmann01:03:51

Exception in thread "main" Syntax error compiling at (cider/nrepl.clj:1:1).
	at clojure.lang.Compiler.load(Compiler.java:7647)
	at clojure.lang.RT.loadResourceScript(RT.java:381)
....
Caused by: java.io.FileNotFoundException: Could not locate nrepl/middleware/pr_values__init.class, nrepl/middleware/pr_values.clj or nrepl/middleware/pr_values.cljc on classpath. Please check that namespaces with dashes use underscores in the Clojure file name.

bozhidar09:03:29

Hmm, I did push a new snapshot on cider-nrepl a day ago, but there were no changes there that seem related to this problem.

bozhidar09:03:06

In particular pr_values was already removed for a couple of months already.

bozhidar09:03:29

I wonder if something’s wrong with the build in general. It’s the first one using the new MrAnderson 0.5, but on the other hand you’re getting the error for something that’s not even inlined.

benedek10:03:15

seen the issue @bozhidar will have a look later today

benedek19:03:47

the cider.nrepl ns in that snapshot jar looks very outdated. no idea how could that happen. was this a manual build or CI produced?

bozhidar20:03:48

@benedek - Manual build, done with make deploy.

benedek20:03:07

sorry for asking the obvious. are you sure you run that from the right dir?

benedek20:03:19

not some old backup or something?

bozhidar20:03:25

make deploy                                                                                                                                                                                                                                          master
lein inline-deps
Retrieving thomasa/mranderson/0.5.1-SNAPSHOT/mranderson-0.5.1-20190329.105340-3.pom from clojars
Retrieving thomasa/mranderson/0.5.1-SNAPSHOT/mranderson-0.5.1-20190329.105340-3.jar from clojars
project prefix:  cider.nrepl.inlined-deps
retrieve dependencies and munge clojure source files
in RESOLVED-TREE mode, working on a resolved dependency tree
 [cljs-tooling "0.3.1" :exclusions [[org.clojure/clojure]]]
 [compliment "0.3.8" :exclusions [[org.clojure/clojure]]]
 [cider/orchard "0.5.0-20190329.191815-1" :exclusions [[org.clojure/clojure]]]
   [org.clojure/java.classpath "0.3.0" :exclusions [[org.clojure/clojure]]]
   [org.tcrawley/dynapath "0.2.5" :exclusions [[org.clojure/clojure]]]
 [fipp "0.6.15" :exclusions [[org.clojure/clojure]]]
   [org.clojure/core.rrb-vector "0.0.13"]
 [org.clojure/tools.trace "0.7.10" :exclusions [[org.clojure/clojure]]]
 [cljfmt "0.6.4" :exclusions [[org.clojure/clojure] [org.clojure/clojurescript]]]
   [com.googlecode.java-diff-utils/diffutils "1.3.0"]
   [org.clojure/tools.cli "0.3.7"]
   [rewrite-clj "0.6.0"]
   [rewrite-cljs "0.4.4"]
 [mvxcvi/puget "1.1.0" :exclusions [[org.clojure/clojure]]]
   [mvxcvi/arrangement "1.1.1"]
 [org.clojure/tools.namespace "0.3.0-alpha4" :exclusions [[org.clojure/clojure]]]
 [thunknyc/profile "0.5.2" :exclusions [[org.clojure/clojure]]]
 [org.clojure/tools.reader "1.2.2" :exclusions [[org.clojure/clojure]]]

bozhidar20:03:31

Pretty sure about this. 🙂

bozhidar20:03:33

The deps here match those in HEAD.

benedek20:03:19

run make clean && make install jar has to OK looking cider.nrepl in it

benedek20:03:27

no reference to pr-values

benedek20:03:07

an other weird thing i noticed with the snapshot in question: it has a src dir in it

benedek20:03:12

which maybe has the right version of stuff in it?! looks weird… something went wrong when this was built. what about just trying to deploy a new one maybe?

bozhidar20:03:37

That’s what I just did.

bozhidar20:03:59

Did make clean and make deploy again and it seems that this time it’s ok.

bozhidar20:03:55

Perhaps the previous one got messed up because I didn’t do clean after updating MrAnderson. I don’t know what exactly went wrong, but it seems we’re back in business now.

benedek20:03:34

good, i’ve also seen you already upgraded to 0.5.1-snapshot of MrAnderson. brave move 😉

dpsutton20:03:39

i just ran make install and i seem to have a src file in the built jar

dpsutton20:03:50

...
drwxrwxrwx         0  31-Mar-2019  15:08:48  src/
  drwxrwxrwx         0  31-Mar-2019  15:08:48  src/cider_nrepl/
  -rw-rw-rw-      2136  31-Mar-2019  15:08:48  src/cider_nrepl/main.clj
  -rw-rw-rw-      4377  31-Mar-2019  15:08:48  src/cider_nrepl/plugin.clj
  drwxrwxrwx         0  31-Mar-2019  15:08:48  src/cider/
  drwxrwxrwx         0  31-Mar-2019  15:08:48  src/cider/nrepl/
  -rw-rw-rw-      1035  31-Mar-2019  15:08:48  src/cider/nrepl/version.clj
  -rw-rw-rw-      2777  31-Mar-2019  15:08:48  src/cider/nrepl/print_method.clj

dpsutton20:03:57

this is just a bit of it

benedek20:03:40

so what is the difference between me running it and you running it is the big Q

benedek20:03:11

same if you run make clean before? — should not have an effect either tho…

dpsutton20:03:14

i have two copies it seems. everything at cider/nrepl/ and src/cider/nrepl/

dpsutton20:03:30

i did not do a clean before but i'll do it now and rebuild

benedek20:03:56

that is what i am seeing in the broken snapshot jar too

dpsutton20:03:38

lein 2.9.1 on fedora 29.

dpsutton20:03:15

interestingly (frustratingly?) a lein clean and rebuilding seems to have fixed it

benedek20:03:51

also i run make install without clean this time. result seems to be ok

dpsutton20:03:43

so seems like the first build is busted and subsequent ones are fine?

dpsutton20:03:25

strange. there's a top level project.clj in the jar with (defproject mvxcvi/arrangement "1.1.1"

benedek20:03:45

that is just MrAnderson weirdness. should not cause any probs

benedek20:03:57

i mean the project.clj

dpsutton20:03:42

i can successfully jack in with my installed cider-nrepl

bherrmann20:03:45

This seems spooky... I tried changing nrepl {:mvn/version "0.6.0"} to *nrepl {:mvn/version "0.6.0-SNAPSHOT"} and it started up fine, now the spooky bit

dpsutton20:03:57

did you update cider?

bherrmann20:03:03

when I change it back to "0.6.0" it starts up fine. (without the -SNAPSHOT)

dpsutton20:03:15

it starts up or doesn't start up?

dpsutton20:03:41

@bozhidar pushed a change to make CIDER use the 21.2 snapshot. perhaps you have that change?

bherrmann20:03:53

I was using outside of cider,

$ /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'

dpsutton20:03:48

oh. i think he also deployed again so it should be fixed

bherrmann20:03:52

Huh...

$  mv ~/.m2 ~/m2.huh
$  /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'
Error: Could not find or load main class clojure.main
$ clojure
Downloading: org/clojure/clojure/1.10.0/clojure-1.10.0.pom from 
Downloading: org/clojure/spec.alpha/0.2.176/spec.alpha-0.2.176.pom from 
Downloading: org/clojure/pom.contrib/0.2.2/pom.contrib-0.2.2.pom from 
Downloading: org/clojure/core.specs.alpha/0.2.44/core.specs.alpha-0.2.44.pom from 
Downloading: org/clojure/clojure/1.10.0/clojure-1.10.0.jar from 
Downloading: org/clojure/spec.alpha/0.2.176/spec.alpha-0.2.176.jar from 
Downloading: org/clojure/core.specs.alpha/0.2.44/core.specs.alpha-0.2.44.jar from 
Clojure 1.10.0
user=> ^D
$ /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'
Exception in thread "main" java.io.FileNotFoundException: Could not locate nrepl/cmdline__init.class, nrepl/cmdline.clj or nrepl/cmdline.cljc on classpath.

bherrmann20:03:45

Odd, that it didnt download the packages that it needs

benedek20:03:09

in other news will very likely release MrAnderson 0.5.1 tmrw first thing

bherrmann20:03:22

In that vein, if I remove "-SNAPSHOT" from the cider-nrepl,

$ /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'
Downloading: nrepl/nrepl/0.6.0/nrepl-0.6.0.pom from 
Downloading: nrepl/nrepl/0.6.0/nrepl-0.6.0.jar from 
Error building classpath. Could not find artifact cider:cider-nrepl:jar:0.22.0 in central ()

bherrmann20:03:08

oh, I see MrAnderson is supposed to bundle stuff, so this resolution isnt needed.

dpsutton20:03:10

yes there is no 0.22.0. it is in development there has been no release

bherrmann20:03:59

huh, so it is an oversight that cider runs with that on the command?

dpsutton20:03:42

i don't follow. CIDER should never reference 0.22.0 non-snapshot

dpsutton20:03:07

does it currently?

bherrmann20:03:03

Humm... Seems I mistakingly installed "CIDER 0.22.0snapshot (package: 20190329.1924)"

bherrmann20:03:15

I presume I do not want a snapshot version.

bherrmann20:03:52

cider is an installed package.

     Status: Installed in ‘cider-20190329.1924/’ (unsigned). Delete
    Version: 20190329.1924
    Summary: Clojure Interactive Development Environment that Rocks
   Requires: emacs-25, clojure-mode-5.9, pkg-info-0.4, queue-0.2, spinner-1.7, seq-2.16, sesman-0.3.2
   Homepage: 
   Keywords: languages clojure cider 
Other versions: 20190302.114 (installed), 20190329.1924 (melpa).

dpsutton20:03:51

up to you. the snapshot version has the chance for breakages (as seen today) but if no one uses it then the melpa-stable version just shifts the risk to everyone rather than volunteers who run the melpa (snapshot) version

dpsutton20:03:17

ie, if no one beta tests, then everyone beta tests

bherrmann20:03:32

ok, then I guess I'm wondering then, why does cider have a snapshot mvn dependency

bherrmann20:03:39

oh, I didnt show that.

dpsutton20:03:55

presumably you are running the melpa (not melpa-stable) version so you are in the snapshot version

dpsutton20:03:24

i wish the names were inverted. ie, melpa and melpa-beta or something but it is what it is

bherrmann20:03:04

Just to be clear, when I execute from emacs, "cider-jack-in", emacs puts this in Messages

[nREPL] Starting server via /usr/local/bin/clojure -Sdeps '{:deps {nrepl {:mvn/version "0.6.0"} cider/cider-nrepl {:mvn/version "0.22.0-SNAPSHOT"}}}' -m nrepl.cmdline --middleware '["cider.nrepl/cider-middleware"]'...
error in process sentinel: nrepl-server-sentinel: Could not start nREPL server: Exception in thread "main" java.io.FileNotFoundException: Could not locate cider/nrepl__init.class, cider/nrepl.clj or cider/nrepl.cljc on classpath.
So you can see then that the "melpa" (snapshot) version of CIDER is asking for a "0.22.0-SNAPSHOT" -

bherrmann20:03:26

is that legit? or a bug?

dpsutton20:03:01

seems legit

bherrmann20:03:05

oh I see ( I read up on SNAPSHOT and maven), snapshot in maven speak means always fetch the latest.

bherrmann20:03:23

but you also said 0.22.0 has never been released

dpsutton21:03:20

the way its released is while you are creating 0.22.0 you release 0.22.0-SNAPSHOT and then once you are happy with it you release the 0.22.0 artifact

dpsutton21:03:42

so there can be versions of 0.22.0-snapshot while you work on it and it changes and then a single 0.22.0 release

dpsutton21:03:32

replace snapshot with "beta" "preview" or "test" in your head and it should make sense.

bherrmann21:03:26

ok, I dropped back to melpa-stable - for today anyway. And all is right with the cider-jack-in