Skip to content

Keep plugin dependencies on Maven 3.9.x, Resolver 1.9.x and Sisu 1.0.0 #23

Closed

Description

@slachiewicz

The plugins require Maven 3.9.0 and compile against Maven 3.9.16, which ships Resolver 1.9.27. A plugin that compiles against a newer core artifact can call API that the running Maven lacks.

Each repository gets its own Dependabot ignore for:

  • every org.apache.maven core artifact it uses: >= 3.10.0;
  • org.apache.maven.resolver:*: >= 2.0.0.

Sisu is not held back. Where a plugin declares org.eclipse.sisu.plexus, it also declares org.eclipse.sisu.inject at the same version: exec-maven-plugin#555 moved only the first to 1.1.1, and 12 tests failed with NoSuchMethodError on DefaultBeanLocator.setBeanEntryPredicateSupplier.

A bare org.apache.maven:* ignore is replaced, because it also blocks updates of the other artifacts in that group.

These pull requests make the change:

The other plugin repositories already ignore every core artifact they use.

Report plugins stay on maven-reporting-api 4.0.0: maven-site-plugin 3.22 and older load 4.0.0 and call the multi-page generate only through MavenMultiPageReport, which 4.1.0 deprecates. Doxia 2.2 is fine, as long as the reports keep org.apache.maven.doxia.sink.impl.SinkEventAttributeSet; its 2.2.0 replacement is missing under those site plugins.

Release order

mojo-parent pins seven MojoHaus plugins: animal-sniffer, build-helper, flatten, l10n, license, taglist and versions. The codehaus-plexus parent pins taglist and extra-enforcer-rules. Releasing those plugins first lets both parents ship with the new versions:

  1. Release the plugins that the parents pin.
  2. Bump them in mojo-parent and the codehaus-plexus parent, then release mojo-parent 98 and plexus 28.
  3. Release the remaining plugins on mojo-parent 98.
  4. Make a patch release of a plugin from step 1 only if building it on mojo-parent 98 changes something users see.

Every plugin draft that lists "Require Maven 3.9.0" under "Removed" is a minor release. The draft title shows the patch version from the POM, so set the release version explicitly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    dependenciesPull requests that update a dependency file

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions