Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
There should be absolutely no system properties manipulation in the bowels of Maven. Or envars, they both need to be trapped at the front- end because we end up with little bits here and there. They should all be grabbed from the CLI, the order of precedence determined and then passed into Maven as properties. All the system properties and envar need to be entirely contained to the CLI. That's the direction I've been moving in. Even if we obey things like ${ENV.foo} that should be a property not operating on envars directly in the core. On 27-Mar-08, at 10:49 AM, John Casey wrote: I was incorrect; this is not a result of code I changed. I'll have to take a look at the SVN annotation to find the commit that changed this, but it looks like it may have been part of some work Jason was doing. I'm looking into it now. -john On Mar 27, 2008, at 1:19 PM, Brian E. Fox wrote: We have to err on the side of not causing more regressions. If we want to move in this direction, we should start deprecating the non ${project. Forms of the properties with big warnings in 2.0.9. -Original Message- From: John Casey [mailto:[EMAIL PROTECTED] Sent: Thursday, March 27, 2008 1:16 PM To: Maven Developers List Subject: Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3) Sorry for the spam. Digging deeper through the related links on MNG-2339, it's apparent that the comment in the DefaultMavenProjectBuilder is a touch misleading. The key issues relevant to where sysprops get used during interpolation are: MNG-2745 MNG-2651 It seems that environments that use maven programmatically (in 2.0.x? really??) are running into collisions where other libraries are injecting system properties that override values from the POM for the purposes of interpolation. For this reason (and because we don't have a concept of CLI properties separate from sysprops yet), the code in the project builder was changed to prefer values from the POM over sysprops. -john On Mar 27, 2008, at 1:06 PM, John Casey wrote: BTW, I found this comment on line 981 of DefaultMavenProjectBuilder: // [MNG-2339] ensure the system properties are still interpolated for backwards compat, but the model values must win I've checked that issue, and it looks like it was closed for this release...so, not present in 2.0.8. Additionally, the doesn't seem to say anything about which is supposed to win - model vs. sysprops. IMO, it makes more sense for CLI properties to override those in the model, since it follows the principle of local-most wins that we employ in other parts of Maven, but I'm not sure I know enough about the history of this issue. Does anyone have another issue number that contributes more to this discussion, that we could use to determine the correct course of action here? Thanks, -john On Mar 27, 2008, at 12:54 PM, John Casey wrote: Hmm, I'll have to do some homework on this one, but yeah, it looks like the interpolation changes I put in to get the path- translation in place. I'll have to see if I can work up a test case for this, and try to track down that original issue. Let me get to work on it and I'll see how fast I can come up with something. -john On Mar 27, 2008, at 8:09 AM, Brian E. Fox wrote: Hrm. It's probably a good idea to use a different property, but we should understand why this changed before going further. John, any ideas? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Olivier Lamy Sent: Thursday, March 27, 2008 6:56 AM To: Maven Developers List Subject: Re: [pre vote take 3] 2.0.9-RC3 Hi, Testing on corporate projects and build fine. +1 I have just noticed a change ("regression" ?). We have a corporate plugin. In the pom it's configured as this : .. .. - ${version} .. We use it with mvn blabla -Dversion=here a version. The value has changed : - with mvn 2.0.8 : the value from the cli is used. - with this RC : the ${version} is replaced with the current pom.version. It's not a blocking issue because we can easily replace with : .. - ${releaseVersion} .. and use mvn blabla -DreleaseVersion= But I hope there is no other side effect. -- Olivier 2008/3/26, Brian E. Fox <[EMAIL PROTECTED]>: We fixed the regressions identified last week with the plugin tools and reporting impl. The new 2.0.9 is staged at http://people.apache.org/~brianf/staging-repository/org/apache/ maven/apa che-maven/2.0.9-RC3/ You'll notice that this one has an RC qualifier attached to it. Since what I've actually been staging hasn't been for an official vote, it makes more sense to have actual deterministic numbers on them instead of continuously rolling back and forth between .10 and .9. The other significant reason it has a qualifier is that I want to solicit
RE: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
We're actively discussing on IRC, but in my mind a correct fix is one that fixes the root of the jira, which is that system properties where hosing versions, and doesn't break more builds. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Paul Benedict Sent: Thursday, March 27, 2008 3:38 PM To: Maven Developers List Subject: Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3) Brian, what do you consider the correct fix? That CLI takes precedence over POM properties? I was trying to glean through this chain to find out your proposal. Paul On Thu, Mar 27, 2008 at 2:08 PM, Brian E. Fox <[EMAIL PROTECTED]> wrote: > > >I can't see why overriding model values makes any sense from the > >command line - that's not what Olivier wanted but rather a straight > >substitution. > > You shouldn't be able to override model values for sure. I was saying > that if something is defined on the CLI for everything else, it should > take precedence. > > >The only change I can think of here is to have previous behaviour from > > >${version} and make sure ${project.version} is unaffected, but that's > >a significant change to the interpolator. > > That's not promising. > > >I think we're better off leaving this fix in with something in the > >release notes. > > I don't. We need to stop shoving incompatible changes down the user's > throats. It shouldn't always require reworking of your poms to upgrade > to the next maven version. That's annoying and wrong. If we do need to > make changes, and I agree that forward progress must be made that > sometimes breaks stuff, it should be deprecated first so people can get > a chance to fix their poms. > > Based on the votes and comments in the issue, it's clear we can't just > revert it either...We need to fix this correctly. > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
On 28/03/2008, at 6:37 AM, Paul Benedict wrote: Brian, what do you consider the correct fix? That CLI takes precedence over POM properties? I was trying to glean through this chain to find out your proposal. The "most correct" fix is: a) -Dversion should still replace ${version} b) -Dversion should not replace ${project.version} c) ${version} should evaluate to ${project.version} if nothing else specified (though this should be deprecated behaviour). The same applies for every other pom property, not just version. The problem with my fix is that (a) no longer holds, though reverting would sacrifice (b). On IRC, John said he has a potential fix that makes (a) hold, and while (b) doesn't, it mitigates the main observed side effect which is -Dversion coming in from the environment, rather than the command line. This is the least risk, but it's also another new behaviour we may not want to preserve. Fixing (a) + (b) is possible, but also risks some other regression in (c). - Brett -- Brett Porter [EMAIL PROTECTED] http://blogs.exist.com/bporter/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
Brian, what do you consider the correct fix? That CLI takes precedence over POM properties? I was trying to glean through this chain to find out your proposal. Paul On Thu, Mar 27, 2008 at 2:08 PM, Brian E. Fox <[EMAIL PROTECTED]> wrote: > > >I can't see why overriding model values makes any sense from the > >command line - that's not what Olivier wanted but rather a straight > >substitution. > > You shouldn't be able to override model values for sure. I was saying > that if something is defined on the CLI for everything else, it should > take precedence. > > >The only change I can think of here is to have previous behaviour from > > >${version} and make sure ${project.version} is unaffected, but that's > >a significant change to the interpolator. > > That's not promising. > > >I think we're better off leaving this fix in with something in the > >release notes. > > I don't. We need to stop shoving incompatible changes down the user's > throats. It shouldn't always require reworking of your poms to upgrade > to the next maven version. That's annoying and wrong. If we do need to > make changes, and I agree that forward progress must be made that > sometimes breaks stuff, it should be deprecated first so people can get > a chance to fix their poms. > > Based on the votes and comments in the issue, it's clear we can't just > revert it either...We need to fix this correctly. > > - > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > >
RE: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
>I can't see why overriding model values makes any sense from the >command line - that's not what Olivier wanted but rather a straight >substitution. You shouldn't be able to override model values for sure. I was saying that if something is defined on the CLI for everything else, it should take precedence. >The only change I can think of here is to have previous behaviour from >${version} and make sure ${project.version} is unaffected, but that's >a significant change to the interpolator. That's not promising. >I think we're better off leaving this fix in with something in the >release notes. I don't. We need to stop shoving incompatible changes down the user's throats. It shouldn't always require reworking of your poms to upgrade to the next maven version. That's annoying and wrong. If we do need to make changes, and I agree that forward progress must be made that sometimes breaks stuff, it should be deprecated first so people can get a chance to fix their poms. Based on the votes and comments in the issue, it's clear we can't just revert it either...We need to fix this correctly. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
I changed it, and it was in http://jira.codehaus.org/browse/MNG-2339 as the comment says. JDK 1.4 defines a system property for "version" that is "2.4.1" for some reason, and it wreaks havoc on anything that uses ${version}, $ {project.version}, etc. I can't see why overriding model values makes any sense from the command line - that's not what Olivier wanted but rather a straight substitution. The only change I can think of here is to have previous behaviour from ${version} and make sure ${project.version} is unaffected, but that's a significant change to the interpolator. I think we're better off leaving this fix in with something in the release notes. - Brett On 28/03/2008, at 4:49 AM, John Casey wrote: I was incorrect; this is not a result of code I changed. I'll have to take a look at the SVN annotation to find the commit that changed this, but it looks like it may have been part of some work Jason was doing. I'm looking into it now. -john On Mar 27, 2008, at 1:19 PM, Brian E. Fox wrote: We have to err on the side of not causing more regressions. If we want to move in this direction, we should start deprecating the non ${project. Forms of the properties with big warnings in 2.0.9. -Original Message- From: John Casey [mailto:[EMAIL PROTECTED] Sent: Thursday, March 27, 2008 1:16 PM To: Maven Developers List Subject: Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3) Sorry for the spam. Digging deeper through the related links on MNG-2339, it's apparent that the comment in the DefaultMavenProjectBuilder is a touch misleading. The key issues relevant to where sysprops get used during interpolation are: MNG-2745 MNG-2651 It seems that environments that use maven programmatically (in 2.0.x? really??) are running into collisions where other libraries are injecting system properties that override values from the POM for the purposes of interpolation. For this reason (and because we don't have a concept of CLI properties separate from sysprops yet), the code in the project builder was changed to prefer values from the POM over sysprops. -john On Mar 27, 2008, at 1:06 PM, John Casey wrote: BTW, I found this comment on line 981 of DefaultMavenProjectBuilder: // [MNG-2339] ensure the system properties are still interpolated for backwards compat, but the model values must win I've checked that issue, and it looks like it was closed for this release...so, not present in 2.0.8. Additionally, the doesn't seem to say anything about which is supposed to win - model vs. sysprops. IMO, it makes more sense for CLI properties to override those in the model, since it follows the principle of local-most wins that we employ in other parts of Maven, but I'm not sure I know enough about the history of this issue. Does anyone have another issue number that contributes more to this discussion, that we could use to determine the correct course of action here? Thanks, -john On Mar 27, 2008, at 12:54 PM, John Casey wrote: Hmm, I'll have to do some homework on this one, but yeah, it looks like the interpolation changes I put in to get the path- translation in place. I'll have to see if I can work up a test case for this, and try to track down that original issue. Let me get to work on it and I'll see how fast I can come up with something. -john On Mar 27, 2008, at 8:09 AM, Brian E. Fox wrote: Hrm. It's probably a good idea to use a different property, but we should understand why this changed before going further. John, any ideas? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Olivier Lamy Sent: Thursday, March 27, 2008 6:56 AM To: Maven Developers List Subject: Re: [pre vote take 3] 2.0.9-RC3 Hi, Testing on corporate projects and build fine. +1 I have just noticed a change ("regression" ?). We have a corporate plugin. In the pom it's configured as this : .. .. - ${version} .. We use it with mvn blabla -Dversion=here a version. The value has changed : - with mvn 2.0.8 : the value from the cli is used. - with this RC : the ${version} is replaced with the current pom.version. It's not a blocking issue because we can easily replace with : .. - ${releaseVersion} .. and use mvn blabla -DreleaseVersion= But I hope there is no other side effect. -- Olivier 2008/3/26, Brian E. Fox <[EMAIL PROTECTED]>: We fixed the regressions identified last week with the plugin tools and reporting impl. The new 2.0.9 is staged at http://people.apache.org/~brianf/staging-repository/org/apache/ maven/apa che-maven/2.0.9-RC3/ You'll notice that this one has an RC qualifier attached to it. Since what I've actually been staging hasn't been for an official vote, it makes more sense to have actual det
Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
I was incorrect; this is not a result of code I changed. I'll have to take a look at the SVN annotation to find the commit that changed this, but it looks like it may have been part of some work Jason was doing. I'm looking into it now. -john On Mar 27, 2008, at 1:19 PM, Brian E. Fox wrote: We have to err on the side of not causing more regressions. If we want to move in this direction, we should start deprecating the non ${project. Forms of the properties with big warnings in 2.0.9. -Original Message- From: John Casey [mailto:[EMAIL PROTECTED] Sent: Thursday, March 27, 2008 1:16 PM To: Maven Developers List Subject: Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3) Sorry for the spam. Digging deeper through the related links on MNG-2339, it's apparent that the comment in the DefaultMavenProjectBuilder is a touch misleading. The key issues relevant to where sysprops get used during interpolation are: MNG-2745 MNG-2651 It seems that environments that use maven programmatically (in 2.0.x? really??) are running into collisions where other libraries are injecting system properties that override values from the POM for the purposes of interpolation. For this reason (and because we don't have a concept of CLI properties separate from sysprops yet), the code in the project builder was changed to prefer values from the POM over sysprops. -john On Mar 27, 2008, at 1:06 PM, John Casey wrote: BTW, I found this comment on line 981 of DefaultMavenProjectBuilder: // [MNG-2339] ensure the system properties are still interpolated for backwards compat, but the model values must win I've checked that issue, and it looks like it was closed for this release...so, not present in 2.0.8. Additionally, the doesn't seem to say anything about which is supposed to win - model vs. sysprops. IMO, it makes more sense for CLI properties to override those in the model, since it follows the principle of local-most wins that we employ in other parts of Maven, but I'm not sure I know enough about the history of this issue. Does anyone have another issue number that contributes more to this discussion, that we could use to determine the correct course of action here? Thanks, -john On Mar 27, 2008, at 12:54 PM, John Casey wrote: Hmm, I'll have to do some homework on this one, but yeah, it looks like the interpolation changes I put in to get the path- translation in place. I'll have to see if I can work up a test case for this, and try to track down that original issue. Let me get to work on it and I'll see how fast I can come up with something. -john On Mar 27, 2008, at 8:09 AM, Brian E. Fox wrote: Hrm. It's probably a good idea to use a different property, but we should understand why this changed before going further. John, any ideas? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Olivier Lamy Sent: Thursday, March 27, 2008 6:56 AM To: Maven Developers List Subject: Re: [pre vote take 3] 2.0.9-RC3 Hi, Testing on corporate projects and build fine. +1 I have just noticed a change ("regression" ?). We have a corporate plugin. In the pom it's configured as this : .. .. - ${version} .. We use it with mvn blabla -Dversion=here a version. The value has changed : - with mvn 2.0.8 : the value from the cli is used. - with this RC : the ${version} is replaced with the current pom.version. It's not a blocking issue because we can easily replace with : .. - ${releaseVersion} .. and use mvn blabla -DreleaseVersion= But I hope there is no other side effect. -- Olivier 2008/3/26, Brian E. Fox <[EMAIL PROTECTED]>: We fixed the regressions identified last week with the plugin tools and reporting impl. The new 2.0.9 is staged at http://people.apache.org/~brianf/staging-repository/org/apache/ maven/apa che-maven/2.0.9-RC3/ You'll notice that this one has an RC qualifier attached to it. Since what I've actually been staging hasn't been for an official vote, it makes more sense to have actual deterministic numbers on them instead of continuously rolling back and forth between .10 and .9. The other significant reason it has a qualifier is that I want to solicit feedback from the users list without potentially getting multiple versions out there called 2.0.9. My new mantra for the maven release is "no more regressions". To that end, what I intend to do is let the RC sit here for a day. If no one turns up anything new (it should be good since this is really attempt #3), then I'll email the user list to solicit feedback. Naturally we'll probably get a slew of "can you fix xyz" but the only thing that we will consider at this point would be a regression from 2.0.8 to the current RC. If something is identified
RE: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
We have to err on the side of not causing more regressions. If we want to move in this direction, we should start deprecating the non ${project. Forms of the properties with big warnings in 2.0.9. -Original Message- From: John Casey [mailto:[EMAIL PROTECTED] Sent: Thursday, March 27, 2008 1:16 PM To: Maven Developers List Subject: Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3) Sorry for the spam. Digging deeper through the related links on MNG-2339, it's apparent that the comment in the DefaultMavenProjectBuilder is a touch misleading. The key issues relevant to where sysprops get used during interpolation are: MNG-2745 MNG-2651 It seems that environments that use maven programmatically (in 2.0.x? really??) are running into collisions where other libraries are injecting system properties that override values from the POM for the purposes of interpolation. For this reason (and because we don't have a concept of CLI properties separate from sysprops yet), the code in the project builder was changed to prefer values from the POM over sysprops. -john On Mar 27, 2008, at 1:06 PM, John Casey wrote: > BTW, I found this comment on line 981 of DefaultMavenProjectBuilder: > > // [MNG-2339] ensure the system properties are still > interpolated for backwards compat, but the model values must win > > I've checked that issue, and it looks like it was closed for this > release...so, not present in 2.0.8. Additionally, the doesn't seem > to say anything about which is supposed to win - model vs. > sysprops. IMO, it makes more sense for CLI properties to override > those in the model, since it follows the principle of local-most > wins that we employ in other parts of Maven, but I'm not sure I > know enough about the history of this issue. > > Does anyone have another issue number that contributes more to this > discussion, that we could use to determine the correct course of > action here? > > Thanks, > > -john > > On Mar 27, 2008, at 12:54 PM, John Casey wrote: >> Hmm, I'll have to do some homework on this one, but yeah, it looks >> like the interpolation changes I put in to get the path- >> translation in place. I'll have to see if I can work up a test >> case for this, and try to track down that original issue. >> >> Let me get to work on it and I'll see how fast I can come up with >> something. >> >> -john >> >> On Mar 27, 2008, at 8:09 AM, Brian E. Fox wrote: >> >>> Hrm. It's probably a good idea to use a different property, but we >>> should understand why this changed before going further. John, any >>> ideas? >>> >>> -Original Message- >>> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On >>> Behalf Of >>> Olivier Lamy >>> Sent: Thursday, March 27, 2008 6:56 AM >>> To: Maven Developers List >>> Subject: Re: [pre vote take 3] 2.0.9-RC3 >>> >>> Hi, >>> Testing on corporate projects and build fine. >>> +1 >>> >>> I have just noticed a change ("regression" ?). >>> We have a corporate plugin. In the pom it's configured as this : >>> >>> >>> >>> .. >>> >>> .. - ${version} .. >>> >>> We use it with mvn blabla -Dversion=here a version. >>> The value has changed : >>> - with mvn 2.0.8 : the value from the cli is used. >>> - with this RC : the ${version} is replaced with the current >>> pom.version. >>> >>> It's not a blocking issue because we can easily replace with : >>> .. - ${releaseVersion} .. and use mvn blabla >>> -DreleaseVersion= >>> >>> But I hope there is no other side effect. >>> >>> -- >>> Olivier >>> >>> >>> >>> 2008/3/26, Brian E. Fox <[EMAIL PROTECTED]>: >>>> We fixed the regressions identified last week with the plugin tools >>> and >>>> reporting impl. The new 2.0.9 is staged at >>>> >>>> >>>> >>>> >>> http://people.apache.org/~brianf/staging-repository/org/apache/ >>> maven/apa >>>> che-maven/2.0.9-RC3/ >>>> >>>> >>>> >>>> You'll notice that this one has an RC qualifier attached to it. >>>> Since >>>> what I've actually been staging hasn't been for an official >>>> vote, it >>>> makes more sense to have actual d
RE: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
CLI should win. There was an issue open that I wrote for that a while ago. I think it's still open even. -Original Message- From: John Casey [mailto:[EMAIL PROTECTED] Sent: Thursday, March 27, 2008 1:07 PM To: Maven Developers List Subject: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3) BTW, I found this comment on line 981 of DefaultMavenProjectBuilder: // [MNG-2339] ensure the system properties are still interpolated for backwards compat, but the model values must win I've checked that issue, and it looks like it was closed for this release...so, not present in 2.0.8. Additionally, the doesn't seem to say anything about which is supposed to win - model vs. sysprops. IMO, it makes more sense for CLI properties to override those in the model, since it follows the principle of local-most wins that we employ in other parts of Maven, but I'm not sure I know enough about the history of this issue. Does anyone have another issue number that contributes more to this discussion, that we could use to determine the correct course of action here? Thanks, -john On Mar 27, 2008, at 12:54 PM, John Casey wrote: > Hmm, I'll have to do some homework on this one, but yeah, it looks > like the interpolation changes I put in to get the path-translation > in place. I'll have to see if I can work up a test case for this, > and try to track down that original issue. > > Let me get to work on it and I'll see how fast I can come up with > something. > > -john > > On Mar 27, 2008, at 8:09 AM, Brian E. Fox wrote: > >> Hrm. It's probably a good idea to use a different property, but we >> should understand why this changed before going further. John, any >> ideas? >> >> -Original Message- >> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On >> Behalf Of >> Olivier Lamy >> Sent: Thursday, March 27, 2008 6:56 AM >> To: Maven Developers List >> Subject: Re: [pre vote take 3] 2.0.9-RC3 >> >> Hi, >> Testing on corporate projects and build fine. >> +1 >> >> I have just noticed a change ("regression" ?). >> We have a corporate plugin. In the pom it's configured as this : >> >> >> >> .. >> >> .. - ${version} .. >> >> We use it with mvn blabla -Dversion=here a version. >> The value has changed : >> - with mvn 2.0.8 : the value from the cli is used. >> - with this RC : the ${version} is replaced with the current >> pom.version. >> >> It's not a blocking issue because we can easily replace with : >> .. - ${releaseVersion} .. and use mvn blabla >> -DreleaseVersion= >> >> But I hope there is no other side effect. >> >> -- >> Olivier >> >> >> >> 2008/3/26, Brian E. Fox <[EMAIL PROTECTED]>: >>> We fixed the regressions identified last week with the plugin tools >> and >>> reporting impl. The new 2.0.9 is staged at >>> >>> >>> >>> >> http://people.apache.org/~brianf/staging-repository/org/apache/ >> maven/apa >>> che-maven/2.0.9-RC3/ >>> >>> >>> >>> You'll notice that this one has an RC qualifier attached to it. >>> Since >>> what I've actually been staging hasn't been for an official >>> vote, it >>> makes more sense to have actual deterministic numbers on them >>> instead >> of >>> continuously rolling back and forth between .10 and .9. >>> >>> >>> >>> The other significant reason it has a qualifier is that I want to >>> solicit feedback from the users list without potentially getting >>> multiple versions out there called 2.0.9. My new mantra for the >>> maven >>> release is "no more regressions". To that end, what I intend to >>> do is >>> let the RC sit here for a day. If no one turns up anything new (it >>> should be good since this is really attempt #3), then I'll email >>> the >>> user list to solicit feedback. Naturally we'll probably get a >>> slew of >>> "can you fix xyz" but the only thing that we will consider at this >> point >>> would be a regression from 2.0.8 to the current RC. If something is >>> identified then we should consider fixing it and re-releasing >>> RC4. I >>> think that having the users more involved in testing the RCs is the >> only >>> way to really identify and eliminate regressions. If someone >> identifies >>> a regression after the fact and didn't speak up or try it, well >> that's >>> unfortunate but it'll have to wait. >>> >>> >>> >>> The RC can sit with the users for 3 days. If nothing turns up, then >> I'll >>> restage with a final release tag and we can do a formal vote. >> Assuming >>> this is all successful, then I'll document a more formal Core >>> release >>> procedure that we can follow going forward. >>> >>> >>> >>> Here's the list of issues fixed in the latest RC: >>> >>> >>> >>> Release Notes - Maven 2 - Version 2.0.9 >>> >>> >>> >>> >>> >>> ** Bug >>> >>> * [MNG-1412] - dependency sorting in classpath >>> >>> * [MNG-1914] - Wrong url in error message when using a mirror >>> >>> * [MNG-2123] - Nu
Re: CLI Properties vs. Model Properties (Was Re: [pre vote take 3] 2.0.9-RC3)
Sorry for the spam. Digging deeper through the related links on MNG-2339, it's apparent that the comment in the DefaultMavenProjectBuilder is a touch misleading. The key issues relevant to where sysprops get used during interpolation are: MNG-2745 MNG-2651 It seems that environments that use maven programmatically (in 2.0.x? really??) are running into collisions where other libraries are injecting system properties that override values from the POM for the purposes of interpolation. For this reason (and because we don't have a concept of CLI properties separate from sysprops yet), the code in the project builder was changed to prefer values from the POM over sysprops. -john On Mar 27, 2008, at 1:06 PM, John Casey wrote: BTW, I found this comment on line 981 of DefaultMavenProjectBuilder: // [MNG-2339] ensure the system properties are still interpolated for backwards compat, but the model values must win I've checked that issue, and it looks like it was closed for this release...so, not present in 2.0.8. Additionally, the doesn't seem to say anything about which is supposed to win - model vs. sysprops. IMO, it makes more sense for CLI properties to override those in the model, since it follows the principle of local-most wins that we employ in other parts of Maven, but I'm not sure I know enough about the history of this issue. Does anyone have another issue number that contributes more to this discussion, that we could use to determine the correct course of action here? Thanks, -john On Mar 27, 2008, at 12:54 PM, John Casey wrote: Hmm, I'll have to do some homework on this one, but yeah, it looks like the interpolation changes I put in to get the path- translation in place. I'll have to see if I can work up a test case for this, and try to track down that original issue. Let me get to work on it and I'll see how fast I can come up with something. -john On Mar 27, 2008, at 8:09 AM, Brian E. Fox wrote: Hrm. It's probably a good idea to use a different property, but we should understand why this changed before going further. John, any ideas? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Olivier Lamy Sent: Thursday, March 27, 2008 6:56 AM To: Maven Developers List Subject: Re: [pre vote take 3] 2.0.9-RC3 Hi, Testing on corporate projects and build fine. +1 I have just noticed a change ("regression" ?). We have a corporate plugin. In the pom it's configured as this : .. .. - ${version} .. We use it with mvn blabla -Dversion=here a version. The value has changed : - with mvn 2.0.8 : the value from the cli is used. - with this RC : the ${version} is replaced with the current pom.version. It's not a blocking issue because we can easily replace with : .. - ${releaseVersion} .. and use mvn blabla -DreleaseVersion= But I hope there is no other side effect. -- Olivier 2008/3/26, Brian E. Fox <[EMAIL PROTECTED]>: We fixed the regressions identified last week with the plugin tools and reporting impl. The new 2.0.9 is staged at http://people.apache.org/~brianf/staging-repository/org/apache/ maven/apa che-maven/2.0.9-RC3/ You'll notice that this one has an RC qualifier attached to it. Since what I've actually been staging hasn't been for an official vote, it makes more sense to have actual deterministic numbers on them instead of continuously rolling back and forth between .10 and .9. The other significant reason it has a qualifier is that I want to solicit feedback from the users list without potentially getting multiple versions out there called 2.0.9. My new mantra for the maven release is "no more regressions". To that end, what I intend to do is let the RC sit here for a day. If no one turns up anything new (it should be good since this is really attempt #3), then I'll email the user list to solicit feedback. Naturally we'll probably get a slew of "can you fix xyz" but the only thing that we will consider at this point would be a regression from 2.0.8 to the current RC. If something is identified then we should consider fixing it and re-releasing RC4. I think that having the users more involved in testing the RCs is the only way to really identify and eliminate regressions. If someone identifies a regression after the fact and didn't speak up or try it, well that's unfortunate but it'll have to wait. The RC can sit with the users for 3 days. If nothing turns up, then I'll restage with a final release tag and we can do a formal vote. Assuming this is all successful, then I'll document a more formal Core release procedure that we can follow going forward. Here's the list of issues fixed in the latest RC: Release Notes - Maven 2 - Version 2.0.9 ** Bug * [MNG-1412] - dependency sorting in classpath * [MNG-1914] - Wrong url in er