@Benjamin what's the addtion of the "4" except looking weird after 1
version since you use semver? It forces 2 changes instead of one without
anything else explicit IMHO.

Romain Manni-Bucau
@rmannibucau <https://twitter.com/rmannibucau> |  Blog
<https://rmannibucau.metawerx.net/> | Old Blog
<http://rmannibucau.wordpress.com> | Github <https://github.com/rmannibucau> |
LinkedIn <https://www.linkedin.com/in/rmannibucau> | Book
<https://www.packtpub.com/application-development/java-ee-8-high-performance>


Le dim. 26 mars 2023 à 18:16, Benjamin Marwell <[email protected]> a
écrit :

> +1 to your proposal
>
> org.apache.maven:maven4-xyz-plugin:<semver>
>
> I don't think it would cause too much trouble as Maven APIs will love for a
> few years. It will only occasionally break when a new major Maven release
> is published. I can live with that.
>
> Also, maven 3 plugins will be compatible for a while.
>
>
>
>
> On Thu, 23 Mar 2023, 20:58 Slawomir Jaranowski, <[email protected]>
> wrote:
>
> > Hi,
> >
> > I know that historically plugin versions like 2.x was dedicated to Maven
> > 2.x and versions 3.x is for Maven 3.x.
> >
> > We don't have any written documentation about it (or I can't find it), it
> > looks like a traditional agreement.
> >
> > Nowadays Semantic Versioning is very popular and it is understood by
> people
> > and by automatic tools.
> > In many cases we use versions which look like Semantic Versioning
> (x.y.z) -
> > but internally we try to classify it in different ways.
> >
> > When we connect the plugins version with the Maven version as the major
> > version,
> > we have difficulty introducing breaking changes for plugins for the same
> > Maven version.
> > Also we can introduce many misunderstandings which version contains new
> > features and which only bug fixes.
> >
> > Authors of plugins outside Maven core in many cases don't use 3.x as for
> > Maven 3 and so on.
> >
> > One of the propositions can be - use Semantic Versioning as is described
> > and put a Maven version in the artifact name of the plugin.
> >
> > So we can have:
> >
> > maven4-XXX-plugin - for core plugins
> > XXX-maven4-plugin - for external plugins
> >
> > Additionally Maven 4 will have a new Api which is incompatible with Maven
> > 3, when we have the target Maven version in artifact it will be easier to
> > transition plugins from 3 to 4 and so on.
> >
> > Simply in many cases business logic which plugin provides can be
> extracted
> > to a common module and next two modules will provide plugins for specific
> > Maven.
> > It can help maintain one plugin for many Maven versions.
> >
> >
> > --
> > Sławomir Jaranowski
> >
>

Reply via email to