> The more I think about it, the more I'm convinced we should also remove
> the archetypeCatalog parameter. Right now it is only causing confusion.
>

Yes, you're probably right. It should just work - you shouldn't have to
specify what sort of catalog to be used.

/Anders


> Does it still make sense to have "internal", which are in fact a small set
> of embedded archetypes, and they are old (and remote available as well)?
> Aether/Artifact Resolver should solve the rest: use both remote and local
> as everybody is used to. Want to only use local, then I guess you should
> add --offline.
>
> WDYT?
>
> Robert
>
> [1] https://issues.apache.org/jira/browse/ARCHETYPE-520
>
> On Tue, 16 May 2017 13:02:11 +0200, Anders Hammar <and...@hammar.net>
> wrote:
>
> I would expect "remote" not be the central repo but what repo(s) (or
>> mirrors) are configured in settings.xml.
>>
>> Robert, what's your view of how this works in the plugin now?
>>
>> /Anders
>>
>> On Tue, May 16, 2017 at 11:06 AM, Amélie Deltour <
>> amelie.delt...@kelkoo.com>
>> wrote:
>>
>> Hi Anders,
>>>
>>> Thanks for your clarification.
>>> In understand well the idea behind the 3.x version and the concern for
>>> more security and avoid to fetch anything directly from the Internet.
>>> Every
>>> "external" access should go throud the repositories configured in the
>>> Maven
>>> settings.xml, I completely agree with this, and this was indeed a flaw in
>>> the 2.x version of the plugin.
>>>
>>> However, with the 3.x version, there are only 3 possible sources for the
>>> archetype catalog [1]:
>>> - "remote": this is atually Maven Central i.e. the
>>> http://repo.maven.apache.org/maven2/archetype-catalog.xml catalog
>>> - "local": the local Maven repository on the user's machine
>>> - "internal": the plugin's internal catalog
>>>
>>> None of these is suitable for our case.
>>> What we need is to use a catalog hosted on our internal repository
>>> manager
>>> i.e. http://myrepo.mycompany/archetype-catalog.xml and unless I am
>>> completely mistaken this is not possible anymore.
>>> Although the repository manager is well configured in the Maven settings,
>>> it is used for fetching dependencies, is is used to fetch the archetype
>>> artifacts themselves, but no way to use it for the catalog.
>>> So using our own internal catalog hosted on our own internal repository
>>> is
>>> just not possible anymore.
>>> Several users report the same issue in the ARCHETYPE-519 issue.
>>>
>>> To my mind, the possibility to use an "alternative" catalog is an
>>> important feature of the plugin that should not be removed in the 3.x
>>> version.
>>> I totally agree that the alternative catalog should not be configured as
>>> a
>>> direct URL in the CI, the 2.x way to do it was not the right way.
>>> But there should still be a way to have it configured via Maven
>>> settings.xml.
>>>
>>> Do you think my concern is valid?
>>>
>>> Amélie
>>>
>>> [1] http://maven.apache.org/archetype/maven-archetype-plugin/
>>> examples/generate-alternative-catalog.html
>>>
>>> On 05/16/2017 08:56 AM, Anders Hammar wrote:
>>>
>>> Amélie,
>>>
>>> Thanks for describing your use case here on the list! As I am one of the
>>> reporters for the tickets behind the change in question I'd like to
>>> describe my reasoning:
>>>
>>> First off, your use case is actually (if I understand it correctly)
>>> standard for Maven usage. For a company environment I expect that central
>>> repo (and any other external repo) to be proxied by a repo manager and
>>> Maven should be configured to use the internal repo manager as mirror for
>>> e.g. central. The idea is that Maven should NEVER go out on the Internet
>>> to
>>> fetch artifacts (and archetypes are in fact artifacts).
>>>
>>> However, the archetype maven plugin didn't cope well with that setup.
>>> Regardless of a correctly Maven configuration it would reach out to the
>>> Internet in many cases. And if you specified an archetype catalog via the
>>> CLI param it would then often go out to the Internet to download the
>>> archetype itself. It just didn't follow the Maven idea of convention over
>>> configuration but the users had to do workarounds to get things to work
>>> (like specifying the archetype catalog on the CLI although it actually
>>> existed in there internal repo manager). If there was security (auth)
>>> involved with the repos it got even more messy.
>>>
>>> This we wanted to fix to simplify for our users. Possibly, not everything
>>> worked out perfectly in v3.0.0 and there might be some bugs and I know
>>> Robert has done some changes in this area in the upcoming v3.0.1.
>>> Unfortunately I haven't had the time to verify and test this but I invite
>>> you to help out by testing SNAPSHOT versions while changes are applied or
>>> participate in the actual vote. By doing so you will ensure that your
>>> actual use case is covered.
>>>
>>> /Anders
>>>
>>> On Mon, May 15, 2017 at 4:42 PM, Amélie Deltour <
>>> amelie.delt...@kelkoo.com
>>> ><mailto:amelie.delt...@kelkoo.com>
>>> wrote:
>>>
>>>
>>>
>>> Sorry guys, but as a maven-archetype-plugin user I don't share your views
>>> on
>>> this subject.
>>>
>>> Of course, I totally agree with the aim of this new 3.x release and the
>>> idea to
>>> be compliant with Maven3 behaviour and in particular the security
>>> features.
>>> However, there have been quite a lot of complaints from users about
>>> regressions
>>> with this new plugin version.
>>> The ARCHETYPE-439 issue [1] you mention does not give much information
>>> about the
>>> reasons of these complaints.
>>> But you can see on ARCHETYPE-519 [2] comments that users *really* have a
>>> problem
>>> with this release, in case you doubt it.
>>>
>>> I will try to explain the use case.
>>> In my company we have several Maven archetypes allowing to create quickly
>>> new
>>> projects, with all our standard Maven setup and code skeleton.
>>> We use these archetypes quite a lot.
>>> The problem with the new release is the archetype *catalog*.
>>> Indeed the plugin needs a catalog to be able to use an archetype to
>>> create
>>> a new
>>> project.
>>> In our case, we use our own private catalog stored in our internal
>>> artifacts
>>> manager (Artifactory).
>>> With maven-archetype-plugin 2.4 we used to refer to this catalog with the
>>> -DarchetypeCatalog parameter.
>>>
>>> Now with the 3.x plugin we do not have the ability to refer to our
>>> catalog
>>> any more.
>>> The "remote" catalog represents the
>>> http://repo.maven.apache.org/maven2/archetype-catalog.xml catalog file,
>>> as
>>> explained in the doc [3].
>>> But we don't want our archetypes to be published there...
>>> Or am I completely mistaken and did I miss anything about the new plugin
>>> behaviour?
>>>
>>> It is a good thing that the plugin now uses the Maven settings.xml, and
>>> only
>>> these settings, to resolve the archetypes from the standard artifact
>>> repository
>>> and associated settings, and not a custom archetype repository defined
>>> elsewhere.
>>> But the plugin should have the same behaviour regarding the catalog, i.e.
>>> be
>>> able to search the catalogs published in the repositories defined in
>>> settings.xml, and not restrain the catalogs being searched to only the
>>> Maven
>>> Central and local catalogs.
>>>
>>> So we don't ask to keep the archetypeCatalog parameter, what we need is
>>> just a
>>> way to keep a feature which is mandatory for us, the ability to use
>>> archetypes
>>> defined in a catalog that is not published in Maven Central (and not
>>> available
>>> locally on the machine either).
>>> I am convinced from ARCHETYPE-519 that many users need this feature.
>>> To my mind, the problem with the new plugin release is not a
>>> compatibility
>>> issue
>>> (i.e. a different way to use or configure Maven), but really a break in
>>> functionality i.e. a feature that is not available any more.
>>>
>>> BTW, the documentation about the new behaviour is not as clear as you
>>> say,
>>> the
>>> documentation still mentions "The Archetype Plugin can use catalogs from
>>> local
>>> filesystem and from HTTP connections." and "The Archetype Plugin can also
>>> read
>>> catalogs from filesystem/HTTP by providing the path/URL of a catalog file
>>> or of
>>> a directory containing an archetype-catalog.xml file." [4]
>>>
>>> I really hope you will understand the concern and do something about it,
>>> either
>>> revert the plugin or implement something allowing to use private remote
>>> catalogs.
>>> For the time being we need to stuck to the 2.4 version of the plugin but
>>> this is
>>> not an acceptable solution for the long-term.
>>>
>>> Regards,
>>>
>>> Amélie
>>>
>>> [1] https://issues.apache.org/jira/browse/ARCHETYPE-439
>>> [2] https://issues.apache.org/jira/browse/ARCHETYPE-519
>>> [3]
>>> https://maven.apache.org/archetype/archetype-models/archetyp
>>> e-catalog/archetype-catalog.html
>>> [4]
>>> https://maven.apache.org/archetype/maven-archetype-plugin/
>>> specification/archetype-catalog.html
>>>
>>> On 05/08/2017 07:38 PM, Robert Scholte wrote:
>>>
>>>
>>>
>>> So we have this plugin, which has been released lately as requested by
>>> the
>>> community.
>>> It has been released as a 3.x, so it now requires Maven3 and with this
>>> major release[1] we used this opportunity to break compatibility in case
>>> there are parameters we don't want to use anymore.
>>>
>>> One of the things changed is the usage of the reference to the archetype
>>> repository. The original implementation was based on Maven2 and wasn't
>>> using all security features as available in Maven3. This also made it
>>> hard
>>> to maintain.
>>> So for example, now it is picking up the artifact repository manager by
>>> default, it'll use its credentials when required, etc.
>>> By removing these parameters is should also be easier to use this plugin
>>> (less parameters =ess chance of mistakes)
>>>
>>> So I think we made quite some people happy now that things are working
>>> much more according to Maven default behavior. However, other have issues
>>> to use the archetype. Sometimes it is because they are using deprecated
>>> parameters (or use parameters which should have been removed as well),
>>> others have a local setup which now requires to add the repository to
>>> their settings.xml.
>>>
>>> I still think that ARCHETYPE-439[2] is valid, so I'd prefer not to
>>> revert.
>>> Instead I hope we can find a solution which will fit better for the most.
>>>
>>> I can think of the following solutions:
>>> 1. Continue with taken decision and further improve usage without extra
>>> parameters
>>> 2. Find somebody willing to maintain the plugin at ASF
>>> 3. Donate the plugin
>>> 4. Revert
>>>
>>> #3 is a serious option, because it seems that within the team there's
>>> nobody willing to maintain the plugin, probably due to other Maven
>>> sub-projects which have a higher priority.
>>>
>>> Any thoughts on this topic?
>>>
>>> Robert
>>>
>>> [1] http://semver.org/
>>> [2] https://issues.apache.org/jira/browse/ARCHETYPE-439
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Kelkoo SAS
>>> Société par Actions Simplifiée
>>> Au capital de € 4.168.964,30
>>> Siège social : 158 Ter Rue du Temple 75003 Paris
>>> 425 093 069 RCS Paris
>>>
>>> Ce message et les pièces jointes sont confidentiels et établis à
>>> l'attention exclusive de leurs destinataires. Si vous n'êtes pas le
>>> destinataire de ce message, merci de le détruire et d'en avertir
>>> l'expéditeur.
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org<mailto:
>>> dev-unsubscr...@maven.apache.org>
>>> For additional commands, e-mail: dev-h...@maven.apache.org<mailto:
>>> dev-h...@maven.apache.org>
>>>
>>>
>>>
>>>
>>>
>>> --
>>> Amélie Deltour
>>> Software Engineer
>>> [http://www.kk-data.com/s/content/common/UX/KLGClogos.png]<h
>>> ttp://www.kelkoo.com/>
>>>
>>> E amelie.delt...@kelkoo.com<mailto:amelie.delt...@kelkoo.com>     XMPP
>>> amelie.delt...@kelkoo.net<mailto:amelie.delt...@kelkoo.net>
>>> T +33 (0)4 56 09 07 41                    M -
>>> A Parc Sud Galaxie - Le Calypso, 6 rue des Méridiens, 38130 Echirolles,
>>> FRANCE
>>>
>>>
>>>
>>>
>>> ________________________________
>>> Kelkoo SAS
>>> Société par Actions Simplifiée
>>> Au capital de € 4.168.964,30
>>> Siège social : 158 Ter Rue du Temple 75003 Paris
>>> 425 093 069 RCS Paris
>>>
>>> Ce message et les pièces jointes sont confidentiels et établis à
>>> l'attention exclusive de leurs destinataires. Si vous n'êtes pas le
>>> destinataire de ce message, merci de le détruire et d'en avertir
>>> l'expéditeur.
>>>
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>
>

Reply via email to