You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Nicolas Adrian Barrera (JIRA)" <ji...@codehaus.org> on 2008/12/16 21:52:19 UTC

[jira] Created: (MRELEASE-399) Replace dependency version for RELEASE dependency.

Replace dependency version for <version>RELEASE</version> dependency.
---------------------------------------------------------------------

                 Key: MRELEASE-399
                 URL: http://jira.codehaus.org/browse/MRELEASE-399
             Project: Maven 2.x Release Plugin
          Issue Type: Improvement
    Affects Versions: 2.0-beta-8
            Reporter: Nicolas Adrian Barrera


I 'm using RELEASE version for some dependencies in my current project.

Imagine a simple scenario where i have project A who depends on project B..., 

A's pom.xml states:

...
<dependency>
 <artifactId>b</artifactId>
 <groupId>ar.com.b</groupId>
 <version>RELEASE</version>
</dependency>
...

When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.

So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?

Why do i think it should?
* So that A's released version will always work the same as that day I performed A's release
* So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases

I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.

Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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-399) Replace dependency version for RELEASE dependency.

Posted by "Danilo Ghirardelli (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=239741#action_239741 ] 

Danilo Ghirardelli commented on MRELEASE-399:
---------------------------------------------

This wuold be very interesting, expecially for those internal projects and parent poms. It would be way better that disabling entirely the feature as in maven 3.
IMHO, typical use case for this feature is the "shared"/"interfaces"/"singleSignOn" (or similar) project that is imported in many company projects, that is seldom updated (and only to add something or for bugfix).

> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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-399) Replace dependency version for RELEASE dependency.

Posted by "Nicolas Adrian Barrera (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=161498#action_161498 ] 

Nicolas Adrian Barrera commented on MRELEASE-399:
-------------------------------------------------

Thomas,

I 've been working on the plugin source code for a while before going on holidays for the last 2 weeks and I could made some changes on the source to replace the parent version from RELEASE to the last release resolved version.

I wasn't sure if those changes were alright so I didn't post them as I 've never collaborate on an open source project yet I don't know how should I share my changes... 

Perhaps I post them later as a diff between the base working copy with only those changes included and the svn tag I 've download.

comments are welcome.

cheers

> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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-399) Replace dependency version for RELEASE dependency.

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

Arnaud Heritier updated MRELEASE-399:
-------------------------------------

    Component/s: prepare

> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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-399) Replace dependency version for RELEASE dependency.

Posted by "Thomas Sauzedde (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=161018#action_161018 ] 

Thomas Sauzedde commented on MRELEASE-399:
------------------------------------------

+1 for this proposal.

I'll also be happy to see such a behavior and not only for <dependency> but also for the <parent> block !

In a sub-module, this will allow to user something like :
  <parent>
    <groupId>com.acme</groupId>
    <artifactId>parent</artifactId>
    <version>RELEASE</version>
  </parent>

to stick to the newest <dependencyManagement> block and when cutting a module release, to have the proper, unique "parent" version used by the release plugin !


> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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] Issue Comment Edited: (MRELEASE-399) Replace dependency version for RELEASE dependency.

Posted by "Thomas Sauzedde (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=161018#action_161018 ] 

Thomas Sauzedde edited comment on MRELEASE-399 at 1/15/09 9:17 AM:
-------------------------------------------------------------------

+1 for this proposal.

I'll also be happy to see such a behavior and not only for <dependency> but also for the <parent> block !

In a sub-module, this will allow to use something like :
  <parent>
    <groupId>com.acme</groupId>
    <artifactId>parent</artifactId>
    <version>RELEASE</version>
  </parent>

to stick to the newest <dependencyManagement> block defined in the "parent" and when cutting a sub-module release, to have the proper, unique "parent" version used by the release plugin at that time !


      was (Author: tsauzedde):
    +1 for this proposal.

I'll also be happy to see such a behavior and not only for <dependency> but also for the <parent> block !

In a sub-module, this will allow to user something like :
  <parent>
    <groupId>com.acme</groupId>
    <artifactId>parent</artifactId>
    <version>RELEASE</version>
  </parent>

to stick to the newest <dependencyManagement> block and when cutting a module release, to have the proper, unique "parent" version used by the release plugin !

  
> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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-399) Replace dependency version for RELEASE dependency.

Posted by "Thomas Sauzedde (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=161612#action_161612 ] 

Thomas Sauzedde commented on MRELEASE-399:
------------------------------------------

You can ask / propose your patch here of course but posting (or asking) on the dev. mailing list could be another way  ... (dev at maven.apache.org)

It's great that someone is really working on the topic ;-)

Regards

> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

-- 
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-399) Replace dependency version for RELEASE dependency.

Posted by "Martin Eigenbrodt (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-399?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=170380#action_170380 ] 

Martin Eigenbrodt commented on MRELEASE-399:
--------------------------------------------

I would be very interested in the patch. Replacing dynamic with static revisions is a feature I'm used to from ivy and I'm really missing in maven.

> Replace dependency version for <version>RELEASE</version> dependency.
> ---------------------------------------------------------------------
>
>                 Key: MRELEASE-399
>                 URL: http://jira.codehaus.org/browse/MRELEASE-399
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>          Components: prepare
>    Affects Versions: 2.0-beta-8
>            Reporter: Nicolas Adrian Barrera
>
> I 'm using RELEASE version for some dependencies in my current project.
> Imagine a simple scenario where i have project A who depends on project B..., 
> A's pom.xml states:
> ...
> <dependency>
>  <artifactId>b</artifactId>
>  <groupId>ar.com.b</groupId>
>  <version>RELEASE</version>
> </dependency>
> ...
> When running "mvn compile" to A, there maven knows which is B's last released version so that it can compile against certain specific code at that time, imagine it is 1.2.0.
> So why when I run "mvn release:prepare" A's tagged (released, svn cp) pom.xml doesn't replace <version>RELEASE</version> with <version>1.2.0</version> ?
> Why do i think it should?
> * So that A's released version will always work the same as that day I performed A's release
> * So that A's released version won't get hurted by possible non-backward-compatible changes on future B's releases
> I 've read at the Maven Definitive Guide e-book that use of <version>RELEASE</version> is not encouraged, but i seemed helpful for me until this point where I find this quite dissapointing.
> Please feel free to share thoughts may be I got confused with this but i think this is a problem that worth to be solved.

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