[jbosstools-dev] Parent pom updated! Minimum/default target platform used in master branch (4.1/7.0) now points at Kepler M4 bits, with M5 coming next week; Juno&Kepler TPs will remove unneeded IUs next week
Max Rydahl Andersen
max.andersen at redhat.com
Thu Jan 31 15:16:33 EST 2013
> Mickael, how about we add a profile that does this:
>
> $ mvn verify -Phelp
> [info] Max, if you're trying to override the target platform version
> [info] use -DTARGET_PLATFORM_VERSION=x.yz.a.quality-SNAPSHOT, eg.,
> [info] mvn verify -DTARGET_PLATFORM_VERSION=4.21.3.Final-SNAPSHOT
>
> or
>
> $ mvn verify -Phelp
> [info] Fetching a copy of the parent pom from master branch...
> [info] Opening parent pom in your default text editor so you can
> [info] `egrep -i "target|platform" and figure out the property
> [info] you need to override.
>
> :P
I wish Maven had a way to do this - but it doesn't. Don't get me started on how stupid that is.
> Seriously, though, Max, if you can't remember that the maven/tycho variable for the target platform version is TARGET_PLATFORM_VERSION then making you memorize a new profile might not be the best solution.
Nick, i'm simply saying using capital letters, fully spelled out and direct contrast to maven conventions is just weird to me.
And I did not say add a profile I suggest something like mvn -Dtpc.version or -Dtarget.version similar to 99% of all the other properties in maven pom's.
Now that I check the pom I can see my original tpc.group and tpc.targetKind is in there but the tpc.version is replaced with this unconventional TARGET_PLATFORM_VERSION.
Why oh why?
> In fact, you only need to provide an override if the following two usecases don't work for you:
>
> a) you want the default minimum:
>
> mvn verify
>
> b) you want the default maximum
>
> mvn verify -Pmaximum
>
> Because, while the idea of having profiles for each and every TP stream is *somewhat* reasonable, it doesn't solve the usecase where there are multiple Juno SR0 based target platforms (eg., we have 4.20.5 now and will have 4.20.6 soon - do we have to update the parent pom every time there's a newer SR0 version created? And what if a user wants to use the previous one?
>
> -PJunoSR0.previous and -PJunoSR0 ?
> -PJunoSR0d and -PJunoSR0e ?
Not suggesting adding those names, just use conventional property names and not introduce these capital letter based ones which normally means constants and non-changable and opposite to what maven properties are named.
> Besides, the whole point of refactoring the GAVs for the TPs was to get AWAY from using names like JunoSR0 in favour of 4.20.x.
>
> ---
>
> > Without [removing -SNAPSHOT] we don't have the option of building a component with a stable parent pom
>
> This is true, but we have some time here since M4/M5 are still under development. It's not until M7 that the bits are stable enough to be called .CR or .Final, or to remove the -SNAPSHOT suffix. So... all components, even if they're "done" this week, should be rebuilding w/ updated TPs all the way through M7 to verify they still work against the newer Kepler stuff.
which is why I find 4.20.5.Alpha to be perfect valid name to indicate its alpha; but at least is a fixed content and not a snapshot.
/max
>
> I've bumped https://issues.jboss.org/browse/JBIDE-13408 to Blocker, but I'm leaving it on Alpha2 for now.
>
> Cheers,
>
> Nick
>
> On 01/31/2013 08:43 AM, Max Rydahl Andersen wrote:
>>>>
>>>>> mvn verify -DTARGET_PLATFORM_VERSION=4.20.5.Final-SNAPSHOT #JunoSR0
>>>>> mvn verify -DTARGET_PLATFORM_VERSION=4.21.3.Final-SNAPSHOT #JunoSR1
>>>>>
>>>> Would be good to have something easy to remember like
>>>>
>>>> mvn verify -PJunoSR0
>>>> mvn verify -PJunoSR1
>>>>
>>> This would add a lot of crap to parent pom for something that we won't use. So there won't be some profiles for unsupported stuff.
>>> -DTARGET_PLATFORM_VERSION is easy to remember as well, and in case you forget it, feel free to ask.
>>
>> I'm sorry but TARGET_PLATFORM_VERSION is not easy to remember nor is it nice to type. All other user properties in maven is not uppercase and a mile long ;)
>>
>>>>> Once the cruft has been cleaned, new TPs will be released & linked into
>>>>> the usual places [1], [2]:
>>>>>
>>>>> 4.20.6.Final-SNAPSHOT #JunoSR0 (6th respin)
>>>>> 4.21.4.Final-SNAPSHOT #JunoSR1 (4th respin)
>>>>> 4.30.1.Alpha1-SNAPSHOT #KeplerSR0, 1rst respin
>>>>>
>>>> Why are you releasing versions with SNAPSHOT suffix? What is wrong with
>>>> just 4.20.6.Final?
>>>>
>>> That's something we are investigating as part of https://issues.jboss.org/browse/JBIDE-13316 . But this is not our highest priority yet. If we remove the "-SNAPSHOT", we'll probably drop the Alpha1/Final qualifier as well.
>>
>>
>> I think this *is* high priority.
>>
>> Without it we don't have the option of building a component with a stable parent pom. If it stays -SNAPSHOT we still have to rebuild the component again and again since the parent is always moving.
>>
>> /max
>>
>>
>>
>> _______________________________________________
>> jbosstools-dev mailing list
>> jbosstools-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/jbosstools-dev
>>
>
> --
> Nick Boldt :: JBoss by Red Hat
> Productization Lead :: JBoss Tools & Dev Studio
> http://nick.divbyzero.com
>
>
More information about the jbosstools-dev
mailing list