Commit graph

1035 commits

Author SHA1 Message Date
Chris Price
403e96a51e (#1695) Respect priority when merging defaults
This commit adds an extra condition at the beginning of the
`setup-map-defaults` function, such that if one of the two
items being merged has a higher priority than the other,
it is honored.

This seems to fix the issue where the `^:replace` metadata
was not working properly
2014-10-18 15:44:54 -07:00
Chris Price
1354f15877 (#1695) Add failing test for repository replace
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.
2014-10-18 15:24:53 -07:00
Phil Hagelberg
fa64351359 Merge pull request #1704 from hugoduncan/feature/add-task-profile-meta
Allow multiple repl task profiles
2014-10-11 20:12:43 -07:00
Phil Hagelberg
37f3c2535f Merge pull request #1696 from hugoduncan/fix-profiles-on-aliases
Fix with-profile alias changes
2014-10-11 20:10:02 -07:00
Dante Briones
ba2588de28 Bump to version 2.7 (latest) of Maven wagon-http. 2014-10-07 10:15:08 -07:00
Dante Briones
15f6832813 Upgrade wagon-http to version 2.6 2014-10-03 15:26:47 -07:00
Jean Niklas L'orange
93400c7a00 Merge pull request #1705 from dthume/RemovePrintlnFromGitFileContents
Remove println from leiningen.core.utils/git-file-contents
2014-09-22 13:22:57 +02:00
Jean Niklas L'orange
9cbb7df75a Back to snapshot. 2014-09-22 13:19:10 +02:00
David Thomas Hume
903dfd824f Remove println 2014-09-22 09:50:55 +01:00
Hugo Duncan
e946ad112f Allow multiple repl task profiles
The :repl profile does not compose well when specified in both
project.clj and profiles.clj files.

Merge all profiles with ^:repl metadata in the repl task.  This allows
multiple profiles to be applied for the repl task.
2014-09-21 10:19:04 -04:00
Hugo Duncan
7baeb2bce5 Add profiles-with-matching-meta
Function to return a sequence of profile keywords for all project
profiles with metadata matching a predicate.
2014-09-21 10:17:37 -04:00
Hugo Duncan
3150dc0fd8 Preserve metadata on profiles from profiles.clj
Preserve any metadata on profile maps specified in project.clj files.
2014-09-21 10:06:09 -04:00
Hugo Duncan
c2cc98e660 Add tests for with-profile 2014-09-16 09:16:13 -04:00
Hugo Duncan
d684019b46 Factor out default-project
Pulls the default project used when not in a directory into a separate
function, so it can be used in tests.
2014-09-16 09:16:12 -04:00
Phil Hagelberg
c78a8110a8 Release 2.5.0 2014-09-14 21:26:56 -07:00
Phil Hagelberg
7cca27e54a Depend directly on nrepl/clojure-complete.
[ci skip]
2014-09-14 20:52:09 -07:00
Jean Niklas L'orange
9e980b0f8a Bump nREPL version to 0.2.6 2014-09-15 01:26:18 +02:00
Jean Niklas L'orange
c362ae4bc2 Merge pull request #1691 from technomancy/fix-erroneous-shell-command-form
Fix negation in shell-command form.
2014-09-14 01:29:15 +02:00
Jean Niklas L'orange
2c8c5dcb5f Fix erroneous shell command form, fixes #1683. 2014-09-13 16:11:59 +02:00
Phil Hagelberg
23a772bfc2 Uberjar profile needs to be leaky too. 2014-09-10 16:25:25 -07:00
Hugo Duncan
bcb4e5af21 Propagate metadata on composite profiles
When metadata is specified on a composite profile, propagate the
metadata to the profiles it is composed of.
2014-09-10 07:00:36 -04:00
Phil Hagelberg
9def660852 Bump to 2.5.0-SNAPSHOT. 2014-09-09 16:26:47 -07:00
Phil Hagelberg
9a0448041a Rename :core-default to :leiningen/default. 2014-09-09 16:24:12 -07:00
Hugo Duncan
2da05e6356 Add profile metadata
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.
2014-09-09 13:27:49 -04:00
Jean Niklas L'orange
400ad40c44 Test higher order aliases. 2014-09-09 02:13:26 +02:00
Jean Niklas L'orange
66926d3b5d Implement higher order aliases, closes #1678. 2014-09-09 02:13:18 +02:00
Phil Hagelberg
e13ccd7a5c Use plugin name for reading profiles for now.
This is for consistency with reading middleware/hooks. In the future it
might be nice to honor the group-id as well.
2014-09-08 11:17:09 -07:00
Phil Hagelberg
a206b0b1a2 Call load-plugins twice to fix chicken/egg problem.
Need to do this in order to support loading profiles from plugins but
also loading plugins from the :user and :system profiles.

fixes #1679
2014-09-08 11:01:39 -07:00
Phil Hagelberg
c8806ff12e Revert addition of :downstream profile.
We need to revisit this in a way that doesn't involve hard-coding
profile names into the jar and pom tasks. The question of whether the
profile should be visible to downstream consumers should be determined
by data that's part of the profile (or metadata).
2014-09-08 10:05:21 -07:00
Phil Hagelberg
df3f67269f Merge pull request #1676 from timmc/alt-jvm-encoding
Allow $LEIN_JVM_OPTS to override -Dfile.encoding
2014-09-08 09:51:06 -07:00
Tim McCormack
6696f11341 Allow JVM file.encoding to be overridden by anything.
This allows profiles to set a -Dfile.encoding. Later, perhaps in 3.0,
JVM_OPTS should perhaps be moved farther down the list (along with
:jvm-opts?) -- but that could be a breaking change. (Environment is
sometimes set locally, sometimes set globally.)
2014-09-08 09:17:06 -04:00
Nelson Morris
c142b24598 Show pedantic warnings and use profile merging to let deps :tree warn correctly 2014-09-07 20:42:48 -05:00
Phil Hagelberg
58df6c31ad Merge branch 'profiles-from-plugins' 2014-09-06 10:54:47 -07:00
Phil Hagelberg
577e34919b Merge remote-tracking branch 'hugoduncan/fix-unmerge-with-meta-profiles' into profiles-from-plugins
Conflicts:
	src/leiningen/pom.clj
2014-09-05 20:47:02 -07:00
Phil Hagelberg
a9cf70e160 Revert "Apply profiles from middleware in main"
This reverts commit fe1be7d2dc.

Conflicts:
	leiningen-core/src/leiningen/core/main.clj
	leiningen-core/src/leiningen/core/project.clj
2014-09-05 20:28:17 -07:00
Phil Hagelberg
6a7a35d062 Make leiningen.core.project/read init the project.
Add a raw-read alternative that reads without initializing.

This solves a certain chicken/egg problem with wanting to read profiles
from plugins before the plugins had been loaded.
2014-09-05 20:24:20 -07:00
Phil Hagelberg
0a8c0aaee6 Rename :project profile to :downstream. 2014-09-05 20:24:06 -07:00
Phil Hagelberg
e13312d344 Merge remote-tracking branch 'hugoduncan/feature/add-project-profile' into profiles-from-plugins 2014-09-05 19:29:35 -07:00
Phil Hagelberg
ec01608956 Fix loading profiles from plugins.
This does it too late in the process for plugin profiles to be
referenced from :default, but it's a start.
2014-09-05 09:24:33 -07:00
Phil Hagelberg
e9c9ff4883 Document in-plugin profiles. 2014-09-04 19:25:58 -07:00
Jean Niklas L'orange
f95a10d79b Use warn instead of println for warnings.
For classpath in lein-core.
2014-09-04 19:19:56 +02:00
Colin Jones
6fb558ad19 Bump nREPL & REPLy versions (to 0.2.5 & 0.3.5)
closes #1658
2014-09-04 09:42:39 -05:00
Phil Hagelberg
c12f9df081 Allow profiles to be loaded out of plugins.
Still needs testing.

Fixes #1672.
2014-09-02 18:52:35 -07:00
Hugo Duncan
fe1be7d2dc Apply profiles from middleware in main
When loading the project, ensure that profiles contributed by middleware
are correctly applied.
2014-09-01 07:29:23 -04:00
Hugo Duncan
7b8c1521ff Add a :project profile
The :project profile is not un-merged when building a jar or generating
a pom, so can be used to alter the basic layout of a project.

This allows plugins such as cljx and cljsbuild to provide profiles that
the project can choose to use to set source-paths, etc, leading to less
error-prone configuration in common use cases.

Fixes #1665
2014-09-01 07:03:58 -04:00
Hugo Duncan
8389a0b928 Fix pom with non-default :default profile
Unmerge expanded its profiles based on the profiles in the project
map (which don't include :default), rather than profiles in the
:profiles metadata.

The :default keys were also hard coded in the pom generation, so ignored
any additions.

This is in support of https://github.com/lynaghk/cljx/pull/48
2014-08-30 16:56:07 -04:00
Phil Hagelberg
2803647bc4 Move :pedantic setting to default map; displace it.
Fixes #1653.
2014-08-21 10:54:19 -07:00
Nelson Morris
fc6cb17002 Bump pedantic version
I've redone some of the internals of the pedantic library, so it should
be more efficent and has better documentation.

Fixes #1491
2014-08-16 18:01:40 -05:00
Jean Niklas L'orange
d3304f6ea4 Don't read git files if they are unreadable.
Also print warnings if the file is not readable. Fixes #1585.
2014-08-09 01:42:09 +02:00
Phil Hagelberg
6d79dcfedc Bump version number up to 2.4.4-SNAPSHOT. 2014-08-05 16:21:34 -07:00
Phil Hagelberg
983847276d Release 2.4.3 2014-08-05 16:03:18 -07:00
Phil Hagelberg
8b9d66cd7c Allow implicit hooks/middleware to be disabled.
Fixes #1621.
2014-08-05 15:35:00 -07:00
Manfred Moser
e0ad0db0d6 switching to https for the central repo 2014-08-01 16:12:51 -07:00
Hugo Duncan
eaffda3082 Add LEIN_NO_USER_PROFILES to avoid user profiles
When set, this environment var will prevent user level profiles from
loading.
2014-08-01 11:18:43 -04:00
Roger Allen
80f1418110 Fix for issue 1607
Instead of always using a regex to try to match the native-names keys
when doing a get-os or get-arch call, use a get-with-pattern-fallback
function to first try the exact match and only if that fails, use
get-by-pattern.  This prevents matching "x86_64" with "x86" when
"x86_64" is the better match.
2014-07-21 22:52:33 -07:00
Gary Fredericks
94601082e4 Fix the test that's been failing on Travis
The problem was something to do with the project map being too
bare. Switching to `defproject` fixes it.
2014-07-07 13:28:43 -05:00
Phil Hagelberg
8b98d68cdd Default to warning when version ranges are present.
Fixes #1374.
2014-07-04 10:51:24 -07:00
Phil Hagelberg
0621161473 Merge pull request #1584 from MichaelBlume/report-bad-filename
when opening a JarFile, report name of file in any errors
2014-07-02 22:15:51 -07:00
Mike Blume
71e5e95e13 when opening a JarFile, report name of file in any errors
java.util.JarFile. can fail without reporting the name of the file it's
operating on. If you have a jarfile that isn't a valid zip, this can be
confusing.
2014-07-02 16:15:19 -07:00
Phil Hagelberg
3e6d3876ad Better message when task ns exists, but not task function. Fixes #1299. 2014-06-17 13:19:27 -07:00
Phil Hagelberg
4b6eb01cf1 Fix LEIN_FAST_TRAMPOLINE path. Fixes #1562. 2014-06-16 13:05:27 -07:00
Phil Hagelberg
e6b620cabe Fix bad eval test. 2014-06-15 17:24:55 -07:00
Phil Hagelberg
e738fec65c Bump version to 2.4.3-SNAPSHOT. 2014-06-15 17:24:48 -07:00
Phil Hagelberg
f73a9998ff Release 2.4.2 2014-06-15 17:14:10 -07:00
Phil Hagelberg
efc00172b7 Fix leiningen.core.ssl lazy-load. 2014-06-15 17:06:07 -07:00
Phil Hagelberg
b74910600b Fix write-pom-properties to work when outside project dir. 2014-06-15 17:05:13 -07:00
Phil Hagelberg
10d3b098ed Bump version to 2.4.2-SNAPSHOT. 2014-06-15 17:03:58 -07:00
Phil Hagelberg
3f9ecd6cb7 Release 2.4.1 2014-06-15 16:48:22 -07:00
Phil Hagelberg
d1a634fc4e Move make-project-properties to leiningen.core.project. 2014-06-15 16:43:36 -07:00
Phil Hagelberg
12ec7b9200 Write pom.properties in :prep-tasks, not during jar creation. 2014-06-13 16:09:36 -07:00
Phil Hagelberg
b9298323cc Put a newline in between META-INF/services/ entries.
Refs #1561.
2014-06-13 15:44:52 -07:00
Phil Hagelberg
392db32003 Don't load clojars cert in default project map. 2014-06-13 12:16:33 -07:00
Phil Hagelberg
f937116912 Update bundled clojars.pem.
Extracted with: openssl s_client -connect clojars.org:443
2014-06-13 12:14:37 -07:00
Phil Hagelberg
03bd2ee154 Lazy-load leiningen.core.ssl. 2014-06-13 12:14:37 -07:00
Gary Fredericks
04ef2fc621 correct Unnecessary capitalization 2014-06-12 22:45:17 -05:00
Phil Hagelberg
cf488b3edf Merge pull request #1556 from gfredericks/issue-1555
[DO NOT MERGE] Add regression test for #1555
2014-06-11 11:17:47 -07:00
Gary Fredericks
e5351155bf Add regression test for #1555 2014-06-11 12:58:42 -05:00
Phil Hagelberg
da2e50042f Don't meta-merge a project into itself.
Should fix #1555.
2014-06-10 12:13:38 -07:00
Phil Hagelberg
e5a994ab6e Bump to 2.4.1-SNAPSHOT. 2014-06-09 16:33:24 -07:00
Phil Hagelberg
dfaa2dfe43 Release 2.4.0 2014-06-09 16:17:48 -07:00
Phil Hagelberg
213e20ba20 Fix release task to use resolve-and-apply as its entry point.
This should be used by all tasks that try to run other tasks as if
they were invoked directly, which really isn't clear at all.
2014-06-08 15:15:45 -07:00
Phil Hagelberg
f8711c48e3 Fix splicing for partial aliases. 2014-06-08 15:12:29 -07:00
Phil Hagelberg
2fbec2be5e Allow project values to be spliced into alias invocations. 2014-06-08 12:48:58 -07:00
Phil Hagelberg
353d73912c Allow for plugins to override built-in tasks. 2014-06-05 12:08:06 -07:00
Phil Hagelberg
d8634b2272 Pass a stringed symbol into bump-version instead of a keyword. 2014-05-27 16:37:59 -07:00
Phil Hagelberg
b3f3537386 Avoid need for double-escaping in :release-tasks.
As per the recommendation of @crisptrutski.
2014-05-27 15:05:00 -07:00
Phil Hagelberg
b1a07d03ec Pass arguments to f in change task through the reader.
This means that you can use non-strings as args in the change task,
but it requires double-quoting when you do want strings.
2014-05-27 11:46:15 -07:00
Phil Hagelberg
88f2d3458e Reword a few things in deploy.md. 2014-05-27 10:46:37 -07:00
Phil Hagelberg
73d5e4c9f3 Ensure project.clj is written to project root.
Without this, tools such as grenchman will write project.clj to the
directory from which Leiningen was launched.

Also make require-resolve work like resolve for unqualified symbols.
2014-05-27 09:53:13 -07:00
Phil Hagelberg
f37710473b Silence warn calls when LEIN_SILENT is set. 2014-05-25 19:17:34 -07:00
Phil Hagelberg
74b0dc5b66 Merge remote-tracking branch 'cddr/826-info-messages-to-stder'
Conflicts:
	leiningen-core/src/leiningen/core/classpath.clj
2014-05-25 19:16:16 -07:00
Phil Hagelberg
28eb8f02c5 Make bump-version work with strings and default to bound *level*. 2014-05-25 15:05:56 -07:00
Phil Hagelberg
2ee940117c Merge remote-tracking branch 'waynr/lein-release'
# 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.
2014-05-25 14:57:31 -07:00
Wayne
91938de99f Minor changes for lein-release.
* Adds 'commit' multimethod and :git impelementation.'
* Use binding on leiningen.release/*level* to pass release task arg to default
  :release-tasks.
2014-05-25 01:58:01 -07:00
Phil Hagelberg
c83b2facfe WIP: merge change task and release. 2014-05-24 09:59:29 -07:00
Phil Hagelberg
80d4f130fc Merge branch 'release'
# 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.
2014-05-24 09:24:24 -07:00
Phil Hagelberg
0b9bf383c2 Implement :release-tasks. 2014-05-23 22:27:06 -07:00
Peter Garbers
d214fe99a8 Lists duplicate keys in exception thrown 2014-05-23 00:52:41 +02:00
Peter Garbers
98d113374f defproject throws an exception on duplicate keys 2014-05-22 02:49:01 +02:00
Phil Hagelberg
051ec98f10 Add vcs task with subtasks. 2014-05-16 10:12:47 -07:00
Andy Chambers
1ffbb408db Use warn instead of info where applicable 2014-04-26 17:17:56 -04:00
Phil Hagelberg
23b0804f67 Add ^:replace metadata to :aot [:all] normalization. 2014-04-24 13:30:47 -07:00
Phil Hagelberg
f5305ab47b Merge :plugin-repositories into :repositories before loading plugins. 2014-04-23 09:18:38 -07:00
Jim Crossley
d1ed9f83fe Prevent NPE when pedantic encounters dupe top-level deps to fix #1498 2014-04-22 20:10:32 -04:00
Phil Hagelberg
07a1ecaa93 Normalize :aot :all to :aot [:all].
This fixes type mismatch issues when merging profiles.

Fixes #1488.
2014-04-22 16:41:50 -07:00
Phil Hagelberg
f4b0bf6ec9 Fix weird de-duping behaviour in pom.
It used to be we would merge a bunch of profiles into the project, and
then trim out dupes based on group/artifact/version, which was totally
wrong; it ignores classifiers and extensions.
2014-04-22 16:24:10 -07:00
Phil Hagelberg
460fc9c3a1 Actually use :plugin-repositories. Fixes #1474. 2014-04-22 15:24:35 -07:00
Phil Hagelberg
88181a4bbf Use dep-key for distinct call in pom task.
group/artifact version tuple isn't enough to de-dupe correctly.

Fixes #1494.
2014-04-22 15:03:34 -07:00
Andy Chambers
aa789d8282 Fixes #826; Redirect info messages to *err*
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.
2014-04-19 15:54:52 -04:00
Jim Crossley
9d8b214ccc Include group in dedupe key to fix #1480 2014-04-15 17:29:14 -04:00
Hugo Duncan
5e26a1639f Flush output of exception error messages
When running on OS X, an exception thrown in a plugin was resulting in
no output from lein.  Adding the flush ensures the output occurs before
the process exits.
2014-04-14 10:07:57 -04:00
Jean Niklas L'orange
579499b5e7 Depend on latest Pomegranate, fixes #1447. 2014-04-08 00:23:27 +02:00
Phil Hagelberg
5c6db48efa Lock on *out* when printing during dependency fetches. 2014-04-03 20:37:20 -07:00
Phil Hagelberg
ed67d8093b Make Leiningen (more) Eastwood-friendly.
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.
2014-04-03 20:18:28 -07:00
Jim Crossley
ca32d3e28a Expand profiles before [un]merging them, re #1421
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.
2014-03-28 22:05:58 -04:00
Jean Niklas L'orange
a296ff8918 Bump all Clojure 1.5.1 deps to 1.6.0. 2014-03-26 13:43:38 +01:00
Jean Niklas L'orange
90bf2d47cd Consistent comment style. 2014-03-24 20:24:31 +01:00
Phil Hagelberg
110e2a14e9 Add -XX:-OmitStackTraceInFastThrow to default JVM opts.
Addresses #1025.
2014-03-21 09:55:33 -07:00
Phil Hagelberg
ae91367b78 Tell Bultitude not to ignore unreadable namespaces in test/check.
Fixes #1409.
2014-03-17 15:21:19 -07:00
Phil Hagelberg
eb189083f8 Oh no, slimed! 2014-03-07 11:54:53 -08:00
Phil Hagelberg
f67ff6d0bc Check :pass-through-help on vector aliases too, not just final var. 2014-03-07 11:41:01 -08:00
Phil Hagelberg
ca46d0e987 Use more meaningful data in test-task-args-help-pass-through. 2014-03-07 11:39:39 -08:00
Phil Hagelberg
64f79c6e7a Clarify :warn-on-reflection deprecation warning. 2014-03-07 10:12:36 -08:00
Phil Hagelberg
3ff470363b Dereference vector aliases in task-args. 2014-03-07 10:09:12 -08:00
Phil Hagelberg
e4e65177f6 Use a real lein task in pass-through-help tests, not funky var magic. 2014-03-07 09:55:13 -08:00
Phil Hagelberg
4a1373ab10 Don't require :pass-through-help to be a boolean. 2014-03-07 09:54:51 -08:00
Ryan McGowan
a02ff7b57b Modify task-args to support pass-through-help meta.
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
2014-03-06 21:43:37 -08:00
Phil Hagelberg
0896686a5c Merge remote-tracking branch 'laurentpetit/master'
Conflicts:
	leiningen-core/src/leiningen/core/main.clj
2014-03-06 13:33:19 -08:00
Phil Hagelberg
606ceffe44 Fix tests for task arity mismatch abort messages. 2014-03-06 13:13:23 -08:00
Phil Hagelberg
1803f4d5fd Fix test failures due to missing artifacts.
Somehow a dependency of nodisassemble disappeared from Maven Central.
2014-03-06 12:57:48 -08:00
Phil Hagelberg
54156c95a2 Merge pull request #1440 from benwbooth/master
Show uncaught exceptions when using grenchman, don't display "Suppressed exit" when calling exit
2014-03-04 17:30:55 -08:00
Jean Niklas L'orange
a28eeca1df Warn once when project.clj in checkout is missing. 2014-02-25 21:47:25 +01:00
Jean Niklas L'orange
17e91e60fe Retain metadata after profile setup. Fixes #1414. 2014-02-24 18:31:43 +01:00
Jean Niklas L'orange
a0d3504b1e Test that :java-opts are converted to :jvm-opts.
Inside profiles. Ensures #1445 is fixed, thus closes #1445.
2014-02-23 15:06:51 +01:00
Jean Niklas L'orange
1d7e41bfbf Test that profile metadata is retained.
Breaks tests, as meta isn't retained yet.
2014-02-23 14:55:28 +01:00
Jean Niklas L'orange
2cf555e99e Backquote uberjar-merge-with vector. 2014-02-22 13:56:52 +01:00
Peter Monks
d8302eff0b Fix for issue 1455 2014-02-20 11:21:17 -08:00
Matthew Blair
1df22bcc95 Fix issue 1444 - Leiningen errors if profiles.clj is blank. Push try-catch from user/load-profiles to utils/read-file, print helpful error message from utils/read-file, and bubble exception up. 2014-02-16 17:35:57 -05:00
Jean Niklas L'orange
19b8d3bf50 Merge pull request #1443 from jcrossley3/add-profiles
Fix add-profiles so they can be merged by name
2014-02-14 17:31:31 +01:00
Phil Hagelberg
cc41da388b Revert license back to official EPL; addresses #1446. 2014-02-12 13:42:53 -08:00
Jim Crossley
77650ce3fd Fix add-profiles so they can be merged by name
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.
2014-02-09 16:07:12 -05:00
Ben Booth
4f24b89e3b Don't show the "Suppressed exit" message when exit is called 2014-02-07 16:58:59 -08:00
Ben Booth
6395e6eb4d send stack trace through to the nREPL client 2014-02-07 16:58:28 -08:00
Laurent Petit
c28f03a092 Optional msg argument to leiningen.core.main/exit. Use it for abort.
- New signature: leiningen.core.main/exit [exit-code & msg]
- msg used when *exit-process?* is false as the Exception message
2014-02-07 08:42:35 +01:00
Marshall Bockrath-Vandegrift
a38f3903cf Also expand the built-in default profiles. 2014-01-28 06:20:10 -05:00
Jean Niklas L'orange
ecb7ed0e77 Decompose with-profile args not containing +/-. 2014-01-27 16:31:34 +01:00
Marshall Bockrath-Vandegrift
8bd6b8fb53 Fix #1421 by decomposing profiles into collections of atomic profiles. 2014-01-27 15:54:05 +01:00
Phil Hagelberg
19c49bd2ab Don't use /tmp when LEIN_FAST_TRAMPOLINE is enabled.
Fixes #1396.
2014-01-20 17:36:19 -08:00
Phil Hagelberg
93a2ffa85d Merge remote-tracking branch 'DavidEGrayson/lein_faster'
# 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.
2014-01-20 09:49:11 -08:00
Jean Niklas L'orange
3d50e8c9ba Properly initialize read profiles.
Fixes #1407, fixes #1376.
2014-01-07 14:02:55 +01:00
Jean Niklas L'orange
a0c65e9ec1 Properly setup profiles within project map. 2014-01-07 13:51:10 +01:00
Jean Niklas L'orange
9131b52b0b Drag out common map setup functionality. 2014-01-07 12:58:23 +01:00
Jean Niklas L'orange
a579ccd750 Remove dead :jvm-opts lookup
Coming from the 57ea876ddd cleanup
2014-01-07 02:08:21 +01:00
Jean Niklas L'orange
613a33b578 Pull out empty meta-merge defaults. 2014-01-07 02:00:53 +01:00
Phil Hagelberg
49d405cf5d Revert "Rely less on undocumented features"
This reverts commit 9adc966aef.
2014-01-06 11:58:58 -08:00
Ambrose Bonnaire-Sergeant
9adc966aef Rely less on undocumented features
We simply guard against nil leaking into `merge` or `select-keys`. This does not change semantics.

I caught this with a linter I'm building.
2014-01-02 23:58:22 +08:00
Jean Niklas L'orange
2ba5e31daa Test edit distance function. 2013-12-30 20:11:33 +01:00
Jean Niklas L'orange
c05e102036 Implement Damerau-Levenshtein, closes #1119.
Fetching the keyboard layout seems to be impossible to do within the JVM
without shelling out. It's probably not worth it wrt. portability.
2013-12-30 20:10:16 +01:00
David Grayson
6577d59c85 RyanTM and I reduced the run time of the 'lein help' command
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).
2013-12-20 11:41:53 -08:00
Larry Staton Jr
1a47f2683e Add LEIN_SILENT option to suppress *info* output 2013-12-05 17:09:00 -05:00
Phil Hagelberg
12b97749bd Bump version number back to a snapshot. 2013-11-19 10:05:36 -08:00
Phil Hagelberg
77d659e6ee Release 2.3.4 2013-11-18 21:59:05 -08:00
Phil Hagelberg
c575b7b82b Support :keyword args in leiningen.core.main/parse-options. 2013-11-17 09:15:11 -08:00
Phil Hagelberg
cd0066e19f Suggest exclusions for overrides. Closes #1198. 2013-11-17 08:56:53 -08:00
Phil Hagelberg
75a80f6951 Clean up dependency-str weirdness of version calculation. 2013-11-16 14:59:33 -08:00
Phil Hagelberg
e78ebb6504 Add exclusion suggestions for version ranges. 2013-11-16 14:43:59 -08:00
Phil Hagelberg
a45e8a5b0f Move parse-options test, fix typo. 2013-11-16 14:43:59 -08:00
Phil Hagelberg
1f7886c8bb Move parse-options into leiningen.core.main for general use.
Also remove support for single-dashed args.
2013-11-16 14:43:59 -08:00
Phil Hagelberg
23b3477298 Escape classpath separators.
Fixes #1328.
2013-11-14 11:02:06 -08:00
Phil Hagelberg
387db01ac5 Don't print with-profile output when only one profile is invoked. 2013-11-10 08:48:25 -08:00
Marshall Bockrath-Vandegrift
5d64d83fd6 More nuanced merging of project defaults. 2013-10-14 19:59:18 -04:00
Phil Hagelberg
85d3549c14 Bump version up to 2.3.4-SNAPSHOT. 2013-10-09 09:06:18 -07:00
Phil Hagelberg
6a6cecee0f Release 2.3.3 2013-10-05 15:40:59 -07:00
Marshall Bockrath-Vandegrift
39e3d57ec9 Implement :uberjar-merge-with requested in issue #973. 2013-10-05 13:56:57 -04:00
Phil Hagelberg
6853a511f9 Don't warn about user profiles when running outside a project. 2013-09-19 10:40:59 -07:00
Phil Hagelberg
b89ede9c23 Handle stdin for :eval-in :nrepl. 2013-08-27 19:20:58 -07:00
Phil Hagelberg
36a9350ba0 Allow default eval-in dispatch value to be changed with a defmethod. 2013-08-27 19:20:58 -07:00
Phil Hagelberg
762544a661 Fix a bug where *cwd* wasn't honored for project parsing. 2013-08-23 22:05:40 -07:00
Phil Hagelberg
0a5c616bbd Bump version up to 2.3.3-SNAPSHOT. 2013-08-20 17:42:27 -07:00
Chas Emerick
470f4c6ee1 Release 2.3.2 2013-08-20 16:59:19 -04:00
Chas Emerick
7d7426b143 prepare for 2.3.2 release 2013-08-20 16:55:17 -04:00
Phil Hagelberg
ad48331f26 Encourage production use of uberjars over lein run in tutorial. 2013-08-20 11:57:49 -07:00
Phil Hagelberg
45c7af9f69 Roll back profile-scoped target path for now.
Discussion of rationale on mailing list.
2013-08-17 21:48:21 -07:00
Phil Hagelberg
95bdc72f80 Add :exclusions to :base deps to avoid version conflict warnings. 2013-08-17 21:10:58 -07:00
Phil Hagelberg
be0db75e5e Memoize pedantic-print-(ranges|overrides) by stringifying up front.
Fixes #1290.
2013-08-17 21:10:58 -07:00
Phil Hagelberg
e624a768d3 Release 2.3.1 2013-08-13 04:28:39 +00:00
Phil Hagelberg
81389cf20c Leave :provided out of target-isolation calculation paths altogether. 2013-08-12 16:43:39 -07:00
Phil Hagelberg
1b4d1b345c Refer to checkout-deps-paths as a var instead of a raw fn.
Might fix #1286.
2013-08-10 18:17:39 -07:00
Phil Hagelberg
d25c22af3a Special-case the :provided profile. Again.
Fixes #1283.
2013-08-09 12:57:06 -07:00
Phil Hagelberg
ac33004a92 Bump back to snapshot. 2013-08-08 20:16:54 -07:00
Phil Hagelberg
aeaca0cbd7 Release 2.3.0 2013-08-08 20:10:42 -07:00
Phil Hagelberg
328b2182b0 Normalize profiles before excluding; fixes #1267.
Note that :dev, :test, and :base still belong in the pom, but with
dependencies/paths scoped as <test>.
2013-08-08 14:00:01 -07:00
Phil Hagelberg
13fe3db660 Allow -main to operate on project.clj files not in original cwd. 2013-08-08 12:01:08 -07:00
Phil Hagelberg
c46b6c93ff Add :eval-in :pprint for debugging Leiningen and plugins. 2013-08-08 12:01:08 -07:00
Phil Hagelberg
2f684415df Save off project into an atom when trampolining for later use.
This will break when you do crazy stuff like:

    $ lein trampoline do with-profile production compile, repl

but it's better than the old behaviour.

Fixes #1277.
2013-08-08 12:01:08 -07:00
Gary Fredericks
5a089b8e18 Issue #1276: cleanup wrong-arg-num err msg on 0-arg tasks
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 `"[]"`.
2013-08-05 15:07:41 -05:00
Yoshinori Kohyama
c3a60886f3 Issue #1272: Add :clean-targets option
Add :clean-targets option to let `lein clean` remove files under
directories other than one specified by :target-path
2013-08-04 18:46:16 +09:00
Phil Hagelberg
9f9ab003cd Oops; typo. 2013-07-30 21:00:52 -07:00
Phil Hagelberg
0f8d67d2e3 Remove dependency on "useful" library for packaging purposes.
This dependency pulls in a number of other dependencies which we don't
use but which are difficult for downstream packagers to deal with.

Include our own version of map-vals (because seriously, why is this
not already part of Clojure) and update-first (because re-forming
those problems without it crazy convoluted). But our implementation is
a fair bit shorter because it doesn't have to handle all the edge
cases.
2013-07-30 20:57:56 -07:00
Jean Niklas L'orange
2324cd21fc com.hypirion.io 0.3.1 (1.6-compiled) 2013-07-30 16:01:35 +02:00