This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-02-12
Channels
- # announcements (32)
- # aws (7)
- # babashka (2)
- # babashka-sci-dev (1)
- # beginners (25)
- # biff (1)
- # calva (1)
- # cider (27)
- # clj-kondo (15)
- # clojure (24)
- # clojure-berlin (1)
- # clojure-czech (4)
- # conjure (9)
- # cursive (7)
- # datalevin (1)
- # emacs (19)
- # events (1)
- # gratitude (1)
- # integrant (1)
- # introduce-yourself (2)
- # java (4)
- # meander (17)
- # membrane (4)
- # podcasts (1)
- # releases (1)
- # remote-jobs (2)
- # ring-swagger (8)
- # shadow-cljs (14)
- # testing (1)
- # tools-build (5)
- # tools-deps (3)
The latest 2.17.1 throws me an error when I have a namespace aliased as foo
and also refers to a foo
symbol
(ns myapp.my-ns
(:require [myapp.ns1 :as foo]
[myapp.ns2 :refer [foo]]))
;; how i use them:
foo/var1 ;; resolves to myapp.ns1/var1
foo ;; resolves to myapp.ns2/foo
"Error: The alias foo is already used for namespace myapp.ns1"
Reverting to 2.16.12 has no such issue.I need help figuring out how to configure dependencies when having three direct dependencies that all want different version of a transitive dependency. Specifically they all depend on different version of rewrite-clj
. I naively thought this would just work, but it seems the three dependencies get to share the same version of rewrite-clj
.
I can almost get it to work by reordering the dependencies. But one of them is extra tricky. It doesn't even need rewrite-clj,
because I am only really using rewrite-cljs
... Trying this, but it doesn't work:
[pez/cljfmt "0.0.5-SNAPSHOT" :exclusions [rewrite-clj]]
Wait, I'm thinking about it in the wrong way, right? It is not so much the library name that clashes, it's the top namespace. Hmmm. Is a solution to let Leiningen handle deps and use mranderson?
easiest way is to just configure the rewrite-clj version you need in your dependencies