You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "David Van den Brande (JIRA)" <ji...@codehaus.org> on 2008/08/11 15:47:26 UTC

[jira] Created: (MRELEASE-370) release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).

release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).
-----------------------------------------------------------------------------------------------------------------------------

                 Key: MRELEASE-370
                 URL: http://jira.codehaus.org/browse/MRELEASE-370
             Project: Maven 2.x Release Plugin
          Issue Type: Bug
    Affects Versions: 2.0-beta-7
         Environment: maven 2.0.9 on windows
            Reporter: David Van den Brande


Case:

project (version 1.0.4-SNAPSHOT)
-	pom.xml with
	<modules>
		<module>module1</module>
                <module>module2</module>
	</modules>
project/module1 (version 1.0.4-SNAPSHOT)
-	pom.xml with "project" as its parent
-	dependency on module2
project/module2 (version 1.0.4-SNAPSHOT)
-	pom.xml with "project" as its parent

In the "project" folder run 
-	mvn -DdryRun=true release:prepare -DpreparationGoals=clean
         => release version: 1.0.4
         => next dev version: 1.0.5-SNAPSHOT

Result:

* "project" pom has two correct pom versions: pom.xml.tag & pom.xml.next

* "module" pom: 
       - correct pom.xml.tag, meaning:
               => correct parent/version: 1.0.4-SNAPSHOT
               => correct module2 dependency moved from 1.0.4-SNAPSHOT to 1.0.5-SNAPSHOT
       - pom.xml.next:
               => correct parent/version: 1.0.5-SNAPSHOT
               => wrong module2 dependency 1.0.4-SNAPSHOT (it should be 1.0.5-SNAPSHOT)



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MRELEASE-370) release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).

Posted by "John Davis (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=191378#action_191378 ] 

John Davis commented on MRELEASE-370:
-------------------------------------

We have found the same issue with the projects comprising our products with version 2.0-beta-9 of the Release Plugin.

Given the following multi-module project:

data-service-parent-pom (1.1-SNAPSHOT)
    data-service-api (1.1-SNAPSHOT)
    data-service-impl (1.1-SNAPSHOT)
    
where data-service-impl (1.1-SNAPSHOT) depends upon data-service-api (1.1-SNAPSHOT)

The <dependencies> section of the data-service-impl (1.1-SNAPSHOT) looks like:

        <dependencies>
            <dependency>
                        <groupId>com.echostorm.adlib</groupId>
                        <artifactId>data-service-api</artifactId>
                        <version>1.1-SNAPSHOT</version>
                </dependency>
            ..... stuff deleted ......
        </dependencies>        
        
After executing mvn  release:prepare -Dtag="adlib-3.6-rc5" -DaddSchema=false -DpreparationGoals="clean install", the tagged version of the POM was:

        <dependencies>
            <dependency>
                        <groupId>com.echostorm.adlib</groupId>
                        <artifactId>data-service-api</artifactId>
                        <version>1.1</version>
                </dependency>
            ..... stuff deleted ......
        </dependencies>        

which was as expected, and the next development version was:

        <dependencies>
            <dependency>
                        <groupId>com.echostorm.adlib</groupId>
                        <artifactId>data-service-api</artifactId>
                        <version>1.1-SNAPSHOT</version>
                </dependency>
            ..... stuff deleted ......
        </dependencies>        

Which was not as expected. We had expected this dependency to be at <version>1.2-SNAPSHOT</version> which was the next development version
of data-service-api as advanced by the release plugin.

The method updateDomVersion() in AbstractRewritePomsPhase.java of the maven-release-manager project was modified (see attached patch for details) changing the
tests that trigger the updateVersion() method. 

Now executing    
   mvn release:prepare -Dtag="adlib-3.6-rc5" -DaddSchema=false -DpreparationGoals="clean install"
gives these results for the <dependencies> section on the tagged and next development version POMS of data-service-impl:

TAGGED:

        <dependencies>
            <dependency>
                        <groupId>com.echostorm.adlib</groupId>
                        <artifactId>data-service-api</artifactId>
                        <version>1.1</version>
                </dependency>
            ..... stuff deleted ......
        </dependencies>        

