Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix sbt/sbt#1518: Handle cross-versioned exclusions #88

Merged
merged 1 commit into from May 2, 2017

Conversation

Projects
None yet
2 participants
@jvican
Copy link
Member

commented Apr 26, 2017

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.

@eed3si9n eed3si9n added the ready label Apr 26, 2017

@jvican

This comment has been minimized.

Copy link
Member Author

commented Apr 26, 2017

Note that this depends on #87, that adds formatting and it's currently failing since I'm redesigning the whole formatting workflow. As soon as that's passing and merged, I'll rebase.

@jvican

This comment has been minimized.

Copy link
Member Author

commented Apr 26, 2017

This has been rebased on top of the latest formatting changes.

@jvican jvican referenced this pull request Apr 26, 2017

Merged

Reformat with scalafmt #87

Fix sbt/sbt#1518: Handle cross-versioned exclusions
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`.

@jvican jvican force-pushed the scalacenter:issue/1518 branch from f217398 to e1d98a1 Apr 26, 2017

@jvican

This comment has been minimized.

Copy link
Member Author

commented Apr 26, 2017

This is rebased and ready for review. Mind having a look @eed3si9n @dwijnand ?

@jvican jvican force-pushed the scalacenter:issue/1518 branch from f891b2b to e1d98a1 Apr 27, 2017

@eed3si9n eed3si9n merged commit eaf6af2 into sbt:1.0 May 2, 2017

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@eed3si9n eed3si9n removed the ready label May 2, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.