[ 
https://jira.codehaus.org/browse/MNG-3952?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=297184#comment-297184
 ] 

Tony Aiuto commented on MNG-3952:
---------------------------------

What maven could use is a concept of marking a previous artifact as 
"deprecation:LABEL" (e.g. 'obsolete' or 'insecure').  Your build will fail if 
you depend on anything marked with deprecation, but you may continue to if you 
explicitly add a notation in your dependency block in the pom that says 
"<allowDeprectaion>obsolete</...>

That gets people to notice the suggested update on a rebuild, but still allows 
them to shoot their feet if they insist they know what they are doing.

For the Quartz example above, the library owner could add 
<deprecation><label>moved</lable><description>Renamed to ... See details at 
http://opensymphony.org/...</....>.  When the build fails, the error should 
include the deprecation description and then the user can decide their right 
path.
                
> Create Deprecation Mechanism for Maven Artifacts
> ------------------------------------------------
>
>                 Key: MNG-3952
>                 URL: https://jira.codehaus.org/browse/MNG-3952
>             Project: Maven 2 & 3
>          Issue Type: Improvement
>          Components: Artifacts and Repositories, General
>    Affects Versions: 2.0.9
>         Environment: All
>            Reporter: Immo Huneke
>             Fix For: Issues to be reviewed for 3.x
>
>
> An example of the sort of problem that developers currently encounter can be 
> seen at 
> http://blog.jonasbandi.net/2008/12/using-jpa-and-hibernate-with-maven.html. I 
> have encountered similar problems in the past, e.g. trying to decide which 
> version of a plugin is the current one or being unaware that an artifact I 
> was using in a build had been superseded by another with a different groupId 
> and artifactId.
> I feel that Maven lacks a deprecation mechanism that would make it obvious to 
> everyone that they're using something out of date. The problem is that once 
> an artifact (other than a snapshot) has been published, it is never supposed 
> to change thereafter. But it shouldn't be impossible to devise a mechanism 
> for adding deprecation and redirection to the associated metadata. It would 
> then be possible for the dependency resolver to display a warning whenever a 
> deprecated artifact was used in a build, either as a plugin or as a library.

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

        

Reply via email to