Commit graph

3750 commits

Author SHA1 Message Date
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
Tim McCormack
74ec14fb20 Move $LEIN_JVM_OPTS farther down (override all but cp and lein*) 2014-09-08 09:07:40 -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
0184e5c84d Update bin/release with more checks.
[ci skip]
2014-09-06 15:14:57 -07:00
Phil Hagelberg
23f14ddfe8 Update NEWS.md file.
[ci skip]
2014-09-06 15:12:19 -07:00
Phil Hagelberg
58df6c31ad Merge branch 'profiles-from-plugins' 2014-09-06 10:54:47 -07:00
Phil Hagelberg
a2592ba13c Move :auto-clean to jar task.
Fixes #1642.
2014-09-06 10:54:25 -07:00
Jean Niklas L'orange
1b9f5d0705 Merge pull request #1599 from samuelbosch/master
use call to run wget and curl
2014-09-06 15:58:40 +02: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
360e63d6b0 Fix a test. 2014-09-05 20:43:13 -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
e434741df3 Improve docs for default profiles. 2014-09-05 20:24:29 -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
Tim McCormack
b5ded1a524 Allow LEIN_JVM_OPTS to override -Dfile.encoding.
This allows the JVM to be run with an encoding other than UTF-8; my
own use-case for this is running tests to check if I'm forgetting to
specify UTF-8 in any character encoding/decoding calls.
2014-09-05 09:49:49 -04:00
Phil Hagelberg
e9c9ff4883 Document in-plugin profiles. 2014-09-04 19:25:58 -07:00
Hugo Duncan
a83aefe6cc Expand builtin profile docs in README 2014-09-04 15:20:08 -04: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
Jean Niklas L'orange
c8c193bc6b Make LEIN_SILENT suppress compile messages.
Fixes #1675.
2014-09-04 19:18:04 +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
Hugo Duncan
5b4cda662a Add :project profile to PROFILES.md 2014-09-04 08:43:50 -04:00
Hugo Duncan
00804b151d Restore previous order of dependencies in pom 2014-09-03 06:32:24 -04: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
Phil Hagelberg
d0b7cd7984 Remove :scope from sample.project.clj. 2014-09-02 18:52:11 -07:00
Phil Hagelberg
d0cb4c2a63 Merge pull request #1671 from hugoduncan/feature/warn-if-classifier-sets-dependencies
Add warning if classifier specifies :dependencies
2014-09-02 13:16:22 -07:00
Hugo Duncan
f3c6719774 Add warning if classifier specifies :dependencies
An artifact with a classifier can not have different dependencies to the
project's main artifact.
2014-09-02 12:54:27 -04:00
Hugo Duncan
831d2cf0dd Add simple test for :project profile in pom 2014-09-01 13:44:01 -04:00
Hugo Duncan
a19633f341 Fix pom for case with added profiles 2014-09-01 10:15:18 -04:00
Hugo Duncan
a57160f432 Fix with-profile test 2014-09-01 10:14:55 -04: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
d5d44a6f7e Merge pull request #1626 from tihancock/unique-file-per-namespace
Ensure that there are not multiple source files for a namespace
2014-08-23 17:28:13 -07:00
Tom Hancock
60e3ae3c66 Prioritise compilation of namespaces backed by files 2014-08-22 21:10:43 +01:00
Jean Niklas L'orange
554861505c Merge pull request #1659 from winks/issue-1518-https
Allow https links for drawbridge integration
2014-08-22 22:05:29 +02:00
Florian Anderiasch
8fa694d68d Allow https links for drawbridge integration 2014-08-22 20:57:02 +02:00
Phil Hagelberg
9df08bac93 Merge pull request #1651 from winks/issue-1518
Allow 'repl :connect' to read args from file
2014-08-22 09:50:03 -07:00
Florian Anderiasch
2a2adb2aad Allow 'repl :connect' to read args from file
This basically works like in curl, you specify @filename and then the
contents of the file are literally used as if written on the CLI.

@TODO this will not work:
lein repl :connect @./some/file
because there is no realpath resolution
but this works:
lein repl :connect @/full/path
and this as well:
lein repl :connect @some/file
2014-08-22 18:06:23 +02:00
Phil Hagelberg
2803647bc4 Move :pedantic setting to default map; displace it.
Fixes #1653.
2014-08-21 10:54:19 -07:00
Phil Hagelberg
ad65195f40 Add lein deps :implicits subtask. 2014-08-21 10:22:47 -07:00
Phil Hagelberg
004f8a24a6 Merge pull request #1649 from MarcoPolo/sequential-fix-in-relativize
seq? -> sequential? to be able to handle vectors in pom/relativize
2014-08-20 20:14:27 -07:00