Guillaume Martres
348cc15dba
Fix #506 : Support Maven snapshots without `snapshotVersions`
2017-04-22 02:25:20 +02:00
Alexandre Archambault
ec0ed108e1
Add support for relocation
2017-04-21 16:47:48 +02:00
Alexandre Archambault
ad80e1482c
Accept "groupId", "artifactId", "version" properties
2017-04-21 15:56:59 +02:00
Alexandre Archambault
dba6225ac1
Add support for build metadata in versions
2017-04-21 14:52:19 +02:00
Alexandre Archambault
d3b692e165
Don't print exclusions by default
2017-04-21 14:37:20 +02:00
Alexandre Archambault
85dcc9d539
Cleaning
2017-04-21 13:49:41 +02:00
Alexandre Archambault
68b9eeeda8
Don't use missing directory listing fallback if it can be avoided
...
If the POM is in cache, but not the directory listing (nor a .error file for it), the LocalUpdate and LocalUpdateChanging policies make MavenRepository do as if the directory listing is missing - it is not even checked with the subsequent cache policies if any (because the POM was found with LocalUpdate / LocalUpdateChanging in the first place).
This PR fixes that - getting the POM will fail if the directory listing or an error file for it is missing from cache. That way, subsequent cache policies can fetch the directory listing.
As this only happens depending on what's in cache, it's a bit cumbersome to test as is. Relying fully on NIO2 in subsequent coursier versions should make it easier to add test cases for that (by using a virtual fs like jimfs to test what happens depending on what's in cache).
The test should basically do:
$ coursier fetch org.apache.maven:apache-maven:3.3.9 # fill cache
$ rm -f $CACHE_PATH/https/repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/.directory
$ rm -f $CACHE_PATH/https/repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.9/..directory.checked
$ coursier fetch org.apache.maven:apache-maven:3.3.9
The second fetch should work fine, fetching the directory listing, seeing that it lists no JAR, and then not attempting to download one. Before this commit, the second attempt would assume that the directory listing is not available, do without it, so assume that a JAR exists, and fail to download it.
2017-04-18 18:31:37 +02:00
Alexandre Archambault
1a34ed6340
Merge commit '9bc6952' into topic/missing-commits
2017-04-18 14:11:20 +02:00
Alexandre Archambault
9bc69527dd
Update MIMA settings after 1.0.0-RC1 release ( #492 )
...
* Update MIMA settings after 1.0.0-RC1 release
* Adjust things for MIMA after 1.0.0-RC1 release
2017-04-11 15:19:27 +02:00
Alexandre Archambault
7e32f90a9e
Rework artifact listing for Maven repositories
...
So that signature files, checksums, etc. don't appear as standalone artifacts
2017-04-11 14:41:16 +02:00
Alexandre Archambault
ef21746c81
Be fine with extensions / types with dots
...
Like tar.gz
2017-04-11 14:41:16 +02:00
Alexandre Archambault
9c6c274571
Tweak properties substitution to be fine with deeplearning4j
2017-04-10 13:51:22 +02:00
Alexandre Archambault
d629f8f7b9
Merge pull request #487 from coursier/topic/tweak-optional-config
...
Tweak optional pseudo-configuration
2017-04-06 15:45:29 +02:00
Alexandre Archambault
2420fa8a69
Tweak optional pseudo-configuration
...
Have it ~extends "default" rather than "compile", so that depending on both "default" and "optional" can be simplified to just "optional" ("default" being pulled by it now, thanks to this change). That allows to address the scala-compiler jar appearing twice on the classpath sometimes.
2017-04-06 00:14:33 +02:00
Ólafur Páll Geirsson
45b920c352
Support --repository bintray-ivy:org/repo/ in cli.
...
This commit adds support for a `bintray-ivy:` repository prefix to the `--repository`
flag in the cli. This option is equivalent to the `Resolver.bintrayIvyRepo` helper in sbt.
With this new helper, it's possible to write `-r bintray-ivy:scalameta/maven/` instead of
```
-r ivy:https://dl.bintray.com/scalameta/maven/[organisation]/[module]/ (scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
```
2017-04-05 18:00:59 +02:00
Alexandre Archambault
b54438c1ba
Add fallback if directory listings are not available
2017-04-04 14:45:06 +02:00
Alexandre Archambault
c176adca3c
Enable sbt plugin hack in Maven repo paths by default
2017-04-03 00:19:51 +02:00
Alexandre Archambault
79e60f17ca
Fix one-arg deprecated annotation warnings
2017-03-27 16:16:17 +02:00
Alexandre Archambault
f0d16c88d8
Merge pull request #421 from kzys/fix-408
...
Trim whitespaces around version specifiers
2017-03-27 10:55:04 +02:00
Kazuyoshi Kato
557cd8036d
Report all errors including POM-related ones
...
Resolution#errors don't have POM-related errors (e.g. #157 ).
The new `metadataErrors` method would replace the original `errors`
eventually.
2017-03-25 23:07:49 -07:00
Alexandre Archambault
729c62278a
Fix missing artifacts for snapshot versioning
...
Regression since recent overhaul of artifact type handling
2017-03-23 14:07:48 +01:00
Kazuyoshi Kato
6eeeb8cb66
Trim the whitespaces in pom.xml's properties
...
Maven trims the whitespaces around pom.xml's properties by default.
Fixes #408
2017-02-28 22:54:06 -08:00
Alexandre Archambault
ac00abd152
Tweak artifact listing
...
Can't remember when / why this one was necessary...
2017-02-27 15:54:57 +01:00
Alexandre Archambault
0e9109c3f7
Don't assume directory listing to be changing...
...
for non changing dependencies
2017-02-27 15:54:56 +01:00
Alexandre Archambault
766ccbf5a9
Better handling of optional dependencies
2017-02-13 19:19:39 +01:00
Alexandre Archambault
cce332eb55
Refactor web page link listing logic, implement it on the scalajs side
2017-02-13 19:19:39 +01:00
Alexandre Archambault
6b89af3924
Better handling of artifacts from Maven repos
...
Doesn't seem to break things
2017-02-13 19:19:29 +01:00
Alexandre Archambault
5559c5ce01
Minor refacto
2017-02-05 15:36:34 +01:00
Alexandre Archambault
035391f647
Add missing language.implicitConversions imports
2017-02-04 16:36:52 +01:00
Alexandre Archambault
d277153777
Annotate all case classes with final
2017-02-04 16:36:52 +01:00
Alexandre Archambault
7194fe7b48
Add missing language.higherKinds imports
2017-02-03 13:45:44 +01:00
Alexandre Archambault
5e0189fa7e
Allow to swap Scala mainline dependencies by Typelevel ones
2016-11-15 00:27:23 +01:00
Alexandre Archambault
c16eb18cbf
Merge pull request #381 from alexarchambault/topic/fixes
...
Fixes
2016-11-07 13:50:02 +01:00
Alexandre Archambault
d5cc47ae5f
Add non regression test for org.nd4j:nd4j-native:0.5.0...
...
...and corresponding fixes / workarounds
2016-11-07 12:28:02 +01:00
Alexandre Archambault
bf097fa018
Rework profile activation
...
- don't activate profiles activated by default if some user activated profiles are provided, and
- accept OS / JDK conditions in activation
2016-11-07 12:27:53 +01:00
Kazuyoshi Kato
ffa33961f0
Fix #266 by stop recursively traversing a tree
2016-11-02 19:51:05 -07:00
Alexandre Archambault
92c22a03bd
Don't print colors in coursierDependencyTree if sbt.log.noformat is true
...
Fixes https://github.com/alexarchambault/coursier/issues/362
2016-10-30 23:10:12 +01:00
Alexandre Archambault
92a8ea2ab5
Better handling of artifact types
...
Fixes https://github.com/alexarchambault/coursier/issues/318
2016-10-30 20:11:09 +01:00
Alexandre Archambault
5eeb825bf5
Dummy refacto
2016-10-22 22:25:08 +02:00
Alexandre Archambault
d66f21636f
Should now be fine with 2.12.0-RC2
2016-10-22 22:25:06 +02:00
Erem Boto
b1f9cb96d4
Add support for property absence directives in profile activation
2016-10-15 18:34:52 -07:00
Erem Boto
50f38725d8
Make version parsing robust to leading or trailing spaces ( #355 )
2016-09-30 11:21:38 -07:00
Alexandre Archambault
ece1b35c5f
Cleaning
2016-09-01 13:50:49 +02:00
Alexandre Archambault
c17cf67734
More reliable fallback dependencies
...
Should fix the jrudolph/sbt-dependency-graph case of
https://gist.github.com/paulp/62eaca1850904137959ad9121cce6b15
2016-08-22 00:19:49 +02:00
Alexandre Archambault
6f93f85c5d
Switch to scalaz 7.2
2016-08-17 23:09:30 +02:00
Alexandre Archambault
1b0dd4e899
Set default artifact type to empty value
...
Add non regression test for
https://github.com/alexarchambault/coursier/issues/322
A dirty hack is lying in this commit.
2016-08-15 18:59:19 +02:00
Alexandre Archambault
fbc04dcbc8
Be fine with modules like a: 🅱️ c
...
a:🅱️ c standing for a:b_2.11:c
2016-08-05 14:33:04 -04:00
Alexandre Archambault
f61a258574
Accept single version interval syntax
...
Fixes https://github.com/alexarchambault/coursier/issues/310
2016-08-04 17:42:16 -04:00
Alexandre Archambault
4d73166fbc
Minor refacto
2016-07-25 00:19:06 +02:00
Alexandre Archambault
5ac4efc661
Set default extension and classifier of artifact type test-jar
...
Fixes https://github.com/alexarchambault/coursier/issues/298
2016-07-24 14:19:45 +02:00
Alexandre Archambault
2283a34829
Set default artifact type to jar from the CLI tools
...
Fixes https://github.com/alexarchambault/coursier/issues/302
2016-07-23 18:39:17 +02:00
Alexandre Archambault
efbcbbf860
Fix bintray resolvers syntax
...
Example of options that can be supplied to CLI tools:
-r bintray:scalaz/maven
2016-07-23 18:38:08 +02:00
Alexandre Archambault
eb4e73fa54
Better handling of version intervals / hints reconciliation
...
Fixes https://github.com/alexarchambault/coursier/issues/303
2016-07-23 18:36:36 +02:00
Alexandre Archambault
127e73abe9
Merge pull request #294 from alexarchambault/topic/better-ivy-pattern-parser
...
Better handling of Ivy patterns
2016-07-23 17:38:07 +02:00
Alexandre Archambault
1c34362b6f
Better handling of Ivy patterns
2016-07-23 13:56:28 +02:00
Alexandre Archambault
3a6cdb20fb
Better handling of properties in dependency management / profiles
...
Test fix in the next commit prevents regressions
2016-07-03 16:34:12 +02:00
Alexandre Archambault
5146be5c39
Major / important fix in dependency management handling
...
Version and scope from dependency management now override the ones from
the dependencies no matter what.
For spark 1.3 (a bit old now, but unit tested in CentralTests), this
makes spark-core depend on hadoop 1.x by default (because of dependency
management), instead of hadoop 2.2 whose versions appear in the dependency
sections of it (but are now overridden by those in dependency management).
Enabling the hadoop-2.2 profile reestablishes the former hadoop 2.2
versions.
This commit breaks the spark related test in CentralTests, repaired by
the next two commits.
2016-07-03 16:34:09 +02:00
Alexandre Archambault
ffd58b51b0
Minor refacto
2016-07-03 16:33:05 +02:00
Alexandre Archambault
efb4f6c5c0
Allow to specify Maven profiles via the CLI app
2016-07-03 16:33:01 +02:00
Alexandre Archambault
f4dc1044e3
Add non regression test
2016-07-03 16:32:57 +02:00
Alexandre Archambault
1553d0b9d9
Add support for Ivy version ranges
2016-05-30 00:40:41 +02:00
Alexandre Archambault
2ddfe5f3b2
Keep version actually used to fetch metadata, to get artifacts
...
In case the one given by the metadata is wrong
2016-05-28 17:15:05 +02:00
Alexandre Archambault
b7ba8d98d5
Don't restrict Maven property name characters too much
...
Fixes https://github.com/alexarchambault/coursier/issues/246
2016-05-10 14:20:16 +02:00
Alexandre Archambault
16225d98e6
Add tasks / settings allowing using other SBT sources as a repository
2016-05-09 19:25:23 +02:00
Alexandre Archambault
f68ed5d42b
Add support for HTTP authentication
2016-05-09 19:25:15 +02:00
Alexandre Archambault
00484df435
Exception.getMessage can be null
2016-05-06 13:53:53 +02:00
Alexandre Archambault
3834a9519c
Allow to print dependency trees
2016-05-06 13:53:49 +02:00
Alexandre Archambault
bf919d4fc1
Nasty bug
...
Occurring randomly :-| - hard to unit test...
2016-04-28 21:19:41 +02:00
Alexandre Archambault
5b1165b79e
Add notes about maven model
2016-04-28 21:19:37 +02:00
Alexandre Archambault
05c248df82
Safety check
2016-04-27 01:12:14 +02:00
Alexandre Archambault
e5be2c4c2c
Temporary hack
...
to minimize the chance of two different Artifact to have the same URL -
these are handled well by the cache if the corresponding URL has not
been downloaded yet, and result in one download locking the file for the
others
2016-04-18 00:29:45 +02:00
Alexandre Archambault
5f6caefff6
Add support for shorter syntax for Typesafe and Bintray repositories
2016-04-17 22:24:28 +02:00
Alexandre Archambault
00aaf8e1ac
Factor default Ivy pattern
2016-04-17 22:24:26 +02:00
Alexandre Archambault
8de5425e4d
Ensure returned resolution artifacts are unique
...
Should hopefully fix issues sometimes seen on CIs using sbt-coursier
2016-04-09 17:31:57 +02:00
Alexandre Archambault
da78c523fb
Remove now unnecessary checks
2016-04-09 01:34:08 +02:00
Alexandre Archambault
105236393d
Add benchmark option
2016-04-05 16:58:18 +02:00
Alexandre Archambault
055ff77e5b
Cleaning
2016-04-05 16:53:19 +02:00
Alexandre Archambault
1ac8a782a9
Check snapshot versioning metadata for snapshot dependencies only
2016-04-05 16:24:38 +02:00
Alexandre Archambault
f167b36c1c
Give the .jar extension to maven-plugin packages
2016-04-01 01:57:31 +02:00
Alexandre Archambault
cffbe747ed
Minor refactoring
2016-04-01 01:56:20 +02:00
Alexandre Archambault
d71df26087
Basic property substitution in version in POMs
2016-04-01 01:39:19 +02:00
Alexandre Archambault
064feb8f3e
Use the right conf mapping separator
2016-03-14 16:20:21 +01:00
Alexandre Archambault
5e24676216
Add some scaladoc
2016-03-14 16:20:20 +01:00
Alexandre Archambault
49eb37b1a3
Accept configurations to be specified for dependencies in the CLI tools
2016-02-28 17:31:40 +01:00
Alexandre Archambault
5bbe01bfdd
Better handling of Maven scopes
...
Actually a regression introduced when Ivy support was added
Fixes https://github.com/alexarchambault/coursier/issues/178 ,
https://github.com/alexarchambault/coursier/issues/177
2016-02-28 17:31:20 +01:00
Alexandre Archambault
b9895ce801
Add support for packaging attribute in POMs
2016-02-28 17:00:12 +01:00
Alexandre Archambault
1731fca26c
Have the cache keep track of missing files
2016-02-24 23:50:04 +01:00
Alexandre Archambault
4676d65031
Really test version intervals...
...
...and fix the tests
2016-02-22 22:18:52 +01:00
Alexandre Archambault
1d58d8d453
Allow for non default classifiers to be given a try from Maven repositories
...
TODO Add test with the standalone classifier on coursier-cli once coursier
1.0.0-M8 is released
2016-02-20 15:56:33 +01:00
Alexandre Archambault
f6da127759
Minor refactoring
2016-02-20 15:56:33 +01:00
Alexandre Archambault
56192a2cca
Replace sealed traits by abstract classes in order to generate less byte code
2016-02-07 14:14:01 +01:00
Alexandre Archambault
2ca57527eb
Silent warning
...
"imported `Properties' is permanently hidden by definition of object Properties in package util"
2016-02-07 14:13:20 +01:00
Alexandre Archambault
b05e942fa4
Cache most fields of Resolution
2016-02-07 14:13:20 +01:00
Alexandre Archambault
26e41d4b7e
Use Vector instead of List
2016-02-07 14:13:20 +01:00
Alexandre Archambault
829c397ca8
Keep calculated dependencies accross resolutions
2016-02-07 14:13:20 +01:00
Alexandre Archambault
c9566fbf5d
Cache simple fields
2016-02-07 14:13:20 +01:00
Alexandre Archambault
2e50db9486
Make most case classes final
2016-02-07 14:13:16 +01:00
Alexandre Archambault
796a428ca6
Better handling of info attributes
...
- Drop them from dependencies originating from Ivy metadata if asked to do so (dropInfoAttributes field of IvyRepository)
- Enable dropping them by default on ~/.ivy2/{cache,local}, and Ivy repositories in SBT plugin
- Add --drop-info-attr CLI option to enable dropping them from the command-line tools
- Test these with org.scala-js:sbt-scalajs;sbtVersion=0.13;scalaVersion=2.10:0.6.6
2016-02-04 15:03:42 +01:00
Alexandre Archambault
58c8cb4192
Print version in help message
2016-02-01 14:26:30 +01:00
Alexandre Archambault
d322745ea1
Add support for user-specified exclusions from CLI
2016-01-27 11:33:14 +01:00