Commit Graph

378 Commits

Author SHA1 Message Date
Josh Suereth 1a38b6902e Revert chain resolver by default, for older behavior.
The issue comes into play where we cannot accurately get a publication date from Maven artifacts, leading to the current
mechanism having undefined behavior and causing other bugs to pop up in resolution.
2014-10-20 12:26:40 -04:00
Eugene Yokota 2d3bb4ca75 Fixes #1677. Provide URLSerializer.
Without this json4s is unable to parse URLs.
2014-10-18 07:15:52 -04:00
Josh Suereth 052fa13e3f Merge pull request #1663 from sbt/wip/avoid-deprecated
enable -deprecation for Scala 2.10
2014-10-12 12:31:08 -04:00
Eugene Yokota 68b3f8d5ed Implement configuration.missingOk to fix updateClassifiers
updateClassifiers sets missingOk to true.
cached resolution wasn’t respecting the looseness.
2014-10-10 17:25:43 -04:00
Eugene Yokota cf4e882ac9 enable -deprecation for Scala 2.10
Enable -deprecation flag to catch old code being use when we migrate
things.
In this commit I moved error to sys.error.
2014-10-10 15:42:26 -04:00
Eugene Yokota 4ef1c5b4f3 Make sure all files exist in minigraph. 2014-10-10 06:50:36 -04:00
Eugene Yokota 61d7b7e426 Use correct stats for cached resolution 2014-10-10 06:40:56 -04:00
Eugene Yokota dc2f6e5c55 Make sure IvyAction.update works 2014-10-10 03:20:12 -04:00
Eugene Yokota 1de783aec6 Fixes #1660
Provide overloads for transitiveScratch and updateClassifiers that work
with IvyActions.updateEither.
2014-10-10 00:34:05 -04:00
Eugene Yokota 832bf601b5 Fixes #1639. Fixes cached resolution interacting with force()
When conflicts are found for a given module, a forced one
is selected before conflict manager kicks in.
The problem is that DependencyDescriptor seems to mark transitive
forced dependency as forced as well,
so the actual forced dependency are sometimes not prioritized.
To work around this, I’ve introduced a mixin called
SbtDefaultDependencyDescriptor, which carries around ModuleID to detect
direct dependencies.
2014-10-09 13:11:13 -04:00
Eugene Yokota c2b4c0ec94 Fixes #1649. Adds exclusion rules into SHA-1 of minigraph path 2014-10-08 17:14:06 -04:00
eugene yokota 855dff21be Merge pull request #1645 from sbt/wip/no-blankies-rebased
Natural whitespace handling for SBT configuration parser AKA 'no more blankies'
2014-10-06 14:27:50 -04:00
eugene yokota fe5a09b7ad Merge pull request #1629 from sbt/wip/less-chatty-errors
Reduce the noise when resolving maven artifacts.
2014-10-06 13:52:51 -04:00
Eugene Yokota 7547a70991 Fixed json serialization turning license into {}. 2014-10-05 04:24:22 -04:00
Josh Suereth 9c447246f6 Remove binary compatibility breakages and migrate new parser features into an internal package. 2014-10-03 14:22:51 -04:00
Jean-Remi Desjardins 83cd45d6f1 Change additional constructor to what it should probably be
I am at a total loss for why this is not compiling.
2014-10-03 14:22:51 -04:00
eugene yokota 8554d11d3d Merge pull request #1635 from sbt/wip/fix-1632
Wip/fix 1632
2014-10-01 14:50:15 -04:00
Josh Suereth c84a5e70c7 Add file existence check for Eugene. 2014-10-01 08:18:09 -04:00
Josh Suereth b9dc9f8f4f Fix regression where IOExceptions were not caught on trying to access disk.
Fixes #1632
2014-10-01 08:04:39 -04:00
Eugene Yokota e58a236c9e some more minor changes 2014-09-30 18:19:46 -04:00
Eugene Yokota 024a99ed07 update deprecation message 2014-09-30 17:48:17 -04:00
Eugene Yokota 428f2a3706 split up json persistence into JsonUtil.scala 2014-09-30 17:44:56 -04:00
Eugene Yokota 04499b98ff spawn new instance of Ivy during minigraph resolution 2014-09-30 17:30:51 -04:00
Eugene Yokota 07b696b395 Implemented cached resolution (minigraph caching) 2014-09-29 17:33:37 -04:00
Josh Suereth 855f1f0c33 Reduce the noise when resolving maven artifacts. 2014-09-29 14:09:35 -04:00
Josh Suereth e96d40ebbd Merge pull request #1621 from tmandke/0.13
propagate pattern descriptorOptional and skipConsistencyCheck
2014-09-26 07:22:47 -04:00
Josh Suereth 8166c8aa5d Fix NPE in ChainrResolver when there is no ivy file for a dependency. 2014-09-25 08:08:26 -04:00
Tejas Mandke 51f48a8993 propagate pattern descriptorOptional and skipConsistencyCheck 2014-09-24 19:42:15 -07:00
Josh Suereth 7e100a0fe0 Add workaround (and warning message) for when ChainResolver gets a null publication date while we investigate other issues.
* Attempt to set publication date to last modified time, if the stars align
* Issue warning about undefined resolution behavior otherwise
* Add scripted test which exercises the NPE issue in resolving -SNAPSHOTs.
* Commit scalariform style edit in Act.scala

* After parsing and transforming the pom, check for pub date.
* If we don't have a pub date, try to grab lastModified from the URL
* If we can't do anything, issue a warning about the problem artifact.
2014-09-24 18:23:15 -04:00
Josh Suereth 704d823849 Fix URL resolver so that we can push Maven artifacts to local maven repositories.
* Hook "LocalIfFile" repository to also handle publishing
* Add test to ensure mavne publishign works.
2014-09-24 14:37:26 -04:00
Josh Suereth 305d34d011 Merge pull request #1600 from topping/0.13
PR for #1589
2014-09-24 09:11:57 -04:00
Brian Topping db04fa53be Add warning for bad XML parse of settings file 2014-09-22 10:56:10 -04:00
Brian Topping 7edf77bc28 Additional updates, should be clean now. 2014-09-17 15:24:33 -04:00
Josh Suereth c1fd09e6bf Merge pull request #1590 from jedesah/0.13
Add developer key
2014-09-17 10:32:04 -04:00
Jean-Rémi Desjardins 53e4bce5e3 Fix obtuse compilation error 2014-09-16 09:26:43 -07:00
Jean-Rémi Desjardins 956c3da82a Merge branch '0.13' of github.com:sbt/sbt into 0.13 2014-09-16 09:20:21 -07:00
Eugene Yokota 577496b1b6 Expose Ivy's circular dependency check via UpdateOptions 2014-09-16 09:22:21 -04:00
Brian Topping e81e8596b7 Tested PR for #485. Had a hard time squashing this, maybe because I did a merge in between. Sorry about that! 2014-09-15 15:26:45 -04:00
Brian Topping 300bd9a752 Merge remote-tracking branch 'upstream/0.13' into 0.13 2014-09-15 11:14:13 -04:00
Brian Topping cf48063f2f Untested PR for #485. Unable to test because unable to build 2014-09-15 10:48:47 -04:00
Jean-Rémi Desjardins ad07757087 Add constructor to avoid binary compatibility issues 2014-09-11 09:36:37 -07:00
Jean-Rémi Desjardins 4c99188f06 Merge branch '0.13' of github.com:sbt/sbt into 0.13 2014-09-10 22:56:01 -07:00
Jean-Rémi Desjardins ac83ec98f2 Add developers keySetting
The motivation for this is mainly to avoid having to define a pomExtra to publish to Maven central
2014-09-10 20:18:28 -07:00
Josh Suereth bff6d7adfa Fixes from review, better names and internal code documentation. 2014-09-10 07:56:19 -04:00
Josh Suereth e1130eabbc Fix Maven configuration mappings in Ivy.
It turns out there was a very subtle, and evil, issue sitting the Ivy/maven configuration, and it
related to dependency mapping.    A mapping of `foo->bar(*)` means that the local configuration
`foo` depends on the remote configuration `bar`, if it exists, or *ALL CONFIGURATIONS* if `bar`
does not exist.   Since the default Ivy configuration mapping was using the random `master`
configuration, which AFAICT is NEVER specified, just an assumed default, this would cause leaks
between maven + ivy projects.

i.e. if  a maven POM depends on a module denoted by an ivy.xml file, then you'd wind up accidentally
bleeding ALL the ivy module's configurations into the maven module's configurations.

This fix works around the issue, by assuming that if there is no `master` configuration, than the
maven default of `compile` is intended.   As sbt forces generated `ivy.xml` files to abide by
maven conventions, this works in all of our test cases.   The only scenario where it wouldn't work
is those who have custom ivy.xml files *and* have pom.xml files which rely on those custom ivy.xml files,
a very unlikely situation where the workaround is:  "define a master configuration".

Includes a test demonstrating the issue.
2014-09-09 17:45:02 -04:00
Josh Suereth cd9205cffe Split out inter-project resolver into its own Chain.
Fixes #1565

* Create two chains if we have inter-project resolver
  - One which ensures inter-project deps are always taken
  - One which will look in all "other" repositories for
    dependencies and will use the "most up-to-date" -SNAPSHOT
    strategy.
* No additional tests, as this would simple break every
  multi-project test if it were wrong.
2014-09-05 10:40:49 -04:00
Eugene Yokota 9018085a7a Merge branch '0.13' into 0.13.6 2014-08-24 18:24:37 -04:00
Josh Suereth ca0665d7f0 Merge pull request #1537 from sbt/fix/1275
Improves pom dynamic revision conversion
2014-08-24 18:19:02 -04:00
Eugene Yokota 97110b6c9d #1541. Use HTTPS for sbt plugin repository 2014-08-24 16:37:24 -04:00
Eugene Yokota 090e3a6468 #1541. Use HTTPS for Typesafe repository 2014-08-23 17:47:48 -04:00