Commit Graph

10872 Commits

Author SHA1 Message Date
Tamas Cservenak 36a4e9ff64
[MNG-7754] Improvement and extension of plugin validation (#1079)
This is general rework of current Maven 3.9.x line how it handles plugin and mojo validations.

Changes:
* added plugin validations for dependencies
* introduced pluginValidationManager that gathers violations
* manager creates a report at build end, with dense and non repeating data
* this is in spirit to lessen already too verbose logging, as current solution would report violations as many times plugin is used in reactor, and that can be many (ie. a plugin from parent for each module)


Example report of Maven 3.9.x build: https://gist.github.com/cstamas/b62fdcd53eaf316123cf183f5a24e6a5

---

https://issues.apache.org/jira/browse/MNG-7754
2023-04-12 11:42:30 +02:00
Slawomir Jaranowski 54b2dc6b3b [MNG-7749] Upgrade animal-sniffer from 1.21 to 1.23 2023-03-27 19:22:04 +02:00
Guillaume Nodet 64227e25a5 [MNG-7720] Simplify code (#1063) 2023-03-23 06:32:46 +01:00
Tamas Cservenak 22e6eb03ea [maven-release-plugin] prepare for next development iteration 2023-03-15 10:40:30 +01:00
Tamas Cservenak 2e178502fc [maven-release-plugin] prepare release maven-3.9.1 2023-03-15 10:39:58 +01:00
Michael Osipov 79100c6b35 Update DOAP with Maven 3.8.8 release 2023-03-14 16:49:37 +01:00
Slawomir Jaranowski c294ef6c22 [MNG-7725] Update surefire to 3.0.0 in default binding 2023-03-14 16:05:25 +01:00
Tamas Cservenak 5bc322ae93
[MNG-7726] Maven 3.9.0 resolves properties in file profile activation incorrectly (#1053)
There was a typo: the stream contains entries, so e.getKey and
e.getValue is needed.

---

https://issues.apache.org/jira/browse/MNG-7726
2023-03-11 22:49:58 +01:00
Tamas Cservenak 1498486a42
[MNG-7723] Upgrade to Maven Resolver 1.9.7 (#1037)
Upgrade to Maven Resolver 1.9.7

---

https://issues.apache.org/jira/browse/MNG-7723
2023-03-11 20:24:13 +01:00
Michael Osipov 7d7a43135c [MNG-7731] MNG-7520 incorrectly back ported to Maven 3.9.0 2023-03-10 02:23:01 +01:00
Tamas Cservenak 57acdd41b4
[MNG-7720] Wrong build order of forked projects (#1038)
The original fix MNG-7672 matched the "scope" but missed the "order". `project.collectedProjects` are in order as loaded (POM order), is not topologically sorted.

Fix is to use DAG of projects, ask for downstream projects (will return more then we need but sorted) and narrow that list to only contain collected projects.

Related commit: 48cac1c003

---

https://issues.apache.org/jira/browse/MNG-7720
2023-03-08 09:03:33 +01:00
Andrey Bruykhov 528cea3ad9 Using Set<>() for contains()
This closes #998
2023-03-07 18:06:41 +01:00
Tamas Cservenak 366e3f5f86
[MNG-7715] Update to resolver 1.9.6 (#1025)
Update and apply some adjustments to UTs as
error message did change.

---

https://issues.apache.org/jira/browse/MNG-7715
2023-03-06 10:42:55 +01:00
Christoph Läubrich 837db7a756 [MNG-7716] ConcurrencyDependencyGraph deadlock if no root is selected
If ConcurrencyDependencyGraph#getRootSchedulableBuilds returns an empty
list then MultiThreadedBuilder is locked forever as it never gets a
build result (because nothing is scheduled).

This changes the method, that in such case just the first project is
returned, this might not give the best performance, but ensures that
there is at least one build scheduled and the build-loop can proceed.

This closes #1028
2023-03-03 18:06:09 +01:00
Tamas Cservenak 3d4fee3008
[MNG-7717] Maven warns wrongly about deprecated parameter (#1030)
The implementation for MNG-7706 is wrong: it checks parameter name where it should check type and defaultValue (expression) instead.

---

https://issues.apache.org/jira/browse/MNG-7717
2023-03-03 08:52:59 +01:00
Tamas Cservenak 7023ef7466
[maven-3.9.x][MNG-7710] Upgrade plexus-utils to 3.5.1 (#1024)
---

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

Co-authored-by: Olivier Lamy <olamy@apache.org>
2023-03-02 09:19:53 +01:00
Tamas Cservenak 5a552315f1
[MNG-7713] Make Maven fail if option present (#1021)
As with previous PR (simple removal) the `-llr` got
interpreted as `-l lr`, it logged all output to `lr`
file. This would maean that use of `-llr` would still
sneakily 'work' and probably cause surprise down the
road to users.

Returned the option, and expicitly checking for it's
presence to be able to fail with meaningful message.

---

https://issues.apache.org/jira/browse/MNG-7713
2023-03-01 13:30:04 +01:00
Guillaume Nodet 9037805f77
[MNG-7583] Allow concurrent access to the MavenPluginManager (#1001)
* [MNG-7583] Allow concurrent access to the MavenPluginManager (#855)
* Add a default method to avoid breaking the api
2023-03-01 11:31:29 +01:00
Tamas Cservenak 175b35c374
[maven-3.9.x] [MNG-7713] Drop legacy-local-repository option (#1018)
There is really no need for it, and there is a resolver
option if really must (but really should not, local repo
is and should be considered as transient).

---

https://issues.apache.org/jira/browse/MNG-7713
2023-03-01 11:20:19 +01:00
Tamas Cservenak 8431717af6
[MNG-7710] Downgrade plexus-utils to 3.3.1 (#1013)
As version 3.4.0 and above introduced several issues related to XML parsing and merging.

---

https://issues.apache.org/jira/browse/MNG-7710
2023-02-24 09:49:27 +01:00
Tamas Cservenak 95ceb71ccc
[MNG-7706] Deprecate 'localRepository' parameter expression (#1009)
This PR deprecates the 'localRepository' mojo parameter expression, and Core will emit warning if used by any Mojo.

---

https://issues.apache.org/jira/browse/MNG-7706
2023-02-23 15:49:47 +01:00
Tamas Cservenak b231238e64
[MNG-7693] For older clients make OOTB defaults (#1008)
Older clients (like pyliglot) will miss to inject ModelCacheFactory
as their Plexus XML will not contain that requirement. For them,
provide OOTB defaults.

This would not happen, if JSR330 used, as then Sisu would remedy
this at runtime, but Plexus XML actually puts things in "concrete"
during build time.

---

https://issues.apache.org/jira/browse/MNG-7693
2023-02-23 09:56:34 +01:00
Tamas Cservenak ecc89f0098
[MNG-7677] Maven slowness improvement (#989)
The crux was  in resolver 1.9.5, but there are other "low hanging fruits" like delegate created on a "hot method".

---

https://issues.apache.org/jira/browse/MNG-7677
2023-02-23 09:50:57 +01:00
Tamas Cservenak fa2345339a
[MNG-7695] Update resolver to 1.9.5 (#1010)
---

https://issues.apache.org/jira/browse/MNG-7695
2023-02-23 09:43:29 +01:00
Tamas Cservenak a2a47daaa3
[MNG-7702] Use latest deploy plugin (#1006)
And have it aligned with install plugin. These two now provides all the fixes and new functionalities like working deployAtEnd etc.

---

https://issues.apache.org/jira/browse/MNG-7702
2023-02-22 13:21:54 +01:00
Tamas Cservenak 74f1dac9fb [MNG-7679] [REGRESSION] Build fails when executing a single mojo without a POM
This closes #1004
2023-02-20 21:20:36 +01:00
Michael Osipov 67346705f0 [MNG-7197] Simplify exit code handling in Windows command startup script
This closes #1002
2023-02-18 20:50:25 +01:00
Andrey Bruykhov 0a299275e3 Close stream with try-with-resources
This closes #997
2023-02-17 21:03:21 +01:00
Andrey Bruykhov 4454cd6d82 Normalize regex patterns
This closes #988
2023-02-09 18:49:45 +01:00
Andrey Bruykhov fbf6bdaf01 [MNG-7686] Speed up by replacing non-pattern #replaceAll() with #replace() or precompiled patterns
This closes #984
2023-02-07 22:10:29 +01:00
Andrey Bruykhov 1ef583d3e6 Added missing @Deprecated/@deprecated annotations
@Deprecated annotatio is helpful to prevent usage of deprecated API.
For example: developer can see crossed out method/field name if this item
is deprecated.
2023-02-07 20:39:33 +01:00
Christoph Läubrich 72efba9b14 [MNG-7544] MavenMetadataSource#retrieve(MetadataResolutionRequest) does not check for null when reading from project map
Currently, if a project is returned from the workspace reader, but is not part
of the reactor, a NPE occurs. In this case, the repositories are read from
the model instead.

This closes #805
2023-02-05 13:34:04 +01:00
Tamas Cservenak d2a27a88bf
Add bin packages to SHA512 checksumming as well (#979)
Adding bin to SHA512 as well. Plugin now does
```
[INFO] --- checksum:1.11:artifacts (source-release-checksum) @ apache-maven ---
[INFO] apache-maven-3.9.1-SNAPSHOT-bin.tar.gz - SHA-512 : 9ee7e5282d8d2fb4990dc81a89ce132120fde38626e64922eb6f8999abcf516e6e969b2ef1a608e42a79c9fd406abadc72f57c7cde7e30a6bcb31faf25c82e28
[INFO] apache-maven-3.9.1-SNAPSHOT-bin.zip - SHA-512 : f57242ccca174df29d2570ef83648387648078fc9ead3443d7f772a5b9b50fd34fe5b213dcc128139b45469257e49ecc105fa05167962e63bd4536890a6ac9b4
[INFO] apache-maven-3.9.1-SNAPSHOT-src.tar.gz - SHA-512 : 6bd077f8478bb1c175aed4909aaa700e30c7e1b7beabe7b15606c4d01f8c1db94a1274a4c86e3c486a4f973579c54f0bde7043cc56b386c760c00061fb2b6bb0
[INFO] apache-maven-3.9.1-SNAPSHOT-src.zip - SHA-512 : ba1cffc3edeaaca814d55de217d97fb202ff54d7f57a9a1be86e6accfed8c74e010b4a31c815caed2606bbcf443b10332bde3ff0294b774232e25c8dc6d9704a
```
2023-02-01 08:17:26 +01:00
Tamas Cservenak d7e655348a
[MNG-7676] Fix checksum plugin configuration (#977)
* [MNG-7676] Fix checksum plugin configuration

Wrong goal is being used that does not honor classifiers. Also,
have to reshuffle the config, move it inside execution otherwise
ASF parent pom execution is NOT overridden.

---

https://issues.apache.org/jira/browse/MNG-7676
2023-01-31 13:19:23 +01:00
Tamas Cservenak ad29c3c548 [maven-release-plugin] prepare for next development iteration 2023-01-31 10:58:16 +01:00
Tamas Cservenak 9b58d2bad2 [maven-release-plugin] prepare release maven-3.9.0 2023-01-31 10:57:57 +01:00
Tamas Cservenak 87f4044eda Update git-blame-ignore-revs 2023-01-31 10:23:27 +01:00
Tamas Cservenak e9d570889f Reformat 2023-01-31 10:22:08 +01:00
Tamas Cservenak 1a600c7fd1 [MNG-7675] Update Parent to 39 and reformat
Changes:
* updates parent to 39
* reformat of sources (no code change)
* updates .git-blame-ignore-revs

---

https://issues.apache.org/jira/browse/MNG-7675
2023-01-31 10:22:08 +01:00
Tamas Cservenak a5d0ca4f1d
Fix site plugin warning (#973)
As date format in these two files were not parsed.
2023-01-30 16:20:46 +01:00
Guillaume Nodet 48cac1c003
[MNG-7672] Fork should only execute the project and its submodules (#969) 2023-01-30 15:08:26 +01:00
Tamas Cservenak 8fa5545b0d
Get rid of surefire watning, take 2 (#967)
The commit 36f02c9de1 is wrong,
as new config property is a Map.
2023-01-25 15:22:16 +01:00
Tamas Cservenak 36f02c9de1
Get rid of surefire warning (#965)
As POM uses deprecated configuration.
2023-01-25 14:55:57 +01:00
Tamas Cservenak f7ca0b697a
[MNG-7608] Make native transport the default (#961)
This immediately cuts in "half" the count of HTTP requests against Maven Central or any major MRM.

Altering the meaning of "default": is now same as "auto", but still leaving it in place for future, as "default" at some point may again become something different than "native".

---

https://issues.apache.org/jira/browse/MNG-7608
2023-01-17 10:08:18 +01:00
Tamas Cservenak 51354e6a7d
[maven-3.9.x] [MNG-7666] Update default binding and lifecycle plugin versions (#955)
Finally use 3.x plugins for all.

---

https://issues.apache.org/jira/browse/MNG-7666
2023-01-16 14:31:09 +01:00
Tamas Cservenak f7149c2356
[MNG-7668] Update Resolver to 1.9.4 (#958)
Update Maven Resolver to 1.9.4

---

https://issues.apache.org/jira/browse/MNG-7668
2023-01-16 14:29:32 +01:00
Slawomir Jaranowski b5575f5c82
Jenkinsfile: pickup results from ITs - 3.9.x (#952) 2023-01-11 22:53:03 +01:00
Michael Osipov 4e8773bc44 [MNG-7658] CI-friendly versions should only come from/rely on user properties
This closes #945
2023-01-01 21:10:52 +01:00
Michael Osipov a3f88234d4 Add TODO about property source of maven.repo.local 2023-01-01 20:01:37 +01:00
Pavel Horal 86d6e2aeff [MNG-7648] Fix locationTracking in DefaultModelBuildingRequest copy constructor (#940)
- Fix locationTracking in DefaultModelBuildingRequest copy constructor
- Add location tracking unit test
2023-01-01 13:41:09 +01:00