Commit Graph

282 Commits

Author SHA1 Message Date
Eugene Yokota d6e2720201 Let `ModuleDescriptor` declare cache inputs 2017-07-28 01:37:01 -04:00
Eugene Yokota 22f47be292 Change overwrite warning
Previously the warning read:

    Attempting to overwrite $destination
    This usage is deprecated and will be removed in sbt 1.0.

This is an empty threat since we did not remove the feature.

I'm replacing it with:

    Attempting to overwrite $destination (non-SNAPSHOT)
    You need to remove it from the cache manually to take effect.

Fixes sbt/sbt#3271
2017-07-25 17:19:45 -04:00
Eugene Yokota ace8d88f9f Filter out ":: loading settings"
Fixes sbt/sbt#3287

I'm not sure why we started to see these messages, but given that their info is mapped to our info, it kind of makes sense that it is surfacing. The fix is hacky, but it should work.
2017-07-25 04:09:44 -04:00
Eugene Yokota 3db33720a9 Use IvyAuthenticator and JavaNetAuthenticator
Fixes sbt/sbt#3331

The siatuation is a bit complicated.
Currently the credentials are stored in Ivy's credential store.
This needs to be translated into `java.net.Authenticator` by installing `IvyAuthenticator` and `ErrorMessageAuthenticator` in succession.
This, then, needs to be translated into OkHttp Authenticator using `okhttp3.JavaNetAuthenticator`.
2017-07-24 05:16:42 -04:00
Eugene Yokota 26fa1c5f4b Fixes sbtApiVersion logic
The NonRelease pattern matcher is ony checking for the third segment, but for sbt 1.x, we need to check both the second and third segment since 1.1.0-M1 would be bincompat with 1.0.

Fixes sbt/sbt#3360
2017-07-23 02:34:36 -04:00
Eugene Yokota 509c80c8a7 Bump to latest IO and Util 2017-07-15 13:52:10 -04:00
Eugene Yokota a09af23cc6 Builder pattern for MakePomConfiguration 2017-07-15 12:00:21 -04:00
Eugene Yokota c95a885a3a Bump to latest Contraband 2017-07-15 11:17:23 -04:00
Eugene Yokota 0c28db9d21 rename to DependencyResolutionInterface 2017-07-15 11:17:23 -04:00
Eugene Yokota 7844190964 Use delegation instead of inheritance 2017-07-15 11:17:23 -04:00
Eugene Yokota a98c5f4c65 Minor cleanups per review 2017-07-15 11:17:23 -04:00
Eugene Yokota 7b22e78fd9 Library management API
This splits the core of LM and Ivy-based implementation.

- InlineConfiguration is renamed to ModuleConfiguration
- IvyScala is renamed to ScalaModuleInfo
- UpdateConfiguration, RetrieveConfiguration, PublishConfiguration are refactored to use builder pattern.
- Adds ConfigRef for referencing Configuration
- Moves syntax related things into `sbt.librarymagement.syntax`
2017-07-15 11:17:23 -04:00
Dale Wijnand d693d0cde9 Move CompatibilityWarning to sbt.internal.librarymanagement 2016-01-17 19:58:57 +00:00
Eugene Yokota 54fa9dd416 Improve warning message 2016-01-17 18:37:23 +00:00
Eugene Yokota b705d4e998 Update warning message a bit. 2016-01-17 16:43:44 +00:00
Eugene Yokota 17397249ae Move intransitive warning to update. Ref #2127 2016-01-17 16:43:40 +00:00
Eugene Yokota 319054fa32 Add build.sbt 2015-08-19 03:56:08 -04:00
eugene yokota 2a6edd6815 Merge pull request #2142 from pdalpra/fix-warnings
Fix additional warnings
2015-08-13 03:27:35 -04:00
Dale Wijnand 39675e40d3 Merge remote-tracking branch 'origin/0.13.9' into merge-0.13.9-into-0.13
* origin/0.13.9:
  Notes
  0.13.9
  cached resolution: use mutable map to speed up breakLoops
  cached resolution: don't include callers from evicted modules
  Add debug logs
  Fixes #2129. break up circular dependency loops in cached resolution
  try breaking circular dependency and continue sorting
  refactored to use less stack space
  make sortModules tailrec
  Reproduce stack overflow using cached resolution with circular dependency
