Commit Graph

187 Commits

Author SHA1 Message Date
Guillaume Nodet 2a9f39336c
[MNG-7553] New clean API with immutable model (#703) 2022-10-02 10:41:25 +02:00
Sylwester Lachiewicz 5502c0c8db [MNG-7502] Upgrade to Guice 5.1.0 2022-09-10 21:27:25 +02:00
Henning Schmiedehausen e410a6ce1d
MNG-7529 alternate fix (#795)
[MNG-7529] Maven resolver makes bad repository choices

Structure the version checks slightly different to make the separation
between repository versions and the version range resolution clearer.
2022-08-31 09:47:00 -07:00
Henning Schmiedehausen ce4579108d
[MNG-7529] Maven resolver makes bad repository choices (#786)
Ensure that any versions resolved as part of a version range request
only reference repositories that are actually enabled for the type of
version (SNAPSHOT versions against snapshot repos, release versions
against release repositories).
2022-08-24 21:26:19 -07:00
Tamas Cservenak be2b7f890d
[MNG-7454] Include resolver-transport-http in Maven (#711)
But keep Wagon as default transport. This PR merely includes
resolver http and file transport and switches wagon-http
to non-shaded one.

Changes:
* switch to non-shaded wagon-http (as httpClient is now shared)
* include resolver http and file transport
* override resolver default behaviour (native transport preferred over wagon, when both on classpath)
* provide simplistic means to choose transport

The chosen transport can be seen in debug (-X) output on line
`[DEBUG] Using transporter XXX...`

The `-Dmaven.transport` simplistic switch can be used to choose transport:
* not set: default, that is Wagon
* `wagon`: explicitly sets Wagon
* `resolver`: explicitly sets resolver native transports (file and http)
* `auto`: relies on resolver "auto discovery" (priorities, etc). This is MUST to keep transport pluggable with 3rd party transports. In fact, this was the default so far in Maven, along with the fact that native resolver transports were not included (as resolver prefers native ones over Wagon).
2022-04-13 12:51:37 +02:00
Guillaume Nodet b3d5c12c7a
[master][MNG-7350] Introduce a factory for ModelCache (#629)
* [MNG-7350] Introduce a factory for ModelCache
* [MNG-7350] Introduce a factory for ModelCache
Fix missing javadoc and binding
2022-03-09 13:29:51 +01:00
Sylwester Lachiewicz 69d6c6d5a2 [MNG-7417] Several classes do not set properties properly for building requests
This closes #306
2022-02-20 19:17:47 +01:00
Guillaume Nodet 6b607109d3 [MNG-7349] Limit relocation warning message to direct dependencies only
# Conflicts:
#	maven-resolver-provider/src/main/java/org/apache/maven/repository/internal/DefaultArtifactDescriptorReader.java
2022-01-24 07:57:43 +01:00
Michael Osipov 46d57bdb3f [MNG-7374] Mutating RelocatedArtifact does not retain type
This closes #641
2021-12-30 16:50:58 +01:00
Arturo Bernal d61fcf7da1 [MNG-7288] Remove redundant local variables
Closes #569
2021-10-10 12:42:12 +02:00
Arturo Bernal e50d65d228 MNG-7295 - Remove redundant/unused import statements. 2021-10-09 16:26:14 +02:00
Tamas Cservenak 69ee0c8b59
[MNG-7103] VersionScheme provider (#563)
This PR makes VersionScheme a component, is injected where needed
(instead of ad-hoc instantiation), but provides room for
different schemas, as GenericVersionScheme is "default"
but now nothing stops to add other schemes as well.
2021-10-04 11:55:18 +02:00
Tamas Cservenak d141957ff5
[MNG-7055] Fix G level metadata handling (#555)
Maven Artifact Transfer silently prevents group level metadata to reach Resolver and causes metadata loss on install/deploy. Fix is to "bridge" this from maven-resolver-provider (and core) by reusing the actual metadata that m-plugin-p:addPluginArtifactMetadata mojo adds, but m-a-t filters out.
2021-10-02 15:22:32 +02:00
Guillaume Nodet 35e5a4d71d [MNG-5577] Use JSR 330 constructor injection
# Conflicts:
#	maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java
2021-10-02 12:26:22 +02:00
Guillaume Nodet 1ab49b349f Remove deprecated usage of ServiceLocator/Service 2021-10-02 12:26:22 +02:00
Guillaume Nodet e30c1bf9fc Add a unit test for MavenRepositorySystemUtils#newSession 2021-10-02 12:26:22 +02:00
Guoxiong Li 5fd536853f [MNG-7248] Fix warnings issued by dependency:analyze
This changeset does intentionally not touch Guice and its dependencies
as well as test-scoped dependencies.

This closes #546
2021-09-24 20:55:03 +02:00
George Gastaldi a1ba33069f [MNG-7253] Display relocation message defined in model
Move logging to DefaultArtifactDescriptorReader

This closes #543
2021-09-18 20:39:37 +02:00
Michael Osipov b551be7445 Document hacks as such 2021-07-02 17:50:44 +02:00
rfscholte 12f3e7e878 Remove maven-test-support in favor of plexus-testing 2021-05-28 18:26:03 +02:00
Michael Osipov fc806a25eb [MNG-7151] Upgrade Maven Resolver to 1.7.0 2021-05-11 20:59:18 +02:00
Michael Osipov 1a65351b43 Revert "[MNG-6772] Prevent Super POM central entry from overriding"
This reverts commit 2a23d7bf16.
2021-04-22 18:45:57 +02:00
Michael Osipov a5c68f7a4a Revert "[MNG-7046] Revert MNG-5639 and make repo config static only"
This reverts commit 8c9c303f9c.
2021-03-13 17:09:40 +01:00
Guillaume Nodet 619973b91c [MNG-7063] Infinite loop using Shade plugin and JUnit 5 dependency
Signed-off-by: rfscholte <rfscholte@apache.org>
2021-02-14 15:52:04 +01:00
Guillaume Nodet 48fc10889e [MNG-7077] Use JUnit 5 extension
Signed-off-by: rfscholte <rfscholte@apache.org>
2021-02-12 17:21:59 +01:00
boris-unckel 1e575a2bd7 [MNG-7068] Active dependency management for Google Guice/Guava
This closes #462
2021-02-02 14:17:43 +01:00
Guillaume Nodet bb916d0784 [MNG-7035] Migrate unit tests to Unit 5
Signed-off-by: rfscholte <rfscholte@apache.org>
2021-01-15 15:07:06 +01:00
Michael Osipov 673a7d1fef Trim trailing whitespace 2020-12-24 19:09:10 +01:00
Michael Osipov 8c9c303f9c [MNG-7046] Revert MNG-5639 and make repo config static only
This closes #409
2020-12-24 15:23:59 +01:00
Nicolas Juneau 95ee890837 [MNG-5728] Switch the default checksum policy from "warn" to "fail"
Signed-off-by: rfscholte <rfscholte@apache.org>
Signed-off-by: Michael Osipov <michaelo@apache.org>
2020-12-02 20:49:46 +01:00
Robert Scholte 251ba225c6 Revert "[MNG-5728] Switch the default checksum policy from "warn" to "fail"" 2020-12-02 20:28:04 +01:00
Nicolas Juneau d8ad76b9cb [MNG-5728] Switch the default checksum policy from "warn" to "fail"
Signed-off-by: rfscholte <rfscholte@apache.org>
Signed-off-by: Michael Osipov <michaelo@apache.org>
2020-11-30 21:12:14 +01:00
rfscholte 3736be9c15 Updating version in preparation for Maven 4 2020-11-27 12:22:47 +01:00
Michael Osipov 72688805c4 [MNG-6754] Set the same timestamp in multi module builds
Reuse MavenExecutionRequest#getStartTime() throughout for snapshot versions,
last updated fields in metadata consistently for local and remote repositories
for the entire reactor and its modules.

This closes #381
2020-11-11 23:09:49 +01:00
Eddie Wiegers 2a23d7bf16 [MNG-6772] Prevent Super POM central entry from overriding
Closes #289
2020-09-01 08:31:58 +02:00
Sylwester Lachiewicz b4725dbe06 Fix maven-checkstyle-plugin 3.1.1 reported error
- with maven-shared-resources v3
2020-06-11 20:53:36 +02:00
rfscholte 716cc1fe02 [MNG-5669] same pom.xml is read multiple times 2020-01-29 21:18:42 +01:00
Artem Krosheninnikov 39492281b2 [MNG-6847] Explicit type can be replaced by the diamond operator
This closes #315
2020-01-13 20:57:35 +01:00
Sylwester Lachiewicz 6d630388e6 Revert "[MNG-5982] Pass user properties to ModelBuildingRequest"
This reverts commit 5553ff0ca6.
2020-01-01 16:02:08 +01:00
Sylwester Lachiewicz 5553ff0ca6 [MNG-5982] Pass user properties to ModelBuildingRequest 2020-01-01 16:01:14 +01:00
rfscholte ead06d23d4 [maven-release-plugin] prepare for next development iteration 2019-11-19 20:17:36 +01:00
rfscholte cecedd3430 [maven-release-plugin] prepare release maven-3.6.3 2019-11-19 20:17:06 +01:00
Christian Wansart 0c7c69f78b [MNG-6778] - Use https for maven schemaLocations 2019-11-07 16:16:39 +01:00
Enrico Olivelli d9a0eee7fe [maven-release-plugin] prepare for next development iteration 2019-08-27 16:59:23 +02:00
Enrico Olivelli 40f5233313 [maven-release-plugin] prepare release maven-3.6.2 2019-08-27 16:59:01 +02:00
Michael Osipov 2d0c3bc75b [MNG-6704] MavenRepositorySystemUtils.newSession() misses assignment 2019-07-25 21:58:26 +02:00
Michael Osipov 25ffca0633 [MNG-6672] Upgrade Maven Resolver to 1.4.0 2019-06-12 23:23:14 +02:00
Stefan Oehme d3ace78602 [MNG-6638] Prevent reparsing POMs in MavenMetadataSource
If a dependency on another project is found, don't parse its
POM again, but instead use the model we already have in memory.
This saves a large amount of time and memory for builds that have
lots of subprojects and dependencies between them.
The approach was directly copied from DefaultArtifactDescriptorReader,
which does the same optimization.

This closes #244
2019-05-27 23:11:09 +02:00
Karl Heinz Marbaise 5222f03d05
[maven-release-plugin] prepare for next development iteration 2019-04-04 20:56:37 +02:00
Karl Heinz Marbaise d66c9c0b31
[maven-release-plugin] prepare release maven-3.6.1 2019-04-04 20:56:16 +02:00
Karl Heinz Marbaise 6e376d424e
[maven-release-plugin] prepare for next development iteration 2018-10-24 20:38:30 +02:00
Karl Heinz Marbaise 97c98ec64a
[maven-release-plugin] prepare release maven-3.6.0 2018-10-24 20:38:06 +02:00
HoaPhan ba74b96633
[MNG-6492] - Minor improvement on Array construction, conversion performance 2018-10-24 18:07:13 +02:00
Sylwester Lachiewicz 6e619a1bcb [MNG-6496] Upgrade Maven Resolver to 1.3.1
Fixes #187
2018-10-18 00:44:30 +02:00
rfscholte 72dca39807 Replace org.apache.commons.lang3.Validate#notNull with java.util.Objects#requireNonNull 2018-07-15 10:36:08 +02:00
Stephen Connolly bf0bd6350e Master is now on 3.6.0-SNAPSHOT 2018-06-17 22:38:49 +01:00
Stephen Connolly 1efd571b0a [maven-release-plugin] prepare for next development iteration 2018-06-17 19:29:56 +01:00
Stephen Connolly 1edded0938 [maven-release-plugin] prepare release maven-3.5.4 2018-06-17 19:29:25 +01:00
Stephen Connolly 85b4e3d8e8 [maven-release-plugin] prepare for next development iteration 2018-02-24 19:29:56 +00:00
Stephen Connolly 3383c37e1f [maven-release-plugin] prepare release maven-3.5.3 2018-02-24 19:29:21 +00:00
Sylwester Lachiewicz d925081794 Reduce number of global checkstyle rule violations
Fix code for following checkstyle rules:
ConstantName, FileLength, InnerAssignment, JavadocType, MagicNumber, MethodLength, MethodName, NewlineAtEndOfFile, ParameterNumber, RedundantThrows, VisibilityModifier

Fixes #149
2018-02-11 11:41:16 +01:00
Hervé Boutemy 0dc70cc691 upgrade m-site-p to 3.7 + Fluido 1.7 + edit button 2018-02-10 11:42:33 +01:00
Hervé Boutemy cf7b0a3ec0 fixed new issues reported by Checkstyle 6.18 2018-02-10 11:42:33 +01:00
Sylwester Lachiewicz 866582d296 [MNG-6306] Replace use of Guava in maven-resolver-provider with a lighter weight alternative
This closes #138
2017-11-24 23:55:19 +01:00
Stephen Connolly 3d0efa3696 [maven-release-plugin] prepare for next development iteration 2017-10-18 08:55:05 +01:00
Stephen Connolly 138edd61fd [maven-release-plugin] prepare release maven-3.5.2 2017-10-18 08:54:47 +01:00
Stephen Connolly 312eb53502 [maven-release-plugin] prepare for next development iteration 2017-09-10 12:51:43 +01:00
Stephen Connolly 094e4e31a5 [maven-release-plugin] prepare release maven-3.5.1 2017-09-10 12:51:26 +01:00
Igor Fedorenko 66fc74d629 MNG-6233 don't mix plexus and jsr330 annotations in aether-provider
Signed-off-by: Igor Fedorenko <ifedorenko@apache.org>
2017-05-24 15:33:04 -04:00
Michael Osipov ecef59f1cb [MNG-6167] Clean up dependency mess (reported by dependency:analyze)
Clean up compile and runtime dependencies. Test dependencies have not been
touched because their seem to be false positives due to DI.
2017-05-16 15:27:22 +02:00
Christian Schulte f4ede96fd0 [MNG-5935] Optional true getting lost in managed dependencies when transitive
Updated to correctly map the optional flag of Maven model dependencies to
Aether dependencies. Prior to this change all managed dependencies implicitly
had the optional flag set to 'false' leading to Aether managing that flag to
'false' on all managed dependencies when transitive.
2017-05-10 10:36:19 +02:00
Stephen Connolly a4b0b63b62 [maven-release-plugin] prepare for next development iteration 2017-04-03 20:35:47 +01:00
Stephen Connolly ff8f5e7444 [maven-release-plugin] prepare release maven-3.5.0 2017-04-03 20:35:30 +01:00
Christian Schulte 0931bb2cc7 [MNG-6168] Fix unclosed streams 2017-03-24 22:04:37 +01:00
Christian Schulte 27ab7503a7 [MNG-6190] maven-resolver-provider's DefaultArtifactDescriptorReader has mismatched constructor and initService methods 2017-03-21 19:16:44 +01:00
Christian Schulte d54e6f91a8 s/@since 3.5.0-alpha-2/@since 3.5.0/g 2017-03-21 00:21:43 +01:00
Stephen Connolly fd29ddebf9 [maven-release-plugin] prepare for next development iteration 2017-03-20 16:55:53 +00:00
Stephen Connolly 214540c2ae [maven-release-plugin] prepare release maven-3.5.0-beta-1 2017-03-20 16:55:36 +00:00
Christian Schulte f1ccecdd89 [MNG-6182] ModelResolver interface enhancements.
o Added unit tests for the 'ModelResolver' interface.
2017-03-19 04:01:34 +01:00
rfscholte 587317b009 [MNG-6176] Javadoc errors prevent release with Java 8
Upgrade modello to 1.9.0
Fix invalid Javadoc
2017-03-10 16:17:28 +01:00
Christian Schulte ab800b0cfa [MNG-6182] ModelResolver interface enhancements. 2017-03-08 18:24:18 +01:00
Stephen Connolly e652882757 [maven-release-plugin] prepare for next development iteration 2017-02-23 14:56:31 +00:00
Stephen Connolly 8e6bbc4d4a [maven-release-plugin] prepare release maven-3.5.0-alpha-1 2017-02-23 14:56:21 +00:00
Christian Schulte 37fef3d762 [MNG-5967] Dependency updates 2017-02-11 16:36:46 +01:00
Christian Schulte 0514c1b14e [MNG-2199] Support version ranges in parent elements
o Updated to fix parent version range resolution broken since 3.2.3 and to
  remove parent version range resolution logic obsolete since Maven
  3.2.3 which changed the initialization of MavenProject instances.
o Updated local parent resolution to behave the same way remote parent
  resolution behaves. When referencing a parent using version ranges,
  inheriting the version or using version expressions should not be supported.
  It has been implemented that way for remote parent resolution as it got
  introduced in Maven 3.2.2. For local parent resolution the version in parent
  declarations had been ignored completely as of Maven 3.3.0 due to commit
  be3fb20032 removing all local parent version
  validation. Work on fixing this is tracked by MNG-5840 released with Maven
  3.3.9. This commit adds the final missing bits to make local and remote parent
  resolution behave the same way as much as possible. As an exception, remote
  parent resolution still is a bit more strict than local parent resolution due
  to a different API in use. When resolving a parent from a repository using
  version ranges, the ModelBuilder verifies the range in use to declare an upper
  bound. When resolving a parent locally using version ranges, those ranges are
  not required to declare an upper bound because the API in use does not support
  querying that. Authoring a POM relying on this difference should be considered
  a bug.
o Added test cases to maven-core testing parent version range resolution for
  local and remote parent models.
2017-02-10 22:46:52 +01:00
Josh Soref 1740265984 [MNG-6146] Several small stylistic and spelling improvements to code and documentation
Spelling fixes:

* system
* tokenizer
* toolchain
* trailing
* transitive
* unsupported
* version
* artifact
* attachment
* codehaus
* colleagues
* comparison
* concurrency
* configure
* creation
* dependency
* descriptor
* downstream
* efficient
* e.g.
* elements
* encountered
* encounters
* environments
* executed
* explicitly
* happens
* hierarchical
* hierarchy
* ignore
* implemented
* implementers
* independence
* indicates
* inheritance
* inherited
* inherits
* install
* interface
* javascript
* laziness
* management
* maven
* metadata
* mgmt
* minimalist
* nonexistent
* objects
* overridden
* print
* project
* properties
* recessive
* referring
* repository
* representation
* retrieval
* retrieve
* rigorous
* should
* spontaneously
* subsequent

Literal fixes:

*  use static final values

Style fixes:

* use the proper term for char U+002D (-) hyphen(-minus) instead of dash

This closes #100
2017-02-03 10:12:28 +01:00
Christian Schulte 8972072e32 [MNG-6110] renamed 'maven-aether-provider' to 'maven-resolver-provider' 2017-02-01 07:59:53 +01:00