When creating a new luminus app with the following command:
lein new luminus my-app +reitit +re-frame +shadow-cljs +postgres
And running
lein uberjar
The compilation fails:
Compiling my-app.config
Compiling my-app.core
Compiling my-app.db.core
Compiling my-app.env
Compiling my-app.handler
Compiling my-app.layout
Compiling my-app.middleware
Compiling my-app.middleware.formats
Compiling my-app.nrepl
Compiling my-app.routes.home
Compiling my-app.validation
Syntax error compiling at (struct/core.cljc:218:31).
Syntax error compiling at (struct/core.cljc:218:31).
No such var: str/parse-number
Full report at:
/tmp/clojure-6721617795244421863.edn
There was no such error in an older luminus app I run, so I compared the project.clj files and realized that [funcool/cuerdas "2021.05.29-0"] overrides a transient dependency of [funcool/struct "1.4.0"], which relies on [funcool/cuerdas "2.2.0"].
If I remove the reference to cuerdas from the project.clj file, everything works as expected.
Thanks for the report, that does look like a break in the API that I missed unfortunately. I've rolled back the template for now and submitted a patch for struct to address the issue.
When creating a new luminus app with the following command:
lein new luminus my-app +reitit +re-frame +shadow-cljs +postgres
And running
lein uberjar
The compilation fails:
There was no such error in an older luminus app I run, so I compared the
project.clj
files and realized that[funcool/cuerdas "2021.05.29-0"]
overrides a transient dependency of[funcool/struct "1.4.0"]
, which relies on[funcool/cuerdas "2.2.0"]
. If I remove the reference tocuerdas
from the project.clj file, everything works as expected.It seems to be a recent addition, so I'd expect only version 4.17 to be affected: https://github.com/luminus-framework/luminus-template/commit/0ff6cd9170bac6f1d813db80bd7b14e2629907a5