It's likely that the alias vector provides additional arguments that
change the semantics of the invocation, so blindly propagating the
docstring would be misleading.
This fixes pass-through-help when used on vector valued aliases. Ex:
:aliases {"a" ^:pass-through-help ["run" "-m" "some.core"]
"b" ^:any-meta ["a"]}
The meta on task b will be `{:pass-through-help true, :any-meta true}`.
As described in #1695, the `^:replace` metadata for the
`:repositories` section of the project file stopped working
around 2.4.0 (commit 17e91e6).
This commit adds a failing test that illustrates the
behavior.
Adds :leaky and :pom-scope metadata for profiles. The :dev, :test,
:base and :provided profiles are implemented in terms of these.
Profiles with :leaky metadata affect the pom and jar creation.
Profiles with a :pom-scope metadata of :test or :provided also affect
the dependencies of a pom.
I decided to leave some messages alone. Specifically
* messages which look like stacktraces
* messages which instruct the user to take some sort of action
Arguably the stacktraces should go to stderr but I thought I'd leave
those open for discussion. Any others that remain represent errors on
my part.
Still get a couple warnings... We don't really care about the
unlimited-use warnings from clojure.test, and there are a couple
warnings we get stemming from bugs/limitations in Eastwood.
This mainly addresses the fact that the following two commands generate
different output:
$ lein pom
$ lein with-profile default pom
I believe the problem also affects uberjar, since both tasks unmerge
:default prior to doing their thing.
Version 2.3.4 generates the same output for the above two commands,
because it doesn't expand profiles in the with-profile task, as master
does. So this change attempts to only deal with fully-expanded profiles
when [un]merging them.
By default, leiningen makes the following transformation:
lein TASK_NAME --help → lein help TASK_NAME
For tasks that implement a help, this is inconvenient. This patch
disables this transformation for task vars and alias values marked with
the meta: :pass-through-help true
I believe the :profiles metadata was introduced after this function was
written, so this update makes its comment -- "available to merge by
name" -- true again.
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
by making it just parse the task source code files instead of actually
requiring/compiling them (second try).
This results in a 70% speed improvement on my machine (14s to 4s).
0 arg task arglist was printing as `""` since passing `[project]` to
`next` resulted in `nil` which prints as `""`. Used `(comp vec next)`
instead to force it into `[]` which prints as `"[]"`.