Skip to content

mvnup check (dry-run) reports results with applied/modified wording #13250

Description

@slachiewicz

Affected version

Apache Maven 4.0.0-rc-7 (6d8f301)

Bug description

mvnup check is a dry-run goal, but its output uses completion wording that says the
changes were already applied. Running it on a project with outdated plugin versions
reports:

[INFO]       ✓ Plugin upgrades applied
[INFO]     Upgrading Maven plugins to recommended versions Summary:
[INFO]       1 POM(s) modified
[INFO]       0 POM(s) needed no changes
[INFO]   ✓ Strategy completed successfully
[INFO]     Processed: 1 POMs
[INFO]     ✓ Modified: 1 POMs
...
[INFO] Creating .mvn directory if needed to avoid root directory warnings...
[INFO] → Would create .mvn directory at ...

The POM is in fact not modified (verified with diff before/after: zero changes),
and the trailing "Would create ..." line shows the dry-run intent — but everything above
it claims the upgrade was applied and the POM was modified.

Steps to reproduce

  1. Take a project with pinned outdated core plugins (e.g. maven-clean-plugin 3.2.0,
    maven-surefire-plugin 3.2.5, maven-jar-plugin 3.4.2)
  2. cp pom.xml /tmp/before.xml
  3. mvnup check
  4. diff /tmp/before.xml pom.xml → no differences, despite "1 POM(s) modified"

Expected behavior

check should consistently use conditional/dry-run wording, e.g. "would upgrade
maven-clean-plugin 3.2.0 → 3.5.0", "1 POM(s) would be modified", and not emit
"✓ Plugin upgrades applied" / "✓ Modified: 1 POMs".

Actual behavior

Dry-run goal reports completed modifications; users running check to preview upgrades
may believe their POM was already rewritten.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions