John Casey wrote: > Hi everyone, > > I wanted to call a vote to release a beta version of the new assembly > plugin. ... > Road Map: > http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11126&styleName=Html&version=12617 > > Tag: > http://svn.apache.org/repos/asf/maven/plugins/tags/maven-assembly-plugin-2.2-beta-1 ... > So, let's try for 24hrs. Please vote +1/+0/-1.
I vote a non-binding hang-on-a-bit-and-let's-discuss-a-compatibility-issue. I believe that the existing fix to MASSEMBLY-173 is not necessarily the best one. To recap: In 2.1, <fileMode> and <directoryMode> children of <fileSet> <dependencySet> <binaries> <sources> and <repository> elements were processed by Integer.parseInt(x, 8). However the <fileMode> children of <file> elements were processed by Integer.parseInt(x). In 2.2-beta-1, all these have been replaced with Integer.decode(). This means that in 2.1, elements in the first group were always processed as octal, whilst <file><fileMode> elements were always processed as decimal. In 2.2-beta-1, this has been changed so that everything depends on whether a leading zero is used. I don't think this is a good idea, because there are very likely many existing assembly descriptors using octal modes without a leading zero, because it has worked fine that way for a long time, and people are accustomed to chmod, the prime example of an octal mode UI, not requiring one. The problem remains, what to do with the <file><fileMode> element. As I see it, possibilities are: (1) Change to interpreting it as octal always, breaking old POMs. (2) As (1), but allow some special hackery detecting modes which look like the decimal representation of common octal modes, and treating them as such. Examples would be 420 (644), 436 (664), 493 (755), 509 (775). (3) Change to interpreting it dependent on the presence/absence of a leading zero. In my opinion, maintaining compatibility should be a high priority, since as the release-plugin does not *actually* generate release-pom.xml files, any compatibility break will break the build reproducibility of many people's SCM tags. Max.
signature.asc
Description: OpenPGP digital signature