Commit Graph

12004 Commits

Author SHA1 Message Date
Slawomir Jaranowski ba8cbd9685
[MNG-7932] - Upgrade maven-parent to v41 in maven-bom 2023-11-17 22:35:36 +01:00
Guillaume Nodet 29e239000b
Add some love to the API (#1310) 2023-11-17 16:52:15 +01:00
Guillaume Nodet 518b988a09
Remove reference to plexus XmlStreamReader (#1308) 2023-11-17 16:51:47 +01:00
Guillaume Nodet f92fdb86c2
Fix XML parsing problem with empty namespace (#1307) 2023-11-17 16:51:28 +01:00
Guillaume Nodet 3cebbf7a15
Remove usage of old StringTokenizer (#1306) 2023-11-17 16:50:51 +01:00
Guillaume Nodet d62113772e
Clean up dependencies versions (#1300) 2023-11-17 16:31:11 +01:00
Karl Heinz Marbaise a68443f4e9
[MNG-7932] - Upgrade maven-parent to v41 2023-11-13 20:47:38 +01:00
Karl Heinz Marbaise c613d7ab4b
Upgrade Build Requirements
+ Minimum JDK11
 + Minimum Maven 3.6.3
2023-11-13 15:03:09 +01:00
Karl Heinz Marbaise 2876dc32fe
[MNG-7931] - Upgrade asm version to 9.6 2023-11-13 13:16:58 +01:00
Karl Heinz Marbaise 0287c7aa55
[MNG-7930] - Get rid of WARNING Parameter 'systemProperties' is deprecated 2023-11-13 12:26:04 +01:00
Karl Heinz Marbaise 7cfdedefb6
[MNG-7929] - Upgrade Mockito to 5.7.0 2023-11-13 12:02:12 +01:00
Karl Heinz Marbaise 6f0b5c0639
[MNG-7928] - Upgrade JUnit Jupiter Version 5.10.1 2023-11-13 11:39:39 +01:00
sebastien-doyon 94749041b4
[MNG-7899] Various memory usage improvements 4-1 (#1296)
* [MNG-7899] Various memory usage improvements

- BatchModeMavenTransferListener removed
- FileSizeFormat moved to top level class
- FileSizeFormat.formatProcess() refactored to accept an StringBuilder as argument
- FileSizeFormat refactored format() methods
- FileSizeFormat refactored, replace DecimalFormat with Math logic to
reduce memory allocation

---------

Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2023-11-10 00:47:54 +01:00
Guillaume Nodet 4bd12915c9
[MNG-7662] Use proxies for session scoped beans (#950) 2023-11-09 14:34:11 +01:00
Tamas Cservenak e6d1b4c5de
[MNG-7909] Upgrade to Resolver 2.0.0-alpha-1 (#1282)
Upgrade to Resolver 2.0.0.

Changes:
* many UT code used `new DefaultRepositorySystem()` ctor that is gone (was present due SL only), replaced with mocks
* dropped MavenResolverModule Guice module (as AetherGuice module is gone as well)
* updated Resolver version to 2.0.0-alpha-1
* added jdk transport (that prevails apache on Java 11)
* rename of "native" into "apache", deprecate "native" name
* introduce "jdk" transport

---

https://issues.apache.org/jira/browse/MNG-7909
2023-11-07 16:06:40 +01:00
Guillaume Nodet 7fcdd32e87 [MNG-7615] Multithreaded project builder 2023-11-07 09:20:52 +01:00
Guillaume Nodet 2f6ec159fe [MNG-7615] Add a cycle detection to the transformer context 2023-11-07 09:20:52 +01:00
Guillaume Nodet 53ff1690de [MNG-7615] Add some methods for supporting Maven 4 api to ProfileInjector / ProfileSelector 2023-11-07 09:20:52 +01:00
Guillaume Nodet 54ca01c779 [MNG-7615] Use lambas to access ModelCache 2023-11-07 09:20:52 +01:00
Guillaume Nodet 4ddc4bf406
Use 4.0.99 as as intermediate model to keep 4.1.0 for the Maven 4.x model (#1297)
Also generates XSD for extensions 1.2.0 schema
2023-11-06 20:04:44 +01:00
Guillaume Nodet 3fc399318e [maven-release-plugin] prepare for next development iteration 2023-10-20 21:20:23 +02:00
Guillaume Nodet a2cbf4873a [maven-release-plugin] prepare release maven-4.0.0-alpha-8 2023-10-20 21:20:23 +02:00
Guillaume Nodet 61f08f326d Fix build/consumer pom transformation wrt attached artifacts 2023-10-20 21:18:46 +02:00
Guillaume Nodet 08a2c60d9e
[MNG-7916] Simply get rid of LifecycleMappingsXpp3Reader/Writer (#1295)
Since the v3 model has been replaced by the v4 model, that would be in line.  We can revisit and restore full compatibility later if needed.
2023-10-20 17:19:56 +02:00
Guillaume Nodet 066cb3dc17
[MNG-7917] Upgrade to Jansi 2.4.1 (#1294) 2023-10-20 17:19:20 +02:00
sebastien-doyon d362690a82
[MNG-7899] Various memory usage improvements 5 (#1270)
Multiple optimizations :
- renderLevel() method use static constants instead of rebuilding the strings on each call
- replace + operator usage with more PrintStream.print() calls to reduce temporary strings creation
- reduce usage of MessageBuilder.a() method usage with more PrintStream.print() calls to reduce temporary strings creation
- replace the builder() method with a static import
- replace String.format with a simple string concat to reduce memory allocation (garbage)
- change static constants to class member in MavenSimpleLogger
- add a setLength(int) method in MessageBuilder to enable reuse
2023-10-20 16:30:44 +02:00
sebastien-doyon 68bbc8f393
[MNG-7899] Various memory usage improvements 4 (#1269)
- Use the main StringBuilder to append string instead of using a separate one
- Use the StringBuilder.append() with index to avoid String.substring(), less temporary strings
- Reuse the FileSizeFormat object in the while loop avoiding multiple temporary instances creation
- Non-threadsafe FileSizeFormat instance can be make class instance since its formatProgress() method is only called in a synchronized block.
- add a test in a multi-threaded context
- Non-threadsafe StringBuilder instance 'buffer' can be make class instance since it is always called in synchronized methods
- remove synchronized block in transferProgressed() method, the method is synchronized and the block is not needed
- Remove the Collections.synchronizedMap since all methods that use the transfers map are synchronized
2023-10-20 14:16:34 +02:00
Guillaume Nodet 9abaf3aa1c
[MNG-7894] Consumer pom should not expose local workspace directory (#1291) 2023-10-20 12:38:57 +02:00
Slawomir Jaranowski a35ed073ab
[MNG-7904] Use SettingsStaxReader/Writer for SettingsXpp3Reader/Writer (#1285) 2023-10-20 09:44:51 +02:00
Guillaume Nodet 4251e3f9c2
[MNG-7915] Use MavenStaxReader/Writer in MavenXpp3Reader/Writer (#1293)
This removes the generated v4 model reader/writer based on Xpp3 api and deprecates the v3 Xpp3 reader/writer.
2023-10-20 09:14:01 +02:00
Guillaume Nodet a734e2a336
Get rid of deprecated method in the v4 Session interface (#1292) 2023-10-20 07:54:44 +02:00
sebastien-doyon 16888062d0
[MNG-7899] Various memory usage improvements (#1268)
Reuse a StringBuilder in a for loop by setting its lenght to zero.
Help reduce temporary objects creation.
2023-10-19 14:19:37 +02:00
Guillaume Nodet 9663203821
Reuse the same repository so that ITs can access maven snapshot jars from the repository (#1277) 2023-10-19 13:53:44 +02:00
Tim te Beek 889ceb42a4
[MNG-6847] Use diamond operator (#1264)
Co-authored-by: Moderne <team@moderne.io>
2023-10-19 09:06:15 +02:00
juulhobert 7f86d1d996
[MNG-7772] Allow to register maven core extension in .m2 directory instead of MAVEN_HOME (#1280) 2023-10-18 20:06:57 +02:00
Guillaume Nodet 251a316962
[MNG-7893] Fix exception loading superpom with invalid modelVersion (#1290)
Even though this should not be supported, Maven 3.x is always using the 4.0.0 superpom.  So if the version is not a supported model version, simply use 4.0.0.  Any invalid value will be later verified by the model validator and eventually throw a meaninful exception.
2023-10-18 15:31:36 +02:00
Guillaume Nodet 2f99c66f86
[MNG-7821] Remove useless animal-sniffer-plugin (#1289) 2023-10-18 07:47:35 +02:00
Guillaume Nodet 92a82dcefd
[MNG-6437] Better support for path and uri in property interpolation (#812) 2023-10-17 19:55:08 +02:00
Guillaume Nodet 32d67322ef
[MNG-7891] Abstract ExtensionConfigurationModule from CliRequest (#1272)
Follow-up to MNG-7891 to make Maven Daemon integration easier.
2023-10-17 19:53:33 +02:00
Guillaume Nodet 80a8e41540
[MNG-7804] Fix broken MavenModelVersion generation (#1284) 2023-10-16 15:44:33 +02:00
Guillaume Nodet f2df54723b
[MNG-7804] Ability to order plugin executions using the priority xml element (#1147) 2023-10-16 13:28:47 +02:00
Tamas Cservenak bd608d8cc9
[MNG-7910] DefaultProfileSelector empty ctor uses immutable list (#1283)
It uses immutable list and while it suggests it allows this below, it actually fails on constructs like this (runtime ONLY):
{noformat}
new DefaultProfileSelector()
                .addProfileActivator(new JdkVersionProfileActivator())
                .addProfileActivator(new PropertyProfileActivator())
{noformat}

As default ctor creates immutable list, but API kinda suggests this is ok.

---

https://issues.apache.org/jira/browse/MNG-7910
2023-10-16 13:26:42 +02:00
Guillaume Nodet 07db6ec76a
[MNG-7911] Require JDK 11 and support JDK 21 at build time (#1278) 2023-10-16 13:25:27 +02:00
Slawomir Jaranowski 79c09f2800 [MNG-7901] Use MetadataStaxReader/Writer in MetadataXpp3Reader/Writer 2023-10-12 22:26:00 +02:00
Slawomir Jaranowski 523f8b7dc0 [MNG-7898] Missing .mvn directory should not be reported in quiet mode 2023-10-10 12:11:44 +02:00
Tamas Cservenak a4b404145a DOAP for Maven 3.9.5 2023-10-05 21:01:14 +02:00
sebastien-doyon 0353476b1c [MNG-7899] Various memory usage improvements
Avoid creating a StringBuilder instance when not needed to reduce
temporary objects creation
2023-10-05 20:41:13 +02:00
Vivian Kong e4f68f037d
[MNG-7848] Add Jenkinsfile.s390x for Jenkins CI on s390x (#1266) 2023-10-05 11:46:41 +10:00
Slawomir Jaranowski 882c8dd974
Use the same branch name for ITs on Jenkins (#1263)
* Use the same branch name for ITs on Jenkins

* Try CHANGE_BRANCH env on PR

* CHANGE_BRANCH can be null
2023-10-05 11:44:01 +10:00
Guillaume Nodet 14d16064f6
Fix unneeded/wrong substring calls in expression evaluation and put back weak references in cache (#1258) 2023-09-27 09:28:31 +02:00