/versions

Versions to be used across subprojects

README

tape.versions

About

deps.edn versions to be used across subprojects.

Usage

You should be familiar with Clojure’s Deps and CLI.

Subproject deps

In the subproject deps.edn declare local dependencies, and for versioned dependencies leave the coordinates empty. Ex:

deps.edn
{:deps {me.raynes/fs {} ;; empty, omit :mvn/version "x.y.z"
        some/local {:local/root "../local"}}}

Project-wide versions

In versions/deps.edn add your project-wide deps versions as overrides. Ex:

deps.edn
{:aliases
 {:versions
  {:override-deps
   {me.raynes/fs {:mvn/version "1.4.6"}
    ...}}}}

CLI run

Set /versions dir as your CLJ_CONFIG, and prepend the versions alias. Ex:

shell
cd <subproject>
CLJ_CONFIG=../versions clj -A:versions:<other>:<aliases> <and> <arguments>

Credits

License

Copyright © 2020 clyfe

Distributed under the MIT license.