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

[MSHADE-419] createDependencyReducedPom should not replace original pom when shadedArtifactAttached #149

Closed
wants to merge 1 commit into from

Conversation

XN137
Copy link

@XN137 XN137 commented Aug 31, 2022

Description:

The problem was introduced by MSHADE-321 in 3.3.0 because before,
the createDependencyReducedPom method was only ever called when
shadedArtifactAttached is false.

The createDependencyReducedPom method not only writes the dependency
reduced pom file but also modifies the current project to use it as
replacement for its original pom.
This has an effect on all maven build logic being executed afterwards.

Thus, in multi module builds, when a module attaches a shaded jar, its
non-shaded artifact no longer contains transitive dependencies when used
from other modules, even though the pom in its jar still declares them.

Checklist

Following this checklist to help us incorporate your
contribution quickly and easily:

  • Make sure there is a JIRA issue filed
    for the change (usually before you start working on it). Trivial changes like typos do not
    require a JIRA issue. Your pull request should address just this issue, without
    pulling in other changes.
  • Each commit in the pull request should have a meaningful subject line and body.
  • Format the pull request title like [MSHADE-XXX] - Fixes bug in ApproximateQuantiles,
    where you replace MSHADE-XXX with the appropriate JIRA issue. Best practice
    is to use the JIRA issue title in the pull request title and in the first line of the
    commit message.
  • Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • Run mvn clean verify to make sure basic checks pass. A more thorough check will
    be performed on your pull request automatically.
  • You have run the integration tests successfully (mvn -Prun-its clean verify).

If your pull request is about ~20 lines of code you don't need to sign an
Individual Contributor License Agreement if you are unsure
please ask on the developers list.

To make clear that you license your contribution under
the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.

…om when shadedArtifactAttached

The problem was introduced by MSHADE-321 in 3.3.0 because before,
the `createDependencyReducedPom` method was only ever called when
`shadedArtifactAttached` is false.

The `createDependencyReducedPom` method not only writes the dependency
reduced pom file but also modifies the current project to use it as
replacement for its original pom.
This has an effect on all maven build logic being executed afterwards.

Thus, in multi module builds, when a module attaches a shaded jar, its
non-shaded artifact no longer contains transitive dependencies when used
from other modules, even though the pom in its jar still declares them.
@XN137
Copy link
Author

XN137 commented Oct 2, 2022

@khmarbaise sorry for the ping, but whats the best way to find someone to review this? thank you

@olamy olamy added the bug Something isn't working label Oct 20, 2022
@gnodet
Copy link
Contributor

gnodet commented Oct 22, 2022

The problem seems to have been fixed in 3.4.1 according to #162 which seems to pass on master.

@gnodet gnodet closed this Feb 16, 2023
@buyukim
Copy link

buyukim commented Mar 28, 2023

FYI, @gnodet, we are using 3.4.1, and this issue is NOT fixed (i.e., non-shaded pom excludes transitive compile dependencies)

@frant-hartm
Copy link

@gnodet the test here and in #162 is incomplete - it should also check what pom was installed into the local repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants