-
Notifications
You must be signed in to change notification settings - Fork 92
Do not include partest and it's dependencies in generated pom. #7
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
Conversation
Define custom Ivy configuration that contains all dependencies of partest (and partest itself) and make sure that this configuration is not considered when pom is generated. Remove the comment about significance of dependency order declaration. Given the fact that we excluded conflicting, transitive dependencies and all partest dependencies are isolated from regular dependencies the situation is much better.
Review by @adriaanm. You can inspect generated pom by saying |
Also, since I'm invoking a bit more advanced sbt-tech, @harrah can you have a quick look? |
To summarize, a dependency in the partest scope does not contribute any of its own dependencies to our compile scope. |
LGTM |
Hmmm... could you first compare this to @retronym's approach in scala/jenkins-scripts#36 (comment)? |
It just occurred to me that there is no validation nor nightlies for modules. The IDE depends on them, especially since the move to use them as OSGi bundles, without repackaging. It's possible that a regression goes undetected until after a release. We're on thin ice! |
@adriaanm: yes, @retronym's approach disables consumption of transitive dependencies declared for partest. That affects only resolution within partest project. What I'm trying to fix is how we expose declared dependencies: I want to hide the fact that we depend on partest at least until we sort out dependencies of partest itself. |
Do not include partest and it's dependencies in generated pom.
If the goal is what @adriaanm says: "To summarize, a dependency in the partest scope does not contribute any of its own dependencies to our compile scope.", I'm not sure why this pull request is necessary. If you declare something in |
I think @adriaanm misunderstood the purpose of this PR. The purpose of this PR was to not contribute partest dependency (and it's transitive dependencies) in any scope in all projects that depend on scala-xml. Does it make sense then? |
I understand the benefit in hiding it from the classpath of recently added JUnit tests of this project. But I agree with Mark, I don't see how an upstream projects could have been affected. |
Define custom Ivy configuration that contains all dependencies of
partest (and partest itself) and make sure that this configuration
is not considered when pom is generated.
Remove the comment about significance of dependency order declaration.
Given the fact that we excluded conflicting, transitive dependencies
and all partest dependencies are isolated from regular dependencies
the situation is much better.