You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
lein-tools-deps currently works by asking tools.deps to resolve all dependencies before adding them and all their transitive dependencies flattened into leiningen's :dependencies vector.
This guarantees leiningen picks the same versions of transitive dependencies as tools.deps, but it does mean if you're using lein-tools-deps to produce a library, all your transitive dependencies are lifted; which makes resolving dependencies conflicts through :exclusions etc much harder for your consumers.
@favila suggested a potential solution to this, which is to load all deps into :managed-dependencies and just the immediate roots from deps.edn into :dependencies. This should both guarantee the same resolution, and preserve the hierarchy of the transitive dependency tree, and make lein-tools-deps much more suitable for publishing libraries.
The text was updated successfully, but these errors were encountered:
lein-tools-deps
currently works by askingtools.deps
to resolve all dependencies before adding them and all their transitive dependencies flattened into leiningen's:dependencies
vector.This guarantees leiningen picks the same versions of transitive dependencies as
tools.deps
, but it does mean if you're usinglein-tools-deps
to produce a library, all your transitive dependencies are lifted; which makes resolving dependencies conflicts through:exclusions
etc much harder for your consumers.@favila suggested a potential solution to this, which is to load all deps into
:managed-dependencies
and just the immediate roots fromdeps.edn
into:dependencies
. This should both guarantee the same resolution, and preserve the hierarchy of the transitive dependency tree, and makelein-tools-deps
much more suitable for publishing libraries.The text was updated successfully, but these errors were encountered: