Fork me on GitHub
#spacemacs
<
2022-01-19
>
jumar15:01:02

I'm getting this error when trying to run cider-jack-in for a deps.edn project:

cider-clojure-cli-jack-in-dependencies: Wrong type argument: sequencep, :dev
I have quite minimal deps.edn
{:paths ["src"]
 :deps {org.clojure/clojure {:mvn/version "1.11.0-alpha4"}
        medley/medley {:mvn/version "1.3.0"}
        cheshire/cheshire {:mvn/version "5.10.1"}
        }
 }
I have this config in custom-set-variables in .spacemacs
'(cider-clojure-cli-aliases :dev)
And in ~/.clojure/deps.edn:
:aliases
 {
  :new {:extra-deps {com.github.seancorfield/clj-new
                     {:mvn/version "1.2.362"}}
        :exec-fn clj-new/create
        :exec-args {:template "app"}}

  ;; this is the alias used by cider - customized via `(cider-clojure-cli-aliases :dev)` (see .spacemacs)
  :dev {:jvm-opts [...
The strange thing is that it works just fine in another project/folder.

practicalli-john22:01:39

As another project runs okay from CIDER, then it would seem more likely an issue with this particular project. I suggest running a terminal REPL process from the command line, ie. clojure, in the root of the project director that is not starting. That may help identify if its the project or cider at fault. If its the project, try delete .cpcache If not, check the Emacs messages buffer, SPC b m to see if something is not right with the clojure command line that was assembled to run the REPL from CIDER. The ~/.clojure/deps.edn snippet doesnt show the details of the :dev alias, but I cant see anything obvous with any of the other code I assume the other project is using the same version of org.clojure/clojure dependency

jumar09:01:08

@U05254DQM Thanks for the advice. I had an extra paren in the deps.edn file (I'm not sure if it was there from the beginning or only after I simplified it).

Error building classpath. Error reading edn. Unmatched delimiter: } (/Users/jumar/workspace/empear/src/codescene/cloud-infra/deps.edn)
Nevertheless - I fixed it and clojure now works when running from command line. However, emacs is still reporting the same error (there's nothing more in the messages buffer)
Starting new CIDER session ...
cider-clojure-cli-jack-in-dependencies: Wrong type argument: sequencep, :dev
If I remove the :dev alias from .spacemacs config (comment out '(cider-clojure-cli-aliases :dev) )then it works but I'd really like to have it.

practicalli-john10:01:40

@U06BE1L6T I wonder if the same issue occurs if the :dev alias is included via a .dir-locals.el https://practical.li/spacemacs/clojure-projects/project-configuration.html

practicalli-john10:01:46

This is the approach I have taken to include aliases by default. I assume the alias could also be set via a layer variable on the Clojure layer. Although none of that explains why it works for one project and not another. You could try renaming the user level alias to something like :env/dev and set that as the default alias, to ensure the right alias is being used (and not some local alias), but that seems unlikely

jumar10:01:55

Thanks for the suggestions. I'll try these a bit later 🙂

practicalli-john10:01:23

I define the :dev alias as a string when setting as a default value. I don't think that would be the issue, but I can't think what else to try.