Uploaded image for project: 'Maven Release Plugin'
  1. Maven Release Plugin
  2. MRELEASE-449

Parent snapshot version is not rewritten to resolved non-snapshot version during release:prepare

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Duplicate
    • 2.0-beta-9
    • None
    • prepare
    • None
    • Patch

    Description

      When a pom has a parent specified with a snapshot version, when "mvn release:prepare" is executed, the version entered by the user when prompted to resolve the parent version is not used when the pom is rewritten. The parent version remains at the snapshot version in the rewritten pom.

      This happens in dry run mode and normal mode.

      I will attach a zip file with a simple example/test case that shows the bug. The steps to reproduce using the zip file:
      1. cd to parent
      2. execute "mvn install"
      3. cd to ../child
      4. execute "mvn -DdryRun=true release:prepare" answering "yes" to the first
      "resolve dependencies?" question and then answering with the default to
      all the other questions
      5. cat pom.xml.tag noticing the parent SNAPSHOT version has not been replaced

      The cause of this appears to be in AbstractRewritePomsPhase.rewriteParent. This method only consults the mappedVersions Map, however when the release plugin is executed from the command line and the user enters the version number to resolve the snapshot dependency (even using the default provided by the release plugin) the values are stored in the resolvedSnapshotDependencies Map only.

      I've modified the code to consult both Maps which is what other methods in the class do when rewriting dependency snapshot revisions. I have provided a patch with the modified code. The patch also contains a new test method in RewritePomsForReleasePhaseTest that will fail without the patch and pass with it.

      The patch was taken from maven-release 2.0-beta-9 and can be applied with

      patch -p0 < ~/maven-release-rewrite-parent-bug.patch
      

      Attachments

        1. maven-release-rewrite-parent-bug.patch
          10 kB
          Steve Gilbert
        2. parent_version_rewrite_bug.zip
          2 kB
          Steve Gilbert
        3. MRELEASE-449.diff
          10 kB

        Activity

          People

            rfscholte Robert Scholte
            agency23 Steve Gilbert
            Votes:
            25 Vote for this issue
            Watchers:
            19 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: