You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2026/09/04 13:55:30 UTC
(maven-wagon) branch wagon-3.x updated (f0b0877f -> 60950447)
This is an automated email from the ASF dual-hosted git repository.
slachiewicz pushed a change to branch wagon-3.x
in repository https://gitbox.apache.org/repos/asf/maven-wagon.git
from f0b0877f Give MKCOL the status vocabulary RFC 4918 defines
new c9205322 Keep the JSR-330 annotations off the wagon transitive classpath
new 60950447 Publish the HTTP and WebDAV wagons as JSR-330 beans
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
wagon-providers/pom.xml | 5 +-
.../maven/wagon/providers/http/HttpWagon.java | 3 ++
.../http/{HttpWagon.java => HttpsWagon.java} | 7 +--
.../main/resources/META-INF/plexus/components.xml | 35 ------------
.../wagon/providers/webdav/WebDavHttpWagon.java | 14 +++--
.../wagon/providers/webdav/WebDavHttpsWagon.java | 14 +++--
.../maven/wagon/providers/webdav/WebDavWagon.java | 3 ++
.../maven/wagon/providers/webdav/WebDavsWagon.java | 14 +++--
.../main/resources/META-INF/plexus/components.xml | 63 ----------------------
9 files changed, 32 insertions(+), 126 deletions(-)
copy wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/{HttpWagon.java => HttpsWagon.java} (81%)
delete mode 100644 wagon-providers/wagon-http/src/main/resources/META-INF/plexus/components.xml
copy wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpsGetWagonTests.java => wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpWagon.java (78%)
copy wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpsGetWagonTests.java => wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpsWagon.java (78%)
copy wagon-tcks/wagon-tck-http/src/main/java/org/apache/maven/wagon/tck/http/HttpsGetWagonTests.java => wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavsWagon.java (79%)
delete mode 100644 wagon-providers/wagon-webdav-jackrabbit/src/main/resources/META-INF/plexus/components.xml
(maven-wagon) 02/02: Publish the HTTP and WebDAV wagons as JSR-330 beans
Posted by sl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
slachiewicz pushed a commit to branch wagon-3.x
in repository https://gitbox.apache.org/repos/asf/maven-wagon.git
commit 60950447fe4e69d66d10962256095f4da28410f1
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Fri Sep 4 12:43:31 2026 +0200
Publish the HTTP and WebDAV wagons as JSR-330 beans
These two providers kept handwritten Plexus descriptors because each maps one
implementation onto several role hints, which a single @Named cannot express. Give
each hint its own empty subclass, the way wagon-ftp and wagon-http-lightweight
already do, so all ten providers now resolve from the Sisu index alone.
Do not restore the descriptors to add a hint: a component named there is invisible
to any consumer that scans for @Named beans without the Plexus shim.
---
.../maven/wagon/providers/http/HttpWagon.java | 3 ++
.../http/{HttpWagon.java => HttpsWagon.java} | 7 +--
.../main/resources/META-INF/plexus/components.xml | 35 ------------
.../wagon/providers/webdav/WebDavHttpWagon.java} | 9 ++--
.../wagon/providers/webdav/WebDavHttpsWagon.java} | 9 ++--
.../maven/wagon/providers/webdav/WebDavWagon.java | 3 ++
.../wagon/providers/webdav/WebDavsWagon.java} | 9 ++--
.../main/resources/META-INF/plexus/components.xml | 63 ----------------------
8 files changed, 25 insertions(+), 113 deletions(-)
diff --git a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java b/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
index ae5d720f..4b810ff4 100644
--- a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
+++ b/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
@@ -18,9 +18,12 @@
*/
package org.apache.maven.wagon.providers.http;
+import javax.inject.Named;
+
import org.apache.maven.wagon.shared.http.AbstractHttpClientWagon;
/**
* @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
*/
+@Named("http")
public class HttpWagon extends AbstractHttpClientWagon {}
diff --git a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java b/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpsWagon.java
similarity index 81%
copy from wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
copy to wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpsWagon.java
index ae5d720f..8cf36d97 100644
--- a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
+++ b/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpsWagon.java
@@ -18,9 +18,10 @@
*/
package org.apache.maven.wagon.providers.http;
-import org.apache.maven.wagon.shared.http.AbstractHttpClientWagon;
+import javax.inject.Named;
/**
- * @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
+ * Publishes {@link HttpWagon} under the <code>https</code> protocol.
*/
-public class HttpWagon extends AbstractHttpClientWagon {}
+@Named("https")
+public class HttpsWagon extends HttpWagon {}
diff --git a/wagon-providers/wagon-http/src/main/resources/META-INF/plexus/components.xml b/wagon-providers/wagon-http/src/main/resources/META-INF/plexus/components.xml
deleted file mode 100644
index 49c61e51..00000000
--- a/wagon-providers/wagon-http/src/main/resources/META-INF/plexus/components.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements. See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership. The ASF licenses this file
- ~ to you under the Apache License, Version 2.0 (the
- ~ "License"); you may not use this file except in compliance
- ~ with the License. You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing,
- ~ software distributed under the License is distributed on an
- ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- ~ KIND, either express or implied. See the License for the
- ~ specific language governing permissions and limitations
- ~ under the License.
- -->
-
-<component-set>
- <components>
- <component>
- <role>org.apache.maven.wagon.Wagon</role>
- <role-hint>http</role-hint>
- <implementation>org.apache.maven.wagon.providers.http.HttpWagon</implementation>
- <instantiation-strategy>per-lookup</instantiation-strategy>
- </component>
- <component>
- <role>org.apache.maven.wagon.Wagon</role>
- <role-hint>https</role-hint>
- <implementation>org.apache.maven.wagon.providers.http.HttpWagon</implementation>
- <instantiation-strategy>per-lookup</instantiation-strategy>
- </component>
- </components>
-</component-set>
diff --git a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpWagon.java
similarity index 77%
copy from wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
copy to wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpWagon.java
index ae5d720f..3d97e893 100644
--- a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
+++ b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpWagon.java
@@ -16,11 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.maven.wagon.providers.http;
+package org.apache.maven.wagon.providers.webdav;
-import org.apache.maven.wagon.shared.http.AbstractHttpClientWagon;
+import javax.inject.Named;
/**
- * @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
+ * Publishes {@link WebDavWagon} under the <code>dav+http</code> protocol.
*/
-public class HttpWagon extends AbstractHttpClientWagon {}
+@Named("dav+http")
+public class WebDavHttpWagon extends WebDavWagon {}
diff --git a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpsWagon.java
similarity index 77%
copy from wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
copy to wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpsWagon.java
index ae5d720f..650f512d 100644
--- a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
+++ b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavHttpsWagon.java
@@ -16,11 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.maven.wagon.providers.http;
+package org.apache.maven.wagon.providers.webdav;
-import org.apache.maven.wagon.shared.http.AbstractHttpClientWagon;
+import javax.inject.Named;
/**
- * @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
+ * Publishes {@link WebDavWagon} under the <code>dav+https</code> protocol.
*/
-public class HttpWagon extends AbstractHttpClientWagon {}
+@Named("dav+https")
+public class WebDavHttpsWagon extends WebDavWagon {}
diff --git a/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java
index e0045198..8d2cc95f 100644
--- a/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java
+++ b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavWagon.java
@@ -18,6 +18,8 @@
*/
package org.apache.maven.wagon.providers.webdav;
+import javax.inject.Named;
+
import java.io.File;
import java.io.IOException;
import java.net.URLDecoder;
@@ -54,6 +56,7 @@
* @author <a href="mailto:carlos@apache.org">Carlos Sanchez</a>
* @author <a href="mailto:james@atlassian.com">James William Dumay</a>
*/
+@Named("dav")
public class WebDavWagon extends AbstractHttpClientWagon {
protected static final String CONTINUE_ON_FAILURE_PROPERTY = "wagon.webdav.continueOnFailure";
diff --git a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavsWagon.java
similarity index 77%
copy from wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
copy to wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavsWagon.java
index ae5d720f..f3bf12cd 100644
--- a/wagon-providers/wagon-http/src/main/java/org/apache/maven/wagon/providers/http/HttpWagon.java
+++ b/wagon-providers/wagon-webdav-jackrabbit/src/main/java/org/apache/maven/wagon/providers/webdav/WebDavsWagon.java
@@ -16,11 +16,12 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.maven.wagon.providers.http;
+package org.apache.maven.wagon.providers.webdav;
-import org.apache.maven.wagon.shared.http.AbstractHttpClientWagon;
+import javax.inject.Named;
/**
- * @author <a href="michal.maczka@dimatics.com">Michal Maczka</a>
+ * Publishes {@link WebDavWagon} under the <code>davs</code> protocol.
*/
-public class HttpWagon extends AbstractHttpClientWagon {}
+@Named("davs")
+public class WebDavsWagon extends WebDavWagon {}
diff --git a/wagon-providers/wagon-webdav-jackrabbit/src/main/resources/META-INF/plexus/components.xml b/wagon-providers/wagon-webdav-jackrabbit/src/main/resources/META-INF/plexus/components.xml
deleted file mode 100644
index c2a53db4..00000000
--- a/wagon-providers/wagon-webdav-jackrabbit/src/main/resources/META-INF/plexus/components.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-<component-set>
- <components>
- <component>
- <role>org.apache.maven.wagon.Wagon</role>
- <role-hint>dav</role-hint>
- <implementation>org.apache.maven.wagon.providers.webdav.WebDavWagon</implementation>
- <instantiation-strategy>per-lookup</instantiation-strategy>
- <description><p>WebDavWagon</p>
-<p/>
-<p>Allows using a WebDAV remote repository for downloads and deployments</p></description>
- <isolated-realm>false</isolated-realm>
- </component>
- <component>
- <role>org.apache.maven.wagon.Wagon</role>
- <role-hint>davs</role-hint>
- <implementation>org.apache.maven.wagon.providers.webdav.WebDavWagon</implementation>
- <instantiation-strategy>per-lookup</instantiation-strategy>
- <description><p>WebDavWagon</p>
-<p/>
-<p>Allows using a WebDAV remote repository for downloads and deployments</p></description>
- <isolated-realm>false</isolated-realm>
- </component>
- <component>
- <role>org.apache.maven.wagon.Wagon</role>
- <role-hint>dav+http</role-hint>
- <implementation>org.apache.maven.wagon.providers.webdav.WebDavWagon</implementation>
- <instantiation-strategy>per-lookup</instantiation-strategy>
- <description><p>WebDavWagon</p>
-<p/>
-<p>Allows using a WebDAV remote repository for downloads and deployments</p></description>
- <isolated-realm>false</isolated-realm>
- </component>
- <component>
- <role>org.apache.maven.wagon.Wagon</role>
- <role-hint>dav+https</role-hint>
- <implementation>org.apache.maven.wagon.providers.webdav.WebDavWagon</implementation>
- <instantiation-strategy>per-lookup</instantiation-strategy>
- <description><p>WebDavWagon</p>
-<p/>
-<p>Allows using a webdav remote repository for downloads and deployments</p></description>
- <isolated-realm>false</isolated-realm>
- </component>
- </components>
-</component-set>
(maven-wagon) 01/02: Keep the JSR-330 annotations off the wagon transitive classpath
Posted by sl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
slachiewicz pushed a commit to branch wagon-3.x
in repository https://gitbox.apache.org/repos/asf/maven-wagon.git
commit c9205322e16665212d680660c4d4bdd59f1c8a72
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Fri Sep 4 12:23:59 2026 +0200
Keep the JSR-330 annotations off the wagon transitive classpath
javax.inject and org.eclipse.sisu.inject arrived as compile dependencies with the
JSR-330 migration, so every consumer of a provider now inherits them. Any container
that can load a wagon already supplies both, and wagon pins sisu through maven-parent
49 (1.0.1) while Maven ships 1.1.0, so the inherited copy is only ever a version to
resolve away. Do not restore compile scope: provided still covers compilation, the
test classpath and sisu-maven-plugin's indexing.
---
wagon-providers/pom.xml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/wagon-providers/pom.xml b/wagon-providers/pom.xml
index 6b0a9178..ea4a02b1 100644
--- a/wagon-providers/pom.xml
+++ b/wagon-providers/pom.xml
@@ -64,15 +64,18 @@ under the License.
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-provider-api</artifactId>
</dependency>
+ <!-- @Named and @Typed are runtime-retained, but every container that loads a wagon
+ already supplies them, so they stay off the transitive classpath. -->
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
+ <scope>provided</scope>
</dependency>
- <!-- for @Typed, where a provider implements more roles than it is published under -->
<dependency>
<groupId>org.eclipse.sisu</groupId>
<artifactId>org.eclipse.sisu.inject</artifactId>
+ <scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.maven.wagon</groupId>