Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix dev repl classpath #45

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

moquist
Copy link
Member

@moquist moquist commented Jan 29, 2015

Adds the following dependencies via profiles:

  • :leiningen-core-2.5.1 profile dep on leiningen-core "2.5.1"
  • :clojure-1.5 depends on clojure 1.5.0
  • :clojure-1.6 depends on clojure 1.6.0

Before this change, project.clj does not depend directly on everything necessary to start a REPL. 'lein repl' pulls in all of leiningen's own dependencies and therefore works, but the following does not:
$ java -cp lein classpath clojure.main -r
Clojure 1.2.0 ; <--- note clojure version!
user=> (require 'leiningen.voom)
;; ...error message related to missing clojure.edn

With these new profiles, the following succeeds:
$ java -cp lein with-profile leiningen-core-2.5.1,clojure-1.5 classpath clojure.main -r

This issue only affects lein-voom development itself, so relegating these dependencies to these profiles should be sufficient.

* :dev profile dep on leiningen-core "2.5.1"
* :clojure-1.5 dep on clojure 1.5.0
* :clojure-1.6 dep on clojure 1.6.0

Before this change, project.clj does not depend directly on everything necessary
to start a REPL. 'lein repl' pulls in all of leiningen's own dependencies and
therefore works, but the following does not:
  $ java -cp `lein classpath` clojure.main -r
  Clojure 1.2.0                 ; <--- note clojure version!
  user=> (require 'leiningen.voom)
  ;; ...error message related to missing clojure.edn

With these new profiles, the following succeeds:
  $ java -cp `lein with-profile dev,clojure-1.5 classpath` clojure.main -r

This issue only affects lein-voom development itself, so relegating these
dependencies to these profiles should be sufficient.
This removes the dependency on leiningen-core "2.5.1" from the :dev profile and
puts it in its own :leiningen-core-2.5.1 profile. In contrast to :dev, the
:leiningen-core-2.5.1 profile must be requested explicitly, so that (for
example) 'lein repl' will work in the future without manually specifying a new
version of leiningen-core in the :dev profile.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant