You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ga...@apache.org on 2021/01/31 13:04:08 UTC

[jclouds] branch master updated (647af7e -> 8566698)

This is an automated email from the ASF dual-hosted git repository.

gaul pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git.


    from 647af7e  Simplify S3 code that uses java-xml-builder (#93)
     new 40d2b12  Initial cleanup of maven set up in the parents' module
     new 47f5134  Remove Guice multibindings
     new d0c4a58  Remove javax libraries
     new 0dc92e5  Reorder dependencies for core module
     new cb9d937  Remove duplicated finder exception for cloudsigma
     new 0eb89ae  Move from OSGi Spec V4.2 to V6
     new 8566698  Add OSGi version ranges, guice, okio

The 7 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:
 apis/chef/pom.xml                           |   5 -
 apis/docker/pom.xml                         |   4 -
 apis/openstack-keystone/pom.xml             |   5 -
 apis/openstack-neutron/pom.xml              |   5 -
 apis/openstack-nova/pom.xml                 |   5 -
 core/pom.xml                                |  59 +++----
 project/bnd.bnd                             |   7 +-
 project/pom.xml                             | 247 +++++++++++++++-------------
 providers/rackspace-cloudservers-uk/pom.xml |   5 -
 providers/rackspace-cloudservers-us/pom.xml |   5 -
 10 files changed, 161 insertions(+), 186 deletions(-)


[jclouds] 01/07: Initial cleanup of maven set up in the parents' module

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit 40d2b1227fb4872aad6a861eaba7c3d9a271ccd5
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Mon Oct 26 14:20:51 2020 +0100

    Initial cleanup of maven set up in the parents' module
    
    - Increase version of Guava dependency from 22.0 to 27.1-jre.
    
    Note: In an OSGi runtime, Guice version 4.2.3 expects Guava with an exact version of 27.1-jre. For now, higher versions of Guava are not possible.
    
    - Separate version numbers from dependencies and plugins
    
    Following is a description of the purpose of the feature.
    
    New contributors find it difficult to understand the function and intent of different plugins integrated into JClouds.
    
    The primary goal is to simplify and streamline the overall setup.
    
    On closer examination of the integrated plugins you will notice that,
    
    - different plugins are used for the same or a similar goal
    - the development activity of used plugins has been terminated
    - modified integration requirements through Maven. The development of used plugins is progressing. Versions of the plugins integrated into JClouds are not up to date. Newer plugin versions require an adjustment to how integration into a project is done.
    
    Basically the setup of the plugins used in the Maven project POM was done a long time ago. The project POM file of the JClouds project serves as a parent for all modules in JClouds.
    
    The first step is to consolidate the used plugins.
    
    The same aspects apply to the build profiles used in the project. On closer look these must be considered obsolete. A deconstruction of declared build profiles is aimed at.
    
    In order to support newer runtime environments, for example JDK11 and above, we aim to integrate build profiles.
    
    In the respective build profile the libraries which are no longer contained in the respective target JDK but needed in JClouds are to be integrated.
    
    In the course of this rebuild, a property-based way of declaring the version number of dependencies and plugins will be implemented.
---
 project/pom.xml | 220 +++++++++++++++++++++++++++++++++-----------------------
 1 file changed, 129 insertions(+), 91 deletions(-)

diff --git a/project/pom.xml b/project/pom.xml
index f17fe86..282609d 100644
--- a/project/pom.xml
+++ b/project/pom.xml
@@ -217,36 +217,54 @@
   </developers>
 
   <properties>
-
-    <bnd.version>5.2.0</bnd.version>
-    <maven-jar-plugin.version>3.0.1</maven-jar-plugin.version>
-
-    <maven.compile.source>1.8</maven.compile.source>
-    <maven.compile.target>1.8</maven.compile.target>
     <jdk.version>1.8</jdk.version>
+    <maven.compile.source>${jdk.version}</maven.compile.source>
+    <maven.compile.target>${jdk.version}</maven.compile.target>
     <maven.compile.deprecation>true</maven.compile.deprecation>
-    <maven.site.url.base>gitsite:git@github.com/jclouds/jclouds-maven-site.git</maven.site.url.base>
 
-    <guava.version>22.0</guava.version>
-    <!-- TODO: this has to be addressed in another feature -->
-    <guava.osgi.import>com.google.common.*;version="[22.0,30.0.0)"</guava.osgi.import>
+    <!-- Plugin versions -->
+    <bnd.version>5.2.0</bnd.version>
+    <maven-jar-plugin.version>3.0.1</maven-jar-plugin.version>
+    <maven-surefire-plugin.version>2.17</maven-surefire-plugin.version>
 
-    <guice.version>4.2.3</guice.version>
+    <!-- General dependency versions -->
     <gson.version>2.8.5</gson.version>
+    <guava.version>27.1-jre</guava.version>
+    <guice.version>4.2.3</guice.version>
 
     <okhttp.version>2.2.0</okhttp.version>
-    <!-- TODO: this has to be addressed in another feature -->
-    <okio.osgi.import>okio;version="[1.2.0,1.3)"</okio.osgi.import>
-
-    <surefire.version>2.17</surefire.version>
-    <assertj-core.version>1.7.0</assertj-core.version>
-    <assertj-guava.version>1.3.0</assertj-guava.version>
     <auto-factory.version>0.1-beta1</auto-factory.version>
     <auto-service.version>1.0-rc3</auto-service.version>
     <auto-value.version>1.4.1</auto-value.version>
     <java-xmlbuilder.version>1.2</java-xmlbuilder.version>
+
+    <jetty.version>8.1.8.v20121106</jetty.version>
+
+    <modernizer-maven-annotations.version>1.8.0</modernizer-maven-annotations.version>
+
+    <!-- Log dependency versions -->
+    <log4j.version>1.2.17</log4j.version>
+    <logback.version>1.1.2</logback.version>
+
+    <!-- OSGi dependency versions -->
     <osgi.version>4.2.0</osgi.version>
     <osgi.compendium.version>${osgi.version}</osgi.compendium.version>
+
+    <!-- Test dependency versions -->
+    <testng.version>6.8.21</testng.version>
+    <xmlunit.version>1.3</xmlunit.version>
+    <assertj-core.version>1.7.0</assertj-core.version>
+    <assertj-guava.version>1.3.0</assertj-guava.version>
+
+    <!-- Mock dependency versions -->
+    <easymock.version>3.4</easymock.version>
+
+    <!-- Static analysis dependency versions -->
+    <error_prone.version>2.1.0</error_prone.version>
+    <jsr305.version>1.3.9</jsr305.version>
+
+    <maven.site.url.base>gitsite:git@github.com/jclouds/jclouds-maven-site.git</maven.site.url.base>
+
     <http.proxyHost />
     <http.proxyPort />
     <jclouds.wire.httpstream.url>https://archive.apache.org/dist/commons/logging/binaries/commons-logging-1.1.1-bin.tar.gz</jclouds.wire.httpstream.url>
@@ -260,65 +278,105 @@
 
   <dependencyManagement>
     <dependencies>
+      <!-- General dependencies -->
+      <dependency>
+        <groupId>com.google.code.gson</groupId>
+        <artifactId>gson</artifactId>
+        <version>${gson.version}</version>
+      </dependency>
       <dependency>
         <groupId>com.google.guava</groupId>
         <artifactId>guava</artifactId>
         <version>${guava.version}</version>
       </dependency>
       <dependency>
-        <groupId>com.google.code.gson</groupId>
-        <artifactId>gson</artifactId>
-        <version>${gson.version}</version>
+        <groupId>com.google.inject</groupId>
+        <artifactId>guice</artifactId>
+        <version>${guice.version}</version>
       </dependency>
       <dependency>
-        <groupId>com.google.code.findbugs</groupId>
-        <artifactId>jsr305</artifactId>
-        <version>1.3.9</version>
+        <groupId>com.google.inject.extensions</groupId>
+        <artifactId>guice-multibindings</artifactId>
+        <version>${guice.version}</version>
       </dependency>
       <dependency>
         <groupId>com.google.inject.extensions</groupId>
         <artifactId>guice-assistedinject</artifactId>
         <version>${guice.version}</version>
       </dependency>
+
       <dependency>
-        <groupId>com.google.inject</groupId>
-        <artifactId>guice</artifactId>
-        <version>${guice.version}</version>
+        <groupId>com.google.auto.factory</groupId>
+        <artifactId>auto-factory</artifactId>
+        <version>${auto-factory.version}</version>
       </dependency>
       <dependency>
-        <groupId>com.google.inject.extensions</groupId>
-        <artifactId>guice-multibindings</artifactId>
-        <version>${guice.version}</version>
+        <groupId>com.google.auto.service</groupId>
+        <artifactId>auto-service</artifactId>
+        <version>${auto-service.version}</version>
       </dependency>
       <dependency>
-        <groupId>org.easymock</groupId>
-        <artifactId>easymock</artifactId>
-        <version>3.4</version>
+        <groupId>com.google.auto.value</groupId>
+        <artifactId>auto-value</artifactId>
+        <version>${auto-value.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>com.jamesmurty.utils</groupId>
+        <artifactId>java-xmlbuilder</artifactId>
+        <version>${java-xmlbuilder.version}</version>
       </dependency>
+
       <dependency>
         <groupId>org.eclipse.jetty</groupId>
         <artifactId>jetty-security</artifactId>
-        <version>8.1.8.v20121106</version>
+        <version>${jetty.version}</version>
       </dependency>
       <dependency>
         <groupId>org.eclipse.jetty</groupId>
         <artifactId>jetty-server</artifactId>
-        <version>8.1.8.v20121106</version>
-      </dependency>
-      <dependency>
-        <groupId>com.squareup.okhttp</groupId>
-        <artifactId>mockwebserver</artifactId>
-        <version>${okhttp.version}</version>
+        <version>${jetty.version}</version>
       </dependency>
+
       <dependency>
         <groupId>org.gaul</groupId>
         <artifactId>modernizer-maven-annotations</artifactId>
-        <version>1.8.0</version>
+        <version>${modernizer-maven-annotations.version}</version>
+      </dependency>
+
+      <!-- Log dependencies -->
+      <dependency>
+        <groupId>log4j</groupId>
+        <artifactId>log4j</artifactId>
+        <version>${log4j.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>ch.qos.logback</groupId>
+        <artifactId>logback-classic</artifactId>
+        <version>${logback.version}</version>
       </dependency>
       <dependency>
+        <groupId>ch.qos.logback</groupId>
+        <artifactId>logback-core</artifactId>
+        <version>${logback.version}</version>
+      </dependency>
+
+      <!-- OSGi dependencies -->
+      <dependency>
+        <groupId>org.osgi</groupId>
+        <artifactId>org.osgi.core</artifactId>
+        <version>${osgi.version}</version>
+      </dependency>
+      <dependency>
+        <groupId>org.osgi</groupId>
+        <artifactId>org.osgi.compendium</artifactId>
+        <version>${osgi.compendium.version}</version>
+      </dependency>
+
+      <!-- Test dependencies -->
+      <dependency>
         <groupId>org.testng</groupId>
         <artifactId>testng</artifactId>
-        <version>6.8.21</version>
+        <version>${testng.version}</version>
         <exclusions>
           <exclusion>
             <groupId>junit</groupId>
@@ -329,22 +387,7 @@
       <dependency>
         <groupId>xmlunit</groupId>
         <artifactId>xmlunit</artifactId>
-        <version>1.3</version>
-      </dependency>
-      <dependency>
-        <groupId>log4j</groupId>
-        <artifactId>log4j</artifactId>
-        <version>1.2.17</version>
-      </dependency>
-      <dependency>
-        <groupId>ch.qos.logback</groupId>
-        <artifactId>logback-classic</artifactId>
-        <version>1.1.2</version>
-      </dependency>
-      <dependency>
-        <groupId>ch.qos.logback</groupId>
-        <artifactId>logback-core</artifactId>
-        <version>1.1.2</version>
+        <version>${xmlunit.version}</version>
       </dependency>
       <dependency>
         <groupId>org.assertj</groupId>
@@ -356,50 +399,35 @@
         <artifactId>assertj-guava</artifactId>
         <version>${assertj-guava.version}</version>
       </dependency>
+
+      <!-- Mock dependencies -->
       <dependency>
-        <groupId>com.google.auto.factory</groupId>
-        <artifactId>auto-factory</artifactId>
-        <version>${auto-factory.version}</version>
-      </dependency>
-      <dependency>
-        <groupId>com.google.auto.service</groupId>
-        <artifactId>auto-service</artifactId>
-        <version>${auto-service.version}</version>
-      </dependency>
-      <dependency>
-        <groupId>com.google.auto.value</groupId>
-        <artifactId>auto-value</artifactId>
-        <version>${auto-value.version}</version>
+        <groupId>org.easymock</groupId>
+        <artifactId>easymock</artifactId>
+        <version>${easymock.version}</version>
       </dependency>
       <dependency>
-        <groupId>com.jamesmurty.utils</groupId>
-        <artifactId>java-xmlbuilder</artifactId>
-        <version>${java-xmlbuilder.version}</version>
+        <groupId>com.squareup.okhttp</groupId>
+        <artifactId>mockwebserver</artifactId>
+        <version>${okhttp.version}</version>
       </dependency>
+
+      <!-- Static analysis dependencies -->
       <dependency>
-        <groupId>org.osgi</groupId>
-        <artifactId>org.osgi.core</artifactId>
-        <version>${osgi.version}</version>
+        <groupId>com.google.errorprone</groupId>
+        <artifactId>error_prone_annotations</artifactId>
+        <version>${error_prone.version}</version>
       </dependency>
       <dependency>
-        <groupId>org.osgi</groupId>
-        <artifactId>org.osgi.compendium</artifactId>
-        <version>${osgi.compendium.version}</version>
+        <groupId>com.google.code.findbugs</groupId>
+        <artifactId>jsr305</artifactId>
+        <version>${jsr305.version}</version>
       </dependency>
     </dependencies>
   </dependencyManagement>
+
   <dependencies>
     <dependency>
-      <groupId>com.google.errorprone</groupId>
-      <artifactId>error_prone_annotations</artifactId>
-      <version>2.1.0</version>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.findbugs</groupId>
-      <artifactId>jsr305</artifactId>
-      <scope>provided</scope>
-    </dependency>
-    <dependency>
       <groupId>org.testng</groupId>
       <artifactId>testng</artifactId>
       <scope>test</scope>
@@ -424,6 +452,16 @@
       <artifactId>assertj-guava</artifactId>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>com.google.errorprone</groupId>
+      <artifactId>error_prone_annotations</artifactId>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.google.code.findbugs</groupId>
+      <artifactId>jsr305</artifactId>
+      <scope>provided</scope>
+    </dependency>
   </dependencies>
 
   <build>
@@ -507,7 +545,7 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
-        <version>${surefire.version}</version>
+        <version>${maven-surefire-plugin.version}</version>
         <executions>
           <execution>
             <id>integration</id>
@@ -933,7 +971,7 @@
         </plugin>
         <plugin>
           <artifactId>maven-surefire-report-plugin</artifactId>
-          <version>${surefire.version}</version>
+          <version>${maven-surefire-plugin.version}</version>
         </plugin>
         <plugin>
           <groupId>org.apache.rat</groupId>


[jclouds] 07/07: Add OSGi version ranges, guice, okio

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit 85666982ae3e47e84cc6d1b68e0ffe225fad9629
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Sat Jan 9 19:25:53 2021 +0100

    Add OSGi version ranges, guice, okio
    
    In the present feature, the two properties
    - guava.osgi.import and
    - okhttp.version
    have not been attached to the build process (Bnd plugin), but have been recorded as comments only.
    
    Before the resolution method is considered, the problem of Guava and its close coupling with Guice must be examined.
    
    The Guice project possesses, differently to GSON no explicit configuration, how its dependencies are regarded in an OSGi execution environment.
    
    Guice / Guava
    - 4.1.0 / 19.0
    - 4.2.0 /  [23.6,24)
    - 4.2.1 / [25.1,26)
    - 4.2.3 / [27.1,28) => used
    - 5.0.0.BETA-1 / [27.1,28)
    
    The version of Guice built into JClouds is 4.2.3. Increasing to this version number was not the subject of the current branch.
    
    To avoid backward compatibility problems between Guice and Guava (e.g. Guice 4.2.3 -> Guava 24) this means that the version of Guava integrated in JClouds must be at least version 27.1. Guice puts this in its dependencies.
    
    In my opinion, consumers (JClouds, as well as consumers of JClouds) should take this minimum barrier into account.
    
    Resolution
    To understand the resolution, please consider the following previously unmerged feature.
    https://github.com/apache/jclouds/pull/86
    
    In order to add a Guava verison range to the bundles rolled out by JClouds, the following import rule is added in the BND Configuration of the Project Module.
    
    Import Package: \
        com.google.common.*;version="[27.1,30.1.0)", \
        okio.*;version="[1.2.0,1.3)", \
        *
    
    In the output of each JClouds module that uses Guava (and there are some) the configuration to the range version is observed. The bnd built into the JClouds project modules acts as a base of other bnd configurations, and should also apply in the Lab and Co repositories. Adjusted artefacts only become valid when a release is available or the build of these repositories is triggered again.
    
    Output - Core Module
    
    Import package:
       com.google.common.base;version="[27.1,30.1.0)",
       com.google.common.cache;version="[27.1,30.1.0)",
       com.google.common.collect;version="[27.1,30.1.0)",
       ...
       com.google.gson;version="[2.8,3)",
       ...
    
    Output - Blobstore Module
    
    Import package:
       com.google.common.base;version="[27.1,30.1.0)",
       com.google.common.collect;version="[27.1,30.1.0)",
       com.google.common.hash;version="[27.1,30.1.0)",
       ...
       com.google.inject;version="[1.4,2)",
       ...
    
    Oki version range
    The okhttp dependency requires okio version 1.2. The ok* libraries respectively the dependencies used in these libraries do not have OSGi instructions. For this reason, the previously integrated configuration is used.
    
    Local tests show that the import directive can also be set globally, see above. An explicit specification in the bnd file of the JClouds okHTTP module is not useful because this JClouds module also uses Guava.
    
    Output - OkHTTP Module
    
    Import package:
       com.google.common.base;version="[27.1,30.1.0)",
       com.google.common.collect;version="[27.1,30.1.0)",
       okio;version="[1.2.0,1.3)",
       com.google.inject;version="[1.4,2)",
       ...
    
    Note:
    In the following feature, the version of the "ok" framework has been significantly increased.  Extensive adjustments are also performed.
    
    At this point, it should be noted that the import policy in the okio will probably have to be removed again because standalone OSGi metadata may be provided.
---
 project/bnd.bnd | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/project/bnd.bnd b/project/bnd.bnd
index c751a54..7c4e658 100644
--- a/project/bnd.bnd
+++ b/project/bnd.bnd
@@ -23,4 +23,9 @@ X-Compile-Source-JDK: \
     ${maven.compile.source}
 
 X-Compile-Target-JDK: \
-    ${maven.compile.target}
\ No newline at end of file
+    ${maven.compile.target}
+
+Import-Package: \
+    com.google.common.*;version="[27.1,30.1.0)", \
+    okio.*;version="[1.2.0,1.3)", \
+    *
\ No newline at end of file


[jclouds] 04/07: Reorder dependencies for core module

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit 0dc92e510337d72bbf3357a1df356e6aeb84d61a
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Mon Oct 26 14:58:39 2020 +0100

    Reorder dependencies for core module
    
    Reorder dependencies, integrate library javax.ws.rs-api in the parents' dependency management section
---
 core/pom.xml    | 47 +++++++++++++++++++++++------------------------
 project/pom.xml |  6 ++++++
 2 files changed, 29 insertions(+), 24 deletions(-)

diff --git a/core/pom.xml b/core/pom.xml
index a674d71..6a85d41 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -38,35 +38,24 @@
 
   <dependencies>
     <dependency>
-      <groupId>javax.ws.rs</groupId>
-      <artifactId>javax.ws.rs-api</artifactId>
-      <version>2.0.1</version>
+      <groupId>com.google.code.gson</groupId>
+      <artifactId>gson</artifactId>
     </dependency>
     <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-assistedinject</artifactId>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava</artifactId>
     </dependency>
     <dependency>
       <groupId>com.google.inject</groupId>
       <artifactId>guice</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.eclipse.jetty</groupId>
-      <artifactId>jetty-security</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>com.squareup.okhttp</groupId>
-      <artifactId>mockwebserver</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>com.google.code.gson</groupId>
-      <artifactId>gson</artifactId>
+      <groupId>com.google.inject.extensions</groupId>
+      <artifactId>guice-assistedinject</artifactId>
     </dependency>
     <dependency>
-      <groupId>com.google.guava</groupId>
-      <artifactId>guava</artifactId>
+      <groupId>javax.ws.rs</groupId>
+      <artifactId>javax.ws.rs-api</artifactId>
     </dependency>
     <dependency>
       <groupId>org.osgi</groupId>
@@ -79,11 +68,6 @@
       <scope>provided</scope>
     </dependency>
     <dependency>
-      <groupId>com.google.auto.value</groupId>
-      <artifactId>auto-value</artifactId>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
       <groupId>com.google.auto.service</groupId>
       <artifactId>auto-service</artifactId>
       <optional>true</optional>
@@ -93,6 +77,21 @@
       <artifactId>modernizer-maven-annotations</artifactId>
       <optional>true</optional>
     </dependency>
+    <dependency>
+      <groupId>org.eclipse.jetty</groupId>
+      <artifactId>jetty-security</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.squareup.okhttp</groupId>
+      <artifactId>mockwebserver</artifactId>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.google.auto.value</groupId>
+      <artifactId>auto-value</artifactId>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
 
   <build>
diff --git a/project/pom.xml b/project/pom.xml
index c788ea4..02bc9b9 100644
--- a/project/pom.xml
+++ b/project/pom.xml
@@ -239,6 +239,7 @@
     <java-xmlbuilder.version>1.2</java-xmlbuilder.version>
 
     <jetty.version>8.1.8.v20121106</jetty.version>
+    <javax.ws.rs-api.version>2.0.1</javax.ws.rs-api.version>
 
     <modernizer-maven-annotations.version>1.8.0</modernizer-maven-annotations.version>
 
@@ -331,6 +332,11 @@
         <artifactId>jetty-server</artifactId>
         <version>${jetty.version}</version>
       </dependency>
+      <dependency>
+        <groupId>javax.ws.rs</groupId>
+        <artifactId>javax.ws.rs-api</artifactId>
+        <version>${javax.ws.rs-api.version}</version>
+      </dependency>
 
       <dependency>
         <groupId>org.gaul</groupId>


[jclouds] 06/07: Move from OSGi Spec V4.2 to V6

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit 0eb89aef6d0113c86ca0b9b484f4b535b888ce31
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Mon Oct 26 16:08:53 2020 +0100

    Move from OSGi Spec V4.2 to V6
    
    Increase of OSGi dependencies core and compendium (now cmpn) from 4.2 to 6.0.
    Previously it was possible to run JClouds in OSGi environments from version 4.
    
    An essential aspect to use JClouds in an OSGi environment requires so-called feature sets. These can be generated manually or automatically - see JClouds-Karaf project. Since there have been significant changes in the structure and behaviour of Karaf in the meantime, an adaptation is appropriate.
    
    Breaking change - probably not, as no other APIs of core and compendium are used than up to now.
    
    OSGi - V4.2 - Karaf 2.2.x - to 2.2.9 (Current Status - not active)
    OSGi - V6.0 - Karaf 4.1.x - 4.2 (Current Status - active)
---
 core/pom.xml    | 2 +-
 project/pom.xml | 7 +++----
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/core/pom.xml b/core/pom.xml
index 6a85d41..fa29452 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -64,7 +64,7 @@
     </dependency>
     <dependency>
       <groupId>org.osgi</groupId>
-      <artifactId>org.osgi.compendium</artifactId>
+      <artifactId>osgi.cmpn</artifactId>
       <scope>provided</scope>
     </dependency>
     <dependency>
diff --git a/project/pom.xml b/project/pom.xml
index f033efa..564f984 100644
--- a/project/pom.xml
+++ b/project/pom.xml
@@ -248,8 +248,7 @@
     <logback.version>1.1.2</logback.version>
 
     <!-- OSGi dependency versions -->
-    <osgi.version>4.2.0</osgi.version>
-    <osgi.compendium.version>${osgi.version}</osgi.compendium.version>
+    <osgi.version>6.0.0</osgi.version>
 
     <!-- Test dependency versions -->
     <testng.version>6.8.21</testng.version>
@@ -369,8 +368,8 @@
       </dependency>
       <dependency>
         <groupId>org.osgi</groupId>
-        <artifactId>org.osgi.compendium</artifactId>
-        <version>${osgi.compendium.version}</version>
+        <artifactId>osgi.cmpn</artifactId>
+        <version>${osgi.version}</version>
       </dependency>
 
       <!-- Test dependencies -->


[jclouds] 02/07: Remove Guice multibindings

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit 47f51347a2fd35e336d2d1a17cdc90b321a32f92
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Mon Oct 26 14:28:56 2020 +0100

    Remove Guice multibindings
    
    Since Guice 4.2, multibindings support has moved to Guice core. Before that, you need to depend on the guice-multibindings extension. For reference https://github.com/google/guice/wiki/Multibindings
---
 apis/chef/pom.xml                           | 5 -----
 apis/docker/pom.xml                         | 4 ----
 apis/openstack-keystone/pom.xml             | 5 -----
 apis/openstack-neutron/pom.xml              | 5 -----
 apis/openstack-nova/pom.xml                 | 5 -----
 project/pom.xml                             | 5 -----
 providers/rackspace-cloudservers-uk/pom.xml | 5 -----
 providers/rackspace-cloudservers-us/pom.xml | 5 -----
 8 files changed, 39 deletions(-)

diff --git a/apis/chef/pom.xml b/apis/chef/pom.xml
index 1b909a7..099b859 100644
--- a/apis/chef/pom.xml
+++ b/apis/chef/pom.xml
@@ -63,11 +63,6 @@
       <type>test-jar</type>
       <scope>test</scope>
     </dependency>
-    <!--  for ohai -->
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
     <!--  for transient chef provider -->
     <dependency>
       <groupId>org.apache.jclouds</groupId>
diff --git a/apis/docker/pom.xml b/apis/docker/pom.xml
index e022586..9aa5127 100644
--- a/apis/docker/pom.xml
+++ b/apis/docker/pom.xml
@@ -79,10 +79,6 @@
       <version>${project.version}</version>
     </dependency>
     <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
-    <dependency>
       <groupId>org.apache.jclouds</groupId>
       <artifactId>jclouds-core</artifactId>
       <version>${project.version}</version>
diff --git a/apis/openstack-keystone/pom.xml b/apis/openstack-keystone/pom.xml
index 556440a..9e8b37e 100644
--- a/apis/openstack-keystone/pom.xml
+++ b/apis/openstack-keystone/pom.xml
@@ -52,11 +52,6 @@
       <artifactId>jclouds-core</artifactId>
       <version>${project.version}</version>
     </dependency>
-    <!-- for the extension namespaces -->
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.apache.jclouds</groupId>
       <artifactId>jclouds-core</artifactId>
diff --git a/apis/openstack-neutron/pom.xml b/apis/openstack-neutron/pom.xml
index 36c6d88..e81c7d1 100644
--- a/apis/openstack-neutron/pom.xml
+++ b/apis/openstack-neutron/pom.xml
@@ -52,11 +52,6 @@
       <artifactId>jclouds-core</artifactId>
       <version>${project.version}</version>
     </dependency>
-    <!-- for the extension namespaces -->
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.apache.jclouds</groupId>
       <artifactId>jclouds-core</artifactId>
diff --git a/apis/openstack-nova/pom.xml b/apis/openstack-nova/pom.xml
index 1a8bfc6..a78b576 100644
--- a/apis/openstack-nova/pom.xml
+++ b/apis/openstack-nova/pom.xml
@@ -54,11 +54,6 @@
       <artifactId>openstack-neutron</artifactId>
       <version>${project.version}</version>
     </dependency>
-    <!-- for the extension namespaces -->
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.apache.jclouds</groupId>
       <artifactId>jclouds-compute</artifactId>
diff --git a/project/pom.xml b/project/pom.xml
index 282609d..c788ea4 100644
--- a/project/pom.xml
+++ b/project/pom.xml
@@ -296,11 +296,6 @@
       </dependency>
       <dependency>
         <groupId>com.google.inject.extensions</groupId>
-        <artifactId>guice-multibindings</artifactId>
-        <version>${guice.version}</version>
-      </dependency>
-      <dependency>
-        <groupId>com.google.inject.extensions</groupId>
         <artifactId>guice-assistedinject</artifactId>
         <version>${guice.version}</version>
       </dependency>
diff --git a/providers/rackspace-cloudservers-uk/pom.xml b/providers/rackspace-cloudservers-uk/pom.xml
index d7dbef4..317e42d 100644
--- a/providers/rackspace-cloudservers-uk/pom.xml
+++ b/providers/rackspace-cloudservers-uk/pom.xml
@@ -50,11 +50,6 @@
       <artifactId>openstack-nova</artifactId>
       <version>${project.version}</version>
     </dependency>
-    <!-- for the extension namespaces -->
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.apache.jclouds</groupId>
       <artifactId>jclouds-core</artifactId>
diff --git a/providers/rackspace-cloudservers-us/pom.xml b/providers/rackspace-cloudservers-us/pom.xml
index 72f6196..c1441e3 100644
--- a/providers/rackspace-cloudservers-us/pom.xml
+++ b/providers/rackspace-cloudservers-us/pom.xml
@@ -50,11 +50,6 @@
       <artifactId>openstack-nova</artifactId>
       <version>${project.version}</version>
     </dependency>
-    <!-- for the extension namespaces -->
-    <dependency>
-      <groupId>com.google.inject.extensions</groupId>
-      <artifactId>guice-multibindings</artifactId>
-    </dependency>
     <dependency>
       <groupId>org.apache.jclouds</groupId>
       <artifactId>jclouds-core</artifactId>


[jclouds] 03/07: Remove javax libraries

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit d0c4a5825e95bed2d8cc33ca5ec193da5dc6f00c
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Mon Oct 26 14:42:10 2020 +0100

    Remove javax libraries
    
    Remove javax libraries inject and annotation. In JDK 8 those libraries are provided by the JDK. Younger JDK versions > 11 exclude them again to make the JDK leaner. Supporting younger JDK versions means integrating more younger libraries maintained by the Jakarta project.
---
 core/pom.xml | 10 ----------
 1 file changed, 10 deletions(-)

diff --git a/core/pom.xml b/core/pom.xml
index 2f71fca..a674d71 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -51,16 +51,6 @@
       <artifactId>guice</artifactId>
     </dependency>
     <dependency>
-      <groupId>javax.inject</groupId>
-      <artifactId>javax.inject</artifactId>
-      <version>1</version>
-    </dependency>
-    <dependency>
-      <groupId>javax.annotation</groupId>
-      <artifactId>jsr250-api</artifactId>
-      <version>1.0</version>
-    </dependency>
-    <dependency>
       <groupId>org.eclipse.jetty</groupId>
       <artifactId>jetty-security</artifactId>
       <scope>test</scope>


[jclouds] 05/07: Remove duplicated finder exception for cloudsigma

Posted by ga...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds.git

commit cb9d9376661ee0173c642ff5846c8c5011c2e75e
Author: gurkerl83 <ma...@gmx.de>
AuthorDate: Mon Oct 26 15:34:29 2020 +0100

    Remove duplicated finder exception for cloudsigma
    
    In the source code of JClouds cloudsigma as a keyword gets not used anywhere. In the JClouds-Lab project, cloudSigma is available both as an API and multiple provider modules. Because the project module from JClouds serves as a parent module for all JClouds-Labs modules, it seems reasonable to maintain those rules in the JClouds project module.
    
    After inspecting the JClouds Lab source code, group artifact combinations of
    
    <groupId>org.apache.jclouds.api</groupId>
    <artifactId>cloudsigma</artifactId>
    
    ..., respectively
    
    <groupId>org.apache.jclouds.provider</groupId><artifactId>cloudsigma-lvs</artifactId>
    
    ..., are not available.
    
    Cloudsigma in Lab uses the following group artifact combinations, all with a "2" prefix.
    
    <groupId>org.apache.jclouds.labs</groupId
    <artifactId>cloudsigma (2)</artifactId>
    
    <groupId>org.apache.jclouds.labs</groupId>
    <artifactId>cloudsigma (2) -hnl</artifactId>
    
    Loading those bundles into an OSGi runtime, a runtime collision happens because the API exports the identical packages as the provider modules.
    
    Although this was the case in a previous version, it has since been corrected.
    
    https://github.com/apache/jclouds-labs/commit/e7885359a7755ac5ad6298f35b7547a31e1c5548
    
    This commit removes the exception handling.
---
 project/pom.xml | 23 -----------------------
 1 file changed, 23 deletions(-)

diff --git a/project/pom.xml b/project/pom.xml
index 02bc9b9..f033efa 100644
--- a/project/pom.xml
+++ b/project/pom.xml
@@ -1117,29 +1117,6 @@
           <configuration>
             <exceptions>
               <exception>
-                <!-- CloudSigma bundles conflict between api and providers-->
-                <conflictingDependencies>
-                  <dependency>
-                    <groupId>org.apache.jclouds.api</groupId>
-                    <artifactId>cloudsigma</artifactId>
-                    <version>${project.version}</version>
-                  </dependency>
-                  <dependency>
-                    <groupId>org.apache.jclouds.provider</groupId>
-                    <artifactId>cloudsigma-lvs</artifactId>
-                    <version>${project.version}</version>
-                  </dependency>
-                  <dependency>
-                    <groupId>org.apache.jclouds.provider</groupId>
-                    <artifactId>cloudsigma-zrh</artifactId>
-                    <version>${project.version}</version>
-                  </dependency>
-                </conflictingDependencies>
-                <packages>
-                  <package>org.jclouds.cloudsigma</package>
-                </packages>
-              </exception>
-              <exception>
                 <!-- Google App Engine Deps, some google classes are duplicated between packages -->
                 <conflictingDependencies>
                   <dependency>