LonoCloud / lein-voom

Tool for generating artifacts versioned on the most recent git commit sha and commit time.
Eclipse Public License 2.0
97 stars 14 forks source link

voom will not work from project.clj plugins #65

Open hukka opened 6 years ago

hukka commented 6 years ago

The documentation does tell the user that voom should be set up in the leiningen profiles.clj. But it doesn't explicitly tell that using it in project.clj will fail with:

Calling recursive build-deps on: /home/voomuser/.voom-repos/aHR0cHM6Ly9naXRodWIuY29tL3N0ZXBoZW53YXkvY2xqcy1tYXRlcmlhbC11aQ==
WARNING: You have $CLASSPATH set, probably by accident.
It is strongly recommended to unset this before proceeding.
'voom' is not a task. See 'lein help'.

Did you mean this?
         pom
Failed to resolve dependency: lein voom install error
{:exception-data
 {:exit 1,
  :cmd
  ["lein"
   "voom"
   "wrap"
   ":insanely-allow-dirty-working-copy"
   ":expected-version--1.0.01-20180706_214429-g7c4e777"
   "install"]}}

(as encountered in #60 too).

This is quite surprising, as usually you can configure lein plugins for the whole project, especially when other parts of the build/configuration depend on the plugin.

abrooks commented 6 years ago

Hm. I recall that this used to work. I wonder if this is related to one of the newer Leiningen changes. Can you provide the version of Leiningen that you are running and an example project.clj that exhibits the failing case?

Thanks!

abrooks commented 6 years ago

I figured out why I thought this used to work. It works if you also have it set in your system or user level profile.clj. This is a tricky thing if an upstream dependency project requires voom to build but doesn't require it directly.

I've had ideas about fixing this but it's fairly big in scope. I'll mark this as a documentation bug and create a separate issue for tracking the larger fix.