Howdy,

no, Maven does not use it currently and the reason is simple: Maven had no
API so far (no surface *meant* to be API, to be more precise).

Every non-trivial plugin/extension had to go to maven-core (like THE
implementation) to get hold onto things.
The only real API (meaning: meant as such, meant as API) was the
maven-plugin-api, but that one is enough only to
define Mojos, but in a moment you want to interact with Maven, you have to
reach to maven-core (its internals).

We are adding JApiCmp to resolver [1], and will most probably add it to the
new Maven4 API as well.

[1] https://github.com/apache/maven-resolver/pull/183

Thanks
T

On Tue, Oct 4, 2022 at 1:51 PM Gary Gregory <garydgreg...@gmail.com> wrote:

> Does Maven and it's own plugins use JApiCmp or any tool to detect binary
> compatibility breaks?
>
> Gary
>
> On Tue, Oct 4, 2022, 06:53 Tamás Cservenák <ta...@cservenak.net> wrote:
>
> > Howdy,
> >
> > It should not break, but if it does, we did something wrong.
> >
> > The new API will coexist with old stuff, so in essence Maven 3 plugins
> > should not break with Maven 4, as long Maven 4 provides this "backward
> 3.x
> > compat window"
> > (but no Maven2 compat anymore, we cannot provide two major versions
> > spanning compat layer).
> > For how long it is undecided yet (4.1? 4.5? etc).
> >
> > Can you share more details about your breakage so we can fix things up?
> >
> >
> > Thanks
> > Tamas
> >
> >
> > On Tue, Oct 4, 2022 at 12:42 PM Marc Philipp <m...@gradle.com> wrote:
> >
> > > Hi everyone,
> > >
> > > We’re maintaining a Maven extension and testing it against the latest
> > > snapshots. After the merge of https://github.com/apache/maven/pull/703
> > our
> > > tests started failing because of breaking API changes. I see there are
> > PRs
> > > to core Maven plugins linked from there. If I understood it correctly,
> > this
> > > change will break all/most existing Maven plugins.
> > >
> > > Maven 4.0 is a major new version and as such is obviously allowed to
> make
> > > breaking changes to its API. However, I was wondering if there’s any
> > > guidance or a migration path for (third-party) Maven plugins and
> > > extensions? Is the idea that they’ll also have to publish new major
> > > versions that are compatible with 4.x? If they still need to support
> 3.x,
> > > would they need to maintain long-lived branches and release 3.x and 4.x
> > > compatible versions until they decide to drop support for 3.x? Or will
> > > there be any kind of compatibility layer?
> > >
> > > Thanks,
> > > Marc
> > >
> > > --
> > >
> > > Marc Philipp
> > >
> > > Senior Principal Software Engineer
> > >
> > > Gradle GmbH
> > > Firmensitz: Danckelmannstr. 21, 14059 Berlin, Germany
> > >
> > > Registergericht: Amtsgericht Charlottenburg, HRB 162310
> > >
> > > Geschäftsführer: Dr. Rolf Dockter
> > >
> > > P. +49 30 609886880
> > > W. gradle.com
> > >
> > > [image:
> > >
> > >
> >
> https://dpesummit.com/?utm_source=employee-signature&utm_medium=email&utm_campaign=dpesummit
> > > ]
> > > <
> > >
> >
> https://dpesummit.com/?utm_source=employee-signature&utm_medium=email&utm_campaign=dpesummit
> > > >
> > >
> >
>

Reply via email to