Skip to content

[MDEP-858] Complete Maven Artifact Transfer removal after #1677 - #1680

Open
wilx wants to merge 5 commits into
apache:masterfrom
wilx:issue-1355-on-pr-1677
Open

[MDEP-858] Complete Maven Artifact Transfer removal after #1677#1680
wilx wants to merge 5 commits into
apache:masterfrom
wilx:issue-1355-on-pr-1677

Conversation

@wilx

@wilx wilx commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

Important

This PR is stacked on top of #1677 and is the stacked alternative to #1668. Until #1677 is merged, GitHub's diff also includes its two commits. After #1677 is merged, this PR should contain only the five follow-up commits described below. If this stacked approach is preferred, #1668 can be closed.

Summary

Complete the Maven Artifact Transfer removal after #1677:

  • migrate repository-layout installation in dependency:copy-dependencies to Maven Resolver while preserving local-repository metadata, copied POMs, snapshot base versions, and repository content type;
  • migrate dependency:purge-local-repository resolution while preserving filtering, fallback resolution, classifiers, and aggregated failure reporting;
  • remove the now-unused maven-artifact-transfer dependency and DependableCoordinate implementation;
  • preserve dependency:get's historical unconditional refresh policy for explicitly supplied repositories while leaving other ResolverUtil callers session-controlled;
  • preserve separately configured packaging and classifier values for short artifact coordinates, with explicit coordinate segments retaining precedence.

The repository parsing, strict artifact-coordinate validation, and dependency:get Resolver migration come from #1677.

Fixes #1355

Verification

  • Maven 3/JDK 21: nice mvn clean verify — 434 tests, 0 failures/errors, 1 skipped; dependency analysis clean
  • Maven 3/JDK 21: nice mvn clean -Prun-its verify — 99 Invoker projects passed, 0 failed/errors/skipped
  • Maven 4/JDK 21: focused TestGetMojo, ResolverUtilTest, and TestCopyDependenciesMojo2 clean run — 43 tests, 0 failures/errors/skips
  • Maven 3/JDK 21: focused get-* Invoker run — 4 passed, 0 failed/errors/skipped
  • spotless:check passed on every follow-up commit revision; git diff --check passed on the final head

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

  • Your pull request should address just one issue, without pulling in other changes.
  • Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • Each commit in the pull request should have a meaningful subject line and body.
    Note that commits might be squashed by a maintainer on merge.
  • Write unit tests that match behavioral changes, where the tests fail if the changes to the runtime are not applied.
    This may not always be possible but is a best-practice.
  • Run mvn 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 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.

@wilx
wilx marked this pull request as ready for review August 9, 2026 22:43
@wilx
wilx force-pushed the issue-1355-on-pr-1677 branch from 28d423a to 7aa3484 Compare August 10, 2026 06:50
@wilx

wilx commented Aug 10, 2026

Copy link
Copy Markdown
Contributor Author

@slachiewicz Rebased.

@slachiewicz

Copy link
Copy Markdown
Member

Great, it now looks cleaner. Unfortunetly I've found #1682 that we must somehow address after mergint your's PR

wilx added 5 commits August 11, 2026 08:06
… 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.

Fixes 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.

Fixes apache#1355.
Drop the unused DependableCoordinate interface from ArtifactItem and remove the now-unused Maven Artifact Transfer dependency. Keep the artifact configuration getters unchanged.

Fixes apache#1355.
Keep dependency:get compatible with its historical behavior by applying the always-update policy to user-supplied repositories. Leave the existing session-controlled policy available to other ResolverUtil callers.

Fixes apache#1355.
Use separately configured packaging and classifier values when the artifact string omits those segments. Keep packaging and classifier values from explicit artifact coordinates at higher precedence.

Fixes apache#1355.
@wilx
wilx force-pushed the issue-1355-on-pr-1677 branch from 7aa3484 to a79a2ec Compare August 11, 2026 06:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[MDEP-858] Drop maven-artifact-transfer

2 participants