[MDEP-858] Replace Maven Artifact Transfer with Maven Resolver - #1668
Open
wilx wants to merge 4 commits into
Open
[MDEP-858] Replace Maven Artifact Transfer with Maven Resolver#1668wilx wants to merge 4 commits into
wilx wants to merge 4 commits into
Conversation
Replace the Maven Artifact Transfer resolvers used by dependency:get while preserving repository and artifact-type behavior. Keep the component dependency for goals that still use it. Part of apache#1355
… Resolver Replace Maven Artifact Transfer installation used by dependency:copy-dependencies in the repository-layout path while preserving Maven local-repository metadata, copied POMs, and snapshot behavior. Part of apache#1355
Replace the Maven Artifact Transfer resolvers while preserving dependency filtering, fallback resolution, and aggregated failure reporting. Re-resolve each artifact once because Resolver descriptor resolution also restores its POM. Part of apache#1355
Drop the unused DependableCoordinate interface from ArtifactItem and remove the now-unused Maven Artifact Transfer dependency. Keep the artifact configuration getters unchanged. Part of apache#1355
elharo
requested changes
Aug 2, 2026
| * @author <a href="mailto:brianf@apache.org">Brian Fox</a> | ||
| * @since 1.0 | ||
| */ | ||
| public class ArtifactItem implements DependableCoordinate { |
Contributor
There was a problem hiding this comment.
This is probably an incompatible change that requires a major version bump
Author
There was a problem hiding this comment.
Are plugin's themselves considered API? We wouldn't be able to make any changes if they were impossible to change.
Contributor
There was a problem hiding this comment.
Public means public. Hyrum's Law applies.
You can make changes. Just make sure they're compatible.
| BuildContext buildContext, | ||
| MavenProject project, | ||
| ResolverUtil resolverUtil, | ||
| RepositoryManager repositoryManager, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replace the remaining Maven Artifact Transfer usage with Maven Resolver APIs:
dependency:getartifact and dependency resolution;dependency:copy-dependencies;dependency:purge-local-repositoryresolution while preserving filtering, fallback resolution, and aggregated failures;ResolverUtilwith the shared Resolver operations and remove the now-unusedmaven-artifact-transferdependency andDependableCoordinateimplementation.The migration preserves custom artifact types, alternate repositories, copied POMs, snapshot base-version handling, Maven local-repository metadata, and purge fallback behavior.
Fixes #1355
Verification
mvn verify— 413 tests, 0 failures/errors, 1 skippedmvn verify— 413 tests, 0 failures/errors, 1 skippedmvn -Prun-its verify— 94 passed, 0 failures/errors, 5 JRE skipsFollowing this checklist to help us incorporate your
contribution quickly and easily:
Note that commits might be squashed by a maintainer on merge.
This may not always be possible but is a best-practice.
mvn verifyto make sure basic checks pass.A more thorough check will be performed on your pull request automatically.
mvn -Prun-its 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.