11850 Commits

Author SHA1 Message Date
Tamas Cservenak
4f8648af7b
[MNG-7790] Update lifecycle plugins, take 2 (#1163)
Changes:
* war 3.3.3 -> 3.4.0

---

https://issues.apache.org/jira/browse/MNG-7790
2023-06-15 14:09:06 +02:00
Hervé Boutemy
6ee2c5c442 [MNG-5987] document goals execution order
fixes #1145
2023-06-14 07:48:39 +02:00
Guillaume Nodet
ce1bb6fb19 Fix description of maven-xml-impl module 2023-06-13 23:07:54 +02:00
Guillaume Nodet
898e4e4b3c
Simplify code (#1156) 2023-06-13 22:45:33 +02:00
Slawomir Jaranowski
973b1b9684 [MNG-7806] Plugins verification - remove used in module(s) report
cherry-pick: 3135553e2d53a70c51b6d30b8894579746165ca9
2023-06-13 21:22:42 +02:00
Guillaume Nodet
56ee6a878d
[MNG-7751] Provide a way to inject XmlNode into plugins (#1071) 2023-06-12 21:39:23 +02:00
Tamas Cservenak
be3625d190
[MNG-7790] Update lifecycle plugins (#1154)
Changes:
install: 3.1.0 -> 3.1.1
deploy: 3.1.0 -> 3.1.1
resources: 3.3.0 -> 3.3.1
compiler: 3.10.1 -> 3.11.0
surefire: 3.0.0 -> 3.1.2
plugin: 3.7.0 -> 3.9.0
wrapper: 3.1.1 -> 3.2.0

---

https://issues.apache.org/jira/browse/MNG-7790
2023-06-12 11:18:02 +02:00
Martin Kanters
ac0bc5541e
[MNG-7338] Automatically activate batch-mode and make output quiet when running in CI. (#869) 2023-06-08 15:44:17 +02:00
Guillaume Nodet
8b652a8b3e
Fix code style for code generated by velocity templates (#1146) 2023-06-06 13:10:30 +02:00
Guillaume Nodet
c79a7a0272
[MNG-7740] Remove old temporary consumer*pom files from buildDir (#1117)
Co-authored-by: Giovanni van der Schelde <Giovanni.vanderSchelde@infosupport.com>
2023-06-05 10:47:13 +02:00
Guillaume Nodet
124033bc04
[MNG-7548] Kill off "legacy" repository metadata support (#1138) 2023-06-05 10:45:36 +02:00
Guillaume Nodet
ea1a280714
[MNG-7604] Removal of pom.* interpolation makes some older plugins defunct (#1137)
This partially reverts commit b2a21f12f8a0598dd4a286177e340bda0148e9ba.

Co-authored-by: Maarten Mulders <mthmulders@users.noreply.github.com>
2023-06-05 10:44:46 +02:00
Guillaume Nodet
e08c95a673
[MNG-7655] Switch to plexus-utils / plexus-xml 4 (#1093) 2023-06-04 21:03:41 +02:00
Guillaume Nodet
c124554316
[MNG-7698] Support comments in maven.config (#1134) 2023-06-04 07:10:57 +02:00
Guillaume Nodet
84e133df7c
[MNG-7585] Remove duplicate classes (#1135) 2023-06-02 13:58:35 +02:00
Guillaume Nodet
b2953c52d5
[MNG-7795] IllegalArgumentException: 'other' has different root during plugin validation (#1133)
Checks the paths before relativizing them.
Normalize and relative before adding to result
Rename local vars
Apply to ExecutionEventLogger

---

https://issues.apache.org/jira/browse/MNG-7795

Co-authored-by: Andreas Dangel <adangel@apache.org>
2023-06-01 19:05:48 +02:00
Tamas Cservenak
b430e7d826 [MNG-7799] Plugin validation may falsely report there are issues (#1136)
But to show no issue, as locality to be shown is not same as reported
issues.

---

https://issues.apache.org/jira/browse/MNG-7799
2023-06-01 19:01:11 +02:00
Henning Schmiedehausen
8552ac3fea
[MNG-7797] Return BRIEF mode (#1132)
Make BRIEF a legal value again.

---

https://issues.apache.org/jira/browse/MNG-7797
2023-06-01 17:24:31 +02:00
Guillaume Nodet
26ee15a47e Fix possible NPE 2023-05-31 15:52:05 +02:00
Guillaume Nodet
ba3d3516eb
[MNG-7796] Be lenient when using toRealPath (#1130) 2023-05-31 09:40:42 +02:00
Guillaume Nodet
34685bbc2d
[MNG-7587] Upgrade to sisu 0.9.0.M2 (#1119) 2023-05-31 09:38:28 +02:00
Tamas Cservenak
46807790f6 [MNG-7791] Split validation issues by "locality" aspect (#1122)
Changes:
* introduce "internal" (to project) and "external" aspect
* make "inline" default as it was in 3.9.0 and 3.9.1
* remove "default" report level
* summary and verbose reports "internal only" or ALL issues

Example of outputs while building maven-3.8.x:
https://gist.github.com/cstamas/defd6a52939f5a277bf5fc669c01aedb

---

https://issues.apache.org/jira/browse/MNG-7791
2023-05-26 18:22:12 +02:00
Tamas Cservenak
6f136ef4d2 [MNG-7789] Cleanup
PR had a leftover (unused but injected member). Removed.

---

https://issues.apache.org/jira/browse/MNG-7789
2023-05-24 12:50:23 +02:00
Tamas Cservenak
12ccaacf63 [MNG-7789] Dependency validation rules used wrong data (#1115)
Refactored and now dropped the unused pluginDescriptor/dependencies validation. Now we have "plugin dependency" (using POM) components to perform dependency validation.

Also, two "inlined" validation from plugin dependencies resolver factored out to components, along with 3 existing moved to newly added (they were wrongly validating descriptor dependencies while intent was to validate "real" dependencies) validators.

Ported from
6c562a46eecd6a25ad1c42ba1f5e59cfcf132ff4

---

https://issues.apache.org/jira/browse/MNG-7789
2023-05-24 08:50:28 +02:00
Guillaume Nodet
a27086a6f5 Fix bad javadoc 2023-05-23 16:36:23 +02:00
huazhongming
8f19d9ae28
[MNG-7639] Add unit test for DefaultRepositorySystemSessionFactory#newRepositorySession (#1096)
Signed-off-by: crazyhzm <crazyhzm@apache.org>
2023-05-23 10:50:16 +02:00
huazhongming
29c0a95b0b
[MNG-7780] DefaultArtifact.equals throws NullPointerException if o.version is null (#1108)
Signed-off-by: crazyhzm <crazyhzm@apache.org>
2023-05-22 21:19:33 +02:00
Tamas Cservenak
3f0f165242 [MNG-7786] Fix plugin validation misleading message
Bugfix post merge: all scopes EXCEPT provided and test...

---

https://issues.apache.org/jira/browse/MNG-7786
2023-05-19 18:08:37 +02:00
Tamas Cservenak
099a3f346c [MNG-7788] Plugin Validation Report logged before summary (#1114)
This change uses different technique to hook into "session end", and thus is invoked before ExecutionEventLogger is.

---

https://issues.apache.org/jira/browse/MNG-7788
2023-05-19 17:49:31 +02:00
Tamas Cservenak
11d97e64e7 [MNG-7787] Introduce new options for plugin validation report (#1113)
Added NONE and INLINE modes.

---

https://issues.apache.org/jira/browse/MNG-7787
2023-05-19 17:49:21 +02:00
Tamas Cservenak
a90950155c [MNG-7786] Fix plugin validation misleading message (#1112)
Reword the validation warning and add new check for real plugin dependencies in wrong scopes (do not rely on build-time derived descriptor, but on real data instead).

---

https://issues.apache.org/jira/browse/MNG-7786
2023-05-19 17:49:05 +02:00
Guillaume Nodet
d826b575ac
[MNG-7784] Fix compatibility for SuperPomProvider (#1109) 2023-05-17 07:19:19 +02:00
Guillaume Nodet
7fe9499361
[MNG-7783] Profile source point to file instead of to module (#1110) 2023-05-17 07:15:44 +02:00
Elliotte Rusty Harold
2bbdd9788e
Prefer Java standard library to Plexus util (#1015)
Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2023-05-16 11:10:39 +02:00
Petr Široký
59342ce249
[MNG-7743] Make the build work on JDK 20 (#1065)
* [MNG-7743] Make the build work on JDK 20

 * the behaviour before the fix was already pretty confusing. JDK 19 and
   older do not check the presense of '{' in the constructor, so the
   URL object got created, but when converting to file the result would
   be e.g. '/../../src/test/remote-repo' which is completely wrong.
   But it seems the affected tests did not really care, as all of them
   were passing

* Remove forgotten println

Co-authored-by: Yeikel <email@yeikel.com>

* Test with latest JDK

* Do not run ITs with jdk 20, but just the "build itself"

---------

Co-authored-by: Yeikel <email@yeikel.com>
Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2023-05-16 11:06:05 +02:00
Guillaume Nodet
b76e78072a
[MNG-7785] Clean usage of SessionData (#1094) 2023-05-16 10:56:44 +02:00
Hervé Boutemy
97a565e313
MNG for Jira auto-link 2023-05-15 15:24:09 +02:00
Tamas Cservenak
a56f201991 Update DOAP 2023-05-11 09:33:14 +02:00
Tim te Beek
a8319821a9
[MNG-6829] Replace any StringUtils#isEmpty(String) and #isNotEmpty(String) (#1104)
* [MNG-6829] Replace any StringUtils#isEmpty(String) and #isNotEmpty(String)

Use this link to re-run the recipe: https://public.moderne.io/recipes/org.openrewrite.java.migrate.apache.commons.lang.IsNotEmptyToJdk?organizationId=QXBhY2hlIE1hdmVu

Co-authored-by: Moderne <team@moderne.io>

* Apply Spotless

---------

Co-authored-by: Moderne <team@moderne.io>
2023-05-09 19:46:02 -04:00
Marc Philipp
56674cdc90
[MNG-7778] - Include suppressed exceptions when logging failures (#1103)
Instead of only including causes, suppressed exceptions are now included
as well. A similar indentation strategy as in
`Throwable.printStackTrace` is used.

---

https://issues.apache.org/jira/browse/MNG-7778
2023-05-05 17:21:16 +02:00
Guillaume Nodet
a1fa3eb534
[MNG-6303] Interpolate all arguments using system and user supplied properties (#1062) 2023-05-05 15:12:12 +02:00
Tamas Cservenak
9b6d263bdb
[MNG-7769] Update Resolver to 1.9.10 (#1102)
From 1.9.8

---

https://issues.apache.org/jira/browse/MNG-7769
2023-05-05 10:00:34 +02:00
Tamas Cservenak
bec53b34e3
[MNG-7038] Fixes for topDirectory (#1100)
Changes:
* resolve file argument against workingDirectory explicitly
* the check Files.isRegularFile should happen against path
2023-05-02 20:37:56 +02:00
Tamas Cservenak
8b8f2c3ddd [MNG-7767] Tone down plugin validator (#1092)
This change reduces default output making it more compact, and also renames the "levels" to brief, default and verbose.

---

https://issues.apache.org/jira/browse/MNG-7767
2023-04-26 15:53:21 +02:00
Giovanni van der Schelde
81231b8865 [MNG-7707] Skip consumer pom artifact transformation when no pom is available (fixes #1060) 2023-04-21 21:27:03 +02:00
Guillaume Nodet
2db7c85b64
[MNG-7038] Introduce public properties to point to the root and top directories of (multi-module) project (#1061)
This commit introduces three properties:

 * project.rootDirectory: the project's directory or parent directory containing a .mvn subdirectory or a pom.xml flagged with the root="true" attribute. If no such directory can be found, accessing the rootDirectory property will throw an IllegalStateException.

 * session.topDirectory : the directory of the topmost project being built, usually the current directory or the directory pointed at by the -f/--file command line argument. The topDirectory is similar to the executionRootDirectory property available on the session, but renamed to make it coherent with the new rootDirectory and to avoid using root in its name. The topDirectory property is computed by the CLI as the directory pointed at by the -f/--file command line argument, or the current directory if there's no such argument.

 * session.rootDirectory : the rootDirectory for the topDirectory project.

The topDirectory and rootDirectory properties are made available on the MavenSession / Session and deprecate the executionRootDirectory and multiModuleProjectDirectory properties. The rootDirectory should never change for a given project and is thus made available for profile activation and model interpolation (without the project. prefix, similar to basedir). The goal is also to make the rootDirectory property also available during command line arguments interpolation.

A root boolean attribute is also added to the model to indicate that the project is the root project. This attribute is only supported if the buildconsumer feature is active and removed before the pom is installed or deployed. It can be used as an alternative mechanism to the .mvn directory.
2023-04-20 12:58:12 +02:00
Guillaume Nodet
9e51a8fe95
[MNG-7763] Provide UTF-8 as a default value for project.build.sourceEncoding and project.reporting.outputEncoding (#1085) 2023-04-17 15:20:54 +02:00
Tamas Cservenak
0a67219271 [MNG-7753] Upgrade resolver to 1.9.8 (was 1.9.7).
---

https://issues.apache.org/jira/browse/MNG-7753
2023-04-17 14:23:50 +02:00
Karl Heinz Marbaise
5c750eacb4
[MNG-7766] - Migrate to use mockito-bom 4.11.0 2023-04-16 14:54:16 +02:00
Karl Heinz Marbaise
c49c4e0b18
[MNG-7451] - Remove public modifier from test methods / test classes 2023-04-15 19:24:20 +02:00