[jira] Commented: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread Brian Fox (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240972#action_240972
 ] 

Brian Fox commented on MASSEMBLY-517:
-

From my POV this was a good change. Each pom can produce one artifact with a 
null classifier and that type should be described by the packaging type. 
Having an artifact like a zip deployed with a null classifier from a 
packagingpom/packaging pom causes tons of problems with other tools trying 
to understand the artifact. The fact is packaging pom means it is a pom and 
that's it.

 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

-- 
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: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread Brian Fox (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240973#action_240973
 ] 

Brian Fox commented on MASSEMBLY-517:
-

This was intentionally introduced by MASSEMBLY-464

 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

-- 
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: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread Eric Haszlakiewicz (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240975#action_240975
 ] 

Eric Haszlakiewicz commented on MASSEMBLY-517:
--

Well from my POV this is a horrible change because:
  1) If your main artifact IS the one that you are describing with the assembly 
descriptor this is the only way to create it.  The fact that a pom packaging 
artifact gets deployed is actually not desired, but can't be avoided.
  2) Having to specify a classifier AND an alternate packaging seems redundant.
  3) There are projects that already use this, many of mine included.  This 
change breaks the builds for all of those.
  4) This is a huge behaviour change to include at the last minute in the 
transition from a beta to non-beta release.

 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

-- 
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: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread John Casey (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240976#action_240976
 ] 

John Casey commented on MASSEMBLY-517:
--

The change was not accidental, instead the fact that the id/ element wasn't 
required was the bug.

However, using the appendAssemblyIdfalse/appendAssemblyId plugin 
configuration should leave off the assembly-id classifier, even once the 
binaries are deployed. If this isn't happening, then that's a separate bug, 
which should be fixed.



 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

-- 
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: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread Eric Haszlakiewicz (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240977#action_240977
 ] 

Eric Haszlakiewicz commented on MASSEMBLY-517:
--

Just because it wasn't accidental doesn't mean it was a good idea.

The problem here is that now every single one of the applications that does 
this needs to be changed, and it's not just my apps that depend on this 
behaviour.

Why is it a problem to omit it in the assembly descriptor if, by specifying 
appendAssemblyId false, it gets left off anyway?  And what am I supposed to put 
in the id in that case, just some random string?  That seems like you took a 
relatively natural way to cause the classifier to be omitted, and made it 
needlessly verbose.

 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

-- 
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: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread Eric Haszlakiewicz (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240979#action_240979
 ] 

Eric Haszlakiewicz commented on MASSEMBLY-517:
--

IMO, if a change like this must be made, at the very least it should result in 
a big warning for at least the length of a minor release (i.e. 2.2 through 
2.3) to give people a chance to adjust their builds.

 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

-- 
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: (MASSEMBLY-517) Assembly fails with empty id element now

2010-10-25 Thread John Casey (JIRA)

[ 
http://jira.codehaus.org/browse/MASSEMBLY-517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=240982#action_240982
 ] 

John Casey commented on MASSEMBLY-517:
--

The assembly id is used to report problems to the user, and for duplication 
detection. Not to mention that, if left off, it could override the main project 
jar (in cases, unlike yours, where people have distinct main project jars) 
without much warning.

The following snippet from AbstractAssemblyMojo should ensure that the 
appendAssemblyId/ flag works properly:

{code}
if ( isAssemblyIdAppended() )
{
projectHelper.attachArtifact( project, format, 
assembly.getId(), destFile );
}
else if ( classifier != null )
{
projectHelper.attachArtifact( project, format, 
classifier, destFile );
}
else if ( !pom.equals( type )  format.equals( type 
) )
{
if ( !warnedAboutMainProjectArtifact )
{
final StringBuffer message = new StringBuffer();

message.append( Configuration options: 
'appendAssemblyId' is set to false, and 'classifier' is missing. );
message.append( \nInstead of attaching the 
assembly file:  )
   .append( destFile )
   .append( , it will become the file for 
main project artifact. );
message.append( \nNOTE: If multiple 
descriptors or descriptor-formats are provided for this project, the value of 
this file will be non-deterministic! );

getLog().warn( message );
warnedAboutMainProjectArtifact = true;
}

final File existingFile = project.getArtifact()
 .getFile();
if ( ( existingFile != null )  
existingFile.exists() )
{
getLog().warn( Replacing pre-existing project 
main-artifact file:  + existingFile
   + \nwith 
assembly file:  + destFile );
}

project.getArtifact()
   .setFile( destFile );
}
else
{
projectHelper.attachArtifact( project, format, 
null, destFile );
}

{code}

If this isn't working, then that's the bug here. IMO it's not appropriate to 
make the id/ optional and create a hardship for new users (who may not 
understand the implications), just to allow other users to avoid using the 
proper plugin configuration.

 Assembly fails with empty id element now
 

 Key: MASSEMBLY-517
 URL: http://jira.codehaus.org/browse/MASSEMBLY-517
 Project: Maven 2.x Assembly Plugin
  Issue Type: Bug
Affects Versions: 2.2
Reporter: Eric Haszlakiewicz
Priority: Critical

 There is a serious regression in behaviour between version 2.2-beta-5 and 
 2.2.  With version 2.2, assembly descriptors that have an empty id element no 
 longer work.  i.e.:
 assembly
 id/id
 formatsformattar.gz/format/formats
 /assembly

 The error message is:
 [INFO] [assembly:single {execution: assemble-tar-gzip}]
 [INFO] Reading assembly descriptor: src/main/assembly/assembly.xml
 [INFO] 
 
 [ERROR] BUILD FAILURE
 [INFO] 
 
 [INFO] : org.apache.maven.plugin.assembly.model.assem...@15fddb33
 Assembly is incorrectly configured:
 Assembly:  is not configured correctly: Assembly ID must be present and 
 non-empty.

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