Commit Graph

12302 Commits

Author SHA1 Message Date
Guillaume Nodet c0813a2b53
[MNG-7838] Fix usage of older packaged artifacts from project local repository (#1199) 2024-08-29 22:34:39 +02:00
Guillaume Nodet b370e5e929
[MNG-8210] Replace Maven "module" term by "subproject" (#1651)
Co-authored-by: Martin Desruisseaux <martin.desruisseaux@geomatys.com>
2024-08-29 20:21:40 +02:00
Guillaume Nodet e11b475e8b
[MNG-8052] Concurrently lifecycle executor (#1429) 2024-08-29 19:44:53 +02:00
Guillaume Nodet c948b26484
[MNG-8218] Always normalize Path in PathSource (#1684) 2024-08-29 19:44:16 +02:00
Konrad Windszus 3f430bbd07
[MNG-8228] Enable Sisu Plexus strict classpath scanning (#1688)
This was introduced with
https://github.com/eclipse-sisu/sisu.plexus/issues/51.

This leads to exceptions in case of issues with loading potential
extensions/plexus components instead of logging just with DEBUG level.
2024-08-29 19:42:56 +02:00
Guillaume Nodet 57082737d8
[MNG-7897] Support ${project.rootDirectory} in file profile activation (#1687)
* [MNG-7897] Support ${project.rootDirectory} in file profile activation

* Add a test with the short ${basedir} expression
2024-08-29 17:33:49 +02:00
Guillaume Nodet 40fe1dc167
[MNG-8220] Fix loading DI-powered beans from extensions (#1683) 2024-08-29 17:32:53 +02:00
Guillaume Nodet acec540547
[MNG-8052] New lifecycle for Maven 4 (#1448) 2024-08-29 06:48:54 +01:00
dependabot[bot] 9bc5cc88b4
Bump mockitoVersion from 5.12.0 to 5.13.0 (#1685)
Bumps `mockitoVersion` from 5.12.0 to 5.13.0.

Updates `org.mockito:mockito-bom` from 5.12.0 to 5.13.0
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v5.12.0...v5.13.0)

Updates `org.mockito:mockito-junit-jupiter` from 5.12.0 to 5.13.0
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v5.12.0...v5.13.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-bom
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: org.mockito:mockito-junit-jupiter
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-28 12:48:49 +01:00
Guillaume Nodet 30dc81227b
Renaming of `ArtifactCoordinate.getVersion()` + documentation (#1662)
* Rename ArtifactCoordinate.getVersion() as getVersionConstraint().
* Introduce DownloadedArtifact, DownloadedDependency and ProducedArtifact.
* Rename coordinate -> coordinates.
* Add documentation on Artifact, ArtifactCoordinates, Dependency and DependencyCoordinates and other classes.
* Remove `LATEST` and `SNAPSHOT` from documentation since they are deprecated.
* Opportunistic addition of some missing `@Override` annotations.

---------

Co-authored-by: Martin Desruisseaux <martin.desruisseaux@geomatys.com>
2024-08-27 23:13:34 +02:00
Guillaume Nodet 6a5580fd73
[MNG-7914] Add doc for the new maven.properties file (#1674) 2024-08-27 23:11:04 +02:00
Konrad Windszus 7306c41b49
[MNG-8214] Improve model velocity template to support subclasses (#1660)
Make the constructors protected and take the Builder as argument
2024-08-27 09:05:43 +02:00
Guillaume Nodet fe3806c41b [MNG-8181] Fix badly placed deprecation 2024-08-26 18:36:22 +02:00
Guillaume Nodet 78887f1b7e
[MNG-8181] Provide a variable for maven central repo url, backed by an environment variable (#1615) 2024-08-26 18:21:28 +02:00
Guillaume Nodet 9bfaf54e90
Document that V4 mojo are supposed to be threadsafe (#1675) 2024-08-26 15:14:03 +02:00
dependabot[bot] 6e6c262192
Bump net.bytebuddy:byte-buddy from 1.14.19 to 1.15.0 (#1681)
Bumps [net.bytebuddy:byte-buddy](https://github.com/raphw/byte-buddy) from 1.14.19 to 1.15.0.
- [Release notes](https://github.com/raphw/byte-buddy/releases)
- [Changelog](https://github.com/raphw/byte-buddy/blob/master/release-notes.md)
- [Commits](https://github.com/raphw/byte-buddy/compare/byte-buddy-1.14.19...byte-buddy-1.15.0)

---
updated-dependencies:
- dependency-name: net.bytebuddy:byte-buddy
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-26 09:15:49 +02:00
dependabot[bot] a5c8bf60e6
Bump com.google.guava:guava from 33.2.1-jre to 33.3.0-jre (#1663)
Bumps [com.google.guava:guava](https://github.com/google/guava) from 33.2.1-jre to 33.3.0-jre.
- [Release notes](https://github.com/google/guava/releases)
- [Commits](https://github.com/google/guava/commits)

---
updated-dependencies:
- dependency-name: com.google.guava:guava
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-24 11:44:49 +02:00
dependabot[bot] 661fa27fbe
Bump org.codehaus.mojo:exec-maven-plugin from 3.3.0 to 3.4.1 (#1676)
Bumps [org.codehaus.mojo:exec-maven-plugin](https://github.com/mojohaus/exec-maven-plugin) from 3.3.0 to 3.4.1.
- [Release notes](https://github.com/mojohaus/exec-maven-plugin/releases)
- [Commits](https://github.com/mojohaus/exec-maven-plugin/compare/3.3.0...3.4.1)

---
updated-dependencies:
- dependency-name: org.codehaus.mojo:exec-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-24 00:42:22 +02:00
dependabot[bot] 03049f25c9
Bump org.apache.commons:commons-lang3 from 3.14.0 to 3.16.0 (#1677)
Bumps org.apache.commons:commons-lang3 from 3.14.0 to 3.16.0.

---
updated-dependencies:
- dependency-name: org.apache.commons:commons-lang3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-24 00:42:10 +02:00
Guillaume Nodet 6ac914d6f9
[MNG-7914] Provide a single entry point for configuration (#1595)
* [MNG-7914] Provide a single entry point for configuration
* [MNG-7914] Rename global -> installation
* [MNG-7914] Include time zone in Maven build timestamp
* [MNG-7914] Use a single place to document all maven properties
2024-08-22 16:47:43 +02:00
Tamas Cservenak 6668da3219
[MNG-8211] Fail the build if project effective version has expression (#1673)
As this is almost always source of confusion. If feature is used and there is no proper value set, fail the build, as users for sure does not plan to deploy artifacts with version `${revision}` (or any expression in project.version).

Still, to not be disruptive, the old behaviour can be achieved by setting `maven.build.allowExpressionInEffectiveProjectVersion`=true project property.

---

https://issues.apache.org/jira/browse/MNG-8211
2024-08-22 12:54:24 +02:00
dependabot[bot] 20e6f6a8f7
[MNG-8219] Bump com.github.siom79.japicmp:japicmp-maven-plugin (#1664)
Bumps [com.github.siom79.japicmp:japicmp-maven-plugin](https://github.com/siom79/japicmp) from 0.22.0 to 0.23.0.
- [Release notes](https://github.com/siom79/japicmp/releases)
- [Changelog](https://github.com/siom79/japicmp/blob/master/release.py)
- [Commits](https://github.com/siom79/japicmp/compare/japicmp-base-0.22.0...japicmp-base-0.23.0)

---
updated-dependencies:
- dependency-name: com.github.siom79.japicmp:japicmp-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8219
2024-08-21 15:23:30 +02:00
Tamas Cservenak b9ca308a91 Add mvn3 to dependabot as well 2024-08-21 11:07:48 +02:00
Hervé Boutemy 13c12611ea use new Reproducible Central badge endpoint 2024-08-19 01:17:25 +02:00
Tamas Cservenak b393aa0f00 Update doap w/ 3.9.x 2024-08-17 23:19:36 +02:00
Guillaume Nodet 7e550efae0
[MNG-8215] Add location tracking for toolchains (#1608) 2024-08-16 23:04:46 +02:00
Guillaume Nodet 40e41153c2
[MNG-8172] Fix site building (#1594) 2024-08-16 23:03:30 +02:00
Konrad Windszus e335f95dfd
documentation: Fix parameter description 2024-08-16 16:16:22 +02:00
Stefan Oehme e417e45e91
[MNG-8196] Make exception messages match Maven 3 again (#1628)
* Make exception messages match Maven 3 again

The boxing of `MojoException` into a `MojoExecutionException` brought two issues:

1. It added another layer to the stacktrace, making it a bit less readable for users and breaking test expectations for Maven extension authors (this was my main motivation for this change)
2. It lost the `longMessage`, which meant that this message was no longer shown at the end of the build.

This change fixes both problems by passing through the original `MavenException` and treating this new exception type directly in `DefaultExceptionHandler` and `MojoExecutor`

* Broaden to MavenException

---------

Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2024-08-16 11:25:16 +02:00
Martin Desruisseaux 008d0b4d5b
Add `getModuleName(Path)` and `getModuleDescription(Path)` methods in `DependencyResolverResult`. (#1625)
Those methods are helpful for plugins that need to provide `--add-reads` and similar options,
as they allow to reuse the cached values instead of decoding `module-info.class` many times.
2024-08-16 11:19:34 +02:00
dependabot[bot] 5fb37fe5a7
Bump net.bytebuddy:byte-buddy from 1.14.18 to 1.14.19 (#1659)
Bumps [net.bytebuddy:byte-buddy](https://github.com/raphw/byte-buddy) from 1.14.18 to 1.14.19.
- [Release notes](https://github.com/raphw/byte-buddy/releases)
- [Changelog](https://github.com/raphw/byte-buddy/blob/master/release-notes.md)
- [Commits](https://github.com/raphw/byte-buddy/compare/byte-buddy-1.14.18...byte-buddy-1.14.19)

---
updated-dependencies:
- dependency-name: net.bytebuddy:byte-buddy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-16 10:38:38 +02:00
dependabot[bot] abcf6ea010
Bump org.assertj:assertj-core from 3.26.0 to 3.26.3 (#1658)
Bumps [org.assertj:assertj-core](https://github.com/assertj/assertj) from 3.26.0 to 3.26.3.
- [Release notes](https://github.com/assertj/assertj/releases)
- [Commits](https://github.com/assertj/assertj/compare/assertj-build-3.26.0...assertj-build-3.26.3)

---
updated-dependencies:
- dependency-name: org.assertj:assertj-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-16 10:29:39 +02:00
dependabot[bot] ae469c05c4
Bump ch.qos.logback:logback-classic from 1.5.6 to 1.5.7 (#1657)
Bumps [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from 1.5.6 to 1.5.7.
- [Commits](https://github.com/qos-ch/logback/compare/v_1.5.6...v_1.5.7)

---
updated-dependencies:
- dependency-name: ch.qos.logback:logback-classic
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-16 10:29:30 +02:00
dependabot[bot] 6e31bacc93
Bump commons-cli:commons-cli from 1.8.0 to 1.9.0 (#1654)
Bumps commons-cli:commons-cli from 1.8.0 to 1.9.0.

---
updated-dependencies:
- dependency-name: commons-cli:commons-cli
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-15 15:39:50 +02:00
dependabot[bot] ecdf7b5a7f
Bump org.junit:junit-bom from 5.10.3 to 5.11.0 (#1655)
Bumps [org.junit:junit-bom](https://github.com/junit-team/junit5) from 5.10.3 to 5.11.0.
- [Release notes](https://github.com/junit-team/junit5/releases)
- [Commits](https://github.com/junit-team/junit5/compare/r5.10.3...r5.11.0)

---
updated-dependencies:
- dependency-name: org.junit:junit-bom
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-15 15:39:04 +02:00
Jan-Jelle Kester 5b61e95f23
[MNG-7344] Track dependencyManagement import location in effective Model for MPH-183 (#603)
Co-authored-by: Maarten Mulders <mthmulders@apache.org>
Co-authored-by: Juul Hobert <juul.hobert@infosupport.com>
Co-authored-by: Giovanni van der Schelde <gvdschelde@gmail.com>
Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2024-08-15 15:24:49 +02:00
Konrad Windszus 1ee18d36ce
[MPLUGIN-530] Deprecate requirements in plugin descriptor 1.1.0 (#1638)
The replacement for v4 plugins should be Maven DI annotations while for
v3 plugins it is JSR 330 annotations
2024-08-15 14:07:47 +02:00
Tamas Cservenak 09f3b9f500
[MNG-8165] Get rid of bashism creeped in (#1652)
Use of "==" is a bashism.

---

https://issues.apache.org/jira/browse/MNG-8165
2024-08-14 10:42:07 +02:00
Tamas Cservenak cf2934b6ad
[MNG-8165] Align mvn.sh script with mvn.cmd (#1648)
As one does check for .mvn directory in FS root while other does not, stops one level before.

---

https://issues.apache.org/jira/browse/MNG-8165
2024-08-13 09:11:25 +02:00
Guillaume Nodet 2a709dc038
[MNG-8176] Restrict classloader for Maven 4 plugins (#1336) 2024-08-12 23:57:01 +02:00
Guillaume Nodet 9c1871fd22
Fix StringIndexOutOfBoundsException (#1618) 2024-08-12 23:56:26 +02:00
HiuFung Kwok 97bc109a43
mvn-8010: Update doc (#1624) 2024-08-12 23:54:56 +02:00
dependabot[bot] aa3772beb3
[MNG-8209] Bump slf4jVersion from 2.0.14 to 2.0.16 (#1643)
Bumps `slf4jVersion` from 2.0.14 to 2.0.16.

Updates `org.slf4j:slf4j-api` from 2.0.14 to 2.0.16

Updates `org.slf4j:slf4j-simple` from 2.0.14 to 2.0.16

Updates `org.slf4j:jcl-over-slf4j` from 2.0.14 to 2.0.16

---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-simple
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.slf4j:jcl-over-slf4j
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---

https://issues.apache.org/jira/browse/MNG-8209
2024-08-12 17:27:24 +02:00
Tamas Cservenak 10e2fba0fb
[MNG-8177] Add contextual info for model warnings (#1636)
As they really can come from anywhere. In case of this issue even from some eliminated POM that was read while collecting dirty tree, and was later eliminated. So confusing for users.

---

https://issues.apache.org/jira/browse/MNG-8177
2024-08-12 13:51:34 +02:00
Guillaume Nodet e6b5c81a7d
[MNG-8206] Remove bad plugin.xml in maven-compat (#1644)
Follow-up to https://github.com/apache/maven/pull/1642

---

https://issues.apache.org/jira/browse/MNG-8206
2024-08-12 13:49:51 +02:00
Tamas Cservenak ad04d2c1fc
[MNG-8180] Back out from failing the build (#1645)
Just warn the user for now.

Port of accepted change from 3.9.x: https://github.com/apache/maven/pull/1642

---

https://issues.apache.org/jira/browse/MNG-8180
2024-08-12 13:06:59 +02:00
Tamas Cservenak da7c2110e4
[MNG-8180] Handle NPE due non-existent tags (#1639)
There was an NPE possibility when plugin.xml had no expected tags present.

Also: maven-compat has plugin.xml (!) w/o "name" tag, it NPEd and failed build. This was NOT picked up by CI as "rebuild itself" step does not install (just verify).

---

https://issues.apache.org/jira/browse/MNG-8180
2024-08-11 18:56:11 +02:00
Guillaume Nodet 182b87c246
[MNG-8132] Fix BOM dependency exclusions (#1622)
The original patch from MNG-5600 had not been ported to the new model builder
2024-08-11 00:42:29 +02:00
Guillaume Nodet 4369fa8dff
[API] Expose InputLocation formatter in the XmlFactory (#1616) 2024-08-11 00:21:50 +02:00
Martin Desruisseaux 473b5374f0
[MNG-8197] Use default classifier when Eclipse Aether specifies none (#1621)
* Use default classifier when Eclipse Aether specifies none.
The important change in this commit is in the implementation of `getClassifier()` methods.
However, this commit opportunistically refactors the code with a base class shared by `DefaultDependency` and `DefaultDependencyCoordinate` implementations.

* Preserve the type declared in the dependency (e.g. "modular-jar") when wrapping the object from Maven model.
2024-08-11 00:20:04 +02:00