You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Gertjan Gaillet (JIRA)" <ji...@codehaus.org> on 2014/04/02 15:05:59 UTC

[jira] (MRELEASE-871) Release Tag wrongly created when invoked pom.xml path contains a '.'

     [ https://jira.codehaus.org/browse/MRELEASE-871?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gertjan Gaillet updated MRELEASE-871:
-------------------------------------

    Description: 
*Issue*
When invoking the maven release plugin on a pom.xml referenced by a path including a '.', the release tag created is incorrect.

Example: mvn clean release:clean release:prepare release:perform \[options\] -f ./pom.xml

This is true for both modular and hierarchical projects:
{code}/parent-pom/pom.xml
/module-a/pom.xml
/module-b/pom.xml{code}
and
{code}/pom.xml <-- this is the parent pom
/module-a/pom.xml
/module-b/pom.xml{code}

When releasing projects with either structure, invoking maven with "-f ./parent-pom/pom.xml" and "-f ./pom.xml" respectively, the tag operation copies from one level too high. For example if the svn structure is as follows:

{code}/trunk (at v 1.0.0-SNAPSHOT)
/branches/project-0.1.x (at v 0.1.0-SNAPSHOT)
/branches/project-0.2.x (at v 0.2.0-SNAPSHOT)
/tags/project-0.1.0{code}

and a release is being made from trunk, the tag project-1.0.0 would contain the complete svn structure. When a release is being made from /branches/project-0.1.x, the tag project-0.1.0 would contain the two branches:
{code}/branches/project-0.1.x
/branches/project-0.2.x{code}

*Root cause*
After some debugging, I've found that the issue is caused by function getBaseWorkingDirectoryParentCount in org.apache.maven.shared.release.util.ReleaseUtil.

I've created a patch (for trunk and 2.5), as attached, and tested it successfully on Windows7 and RHEL, with jdk1.6.0_26 and maven 3.0.4.
Let me know if the patch is OK (we are currently using it without any issue, and resolving this bug) and I'll commit it accordingly.

  was:
*Issue*
When invoking the maven release plugin on a pom.xml referenced by a path including a '.', the release tag created is incorrect.

Example: mvn clean release:clean release:prepare release:perform \[options\] -f ./pom.xml

This is true for both modular and hierarchical projects:
{code}/parent-pom/pom.xml
/module-a/pom.xml
/module-b/pom.xml{code}
and
{code}/pom.xml <-- this is the parent pom
/module-a/pom.xml
/module-b/pom.xml{code}

When releasing projects with either structure, invoking maven with "-f ./parent-pom/pom.xml" and "-f ./pom.xml" respectively, the tag operation copies from one level too high. For example if the svn structure is as follows:

{code}/trunk (at v 1.0.0-SNAPSHOT)
/branches/project-0.1.x (at v 0.1.0-SNAPSHOT)
/branches/project-0.2.x (at v 0.2.0-SNAPSHOT)
/tags/project-0.1.0{code}

and a release is being made from trunk, the tag project-1.0.0 would contain the complete svn structure. When a release is being made from /branches/project-0.1.x, the tag project-0.1.0 would contain the two branches:
{code}/branches/project-0.1.x
/branches/project-0.2.x{code}

*Root cause*
After some debugging, I've found that the issue is caused by function getBaseWorkingDirectoryParentCount in org.apache.maven.shared.release.util.ReleaseUtil.

I've created a patch, as attached, and tested it successfully on Windows7 and RHEL, with jdk1.6.0_26.
Let me know if the patch is OK (we are currently using it without any issue, and resolving this bug) and I'll commit it accordingly.


> Release Tag wrongly created when invoked pom.xml path contains a '.'
> --------------------------------------------------------------------
>
>                 Key: MRELEASE-871
>                 URL: https://jira.codehaus.org/browse/MRELEASE-871
>             Project: Maven Release Plugin
>          Issue Type: Bug
>          Components: perform, scm
>    Affects Versions: 2.5
>         Environment: RHEL Linux, Windows 7, most probably others
>            Reporter: Gertjan Gaillet
>         Attachments: ReleaseUtil.java.patch
>
>
> *Issue*
> When invoking the maven release plugin on a pom.xml referenced by a path including a '.', the release tag created is incorrect.
> Example: mvn clean release:clean release:prepare release:perform \[options\] -f ./pom.xml
> This is true for both modular and hierarchical projects:
> {code}/parent-pom/pom.xml
> /module-a/pom.xml
> /module-b/pom.xml{code}
> and
> {code}/pom.xml <-- this is the parent pom
> /module-a/pom.xml
> /module-b/pom.xml{code}
> When releasing projects with either structure, invoking maven with "-f ./parent-pom/pom.xml" and "-f ./pom.xml" respectively, the tag operation copies from one level too high. For example if the svn structure is as follows:
> {code}/trunk (at v 1.0.0-SNAPSHOT)
> /branches/project-0.1.x (at v 0.1.0-SNAPSHOT)
> /branches/project-0.2.x (at v 0.2.0-SNAPSHOT)
> /tags/project-0.1.0{code}
> and a release is being made from trunk, the tag project-1.0.0 would contain the complete svn structure. When a release is being made from /branches/project-0.1.x, the tag project-0.1.0 would contain the two branches:
> {code}/branches/project-0.1.x
> /branches/project-0.2.x{code}
> *Root cause*
> After some debugging, I've found that the issue is caused by function getBaseWorkingDirectoryParentCount in org.apache.maven.shared.release.util.ReleaseUtil.
> I've created a patch (for trunk and 2.5), as attached, and tested it successfully on Windows7 and RHEL, with jdk1.6.0_26 and maven 3.0.4.
> Let me know if the patch is OK (we are currently using it without any issue, and resolving this bug) and I'll commit it accordingly.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)