Re: Maven resolver branch consolidation

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Maven resolver branch consolidation

Hervé BOUTEMY
Hi,

I like the idea of simplification: I just factorized mavenVersion property to
parent pom.

I have only one fear: what happens when the API changes in an incompatible way
then we must release maven-artifact-resolver, then maven-resolver provider,
then ant-tasks and demos.

AFAIK, this chicken and egg issue is exactly why everything was released in 3
independent components (with associated complexity that I'd like also to
remove)

What about creating a "withMavenProvider" module where we could put ant tasks
and demos, which would define the mavenVersion property?
In case of such breaking change, we would just have to skip this module (and
its sub-modules) for the API breaking release, then once the new compatible
Maven provider is released, we could continue "the simple way"

this would give us the benefit of being simple in general, and have just
something a little more complex in special incompatible cases.
Here, it would be "bizarre", since would bring a partial release for artifact
resolver.

Another "bizarre effect" of this way of releasing is:
Artifact Resolver 1.1.1 will provide Ant Tasks and demos using Maven Resolver
Provider 3.5.0, but Maven Resolver Provider 3.5.3 (or 3.6.0 or 4.0.0) will be
the first using Artifact Resolver 1.1.1


Perhaps there is another simplification idea that would avoid this issue:
- merge demos in artifact resolver master, since demos are never really
released
- let Ant Tasks in an independent branch (or component one day)

Regards,

Hervé

Le jeudi 9 novembre 2017, 06:35:51 CET Manfred Moser a écrit :

> Hi all,
>
> I have started and made good progress on getting Maven resolver all into the
> master branch instead of having master, demos and ant-tasks in separate
> branches.
>
> Details are tracked in https://issues.apache.org/jira/browse/MRESOLVER-28
>
> All of it is now in a new branch called master-all for you to see.
>
> I am now wondering what the next steps are. I added what I think should
> happen next in the issue in a comment and would appreciate any input on the
> current setup and next steps.
>
> Any help would be appreciated.
>
> manfred
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]



---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: Maven resolver branch consolidation

stephenconnolly
On Thu 16 Nov 2017 at 07:51, Hervé BOUTEMY <[hidden email]> wrote:

> I just pushed an update of dependencies image that shows the external
> maven-
> resolver-provider (in yellow) inside the reactor dependency graph (in blue)
>
> That shows the chicken and egg issue on releasing we'll have on API
> breaking
> change. People always building from source (like Debian) will have the
> issue
> also.
>
> For demos, which are not really published during the release (just as
> documentation), disabling the module in the build when necessary is
> sufficient,
> won't change many things. For ant tasks, disabling the module will not
> publish
> the artifact: this will have a visible impact.


Should we just bite the bullet and bring resolver in-tree as modules in
maven core... leaving demos and ant tasks here?


>
> Regards,
>
> Hervé
>
> Le mercredi 15 novembre 2017, 23:05:14 CET Hervé BOUTEMY a écrit :
> > it seems I have not been clear: I'll try to explain better
> >
> > 1. maven-resolver-ant-tasks depends on maven-resolver-provider (from
> Maven
> > core)
> > 2. maven-resolver-provider (then Maven core) depends on maven-resolver
> >
> > if we put maven-resolver-ant-tasks in the same reactor than
> maven-resolver,
> > we can't release any maven-resolver API change that breaks
> maven-resolver-
> > provider
> >
> > example: if we move maven-resolver code to org.apache.maven java package
> in
> > maven-resolver 2.0.0-SNAPSHOT, we need maven-resolver-provider
> > 4.0.0-SNAPSHOT that uses maven-resolver 2.0.0-SNAPSHOT with this new java
> > package. Then try to release anything: you can't, unless you don't try to
> > release maven- resolver-ant-tasks
> >
> > (the consequence on version consistency is another way to describe the
> > issue, but that is more subtle, then I chose to describe the most visible
> > issue, with API breaking change)
> >
> > IMHO, another consequence could be: maven-resolver-ant-tasks would
> perhaps
> > better be versionned like maven-resolver-provider
> >
> >
> > Merging resolver-demos is really the great big idea: with that merge,
> > modifying maven-rresolver can immediately be tested with demos: that'll
> be
> > so much easier to make changes to maven-resolver code!
> >
> > Regards,
> >
> > Hervé
> >
> > Le mercredi 15 novembre 2017, 09:02:12 CET Michael Osipov a écrit :
> > > Why -1 on the Ant tasks?
> > >
> > > Am 2017-11-15 um 00:50 schrieb Hervé BOUTEMY:
> > > > I answered on the mailing list and on the 2 Jira issues
> > > > In summary, +1 to merge demos, -1 to merge ant-tasks
> > > >
> > > > Regards,
> > > >
> > > > Hervé
> > > >
> > > > Le mardi 14 novembre 2017, 18:19:40 CET Manfred Moser a écrit :
> > > >> Any feedback or should I just go ahead with the cleanup?
> > > >>
> > > >> Manfred
> > > >>
> > > >> Manfred Moser wrote on 2017-11-08 21:35:
> > > >>> Hi all,
> > > >>>
> > > >>> I have started and made good progress on getting Maven resolver all
> > > >>> into
> > > >>> the master branch instead of having master, demos and ant-tasks in
> > > >>> separate branches.
> > > >>>
> > > >>> Details are tracked in
> > > >>> https://issues.apache.org/jira/browse/MRESOLVER-28
> > > >>>
> > > >>> All of it is now in a new branch called master-all for you to see.
> > > >>>
> > > >>> I am now wondering what the next steps are. I added what I think
> > > >>> should
> > > >>> happen next in the issue in a comment and would appreciate any
> input
> > > >>> on
> > > >>> the current setup and next steps.
> > > >>>
> > > >>> Any help would be appreciated.
> > > >>>
> > > >>> manfred
> > > >>
> > > >>
> ---------------------------------------------------------------------
> > > >> To unsubscribe, e-mail: [hidden email]
> > > >> For additional commands, e-mail: [hidden email]
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [hidden email]
> > > > For additional commands, e-mail: [hidden email]
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [hidden email]
> > For additional commands, e-mail: [hidden email]
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
> --
Sent from my phone