From f251fdc9536a3cf325181712c8fd39f1fdd42152 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Fri, 24 Jun 2022 21:18:06 +0200 Subject: [PATCH 1/9] [MRESOLVER-265] Checksum of checksum (#187) There is a discrepancy when a checksum is attached (so not added by resolver itself), and resolver will checksum it if the algorithm is not configured (ie. default config used but SHA512 added). This makes it work as expected, as checksum recognition works now against ALL SUPPORTED and not configured ONLY checksums). --- .../impl/Maven2RepositoryLayoutFactory.java | 18 +++++++++++------- .../Maven2RepositoryLayoutFactoryTest.java | 11 +++++++++++ 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactory.java b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactory.java index 30c3e8ad0..1b76940e2 100644 --- a/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactory.java +++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactory.java @@ -142,6 +142,7 @@ public RepositoryLayout newInstance( RepositorySystemSession session, RemoteRepo } return new Maven2RepositoryLayout( + new ArrayList<>( checksumAlgorithmFactorySelector.getChecksumAlgorithmFactories() ), checksumsAlgorithms, omitChecksumsForExtensions ); @@ -150,15 +151,18 @@ public RepositoryLayout newInstance( RepositorySystemSession session, RemoteRepo private static class Maven2RepositoryLayout implements RepositoryLayout { + private final List allChecksumAlgorithms; - private final List checksumAlgorithms; + private final List configuredChecksumAlgorithms; private final Set extensionsWithoutChecksums; - private Maven2RepositoryLayout( List checksumAlgorithms, + private Maven2RepositoryLayout( List allChecksumAlgorithms, + List configuredChecksumAlgorithms, Set extensionsWithoutChecksums ) { - this.checksumAlgorithms = Collections.unmodifiableList( checksumAlgorithms ); + this.allChecksumAlgorithms = Collections.unmodifiableList( allChecksumAlgorithms ); + this.configuredChecksumAlgorithms = Collections.unmodifiableList( configuredChecksumAlgorithms ); this.extensionsWithoutChecksums = requireNonNull( extensionsWithoutChecksums ); } @@ -177,7 +181,7 @@ private URI toUri( String path ) @Override public List getChecksumAlgorithmFactories() { - return checksumAlgorithms; + return configuredChecksumAlgorithms; } @Override @@ -263,8 +267,8 @@ public List getChecksumLocations( Metadata metadata, boolean u private List getChecksumLocations( URI location ) { - List checksumLocations = new ArrayList<>( checksumAlgorithms.size() ); - for ( ChecksumAlgorithmFactory checksumAlgorithmFactory : checksumAlgorithms ) + List checksumLocations = new ArrayList<>( configuredChecksumAlgorithms.size() ); + for ( ChecksumAlgorithmFactory checksumAlgorithmFactory : configuredChecksumAlgorithms ) { checksumLocations.add( ChecksumLocation.forLocation( location, checksumAlgorithmFactory ) ); } @@ -273,7 +277,7 @@ private List getChecksumLocations( URI location ) private boolean isChecksum( String extension ) { - return checksumAlgorithms.stream().anyMatch( a -> extension.endsWith( "." + a.getFileExtension() ) ); + return allChecksumAlgorithms.stream().anyMatch( a -> extension.endsWith( "." + a.getFileExtension() ) ); } } } diff --git a/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactoryTest.java b/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactoryTest.java index 0fc7a293f..7b7fecf09 100644 --- a/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactoryTest.java +++ b/maven-resolver-impl/src/test/java/org/eclipse/aether/internal/impl/Maven2RepositoryLayoutFactoryTest.java @@ -331,6 +331,17 @@ public void testCustomChecksumsIgnored() assertEquals( 0, checksums.size() ); } + @Test + public void testNotConfiguredButSupportedChecksumsHandledAsChecksums() + throws Exception + { + layout = factory.newInstance( session, newRepo( "default" ) ); + DefaultArtifact artifact = new DefaultArtifact( "g.i.d", "a-i.d", "cls", "jar.sha512", "1.0" ); + URI uri = layout.getLocation( artifact, true ); + List checksums = layout.getChecksumLocations( artifact, true, uri ); + assertEquals( 0, checksums.size() ); + } + @Test public void testCustomChecksumsIgnored_IllegalInout() throws Exception From e482568fdb52e2d260e526933023dc132ba5b959 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Fri, 24 Jun 2022 21:22:05 +0200 Subject: [PATCH 2/9] Add some TLP doco about shared local repo access (#185) Rework local repo page available from TLP, move "uninteresting" simple LRM to bottom, add intro about locking, to not have it buried in some module... --- .../src/site/markdown/index.md.vm | 29 ++++++-- src/site/markdown/local-repository.md | 70 ++++++++++++------- 2 files changed, 67 insertions(+), 32 deletions(-) diff --git a/maven-resolver-named-locks/src/site/markdown/index.md.vm b/maven-resolver-named-locks/src/site/markdown/index.md.vm index 0d8d40166..24ed4760b 100644 --- a/maven-resolver-named-locks/src/site/markdown/index.md.vm +++ b/maven-resolver-named-locks/src/site/markdown/index.md.vm @@ -23,28 +23,41 @@ Named locks are essentially locks that are assigned to some given (opaque) ID. I resources that each can have unique ID assigned (i.e., file with an absolute path, some entities with unique ID), then you can use named locks to make sure they are being protected from concurrent read and write actions. -Named locks provide support classes for implementations, and provide out of the box seven named lock implementations and three name mappers. +Named locks provide support classes for implementations, and provide out of the box several lock and name mapper implementations. -Out of the box, "local" (local to JVM) named lock implementations are the following: +Following implementations are "local" (local to JVM) named lock implementations: - `rwlock-local` implemented in `org.eclipse.aether.named.providers.LocalReadWriteLockNamedLockFactory` that uses JVM `java.util.concurrent.locks.ReentrantReadWriteLock`. - `semaphore-local` implemented in `org.eclipse.aether.named.providers.LocalSemaphoreNamedLockFactory` that uses JVM `java.util.concurrent.Semaphore`. +- `noop` implemented in `org.eclipse.aether.named.providers.NoopNamedLockFactory` that uses no locking. + +Note about "local" locks: they are in-JVM, in a way, they properly coordinate in case of multithreaded access from +same JVM, but do not cover accesses across multiple processes and/or multiple hosts access. +In other words, local named locks are only suited within one JVM with a multithreaded access. + +Following named lock implementations use underlying file system advisory file locking: + - `file-lock` implemented in `org.eclipse.aether.named.providers.FileLockNamedLockFactory` that uses JVM `java.nio.channels.FileLock`. -- `noop` implemented in `org.eclipse.aether.named.providers.NoopNamedLockFactory` that uses no locking. -Out of the box, "distributed" named lock implementations are the following (separate modules which require additional dependencies): +The `file-lock` implementation uses file system advisory file locking, hence, concurrently running Maven processes +set up to use `file-lock` implementation can safely share one local repository. This is almost certain on +local file systems across all operating systems. In case of NFS mounts, file advisory locking MAY work if NFSv4+ +used with complete setup (with all the necessary services like `RPC` and `portmapper` needed to implement NFS advisory +file locking, check your NFS and/or OS manuals for details). In short: if your (local or remote) FS correctly support +and implements advisory locking, it should work. Local FS usually does, while with NFS your mileage may vary. + +Finally, "distributed" named lock implementations are the following (separate modules which require additional dependencies and remote services): - `rwlock-redisson` implemented in `org.eclipse.aether.named.redisson.RedissonReadWriteLockNamedLockFactory`. - `semaphore-redisson` implemented in `org.eclipse.aether.named.redisson.RedissonSemaphoreNamedLockFactory`. - `semaphore-hazelcast-client` implemented in `org.eclipse.aether.named.hazelcast.HazelcastClientCPSemaphoreNamedLockFactory`. - `semaphore-hazelcast` implemented in `org.eclipse.aether.named.hazelcast.HazelcastCPSemaphoreNamedLockFactory`. -Local named locks are only suited within one JVM with a multithreaded build. -Sharing a local repository between multiple Maven processes (i.e., on a busy CI server) requires a distributed named lock! - +Sharing a local repository between multiple hosts (i.e., on a busy CI server) may be best done with one of distributed named lock, +if NFS locking is not working for you. The aforementioned (opaque) IDs need to be mapped from artifacts and metadata. @@ -54,3 +67,5 @@ Out of the box, name mapper implementations are the following: - `gav` implemented in `org.eclipse.aether.internal.impl.synccontext.named.GAVNameMapper`. - `discriminating` implemented in `org.eclipse.aether.internal.impl.synccontext.named.DiscriminatingNameMapper`. - `file-gav` implemented in `org.eclipse.aether.internal.impl.synccontext.named.FileGAVNameMapper`. + +Note: the `file-gav` name mapper MUST be used with `file-lock` named locking, no other mapper will work with it. diff --git a/src/site/markdown/local-repository.md b/src/site/markdown/local-repository.md index 9ee50e2d0..3554c3962 100644 --- a/src/site/markdown/local-repository.md +++ b/src/site/markdown/local-repository.md @@ -25,30 +25,16 @@ remote, but also to store the artifacts locally installed (locally built and installed, to be more precise). Both of these artifacts were stored in bulk in the local repository. +## Implementations + Local repository implementations implement the `LocalRepositoryManager` (LRM) interface, and Resolver out of the box provides two implementations for it: -"simple" and "enhanced". - -## Simple LRM +"enhanced" used at runtime and "simple" meant to be used in tests and alike +scenarios (is not meant for production use). -Simple is a fully functional LRM implementation, but is used -mainly in tests, it is not recommended in production environments. - -To manually instantiate a simple LRM, one needs to invoke following code: +### Enhanced LRM -```java -LocalRepositoryManager simple = new SimpleLocalRepositoryManagerFactory() - .newInstance( session, new LocalRepository( baseDir ) ); -``` - -Note: This code snippet above instantiates a component, that is not -recommended way to use it, as it should be rather injected whenever possible. -This example above is merely a showcase how to obtain LRM implementation -in unit tests. - -## Enhanced LRM - -Enhanced LRM on the other hand is enhanced with several extra +Enhanced LRM is enhanced with several extra features, one most notable is scoping cached content by its origin and context: if you downloaded an artifact A1 from repository R1 and later initiate build that requires same artifact A1, but repository R1 @@ -58,7 +44,7 @@ Those two, originating from two different repositories may not be the same thing This is meant to protect users from "bad practice" (artifact coordinates are unique in ideal world). -### Split Local Repository +#### Split Local Repository Latest addition to the enhanced LRM is *split* feature. By default, split feature is **not enabled**, enhanced LRM behaves as it behaved in all @@ -75,7 +61,7 @@ The split feature is implemented by the `LocalPathPrefixComposer` interface, that adds different "prefixes" for the locally stored artifacts, based on their context. -#### Note About Release And Snapshot Differentiation +##### Note About Release And Snapshot Differentiation The prefix composer is able to differentiate between release and snapshot versioned artifacts, and this is clear-cut: Maven Artifacts are either @@ -99,7 +85,7 @@ The GAV level metadata gets differentiated based on version it carries, so they may end up in releases or snapshots, depending on their value of `metadata/version` field. -#### Use Cases +##### Use Cases Most direct use case is simpler local repository eviction. One can delete all locally built artifacts without deleting the cached ones, hence, no @@ -139,7 +125,7 @@ $ mvn ... -Daether.enhancedLocalRepository.split \ For complete reference of enhanced LRM configuration possibilities, refer to [configuration page](configuration.html). -#### Split Repository Considerations +##### Split Repository Considerations **Word of warning**: on every change of "split" parameters, user must be aware of the consequences. For example, if one change all aspects of split @@ -149,7 +135,7 @@ is unchanged! Simply put, as all prefixes will be "new", the composed paths will point to potentially non-existing locations, hence, resolver will consider it as a "new" local repository in every aspect. -#### Implementing Custom Split Strategy +##### Implementing Custom Split Strategy To implement custom split strategy, one needs to create a component of type `LocalPathPrefixComposerFactory` and override the default component @@ -160,3 +146,37 @@ class that provides all the defaults. The factory should create a stateless instance of a composer configured from passed in session, that will be used with the enhanced LRM throughout the session. + +### Simple LRM + +Simple is a fully functional LRM implementation, but is used +mainly in tests, it is not recommended in production environments. + +To manually instantiate a simple LRM, one needs to invoke following code: + +```java +LocalRepositoryManager simple = new SimpleLocalRepositoryManagerFactory() + .newInstance( session, new LocalRepository( baseDir ) ); +``` + +Note: This code snippet above instantiates a component, that is not +recommended way to use it, as it should be rather injected whenever possible. +This example above is merely a showcase how to obtain LRM implementation +in unit tests. + +## Shared Access to Local Repository + +In case of shared (multi-threaded, multi-process or even multi host) access +to local repository, coordination is a must, as local repository is hosted +on file system, and each thread may read and write concurrently into it, +causing other threads or processes to get incomplete or partially written data. + +Hence, since Resolver 1.7.x version, there is a pluggable API called "Named Locks" +available, providing out of the box lock implementations for cases like: + +* multi-threaded, in JVM locking (the default) +* multi-process locking using file system advisory locking +* multi-host locking using Hazelcast or Redisson (needs Hazelcast or Redisson cluster) + +For details see [Named Locks module](maven-resolver-named-locks/). + From 802b50df5d9b7e3936f98b71496ece88da62f223 Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Sat, 23 Jul 2022 21:02:58 +0200 Subject: [PATCH 3/9] [MRESOLVER-251] Upgrade Redisson to 3.17.5 --- maven-resolver-named-locks-redisson/pom.xml | 12 +++++- .../src/site/markdown/index.md.vm | 37 +++++++++++-------- 2 files changed, 32 insertions(+), 17 deletions(-) diff --git a/maven-resolver-named-locks-redisson/pom.xml b/maven-resolver-named-locks-redisson/pom.xml index 46d2ebe6c..7685fd7c7 100644 --- a/maven-resolver-named-locks-redisson/pom.xml +++ b/maven-resolver-named-locks-redisson/pom.xml @@ -38,6 +38,8 @@ org.apache.maven.resolver.named.redisson ${Automatic-Module-Name} + + 3.17.5 @@ -52,7 +54,7 @@ org.redisson redisson - 3.15.6 + ${redissonVersion} javax.cache @@ -74,6 +76,14 @@ io.reactivex.rxjava3 rxjava + + io.netty + netty-transport-native-unix-common + + + org.reactivestreams + reactive-streams + diff --git a/maven-resolver-named-locks-redisson/src/site/markdown/index.md.vm b/maven-resolver-named-locks-redisson/src/site/markdown/index.md.vm index 951d4e5a4..2cb6accbc 100644 --- a/maven-resolver-named-locks-redisson/src/site/markdown/index.md.vm +++ b/maven-resolver-named-locks-redisson/src/site/markdown/index.md.vm @@ -46,27 +46,32 @@ To use this implementation within your project, depending on how you integrate, ${esc.hash}${esc.hash} Installation/Testing +#set( $jacksonVersion = "2.13.3" ) +#set( $jbossMarshallingVersion = "2.0.11.Final" ) +#set( $nettyVersion = "4.1.79.Final" ) +#set( $snakeyamlVersion = "1.30" ) + - Create the directory `${maven.home}/lib/ext/redisson/`. - Modify `${maven.home}/bin/m2.conf` by adding `load ${maven.home}/lib/ext/redisson/*.jar` right after the `${maven.conf}/logging` line. - Copy the following dependencies from Maven Central to `${maven.home}/lib/ext/redisson/`:
   ├── ${project.artifactId}-${project.version}.jar
-  ├── jackson-annotations-2.12.1.jar
-  ├── jackson-core-2.12.1.jar
-  ├── jackson-databind-2.12.1.jar
-  ├── jackson-dataformat-yaml-2.12.1.jar
-  ├── jboss-marshalling-2.0.11.Final.jar
-  ├── jboss-marshalling-river-2.0.11.Final.jar
-  ├── netty-buffer-4.1.65.Final.jar
-  ├── netty-codec-4.1.65.Final.jar
-  ├── netty-codec-dns-4.1.65.Final.jar
-  ├── netty-common-4.1.65.Final.jar
-  ├── netty-handler-4.1.65.Final.jar
-  ├── netty-resolver-4.1.65.Final.jar
-  ├── netty-resolver-dns-4.1.65.Final.jar
-  ├── netty-transport-4.1.65.Final.jar
-  ├── redisson-3.15.6.jar
-  └── snakeyaml-1.27.jar
+ ├── redisson-${redissonVersion}.jar + ├── jackson-annotations-${jacksonVersion}.jar + ├── jackson-core-${jacksonVersion}.jar + ├── jackson-databind-${jacksonVersion}.jar + ├── jackson-dataformat-yaml-${jacksonVersion}.jar + ├── jboss-marshalling-${jbossMarshallingVersion}.jar + ├── jboss-marshalling-river-${jbossMarshallingVersion}.jar + ├── netty-buffer-${nettyVersion}.jar + ├── netty-codec-${nettyVersion}.jar + ├── netty-codec-dns-${nettyVersion}.jar + ├── netty-common-${nettyVersion}.jar + ├── netty-handler-${nettyVersion}.jar + ├── netty-resolver-${nettyVersion}.jar + ├── netty-resolver-dns-${nettyVersion}.jar + ├── netty-transport-${nettyVersion}.jar + └── snakeyaml-${snakeyamlVersion}.jar - Start your Redis instance on `localhost` or configure a remote instance with `${maven.conf}/maven-resolver-redisson.yaml`. - Now start a multithreaded Maven build on your project. From 7729db57975822d7ce5c1b19f99808d424e1d570 Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Sun, 24 Jul 2022 00:01:54 +0200 Subject: [PATCH 4/9] Document on how to use Resolver 1.8.x with Maven 3.8.x --- src/site/markdown/maven-3.8.x.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/site/markdown/maven-3.8.x.md b/src/site/markdown/maven-3.8.x.md index aae9ada80..5d1ac498c 100644 --- a/src/site/markdown/maven-3.8.x.md +++ b/src/site/markdown/maven-3.8.x.md @@ -24,4 +24,6 @@ Java 7 to run. Maven 3.8.x will continue to use version 1.6.x which you will fin [here](/resolver-archives/resolver-1.6.3/). This also means that you cannot make use of the features provided by version 1.7.0 and later. If you require the changes in this version, but must use Maven 3.8.x, you can build an adapted version -of Maven from the branch [`maven-3.8.x-maven-resolver-1.7.x`](https://github.com/apache/maven/tree/maven-3.8.x-resolver-1.7.x) and use as if you would use Maven 4. +of Maven from the branch [`maven-3.8.x-resolver-1.8.x`](https://github.com/apache/maven/tree/maven-3.8.x-resolver-1.8.x) +with Java 8 requirement or use signed binaries and source from the [dev dist area](https://dist.apache.org/repos/dist/dev/maven/maven-3/3.8.x-resolver-1.8.x/) +and use as if you would use Maven 3.9.x. From ebb8314bcff8a5b7ce4418d4f1725c8535889f69 Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Mon, 25 Jul 2022 18:26:06 +0200 Subject: [PATCH 5/9] [maven-release-plugin] prepare release maven-resolver-1.8.2 --- maven-resolver-api/pom.xml | 2 +- maven-resolver-connector-basic/pom.xml | 2 +- .../maven-resolver-demo-maven-plugin/pom.xml | 6 +++++- maven-resolver-demos/maven-resolver-demo-snippets/pom.xml | 6 +++++- maven-resolver-demos/pom.xml | 2 +- maven-resolver-impl/pom.xml | 2 +- maven-resolver-named-locks-hazelcast/pom.xml | 2 +- maven-resolver-named-locks-redisson/pom.xml | 2 +- maven-resolver-named-locks/pom.xml | 2 +- maven-resolver-spi/pom.xml | 2 +- maven-resolver-test-util/pom.xml | 2 +- maven-resolver-transport-classpath/pom.xml | 2 +- maven-resolver-transport-file/pom.xml | 2 +- maven-resolver-transport-http/pom.xml | 2 +- maven-resolver-transport-wagon/pom.xml | 2 +- maven-resolver-util/pom.xml | 2 +- pom.xml | 6 +++--- 17 files changed, 27 insertions(+), 19 deletions(-) diff --git a/maven-resolver-api/pom.xml b/maven-resolver-api/pom.xml index 8b821c4ea..8b74fcdb5 100644 --- a/maven-resolver-api/pom.xml +++ b/maven-resolver-api/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-api diff --git a/maven-resolver-connector-basic/pom.xml b/maven-resolver-connector-basic/pom.xml index ce75b1f9e..fde5af6e4 100644 --- a/maven-resolver-connector-basic/pom.xml +++ b/maven-resolver-connector-basic/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-connector-basic diff --git a/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml b/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml index c759f81c2..c9715d7aa 100644 --- a/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml +++ b/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver-demos - 1.8.2-SNAPSHOT + 1.8.2 resolver-demo-maven-plugin @@ -132,4 +132,8 @@ + + + maven-resolver-1.8.2 + diff --git a/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml b/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml index badae9f08..5baad3a19 100644 --- a/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml +++ b/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver-demos - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-demo-snippets @@ -140,4 +140,8 @@ test
+ + + maven-resolver-1.8.2 + diff --git a/maven-resolver-demos/pom.xml b/maven-resolver-demos/pom.xml index c3528c3f3..ee2fa0a16 100644 --- a/maven-resolver-demos/pom.xml +++ b/maven-resolver-demos/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-demos diff --git a/maven-resolver-impl/pom.xml b/maven-resolver-impl/pom.xml index ad6ecdea7..4a5c5f1bb 100644 --- a/maven-resolver-impl/pom.xml +++ b/maven-resolver-impl/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-impl diff --git a/maven-resolver-named-locks-hazelcast/pom.xml b/maven-resolver-named-locks-hazelcast/pom.xml index afc3dc40a..f168ff3d8 100644 --- a/maven-resolver-named-locks-hazelcast/pom.xml +++ b/maven-resolver-named-locks-hazelcast/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-named-locks-hazelcast diff --git a/maven-resolver-named-locks-redisson/pom.xml b/maven-resolver-named-locks-redisson/pom.xml index 7685fd7c7..43d5bf5f3 100644 --- a/maven-resolver-named-locks-redisson/pom.xml +++ b/maven-resolver-named-locks-redisson/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-named-locks-redisson diff --git a/maven-resolver-named-locks/pom.xml b/maven-resolver-named-locks/pom.xml index 4515e5093..18d2be183 100644 --- a/maven-resolver-named-locks/pom.xml +++ b/maven-resolver-named-locks/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-named-locks diff --git a/maven-resolver-spi/pom.xml b/maven-resolver-spi/pom.xml index 702644d50..ff56eb55e 100644 --- a/maven-resolver-spi/pom.xml +++ b/maven-resolver-spi/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-spi diff --git a/maven-resolver-test-util/pom.xml b/maven-resolver-test-util/pom.xml index 1b38528b5..43d822514 100644 --- a/maven-resolver-test-util/pom.xml +++ b/maven-resolver-test-util/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-test-util diff --git a/maven-resolver-transport-classpath/pom.xml b/maven-resolver-transport-classpath/pom.xml index f91e490cd..75bcb9669 100644 --- a/maven-resolver-transport-classpath/pom.xml +++ b/maven-resolver-transport-classpath/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-transport-classpath diff --git a/maven-resolver-transport-file/pom.xml b/maven-resolver-transport-file/pom.xml index 8a28dd736..52c71e0d3 100644 --- a/maven-resolver-transport-file/pom.xml +++ b/maven-resolver-transport-file/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-transport-file diff --git a/maven-resolver-transport-http/pom.xml b/maven-resolver-transport-http/pom.xml index a0e11ba75..58f1689a4 100644 --- a/maven-resolver-transport-http/pom.xml +++ b/maven-resolver-transport-http/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-transport-http diff --git a/maven-resolver-transport-wagon/pom.xml b/maven-resolver-transport-wagon/pom.xml index d2479bf64..032501b7b 100644 --- a/maven-resolver-transport-wagon/pom.xml +++ b/maven-resolver-transport-wagon/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-transport-wagon diff --git a/maven-resolver-util/pom.xml b/maven-resolver-util/pom.xml index a3d0c64e0..e06e69846 100644 --- a/maven-resolver-util/pom.xml +++ b/maven-resolver-util/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 maven-resolver-util diff --git a/pom.xml b/pom.xml index 27f530d71..aa888044a 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2-SNAPSHOT + 1.8.2 pom Maven Artifact Resolver @@ -51,7 +51,7 @@ scm:git:https://gitbox.apache.org/repos/asf/maven-resolver.git scm:git:https://gitbox.apache.org/repos/asf/maven-resolver.git https://github.com/apache/maven-resolver/tree/${project.scm.tag} - master + maven-resolver-1.8.2 jira @@ -79,7 +79,7 @@ 30.1-jre 1.0.1 1.7.36 - 2022-06-10T15:27:07Z + 2022-07-25T16:24:33Z From 062cc9abfc370c642bfd94ce4b7fa3a02e0e0905 Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Mon, 25 Jul 2022 18:26:17 +0200 Subject: [PATCH 6/9] [maven-release-plugin] prepare for next development iteration --- maven-resolver-api/pom.xml | 2 +- maven-resolver-connector-basic/pom.xml | 2 +- .../maven-resolver-demo-maven-plugin/pom.xml | 6 +----- maven-resolver-demos/maven-resolver-demo-snippets/pom.xml | 6 +----- maven-resolver-demos/pom.xml | 2 +- maven-resolver-impl/pom.xml | 2 +- maven-resolver-named-locks-hazelcast/pom.xml | 2 +- maven-resolver-named-locks-redisson/pom.xml | 2 +- maven-resolver-named-locks/pom.xml | 2 +- maven-resolver-spi/pom.xml | 2 +- maven-resolver-test-util/pom.xml | 2 +- maven-resolver-transport-classpath/pom.xml | 2 +- maven-resolver-transport-file/pom.xml | 2 +- maven-resolver-transport-http/pom.xml | 2 +- maven-resolver-transport-wagon/pom.xml | 2 +- maven-resolver-util/pom.xml | 2 +- pom.xml | 6 +++--- 17 files changed, 19 insertions(+), 27 deletions(-) diff --git a/maven-resolver-api/pom.xml b/maven-resolver-api/pom.xml index 8b74fcdb5..fdcdf503c 100644 --- a/maven-resolver-api/pom.xml +++ b/maven-resolver-api/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-api diff --git a/maven-resolver-connector-basic/pom.xml b/maven-resolver-connector-basic/pom.xml index fde5af6e4..995188145 100644 --- a/maven-resolver-connector-basic/pom.xml +++ b/maven-resolver-connector-basic/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-connector-basic diff --git a/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml b/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml index c9715d7aa..5d9b1668f 100644 --- a/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml +++ b/maven-resolver-demos/maven-resolver-demo-maven-plugin/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver-demos - 1.8.2 + 1.8.3-SNAPSHOT resolver-demo-maven-plugin @@ -132,8 +132,4 @@ - - - maven-resolver-1.8.2 - diff --git a/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml b/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml index 5baad3a19..fba64a72d 100644 --- a/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml +++ b/maven-resolver-demos/maven-resolver-demo-snippets/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver-demos - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-demo-snippets @@ -140,8 +140,4 @@ test - - - maven-resolver-1.8.2 - diff --git a/maven-resolver-demos/pom.xml b/maven-resolver-demos/pom.xml index ee2fa0a16..a760295ae 100644 --- a/maven-resolver-demos/pom.xml +++ b/maven-resolver-demos/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-demos diff --git a/maven-resolver-impl/pom.xml b/maven-resolver-impl/pom.xml index 4a5c5f1bb..3e1ad9623 100644 --- a/maven-resolver-impl/pom.xml +++ b/maven-resolver-impl/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-impl diff --git a/maven-resolver-named-locks-hazelcast/pom.xml b/maven-resolver-named-locks-hazelcast/pom.xml index f168ff3d8..d021dcb13 100644 --- a/maven-resolver-named-locks-hazelcast/pom.xml +++ b/maven-resolver-named-locks-hazelcast/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-named-locks-hazelcast diff --git a/maven-resolver-named-locks-redisson/pom.xml b/maven-resolver-named-locks-redisson/pom.xml index 43d5bf5f3..9cb6361b4 100644 --- a/maven-resolver-named-locks-redisson/pom.xml +++ b/maven-resolver-named-locks-redisson/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-named-locks-redisson diff --git a/maven-resolver-named-locks/pom.xml b/maven-resolver-named-locks/pom.xml index 18d2be183..9d745dbed 100644 --- a/maven-resolver-named-locks/pom.xml +++ b/maven-resolver-named-locks/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-named-locks diff --git a/maven-resolver-spi/pom.xml b/maven-resolver-spi/pom.xml index ff56eb55e..2aaa49a51 100644 --- a/maven-resolver-spi/pom.xml +++ b/maven-resolver-spi/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-spi diff --git a/maven-resolver-test-util/pom.xml b/maven-resolver-test-util/pom.xml index 43d822514..67e8eadce 100644 --- a/maven-resolver-test-util/pom.xml +++ b/maven-resolver-test-util/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-test-util diff --git a/maven-resolver-transport-classpath/pom.xml b/maven-resolver-transport-classpath/pom.xml index 75bcb9669..2f0e403a4 100644 --- a/maven-resolver-transport-classpath/pom.xml +++ b/maven-resolver-transport-classpath/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-transport-classpath diff --git a/maven-resolver-transport-file/pom.xml b/maven-resolver-transport-file/pom.xml index 52c71e0d3..f93357e66 100644 --- a/maven-resolver-transport-file/pom.xml +++ b/maven-resolver-transport-file/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-transport-file diff --git a/maven-resolver-transport-http/pom.xml b/maven-resolver-transport-http/pom.xml index 58f1689a4..697eb7bae 100644 --- a/maven-resolver-transport-http/pom.xml +++ b/maven-resolver-transport-http/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-transport-http diff --git a/maven-resolver-transport-wagon/pom.xml b/maven-resolver-transport-wagon/pom.xml index 032501b7b..4a597c1d9 100644 --- a/maven-resolver-transport-wagon/pom.xml +++ b/maven-resolver-transport-wagon/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-transport-wagon diff --git a/maven-resolver-util/pom.xml b/maven-resolver-util/pom.xml index e06e69846..7da1b3d16 100644 --- a/maven-resolver-util/pom.xml +++ b/maven-resolver-util/pom.xml @@ -25,7 +25,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT maven-resolver-util diff --git a/pom.xml b/pom.xml index aa888044a..ebce9a9ea 100644 --- a/pom.xml +++ b/pom.xml @@ -31,7 +31,7 @@ org.apache.maven.resolver maven-resolver - 1.8.2 + 1.8.3-SNAPSHOT pom Maven Artifact Resolver @@ -51,7 +51,7 @@ scm:git:https://gitbox.apache.org/repos/asf/maven-resolver.git scm:git:https://gitbox.apache.org/repos/asf/maven-resolver.git https://github.com/apache/maven-resolver/tree/${project.scm.tag} - maven-resolver-1.8.2 + master jira @@ -79,7 +79,7 @@ 30.1-jre 1.0.1 1.7.36 - 2022-07-25T16:24:33Z + 2022-07-25T16:26:16Z From 48c2dde8c4201fd8250be59f98c3831abff43230 Mon Sep 17 00:00:00 2001 From: Michael Osipov Date: Mon, 25 Jul 2022 19:22:34 +0200 Subject: [PATCH 7/9] Improve Maven 3.8.x docs --- src/site/markdown/maven-3.8.x.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/site/markdown/maven-3.8.x.md b/src/site/markdown/maven-3.8.x.md index 5d1ac498c..1b9286967 100644 --- a/src/site/markdown/maven-3.8.x.md +++ b/src/site/markdown/maven-3.8.x.md @@ -23,7 +23,7 @@ factory has been implemented. Both are not compatible with Maven 3.8.x anymore w Java 7 to run. Maven 3.8.x will continue to use version 1.6.x which you will find [here](/resolver-archives/resolver-1.6.3/). This also means that you cannot make use of the features provided by version 1.7.0 and later. -If you require the changes in this version, but must use Maven 3.8.x, you can build an adapted version +If you require the changes from this version, but must use Maven 3.8.x, you can build yourself an adapted version of Maven from the branch [`maven-3.8.x-resolver-1.8.x`](https://github.com/apache/maven/tree/maven-3.8.x-resolver-1.8.x) with Java 8 requirement or use signed binaries and source from the [dev dist area](https://dist.apache.org/repos/dist/dev/maven/maven-3/3.8.x-resolver-1.8.x/) -and use as if you would use Maven 3.9.x. +and use it as if you would use Maven 3.9.x. From 0391feec5fb7de97f78621194efb863ab058ac51 Mon Sep 17 00:00:00 2001 From: Slawomir Jaranowski Date: Wed, 27 Jul 2022 11:36:35 +0200 Subject: [PATCH 8/9] Fix jenkins url --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ebce9a9ea..60581e281 100644 --- a/pom.xml +++ b/pom.xml @@ -59,7 +59,7 @@ Jenkins - https://ci-builds.apache.org/job/Maven/job/maven-box/job/maven-resolver/ + https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-resolver/ From 60fb3123f3438d4dd4ba1a313fdfeaac42c175b3 Mon Sep 17 00:00:00 2001 From: Tamas Cservenak Date: Fri, 16 Sep 2022 17:22:14 +0200 Subject: [PATCH 9/9] [MRESOLVER-272] Update parent POM to 37, remove plugin version overrides, update bnd (#193) * [MRESOLVER-272] Update parent POM Remove version overrides and update bnd plugin as well. Add ignore for gitattributes related to RAT-308. --- pom.xml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 60581e281..c32785853 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ org.apache.maven maven-parent - 36 + 37 @@ -381,7 +381,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.0.0-M6 -Xmx128m ${surefire.redirectTestOutputToFile} @@ -393,7 +392,6 @@ org.apache.maven.plugins maven-failsafe-plugin - 3.0.0-M6 false -Xmx128m @@ -433,14 +431,14 @@ src/test/resources/**/*.ini src/test/resources/**/*.txt src/test/resources/ssl/*-store - .travis.yml + .gitattributes biz.aQute.bnd bnd-maven-plugin - 6.2.0 + 6.3.1 bnd-process