mirror of
https://github.com/sbt/sbt.git
synced 2026-08-29 09:30:21 +02:00
e1d98a1ec2ce42d8abe5b5180e63ebf06ddd7d0b
The following PR does two things: * Removes the unnecessary `SbtExclusionRule` that was introduced to exclude artifacts at the project level (and not the dependency level). This change was done in an independent class to avoid breaking bincompat in 0.13.x series. * Handle exclusion rules correctly, propagating the cross version to the exclusions of the dependencies. To fix sbt/sbt#1518, this PR takes the avenue taken in `SbtExclusionRule`, it accepts `GroupArtifactID` which should be the preferred way to specify dependencies from now on. Unlike `SbtExclusionRule`, it also supports `ModuleID` for those that want to exclude a concrete dependency. `InclExcl` did not have any tests. The following commit also adds a testing suite for it, showing how the issue it's fixed and how you should use `exclude` if you're calling directly `ExclusionRule` instead of passing in `GroupArtifactID` and `ModuleID`.
librarymanagement module for sbt
git clone --no-hardlinks --branch 0.13 sbt sbt-modules/librarymanagement
cd sbt-modules/librarymanagement
git filter-branch --index-filter 'git rm --cached -qr -- . && git reset -q $GIT_COMMIT -- ivy util/cross' --prune-empty
git reset --hard
git gc --aggressive
git prune
git cb 1.0
Languages
Scala
94.5%
Java
3.1%
Shell
1.1%
Batchfile
0.9%
Roff
0.2%
Other
0.1%