@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 > > >
