[jbosstools-dev] [m2e-wtp-dev] [m2e-dev] Breaking changes to the archetype API -> m2e 2.0?

Fred Bricon fbricon at gmail.com
Thu Mar 19 01:41:03 EDT 2015


Yes, exactly my point. major bump or not, due to archetyper classes
changes, that is the question.

On Thu, Mar 19, 2015 at 1:29 AM, Greg Amerson <gregory.amerson at liferay.com>
wrote:

> Thanks for the details Fred.  This change doesn't break our API usage
> because we just depend on some m2e-core internal APIs which don't appear to
> change with that changeset.
>
> Speaking of which, looking at just this one commit:
> https://github.com/fbricon/m2e-core/commit/29e014e49fb2cb442ed2f935590ad1c296a2dfe2
>
> For org.eclipse.m2e.core API I don't see any non-internal API changes,
> thus there is no reason here to necessitate a 1.6->2.0 jump.  That leaves
> the jars that are bundled in the maven runtime will change with the new
> archetyper 2.3 version.  So I guess that is where the 1.6->2.0 major
> version bump is required right?
>
> On Thu, Mar 19, 2015 at 11:39 AM, Fred Bricon <fbricon at gmail.com> wrote:
>
>> Greg,
>>
>> only internal m2e classes have been modified, but the archetype runtime
>> doesn't expose the same Maven classes anymore
>> (org.apache.maven.archetype.Archetype -> ArchetypeManager) so... it might
>> not even apply for a major version bump after all. that's debatable I guess.
>>
>> Here's the extent of the changes, so far :
>> https://github.com/eclipse/m2e-core/compare/master...fbricon:archetyper-2.x?expand=1
>>
>> If we can keep on with 1.6 with these changes, fine by me :-)
>>
>> The downside of moving to 2.0 is a lot of m2e extensions would probably
>> need to be rebuilt if they use version ranges like [1.0, 2.0). That's
>> impacts definitely more adopters than the handful that depends on the
>> archetype API.
>>
>>
>> On Wed, Mar 18, 2015 at 11:02 PM, Greg Amerson <
>> gregory.amerson at liferay.com> wrote:
>>
>>> Hey Fred,
>>>
>>> Just want to clarify some of the APIs that may be changing.  In our
>>> adopter product we have code that looks like this:
>>>
>>> final ArchetypeManager archetypeManager =
>>> MavenPluginActivator.getDefault().getArchetypeManager();
>>> final ArtifactRepository remoteArchetypeRepository =
>>> archetypeManager.getArchetypeRepository( archetype );
>>> ...
>>> final List<IProject> newProjects =
>>>             projectConfigurationManager.createArchetypeProjects(
>>>                 location, archetype, groupId, artifactId, version,
>>> javaPackage, properties, configuration, monitor );
>>>
>>>
>>> I'm assuming you mean some of these APIs will change in incompatible
>>> ways in the proposed m2e 2.0?  Well I guess ArchetypeManager was always
>>> marked internal, so its fair game to be changed even if m2e doesn't go to
>>> 2.0. But the IProjectConfigurationManager was "API", so is that one of the
>>> interfaces that will undergo breaking change in 2.0?
>>>
>>> On Thu, Mar 19, 2015 at 10:00 AM, Jason van Zyl <jason at takari.io> wrote:
>>>
>>>> Is there any downside at all to upgrading? If you've done the work and
>>>> fixed all those issues I'm super happy you've moved us forward.
>>>>
>>>> Honestly I doubt anyone has tied into the guts of Archetype aside from
>>>> you and really I think it's a small price to pay if the odd party is.
>>>> You've updated the code and I assume made it easier to deal with so I only
>>>> see upside.
>>>>
>>>> +1
>>>>
>>>> On Mar 18, 2015, at 7:45 PM, Fred Bricon <fbricon at gmail.com> wrote:
>>>>
>>>> > Hi,
>>>> >
>>>> > I have an initial POC that uses maven-archetype-plugin 2.3, instead
>>>> of the 2.0.alpha4 version (which was released in the 17th century, give or
>>>> take).
>>>> >
>>>> > I checked it fixes the following issues :
>>>> > - https://bugs.eclipse.org/459453,
>>>> > - https://bugs.eclipse.org/424010,
>>>> > - https://bugs.eclipse.org/394918,
>>>> > - https://bugs.eclipse.org/374660,
>>>> > - https://bugs.eclipse.org/405945 (on OSX at least),
>>>> > - https://bugs.eclipse.org/415114,
>>>> > - https://bugs.eclipse.org/429287
>>>> >
>>>> > Bugs https://bugs.eclipse.org/446657, https://bugs.eclipse.org/348893
>>>> may or not be fixed (I can't test proxies)
>>>> >
>>>> > Most of these issues were automatically closed already after 1 year
>>>> of inactivity. Doesn't mean the bugs are not there. My level of annoyance
>>>> just reached a point where I'd like to take action now.
>>>> >
>>>> > The only problem with the archetype update is it will break 3rd party
>>>> adopters (JBoss Tools at least) depending on the archetype API
>>>> (package/class names changed between 2.0.alpha4 and 2.3). I don't plan on
>>>> introducing a compatibility layer, not worth the hassle IMHO.
>>>> > Given that I'm also in charge of the JBoss Tools integration, I'm
>>>> fine with the impact :-)
>>>> >
>>>> > Getting the fix in will require m2e to bump its version to 2.0 (and
>>>> open a bunch of CQs  in ipzilla)
>>>> >
>>>> > I'd really like to get that change in for Eclipse Mars, if possible.
>>>> Is it too late from a release plan standpoint (i.e. 1.6 -> 2.0)? PMC,
>>>> fellow m2e committers wdyt?
>>>> >
>>>> > Fred
>>>> >
>>>> > --
>>>> > "Have you tried turning it off and on again" - The IT Crowd
>>>> > _______________________________________________
>>>> > m2e-dev mailing list
>>>> > m2e-dev at eclipse.org
>>>> > To change your delivery options, retrieve your password, or
>>>> unsubscribe from this list, visit
>>>> > https://dev.eclipse.org/mailman/listinfo/m2e-dev
>>>>
>>>> Thanks,
>>>>
>>>> Jason
>>>>
>>>> ----------------------------------------------------------
>>>> Jason van Zyl
>>>> Founder, Takari and Apache Maven
>>>> http://twitter.com/jvanzyl
>>>> http://twitter.com/takari_io
>>>> ---------------------------------------------------------
>>>>
>>>> First, the taking in of scattered particulars under one Idea,
>>>> so that everyone understands what is being talked about ... Second,
>>>> the separation of the Idea into parts, by dividing it at the joints,
>>>> as nature directs, not breaking any limb in half as a bad carver might.
>>>>
>>>>   -- Plato, Phaedrus (Notes on the Synthesis of Form by C. Alexander)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> m2e-dev mailing list
>>>> m2e-dev at eclipse.org
>>>> To change your delivery options, retrieve your password, or unsubscribe
>>>> from this list, visit
>>>> https://dev.eclipse.org/mailman/listinfo/m2e-dev
>>>>
>>>
>>>
>>>
>>> --
>>> Greg Amerson
>>> Liferay Developer Tools
>>> Liferay, Inc. www.liferay.com
>>>
>>> _______________________________________________
>>> m2e-wtp-dev mailing list
>>> m2e-wtp-dev at eclipse.org
>>> To change your delivery options, retrieve your password, or unsubscribe
>>> from this list, visit
>>> https://dev.eclipse.org/mailman/listinfo/m2e-wtp-dev
>>>
>>
>>
>>
>> --
>> "Have you tried turning it off and on again" - The IT Crowd
>>
>> _______________________________________________
>> m2e-wtp-dev mailing list
>> m2e-wtp-dev at eclipse.org
>> To change your delivery options, retrieve your password, or unsubscribe
>> from this list, visit
>> https://dev.eclipse.org/mailman/listinfo/m2e-wtp-dev
>>
>
>
>
> --
> Greg Amerson
> Liferay Developer Tools
> Liferay, Inc. www.liferay.com
>
> _______________________________________________
> m2e-wtp-dev mailing list
> m2e-wtp-dev at eclipse.org
> To change your delivery options, retrieve your password, or unsubscribe
> from this list, visit
> https://dev.eclipse.org/mailman/listinfo/m2e-wtp-dev
>



-- 
"Have you tried turning it off and on again" - The IT Crowd
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jbosstools-dev/attachments/20150319/17a82698/attachment-0001.html 


More information about the jbosstools-dev mailing list