This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-09-18
Channels
- # announcements (1)
- # babashka (15)
- # beginners (152)
- # calva (28)
- # circleci (1)
- # clj-kondo (24)
- # cljsrn (8)
- # clojure (137)
- # clojure-berlin (3)
- # clojure-czech (2)
- # clojure-dev (20)
- # clojure-europe (69)
- # clojure-finland (5)
- # clojure-france (3)
- # clojure-italy (11)
- # clojure-my (1)
- # clojure-nl (4)
- # clojure-uk (15)
- # clojuredesign-podcast (1)
- # clojurescript (13)
- # conjure (15)
- # cursive (13)
- # datomic (41)
- # deps-new (50)
- # events (1)
- # fulcro (9)
- # graalvm (27)
- # joker (2)
- # kaocha (11)
- # off-topic (22)
- # pathom (48)
- # rdf (6)
- # reagent (25)
- # reitit (47)
- # reveal (10)
- # ring-swagger (1)
- # rum (4)
- # sci (27)
- # shadow-cljs (73)
- # tools-deps (49)
- # vrac (2)
- # xtdb (4)
i'm getting an error with clj -A:new -M:new lib mccraigmccraig/blah
...
Error building classpath. Could not transfer artifact org.codehaus.plexus:plexus-utils:jar:3.2.1 from/to central (
does that sound familiar to anyone ? any clues on how to debug it ? i'm a complete clj-new
n00b, so could easily be rookie error
What is your :new
alias @mccraigmccraig?
{:extra-deps {seancorfield/clj-new {:mvn/version "1.0.211"}}
:main-opts ["-m" "clj-new.create"]}
also tried with
{:new {:extra-deps {seancorfield/clj-new
{:mvn/version "1.1.216"}}
:main-opts ["-m" "clj-new.create"]}}
actually, 1.1.216
was the version that gave me the error above... then i started casting around and had a go with the version from practically/clojure-deps.edn
which is 1.0.211
I've never seen that error before -- and it's just a dependency fetching failure inside Clojure/tools.deps.alpha
It's not specific to clj-new
beyond trying to pull in dependencies.
hmm. could it be clj
version related ?
I don't know what pulls in the plexus utils JAR. Something deep in Leiningen I suspect (since clj-new
handles Leiningen templates by reusing some Leiningen code).
wow, looking at the plexus homepage and wondering why on earth that's getting pulled in
I would try rm -rf ~/.m2/repository/org/codehaus/plexus
and then try clojure -Sforce -Sdeps '{:deps {seancorfield/clj-new {:mvn/version "1.1.216"}}}'
(which is the latest version)
Ah, it's a dependency of org.clojure/tools.deps.alpha
-- because that depends on maven-core
which in turn depends on plexus-utils
huh, well now i get Error building classpath. Could not transfer artifact org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.3.4 from/to central (
What does clojure -Sdescribe
say?
{:version "1.10.1.561"
:config-files ["/usr/local/Cellar/clojure/1.10.1.561/deps.edn" "/Users/mccraig/.clojure/deps.edn" ]
:config-user "/Users/mccraig/.clojure/deps.edn"
:config-project "deps.edn"
:install-dir "/usr/local/Cellar/clojure/1.10.1.561"
:config-dir "/Users/mccraig/.clojure"
:cache-dir "/Users/mccraig/.clojure/.cpcache"
:force false
:repro false
:resolve-aliases ""
:classpath-aliases ""
:jvm-aliases ""
:main-aliases ""
:all-aliases ""}
You're on the stable CLI. I wonder if the problem is that the latest clj-new
depends on a newer t.d.a.?
OK, try
clojure -Sforce -Sdeps '{:deps {seancorfield/clj-new {:mvn/version "1.0.211"}}}'
and see if that worksoops 1.0.211
That version still uses the older t.d.a.
nope... still getting Error building classpath. Could not transfer artifact org.eclipse.sisu:org.eclipse.sisu.plexus:jar:0.3.4 from/to central (
rm -rf ~/.m2/repository/org/eclipse/sisu
and try it again.
now we're getting somewhere... that gives me a repl
OK, so that's cleaned things out. You should be able to create a new lib/app with 1.0.211 now.
is that a common thing to have to do, removing things from ~/.m2
... i don't recall ever needing to do that with lein
or boot
?
Only needed because Maven messed up fetching artifacts under the hood.
I've had to do it with lein
and with boot
over the years.
ok, cool - i've got a new project now - thanks @seancorfield!
Strange that conflicting t.d.a. versions caused that error since both t.d.a. versions bring in the exact same versions of that part of the tree...
And I can't reproduce your issue when I use the stable CLI and the very latest clj-new
(which forces the newer t.d.a into the mix)... so I've no idea what caused your issue but I suspect it's more a Maven/t.d.a thing that anything else.
/usr/local/Cellar/clojure/1.10.1.561/bin/clojure -Sforce -Sdeps '{:deps {seancorfield/clj-new {:mvn/version "1.1.216"}}}' -Stree
That works fine for meMy current CLI is 1.10.1.681
that -Stree
command is now working fine for me too
Yes, I was just using that to verify versions being downloaded.
and latest clj-new
if working fine for me now too, so :man-shrugging:
Almost certainly a Maven-related glitch then. "Here be dragons"
I was fairly certain I'd tested the latest clj-new
on the stable CLI before making a release, so that's good to know you have it working now 🙂
if only they were more exciting 🐉 than maven 🐉
So are you just getting started with the CLI / deps.edn
stuff?
yep, i've got a couple of hours with nobody around so i thought i'd have a hack on some new stuff, and while i'm at it i might as well use the opportunity to have a go with deps.edn
i'll probably want to move the day-job stuff over to deps.edn
at some point, but that's a complex multi-module build in a monorepo so i probably want to have some idea of what i'm doing before i try that
Happy to chat about that (on channel or via DM) since we have a huge monorepo with three dozen subprojects that we have moved from lein
to boot
and then to CLI/`deps.edn` @mccraigmccraig
Well, "huge" is "around 100k lines"
Clojure build/config 61 files 1082 total loc
Clojure source 329 files 81251 total loc,
3364 fns, 838 of which are private,
504 vars, 28 macros, 89 atoms,
655 specs, 33 function specs.
Clojure tests 359 files 22680 total loc,
4 specs, 1 function specs.
thanks @seancorfield - i'll probably take you up on that once i have some idea of the landscape
Any time. You know where to find me 🙂
our app is probably a similar amount of clojure, but with a clojurescript front end thrown in too
Ah, we have zero ClojureScript right now. But we're talking about using it on the next front end app we build... maybe...
Our last experiment with cljs was 2014/2015 just after Reagent appeared and we tried Om and then Reagent but decided it really wasn't ready for production usage back then (fragile and fast-changing tooling, lots of annoying differences between clj and cljs, etc).
it's pretty good these days - much more robust tooling. shadow certainly seems to help
Yup, I started working through Yogthos' Web Development book (3rd ed) and it seems night and day compared to my previous experience.