You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "thomas bruyelle (JIRA)" <ji...@codehaus.org> on 2010/09/09 10:12:32 UTC

[jira] Created: (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

release:prepare should stop when there is snapshots in dependencies management
------------------------------------------------------------------------------

                 Key: MRELEASE-594
                 URL: http://jira.codehaus.org/browse/MRELEASE-594
             Project: Maven 2.x Release Plugin
          Issue Type: Bug
            Reporter: thomas bruyelle




-- 
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-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Joerg Schaible (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=234770#action_234770 ] 

Joerg Schaible commented on MRELEASE-594:
-----------------------------------------

@Thomas: Yes, it has to. The parent is an artifact on its own defining the versions for any shared artifact (external and internal ones) in the organization. It is in the responsibility of the project to ensure that any of those shared artifacts is released before the project's own release. If not, the required shared artifacts have to be released first, the depMgmt version of the global POM is updated and released also.

@Olivier: Yes, the release of the child will fail, but only if it depends on a SNAPSHOT. See, in an organizational POM you manage different components that may or may not be used together. Typically one 3rd of all our internal artifacts (~250) stay on SNAPSHOT for minor releases of individual components or projects. It would be a QA nightmare forcing a release for all of them and would make the release plugin completely unusable for us. And I am quite sure that this *is* normal for an organizational POM.

> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: http://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: 2.1
>
>


-- 
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] (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Michael Wenig (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=315408#comment-315408 ] 

Michael Wenig commented on MRELEASE-594:
----------------------------------------

I ran into this problem today. I released a organization-parent-pom which still had a SNAPSHOT-dependency in dependencyManagement. After that I tried to release the using project and this fails because of the usage of a SNAPSHOT. So I either have the possibility to redefine the version in the using project (which makes the predefinition in dependencyManagement useless) or to create another release of the parent and mark the old one as "do not use"

=> I cleary see it as a bug, that the release has been possible.

I also aggree with Brett that having SNAPSHOTs in released POMs is not a good practice - if there is a usecase for that I would suggest a parameter which has to be explicity switched on 

Ist there any schedule for this issue?
                
> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: https://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: Backlog
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Michael Wenig (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=315693#comment-315693 ] 

Michael Wenig commented on MRELEASE-594:
----------------------------------------

bq. => I cleary see it as a bug, that the release has been possible.
bq. Without some kind of command line / property override you mean ?

Yes - I did not specify any special property. It would be ok if I had specify some property like "allowSnapshots".

As we have a controlled environment for the release plugin it would be sufficient at our site to have an optional parameter to disallow Snapshot-Releases.

bq. mvn release:foo -DallowSnapshotVersionInRelease=parent,plugin,dependency,project,all

In the case it is needed at all this kind of solution would be perfect:
* The (imho normal and widespread) usecase of not allowing any SNAPSHOT in a release at all would be supported by default
* The ones who need SNAPSHOTS in released poms would be able to do it (even I still not fully understand the mentioned use case)
* I have to explicitly state that I want to allow SNAPSHOTS
* I am able to selectivly allow SNAPSHOTS
* Indeed the need to explicitly specify an option to allow SNAPSHOTs should make people think about it if they are really using a reasonable process

Regards Michael
                
> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: https://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: Backlog
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Joerg Schaible (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=234744#action_234744 ] 

Joerg Schaible commented on MRELEASE-594:
-----------------------------------------

Such a functionality must be activated via configuration only. In an enviornment using a parent POM for an organization it is *normal* to have some deps in the depMgmt set to SNAPSHOT. This is totally fine as long as they are not used for a release. A strict requirement for all of them to be non-SNAPSHOTs would break our Maven process completely.

> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: http://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>            Reporter: thomas bruyelle
>            Assignee: Olivier Lamy
>             Fix For: 2.1
>
>


-- 
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] (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Robert Scholte (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Scholte updated MRELEASE-594:
------------------------------------

    Component/s: prepare
    
> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: https://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: Backlog
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

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

Olivier Lamy updated MRELEASE-594:
----------------------------------

    Fix Version/s: 2.1
         Assignee: Olivier Lamy

> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: http://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>            Reporter: thomas bruyelle
>            Assignee: Olivier Lamy
>             Fix For: 2.1
>
>


-- 
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] (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Darryl L. Miles (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=315683#comment-315683 ] 

Darryl L. Miles commented on MRELEASE-594:
------------------------------------------

=> I cleary see it as a bug, that the release has been possible.

Without some kind of command line / property override you mean ?

Ideally the override for different things:

* SNAPSHOT parent/grand-parents [parent]
* SNAPSHOT plugins versions used [plugin]
* SNAPSHOT dependency versions used [dependency]
* SNAPSHOT the project(s) being the subject release itself [project]

I see all 4 are being separate matters but maybe sharing a single property override to allow release to happen.  With a string so an override might look like:

mvn release:foo -DallowSnapshotVersionInRelease=parent,plugin,dependency,project,all

The idea of not using an all or nothing (which is probe to human error) it to make the person think a little bit more as quite often I want to allow a plugin or dependency to be a SNAPSHOT but never my own projects and their parents.

Also all error/warning dialogs should indicate the nature of the SNAPSHOT i.e. what category from the above is it in and suggest the option to the use to retry the release with the property set.
                
> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: https://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: Backlog
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

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

Brett Porter updated MRELEASE-594:
----------------------------------

    Fix Version/s:     (was: 2.1)
                   Backlog

I don't think I'd recommend this as a normal practice... I think an option is the best way to go.

Pushing out of next release while consensus evolves...

> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: http://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: Backlog
>
>


-- 
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-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "thomas bruyelle (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=234746#action_234746 ] 

thomas bruyelle commented on MRELEASE-594:
------------------------------------------

Ok, is this true also when the release is done on the parent itself ?

> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: http://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>            Reporter: thomas bruyelle
>            Assignee: Olivier Lamy
>             Fix For: 2.1
>
>


-- 
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] (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Darryl L. Miles (JIRA)" <ji...@codehaus.org>.
    [ https://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=315683#comment-315683 ] 

Darryl L. Miles edited comment on MRELEASE-594 at 12/14/12 3:34 AM:
--------------------------------------------------------------------

=> I cleary see it as a bug, that the release has been possible.

Without some kind of command line / property override you mean ?

Ideally the override for different things:

* SNAPSHOT parent/grand-parents [parent]
* SNAPSHOT plugins versions used [plugin]
* SNAPSHOT dependency versions used [dependency]
* SNAPSHOT the project(s) being the subject release itself [project]

I see all 4 are being separate matters but maybe sharing a single property override to allow release to happen.  With a string so an override might look like:

mvn release:foo -DallowSnapshotVersionInRelease=parent,plugin,dependency,project,all

The idea of not using an all or nothing (which is prone to human error). The option should make the person think a little bit more about it and the solution should not be a sledgehammer but the minimum surface area of overriding the normal rules required to push past the problem.

As quite often I want to allow a plugin or dependency to be a SNAPSHOT (I have no control of their versions sometimes) but never my own projects and their parents.

Also all error/warning dialogs should indicate the nature of the SNAPSHOT i.e. what category from the above is it in and suggest the minimum amount of override with property to use when retrying the release.  i.e. don't offer "all" but something else.
                
      was (Author: dlmiles):
    => I cleary see it as a bug, that the release has been possible.

Without some kind of command line / property override you mean ?

Ideally the override for different things:

* SNAPSHOT parent/grand-parents [parent]
* SNAPSHOT plugins versions used [plugin]
* SNAPSHOT dependency versions used [dependency]
* SNAPSHOT the project(s) being the subject release itself [project]

I see all 4 are being separate matters but maybe sharing a single property override to allow release to happen.  With a string so an override might look like:

mvn release:foo -DallowSnapshotVersionInRelease=parent,plugin,dependency,project,all

The idea of not using an all or nothing (which is probe to human error) it to make the person think a little bit more as quite often I want to allow a plugin or dependency to be a SNAPSHOT but never my own projects and their parents.

Also all error/warning dialogs should indicate the nature of the SNAPSHOT i.e. what category from the above is it in and suggest the option to the use to retry the release with the property set.
                  
> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: https://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>          Components: prepare
>            Reporter: Thomas Bruyelle
>            Assignee: Olivier Lamy
>             Fix For: Backlog
>
>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (MRELEASE-594) release:prepare should stop when there is snapshots in dependencies management

Posted by "Olivier Lamy (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/MRELEASE-594?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=234748#action_234748 ] 

Olivier Lamy commented on MRELEASE-594:
---------------------------------------

Hi Joerg,
uhm not fully agree on the normal :-)
The use case is release a parent with a SNAPSHOT in depMgmt.
Then release a child with dependency which is finally now SNAPSHOT will failed due to the version inheritance.
Yes we could make to configurable stuff but IMHO it should failed by default in such case.
Sure it will backward non compatible.
Others WDYT here ?

> release:prepare should stop when there is snapshots in dependencies management
> ------------------------------------------------------------------------------
>
>                 Key: MRELEASE-594
>                 URL: http://jira.codehaus.org/browse/MRELEASE-594
>             Project: Maven 2.x Release Plugin
>          Issue Type: Bug
>            Reporter: thomas bruyelle
>            Assignee: Olivier Lamy
>             Fix For: 2.1
>
>


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