NEXT DEVELOPMENT:

        <dependencies>
            <dependency>
                        <groupId>com.echostorm.adlib</groupId>
                        <artifactId>data-service-api</artifactId>
                        <version>1.2-SNAPSHOT</version>
                </dependency>
            ..... stuff deleted ......
        </dependencies>        

which was the expected results.

I tested several other of our projects which are similar from an "internal" dependency viewpoint using the modified version of the Release Plugin 
and the results were the same. No side effects were noted within our small set of tests. How this affects reports, plugins, etc is unknown.

The following JIRA tickets may be related to this issue: 
    MRELEASE-295
    MRELEASE-444

Since I am fully familiar with the Release Plugin and supporting modules architecture and code, the attached patch may not be the optimum solution.
 
Hopefully version 2.0-beta-10 will contain this or another similar patch resolving the issue.

Please let me know if I can be of further assistance.

Thanks,

John Davis
EchoStorm Worldwide, LLC


> release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-370
>                 URL: http://jira.codehaus.org/browse/MRELEASE-370
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>    Affects Versions: 2.0-beta-7
>         Environment: maven 2.0.9 on windows
>            Reporter: David Van den Brande
>
> Case:
> project (version 1.0.4-SNAPSHOT)
> -	pom.xml with
> 	<modules>
> 		<module>module1</module>
>                 <module>module2</module>
> 	</modules>
> project/module1 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> -	dependency on module2
> project/module2 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> In the "project" folder run 
> -	mvn -DdryRun=true release:prepare -DpreparationGoals=clean
>          => release version: 1.0.4
>          => next dev version: 1.0.5-SNAPSHOT
> Result:
> * "project" pom has two correct pom versions: pom.xml.tag & pom.xml.next
> * "module" pom: 
>        - correct pom.xml.tag, meaning:
>                => correct parent/version: 1.0.4-SNAPSHOT
>                => correct module2 dependency moved from 1.0.4-SNAPSHOT to 1.0.5-SNAPSHOT
>        - pom.xml.next:
>                => correct parent/version: 1.0.5-SNAPSHOT
>                => wrong module2 dependency 1.0.4-SNAPSHOT (it should be 1.0.5-SNAPSHOT)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (MRELEASE-370) release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).

Posted by "John Davis (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MRELEASE-370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

John Davis updated MRELEASE-370:
--------------------------------

    Attachment: AbstractRewritePomsPhase.patch

> release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-370
>                 URL: http://jira.codehaus.org/browse/MRELEASE-370
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>    Affects Versions: 2.0-beta-7
>         Environment: maven 2.0.9 on windows
>            Reporter: David Van den Brande
>         Attachments: AbstractRewritePomsPhase.patch
>
>
> Case:
> project (version 1.0.4-SNAPSHOT)
> -	pom.xml with
> 	<modules>
> 		<module>module1</module>
>                 <module>module2</module>
> 	</modules>
> project/module1 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> -	dependency on module2
> project/module2 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> In the "project" folder run 
> -	mvn -DdryRun=true release:prepare -DpreparationGoals=clean
>          => release version: 1.0.4
>          => next dev version: 1.0.5-SNAPSHOT
> Result:
> * "project" pom has two correct pom versions: pom.xml.tag & pom.xml.next
> * "module" pom: 
>        - correct pom.xml.tag, meaning:
>                => correct parent/version: 1.0.4-SNAPSHOT
>                => correct module2 dependency moved from 1.0.4-SNAPSHOT to 1.0.5-SNAPSHOT
>        - pom.xml.next:
>                => correct parent/version: 1.0.5-SNAPSHOT
>                => wrong module2 dependency 1.0.4-SNAPSHOT (it should be 1.0.5-SNAPSHOT)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (MRELEASE-370) release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).

Posted by "Arnaud Heritier (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MRELEASE-370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Arnaud Heritier updated MRELEASE-370:
-------------------------------------

    Component/s: prepare