2015-08-11 22:42:31 +01:00
Pierre DAL-PRA 1b90c865d1 Fix additional warnings 2015-08-07 00:23:14 +02:00
Eugene Yokota 2264a1052c cached resolution: use mutable map to speed up breakLoops 2015-08-05 07:01:21 -04:00
Eugene Yokota 6848fd9f69 cached resolution: don't include callers from evicted modules 2015-08-05 07:00:39 -04:00
Pierre DAL-PRA d3dc1736e7 Replace procedure syntax by explicit Unit annotation 2015-08-04 10:07:38 +02:00
Eugene Yokota fb2ccdd285 Add debug logs 2015-08-03 08:17:48 -04:00
Eugene Yokota 71faf88916 Fixes #2129. break up circular dependency loops in cached resolution
Simple remove-one method to workaround for circular dependency did not
work. This fix traverses the entire graph to detect all loops and then
breaks them up.
2015-08-03 07:31:32 -04:00
Pierre DAL-PRA ec71256040 Remove redundant collection conversions 2015-08-01 12:05:35 +02:00
Pierre DAL-PRA e528f3d163 Simplify operations on collections 2015-08-01 02:25:17 +02:00
Eugene Yokota 4e69d04be8 try breaking circular dependency and continue sorting 2015-07-26 23:19:16 -04:00
Eugene Yokota ddf941f371 refactored to use less stack space 2015-07-25 22:40:18 -04:00
Eugene Yokota e5ac8316a7 make sortModules tailrec 2015-07-25 17:38:11 -04:00
Josh Suereth 92202d4353 Add warning to MakePom for intransitive dependencies.
Intransitive does not work in Maven, and does not translate to pom.xml.
2015-07-24 10:42:49 -04:00
eugene yokota c8e1da38b7 Merge pull request #2116 from sbt/0.13.9
Merge 0.13.9 back into 0.13
2015-07-18 13:36:04 -04:00
Eugene Yokota a1ac6c6eaa Fixes #2105/#1763. Cached resolution: removes duplicate callers during merge 2015-07-18 02:17:25 -04:00
eugene yokota 30b459a212 Merge pull request #2106 from Duhemm/interface-specific-sources-clean
Find most specific version of compiler interface sources
2015-07-17 10:25:16 -04:00
Pierre DAL-PRA fd9644dc5d Fix several warnings 2015-07-17 09:17:42 +02:00
Martin Duhem 63cfbb49e2 Find most specific version of compiler interface sources
This commit introduces a mechanism that allows sbt to find the most
specific version of the compiler interface sources that exists using
Ivy.

For instance, when asked for a compiler interface for Scala 2.11.8-M2,
sbt will look for sources for:

 - 2.11.8-M2 ;
 - 2.11.8 ;
 - 2.11 ;
 - the default sources.

This commit also modifies the build definition by removing the
precompiled projects and configuring the compiler-interface project so
that it publishes its source artifacts in a Maven-friendly format.
2015-07-16 11:18:48 +02:00
Eugene Yokota fe2026f419 #1763 fix by removing one but all artificial callers 2015-07-10 00:10:23 -04:00
Eugene Yokota 7cb92b3f6c #1763 Remove artificial callers 2015-07-09 21:17:47 -04:00
Eugene Yokota 97d53db03b Fixes #2046, Ref #1760 Fix minigraph stitching
This fixes the minigraph stitching logic by first sorting the graph
based on the level of inter-dependencies, and gradually resolving
conflict from the root-side that are not called by other libraries.
For each eviction, transitive evictions are propagated right away to
avoid double eviction observed in #2046

For the transitive eviction checking I needed to bring back the caller
information, which is notorious for its size. I am stuffing all
ModuleIDs into one ModuleID for the graph, and recovering them only
during the merging process.
2015-07-09 15:57:21 -04:00
Eugene Yokota 2bc3b88434 Reproduce #2046 2015-07-09 01:52:00 -04:00
Eugene Yokota 1aa7ba807b Fixes the releasing 2015-06-09 17:20:03 +02:00
Josh Suereth fda77d56db Minor fixes of leftover codes from review. 2015-05-29 09:49:47 -04:00
Josh Suereth b51321b857 Fix corruption issues with sbt's CustomPomParser. 2015-05-28 09:36:11 -04:00
Dale Wijnand 33e3b9f693 Commit build auto-formatting changes for code in master. 2015-05-28 08:28:05 +01:00
Dale Wijnand 7a124bd2df Fix bincompat for project-level excludes in the POM. 2015-05-28 08:15:10 +01:00
Dale Wijnand 4d7184d8c3 Add project-level exclusions in the POM.
Closes #1877.
2015-05-28 08:14:08 +01:00
Josh Suereth d6a829caa4 Merge pull request #2027 from cunei/wip-fix-2001
Do not emit in the pom dependencies that are only sources or docs
2015-05-27 18:43:50 -04:00
Eugene Yokota fa97b0b8d6 Adds null guard 2015-05-23 17:32:56 -04:00
Eugene Yokota d83602e12b Cached resolution: Clean up old dynamic minigraphs. Fixes #2014
Cached resolution saves dynamic mini graphs (including subproject
graphs) timestamped to the logical clock (State).
This enables graph caching across the subprojects.
On the other hand, it creates garbage that becomes stale almost
immediately. Prior to #2030 fix, this garbage would reach 1GB+.
This fix timestamps these graphs using calendar date, and cleans them
up after a day.
2015-05-23 03:25:26 -04:00
Eugene Yokota e430139680 Fixes #1721/#1763. Cached resolution: summarize callers in graph.json
- On some of the builds graph.json is reaching 250MB+
- JSON parsing alone takes hours
- 97% of the content are caller info
- This change summarizes all callers into one (zero caller would have
correctness issues)
2015-05-21 23:04:52 -04:00