3287 Commits

Author SHA1 Message Date
Simon
55431cd267
[MNG-7578] Fallback on Linux executable in Windows for findTool utility (#861)
* [MVN-7578] Fallback on Linux executable in Windows for findTool utility
* Fix code style
Co-authored-by: Guillaume Nodet <gnodet@gmail.com>
2022-12-09 10:07:48 +01:00
Tamas Cservenak
6773c05128
[MNG-7619] Reverse Dependency Tree (#902)
Adds Maven feature that is able to explain why an artifact is present in local repository.

Usable for diagnosing resolution issues.

In local repository, for each artifact it records `.tracking` folder, containing farthest artifact that got to this artifact, and the list of graph nodes that lead to it.

Note: this is based on by @grgrzybek proposal and reuses some code he provided. See https://github.com/apache/maven-resolver/pull/182

---

https://issues.apache.org/jira/browse/MNG-7619
2022-12-05 16:19:31 +01:00
Konrad Windszus
0d4a1a1257
[MNG-7609] Clarify extension descriptor documentation (#896) 2022-12-05 10:04:35 +01:00
Tamas Cservenak
69ef6a61ba [MNG-7612] Chained LRM
Adds new feature: Chained Local Repository Manager.

Cherry-pick 2dc7a356d3912a92af2c6e5e23604b084f5ca748

---

https://issues.apache.org/jira/browse/MNG-7612
2022-12-03 16:55:05 +01:00
Tamas Cservenak
a840ba91e3
[MNG-7608] Make native transport the default (#892)
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
2022-12-02 16:12:48 +01:00
Guillaume Nodet
249c0fe0f1
[MNG-7617] Small optimisations and cleanup in the project/model building (#816)
* Clean a bit DefaultProfileActivationContext
* Cleanup DefaultProjectBuildingResult
* Cache the injected list to avoid repetitive lookups
* Lazily compute the MavenBuildTimestamp
* Use a single loop to select active profiles
2022-12-02 14:58:56 +01:00
Guillaume Nodet
f0cc176b33
[MNG-7616] Add missing exported artifacts for the new API (#894) 2022-12-02 14:56:02 +01:00
Konrad Windszus
3d0939662a
[MNG-7611] Change semantics of plugin descriptor's "requiredJavaVersion" (#888)
Always assume version constraint (the same as in requiredMavenVersion)
2022-12-01 21:54:09 +01:00
Tamas Cservenak
f70b0019cc
[MNG-7607] Add M4 Transport API (#884)
Something simple to use and would reuse all the auth/proxy etc data from Maven. Intentionally super-trivial API.

If something more "serious" needed, plugin should probably roll it's own solution.

---

https://issues.apache.org/jira/browse/MNG-7607
2022-12-01 13:53:08 +01:00
Tamas Cservenak
c6ecff9923
[MNG-7586] Update Maven Resolver to 1.9.2 (#882)
Updates resolver to latest release.

---

https://issues.apache.org/jira/browse/MNG-7586
2022-11-26 20:08:34 +01:00
Guillaume Nodet
de19cfcd2b [MNG-7601] Reformat sources 2022-11-22 14:26:01 +01:00
Slawomir Jaranowski
b1c1f7556d [MNG-7600] LocalRepositoryManager is created too early
LocalRepositoryManager needs configurations from RepositorySystemSession
so must be created after session configuration is finished.
2022-11-21 16:45:35 +01:00
Guillaume Nodet
dc88c6193c
[MNG-7580] Introduce new SettingsBuilder and ToolchainsBuilder services (#852) 2022-11-21 09:51:28 +01:00
Guillaume Nodet
3f03f0e7b2
[MNG-7576] Restore compatibility with maven 3.x (#841) 2022-11-21 09:50:33 +01:00
Guillaume Nodet
6a27f5f2f6
[MNG-7597] Fix infinite loop when iterating PropertiesAsMap (#872) 2022-11-21 09:37:42 +01:00
Tamas Cservenak
724ac0b541 Revert "[MNG-7586] Update Maven Resolver to 1.9.1 (#870)"
This reverts commit 113919a5ef46451424c5a6aee348db1a4c39cba8.
2022-11-17 17:46:08 +01:00
Tamas Cservenak
113919a5ef
[MNG-7586] Update Maven Resolver to 1.9.1 (#870)
Changes:
- hook in lifecycle

---

https://issues.apache.org/jira/browse/MNG-7586
2022-11-17 16:26:42 +01:00
Slawomir Jaranowski
fa15fcf153 [MNG-7590] Allow to configure resolver by properties in settings.xml 2022-11-09 23:15:25 +01:00
Guillaume Nodet
dfcf5791fc
[MNG-7583] Allow concurrent access to the MavenPluginManager (#855) 2022-11-09 14:13:18 +01:00
Michael Osipov
9c60138915 [MNG-7556] Clean up notion between user properties and system properties
This closes #810
2022-10-29 20:44:15 +02:00
Abdel Hajou
bc8c6be269 [MNG-7564] Check if session is null when generating metadata
Closes #857.
2022-10-29 13:38:47 +02:00
Konrad Windszus
daa8e16902
[MNG-7570] Plugin descriptor can carry the required Maven version (#832)
Its value takes precedence over POMs Maven prerequisite
2022-10-19 08:15:28 +02:00
Konrad Windszus
d857c3a915
[MNG-7566] Allow a Maven plugin to require a Java version (#827) 2022-10-18 11:45:54 +02:00
Guillaume Nodet
77312f323b [maven-release-plugin] prepare for next development iteration 2022-10-15 01:41:39 +02:00
Guillaume Nodet
c07700ffc9 [maven-release-plugin] prepare release maven-4.0.0-alpha-2 2022-10-15 01:41:31 +02:00
Guillaume Nodet
550f0c90fc Restore compatibility for the maven-release-plugin 2022-10-15 01:33:17 +02:00
Guillaume Nodet
a492c9a4ff
Fix the repackaged plexus-utils groupId (#829)
* Fix plexus gav
* Install maven instead of just building it

The plugins need to be available in the local repo, else the build may download old snapshots
2022-10-15 01:20:24 +02:00
Guillaume Nodet
66851463f6 [maven-release-plugin] prepare for next development iteration 2022-10-14 22:57:05 +02:00
Guillaume Nodet
0d973fb624 [maven-release-plugin] prepare release maven-4.0.0-alpha-1 2022-10-14 22:36:41 +02:00
Guillaume Nodet
2b6977a85f
Fix site generation (#828) 2022-10-14 21:52:26 +02:00
Guillaume Nodet
3f90e7028e
Restore compatibility on SettingsBuilder, ToolchainsBuilder and MojoDescriptorCreator (#820) 2022-10-11 16:31:57 +02:00
Tamas Cservenak
3bc2cf6a7a
[MNG-7547] Simpler G level metadata generation (#806) 2022-10-11 14:11:17 +02:00
Guillaume Nodet
ae655e0e83
[MNG-7553] v4 api enhancements
* Fix DefaultArtifactManager to allow using both Artifact and Dependency
* Add a TODO for an EventSpy related api
* Add simple string/model conversion on the XmlFactory
* Decouple services creation
* Move services to @Singleton scope
* Add protected constructors as builders should not be created directly
* Fix typos "can not" -> "cannot"
* Add some null checks on build(xx) shortcut methods
* Add a some missing conversion to immutable collections for requests
2022-10-10 20:47:26 +02:00
Guillaume Nodet
bff84bd634
Replace Properties with Map<String, String> in the v4 api (#808) 2022-10-05 16:52:17 +02:00
Guillaume Nodet
2a9f39336c
[MNG-7553] New clean API with immutable model (#703) 2022-10-02 10:41:25 +02:00
Martin Kanters
7e0e9f9fbe [MNG-7310] Using the plexusContainer to prevent loading lifecycles from defined by extensions from other submodules.
This resolves #639.
2022-09-16 14:46:01 +02:00
Sylwester Lachiewicz
5502c0c8db [MNG-7502] Upgrade to Guice 5.1.0 2022-09-10 21:27:25 +02:00
Guillaume Nodet
631f1c7611 [MNG-7401] [MNG-7474] Remove unused commented code 2022-08-23 11:54:18 +02:00
Guillaume Nodet
e02e0c84ce [MNG-7401] [MNG-7474] Keep a single maven session and fix session scope (#743)
* [MNG-7474] SessionScoped beans should be singletons for a given session

Now that the Session is not cloned anymore, we can revert to the original
(Maven < 3.3) behavior of the session scoped components.

Co-authored-by: Christoph Läubrich <christoph@laeubi-soft.de>

This closes #743

* Remove setting a value which is the default already

Co-authored-by: Christoph Läubrich <christoph@laeubi-soft.de>
# Conflicts:
#	maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java
#	maven-core/src/main/java/org/apache/maven/session/scope/internal/SessionScope.java
2022-08-23 11:51:44 +02:00
Giovanni van der Schelde
a53a1aa232 [MNG-7443] Implement consistent logging between optional projects and optional profiles
This closes #701
2022-07-29 11:06:26 +02:00
Michael Osipov
0f8f22e404 [MNG-7020] Remove Maven 2 WagonExcluder backward compat code
This closes #394
2022-07-24 10:47:35 +02:00
Michael Osipov
2d9918a2d1 Clean up dependency warnings by dependency:analyze
This closes #769
2022-07-24 10:44:43 +02:00
Hervé Boutemy
35b93b0a58 [MNG-7353] Add support for "mvn pluginPrefix:version:goal"
This closes #757
2022-07-21 14:38:30 -07:00
Marc Wrobel
8125b3131f Fix typos in code
Fix minor typos in code :

- test method names,
- method parameter names,
- variable names.
2022-07-19 00:45:13 +02:00
Marc Wrobel
5ce5591ae3 Fix minor typos
Fix various minor typos in :

- project documentations,
- javadoc and comments,
- test files.
2022-07-18 19:22:19 +02:00
Michael Osipov
efa9f0c678 [MNG-7513] Address commons-io_commons-io vulnerability found in maven latest version
We can safely remove Commons IO altogether because it is not used in any direct or
transitive usecase at compile time or runtime.

This closes #771
2022-07-18 17:26:54 +02:00
Josef Cacek
03b1faff7e [MNG-7511] Ensure the degreeOfConcurrency is a positive number in MavenExecutionRequest
This closes #767
2022-07-18 13:35:27 +02:00
Tamas Cservenak
f05397a88d
Pull out lifecycle plugin versions (#766)
To lessen mistake (copy-paste vs forgotten update) but also just to
make things less redundant. This also makes possible "experimenting"
much more easier.

This is merely a refactoring that does not takes or gives anything, just tidies up.
2022-07-12 15:13:55 +02:00
Guillaume Nodet
415eaf31de
[MNG-7160] Ability to customize core extensions classloaders (#616) 2022-06-15 10:43:17 +02:00
Slawomir Jaranowski
54f9d91ebb [MNG-7468] Check unsupported plugins parameters in configuration 2022-06-03 20:54:27 +02:00