> release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-370
>                 URL: http://jira.codehaus.org/browse/MRELEASE-370
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>    Affects Versions: 2.0-beta-7
>         Environment: maven 2.0.9 on windows
>            Reporter: David Van den Brande
>
> Case:
> project (version 1.0.4-SNAPSHOT)
> -	pom.xml with
> 	<modules>
> 		<module>module1</module>
>                 <module>module2</module>
> 	</modules>
> project/module1 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> -	dependency on module2
> project/module2 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> In the "project" folder run 
> -	mvn -DdryRun=true release:prepare -DpreparationGoals=clean
>          => release version: 1.0.4
>          => next dev version: 1.0.5-SNAPSHOT
> Result:
> * "project" pom has two correct pom versions: pom.xml.tag & pom.xml.next
> * "module" pom: 
>        - correct pom.xml.tag, meaning:
>                => correct parent/version: 1.0.4-SNAPSHOT
>                => correct module2 dependency moved from 1.0.4-SNAPSHOT to 1.0.5-SNAPSHOT
>        - pom.xml.next:
>                => correct parent/version: 1.0.5-SNAPSHOT
>                => wrong module2 dependency 1.0.4-SNAPSHOT (it should be 1.0.5-SNAPSHOT)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Closed: (MRELEASE-370) release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MRELEASE-370?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brett Porter closed MRELEASE-370.
---------------------------------

       Resolution: Fixed
    Fix Version/s: 2.1
         Assignee: Brett Porter

> release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-370
>                 URL: http://jira.codehaus.org/browse/MRELEASE-370
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>    Affects Versions: 2.0-beta-7
>         Environment: maven 2.0.9 on windows
>            Reporter: David Van den Brande
>            Assignee: Brett Porter
>             Fix For: 2.1
>
>         Attachments: AbstractRewritePomsPhase.patch
>
>
> Case:
> project (version 1.0.4-SNAPSHOT)
> -	pom.xml with
> 	<modules>
> 		<module>module1</module>
>                 <module>module2</module>
> 	</modules>
> project/module1 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> -	dependency on module2
> project/module2 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> In the "project" folder run 
> -	mvn -DdryRun=true release:prepare -DpreparationGoals=clean
>          => release version: 1.0.4
>          => next dev version: 1.0.5-SNAPSHOT
> Result:
> * "project" pom has two correct pom versions: pom.xml.tag & pom.xml.next
> * "module" pom: 
>        - correct pom.xml.tag, meaning:
>                => correct parent/version: 1.0.4-SNAPSHOT
>                => correct module2 dependency moved from 1.0.4-SNAPSHOT to 1.0.5-SNAPSHOT
>        - pom.xml.next:
>                => correct parent/version: 1.0.5-SNAPSHOT
>                => wrong module2 dependency 1.0.4-SNAPSHOT (it should be 1.0.5-SNAPSHOT)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MRELEASE-370) release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).

Posted by "Emilian Bold (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=205169#action_205169 ] 

Emilian Bold commented on MRELEASE-370:
---------------------------------------

I'm also noticing this bug on OSX, maven 2.2.0 with the beta-8 release plugin.

Any suggested workaround for this or some snapshot repository I could use a proper build with the attached patch ?

What other choices are there except building my own plugin with that patch?

> release:prepare is not updating inter-modules dependencies to the next version snapshot identifier correctly (-DdryRun=true).
> -----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-370
>                 URL: http://jira.codehaus.org/browse/MRELEASE-370
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>    Affects Versions: 2.0-beta-7
>         Environment: maven 2.0.9 on windows
>            Reporter: David Van den Brande
>         Attachments: AbstractRewritePomsPhase.patch
>
>
> Case:
> project (version 1.0.4-SNAPSHOT)
> -	pom.xml with
> 	<modules>
> 		<module>module1</module>
>                 <module>module2</module>
> 	</modules>
> project/module1 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> -	dependency on module2
> project/module2 (version 1.0.4-SNAPSHOT)
> -	pom.xml with "project" as its parent
> In the "project" folder run 
> -	mvn -DdryRun=true release:prepare -DpreparationGoals=clean
>          => release version: 1.0.4
>          => next dev version: 1.0.5-SNAPSHOT
> Result:
> * "project" pom has two correct pom versions: pom.xml.tag & pom.xml.next
> * "module" pom: 
>        - correct pom.xml.tag, meaning:
>                => correct parent/version: 1.0.4-SNAPSHOT
>                => correct module2 dependency moved from 1.0.4-SNAPSHOT to 1.0.5-SNAPSHOT
>        - pom.xml.next:
>                => correct parent/version: 1.0.5-SNAPSHOT
>                => wrong module2 dependency 1.0.4-SNAPSHOT (it should be 1.0.5-SNAPSHOT)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira