Skip to content
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

Unable to resolve symbol key-vec in lein reagent template #123

Open
kasbah opened this issue Oct 31, 2024 · 2 comments
Open

Unable to resolve symbol key-vec in lein reagent template #123

kasbah opened this issue Oct 31, 2024 · 2 comments

Comments

@kasbah
Copy link

kasbah commented Oct 31, 2024

I am able to reliably reproduce the error when adding konserve as dependency to a lein reagent project:

Syntax error compiling at (konserve/filestore.clj:585:25).
Unable to resolve symbol: key-vec in this context

Method 1

Generate an example project from template

lein new reagent example +test

Add the konserve dependency and create a new test file importing it:

diff --git a/project.clj b/project.clj
index 44cb038..a9b2db9 100644
--- a/project.clj
+++ b/project.clj
@@ -18,6 +18,7 @@
                   :scope "provided"]
                  [metosin/reitit "0.5.18"]
                  [pez/clerk "1.0.0"]
+                 [io.replikativ/konserve "0.7.317"]
                  [venantius/accountant "0.2.5"
                   :exclusions [org.clojure/tools.reader]]]
 
diff --git a/test/example/test.clj b/test/example/test.clj
new file mode 100644
index 0000000..04361a9
--- /dev/null
+++ b/test/example/test.clj
@@ -0,0 +1,3 @@
+(ns example.test
+  (:require [konserve.filestore :refer [connect-fs-store]]
+            [konserve.core :as k]))

Run tests:

lein test

Method 2

Alternatively you can grab the repo I made:

git clone https://github.com/kasbah/konserve-key-vec-repro
cd konserve-key-vec-repro
lein test

Additional info

$ clojure --version
Clojure CLI version 1.12.0.1479
$ lein --version
Leiningen 2.11.2 on Java 11.0.25 OpenJDK 64-Bit Server VM
@kasbah
Copy link
Author

kasbah commented Oct 31, 2024

Was able to narrow it down to something in these deps/config. If I delete this it seems fine in terms of test (of course cljs dev workflow is probably broken):

--- a/project.clj
+++ b/project.clj
@@ -17,7 +17,6 @@
                  [org.clojure/clojurescript "1.11.54"
                   :scope "provided"]
                  [metosin/reitit "0.5.18"]
-                 [pez/clerk "1.0.0"]
                  [io.replikativ/konserve "0.7.317"]
                  [venantius/accountant "0.2.5"
                   :exclusions [org.clojure/tools.reader]]]
@@ -100,14 +99,12 @@
                                   [ring/ring-mock "0.4.0"]
                                   [ring/ring-devel "1.9.5"]
                                   [prone "2021-04-23"]
-                                  [figwheel-sidecar "0.5.20"]
                                   [nrepl "0.9.0"]
                                   [thheller/shadow-cljs "2.16.7"]
                                   [pjstadig/humane-test-output "0.11.0"]
                                   
  ]
 
-                   :source-paths ["env/dev/clj"]
                    :plugins [[lein-figwheel "0.5.20"]
                              [lein-doo "0.1.10"]

@pkpkpk
Copy link
Contributor

pkpkpk commented Oct 31, 2024

Try excluding core async from pez/clerk, maybe set core async latest as an override dep

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants