[ 
https://issues.apache.org/jira/browse/MNG-7316?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17434338#comment-17434338
 ] 

Michael Osipov edited comment on MNG-7316 at 10/26/21, 12:48 PM:
-----------------------------------------------------------------

While we are waiting for Rob's answer, Gary 
[this|https://github.com/apache/commons-release-plugin/blob/master/src/main/java/org/apache/commons/release/plugin/mojos/CommonsDistributionStagingMojo.java]
 file never accesses {{MavenProject#getAttachedArtifacts}} to iterate over, it 
does iterate over a directory which is added to the working copy and the 
committed. This tells we that you don't need to attach the artifacts at all. 
All you need are those assemblies in a specific dir and that's it. Isn't it? So 
my question again: Why attach if this will never go to a Maven repo and is 
never read, but for detachment only. I am confused.


was (Author: michael-o):
While we are waiting for Rob's answer, Gary 
[https://github.com/apache/commons-release-plugin/blob/master/src/main/java/org/apache/commons/release/plugin/mojos/CommonsDistributionStagingMojo.java|this]
 file never accesses {{MavenProject#getAttachedArtifacts}} to iterate over, it 
does iterate over a directory which is added to the working copy and the 
committed. This tells we that you don't need to attach the artifacts at all. 
All you need are those assemblies in a specific dir and that's it. Isn't it? So 
my question again: Why attach if this will never go to a Maven repo and is 
never read, but for detachment only. I am confused.

> MavenProject.getAttachedArtifacts() regression with 3.8.1
> ---------------------------------------------------------
>
>                 Key: MNG-7316
>                 URL: https://issues.apache.org/jira/browse/MNG-7316
>             Project: Maven
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 3.8.2, 3.8.3
>            Reporter: Gary D. Gregory
>            Assignee: Michael Osipov
>            Priority: Critical
>             Fix For: 3.8.x-candidate
>
>
> The method {{MavenProject.getAttachedArtifacts()}} as of 3.8.2 breaks 
> releasing components for us at Apache Commons using our Maven Release plugin 
> because the list returned is now immutable, we now get an exception when 
> calling {{remove()}} on the collection returned by the API; see 
> [https://github.com/apache/commons-release-plugin/blob/master/src/main/java/org/apache/commons/release/plugin/mojos/CommonsDistributionDetachmentMojo.java#L137]
> This worked fine in 3.8.1, may you please change it back for 3.8.4?
> We cannot use Maven 3.8.2 and 3.8.3 to release our components.
> ([~michael-o]: Ironically, I discovered this trying to create a release 
> candidate for Apache Commons CLI.)
> The exception in 3.8.3:
> {quote}Caused by: java.lang.UnsupportedOperationException
>  at java.util.Collections$UnmodifiableCollection.remove 
> (Collections.java:1060)
>  at 
> org.apache.commons.release.plugin.mojos.CommonsDistributionDetachmentMojo.execute
>  (CommonsDistributionDetachmentMojo.java:136)
>  at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo 
> (DefaultBuildPluginManager.java:137)
> {quote}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to