Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rabbitmq-java-client for 
openSUSE:Factory checked in at 2024-02-29 21:49:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rabbitmq-java-client (Old)
 and      /work/SRC/openSUSE:Factory/.rabbitmq-java-client.new.1770 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rabbitmq-java-client"

Thu Feb 29 21:49:30 2024 rev:8 rq:1153419 version:5.20.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/rabbitmq-java-client/rabbitmq-java-client.changes    
    2024-02-22 20:58:36.911381235 +0100
+++ 
/work/SRC/openSUSE:Factory/.rabbitmq-java-client.new.1770/rabbitmq-java-client.changes
      2024-02-29 21:49:39.556450411 +0100
@@ -1,0 +2,106 @@
+Tue Feb 26 15:27:50 UTC 2024 - Gus Kenion <[email protected]>
+
+- Update to version 5.20.0 (bsc#1185940)
+  * Notable changes since release 5.0.0:
+    + Add ability to specify maximum message size.
+    + Do not confirmSelect more than once per channel.
+    + Make RpcClient (Auto)Closeable.
+    + Re-enable DNS round robin.
+    + Multi-treaded topology recovery and related fixes.
+    + NIO connection fixes and improvements.
+    + Handle basic query parameters in connection URI.
+    + Add support for OAuth 2 authentication.
+    + Introduce Connection#openChannel.
+    + TLS enhancements.
+    + Introduce CredentialsProvider interface for authentication.
+    + For details of all fixes and improvements, see release notes at:
+      https://github.com/rabbitmq/rabbitmq-java-client/releases
+  * Includes updates from major release 5.0.0:
+    + Require Java 8 or above.
+    + Supports Android 7.0 or later. 4.x releases continue to
+      support earlier versions of Android.
+    + Lambda-oriented API for Consumers
+    + Make it possible to use lambdas instead of *Listener objects
+    + Add an asynchronous method which returns a CompletableFuture
+    + Introduce SslContextFactory interface to create SSLContext
+      instances.
+    + Remove QueueingConsumer from RpcServer.
+    + Exception handling improvements.
+    + Remove the following deprecated classes and methods:
+      QueueingConsumer, NullTrustManager, FlowListener,
+      and SingleShotLinearTimer.
+    + Breaking changes:
+      - Connection - A new method has been introduced,
+        addBlockedListener(BlockedCallback, UnblockedCallback).
+        This is a concern only if you implement your own Connection.
+        If you only use Connection in your application, the rest of
+        the API hasn't changed.
+      - Channel - New methods have been introduced:
+        addReturnListener(ReturnCallback),
+        addConfirmListener(ConfirmCallback, ConfirmCallback), 
asyncCompletableRpc(Method), and "lambda-enabled"
+        basicConsume methods. This is a concern only if you
+        implement your own Channel. If you only use Channel in
+        your application, the rest of the API hasn't changed.
+      - RpcServer - RpcServer doesn't rely anymore on
+        QueueingConsumer, which has been removed. If your RpcServer
+        implementation relies on QueueingConsumer.Delivery, use
+        RpcServer.Delivery instead (it has the same API). If you
+        override setupConsumer to create the consumer, you need
+        now to create an implementation of RpcServer.RpcConsumer
+        in this method.
+      - FrameHandlerFactory - FrameHandlerFactory#create has an
+        extra connectionName String parameter. Note this interface
+        isn't meant to be used in applications, so this change
+        shouldn't impact application code.
+      - Removal of AssertionError usages - AssertionsErrors were
+        used in a few places of internal APIs (e.g. BlockingCell),
+        not meant to be used by applications. Nevertheless, if you
+        use those, have a look at the code changes in the GitHub
+        issue #239.
+      - Removal of QueueuingConsumer - QueueingConsumer had been
+        originally introduced to allow applications to overcome a
+        limitation in the way Connection managed threads and
+        consumer dispatching. The threading behavior of Connection
+        and Channel has been changed since then, making
+        QueueingConsumer less relevant. If blocking behavior is
+        needed, applications can use DefaultConsumer and a JDK
+        BlockingQueue.
+      - Removal of NullTrustManager - Use
+        TrustEverythingTrustManager instead, it has the same
+        behavior, but a more meaningful name.
+      - Removal of FlowListener - Channel flow events have been
+        superseded by TCP back pressure. Corresponding methods
+        have been removed from the Channel and ExceptionHandler
+        interfaces, so implementations of those interfaces need
+        to remove them as well (most likely ExceptionHandler
+        implementations, Channel not being an interface implemented
+        in applications).
+    + Full list of changes specific to v5.0.0 at:
+      https://github.com/rabbitmq/rabbitmq-java-client/releases/tag/v5.0.0
+  * Includes updates from previous major release 4.0.0:
+    + Decouple the Java Client project from the RabbitMQ broker.
+    + Enable automatic connection recovery by default.
+    + Logging library integration.
+    + Add support for metrics.
+    + Support NIO.
+    + Support dynamic versioning
+    + Extract Tracer into a separate project
+    + Extract PerfTest into a separate project
+    + Prevent Socket.write() from blocking
+    + UnknownChannelException in AMQConnection.MainLoop.run
+    + Add Recoverable[Connection/Channel] interfaces
+    + Make socket connection to try all DNS record IPs
+    + Transition build from Ant to Maven
+    + Bump default TLS protocol version to TLS v1.2
+    + Begin recovery after all shutdown listeners have been given a
+      chance to run
+    + Enhance RpcClient: Provide access to message metadata
+    + Make Connection implement Closeable interface
+- Remove rabbitmq-java-client-python3.patch - updated codegen.py
+  is already compatible with python3.
+- Remove rabbitmq-java-client-3.3.4-disable-bundlor.diff patch -
+  version 5.20.0 no longer includes bundlor.
+- Download tarballs directly from github instead of using source
+  service.
+
+-------------------------------------------------------------------

Old:
----
  _service
  rabbitmq-codegen-3.5.0.tar.xz
  rabbitmq-java-client-3.3.4-disable-bundlor.diff
  rabbitmq-java-client-3.5.0.tar.xz
  rabbitmq-java-client-python3.patch

New:
----
  rabbitmq-codegen-3.8.9.tar.gz
  rabbitmq-java-client-5.20.0.tar.gz

BETA DEBUG BEGIN:
  Old:  is already compatible with python3.
- Remove rabbitmq-java-client-3.3.4-disable-bundlor.diff patch -
  version 5.20.0 no longer includes bundlor.
  Old:    + Make Connection implement Closeable interface
- Remove rabbitmq-java-client-python3.patch - updated codegen.py
  is already compatible with python3.
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rabbitmq-java-client.spec ++++++
--- /var/tmp/diff_new_pack.EowbBz/_old  2024-02-29 21:49:42.260548285 +0100
+++ /var/tmp/diff_new_pack.EowbBz/_new  2024-02-29 21:49:42.260548285 +0100
@@ -16,49 +16,74 @@
 #
 
 
+%global codegen_version 3.8.9
 Name:           rabbitmq-java-client
-Version:        3.5.0
+Version:        5.20.0
 Release:        0
 Summary:        Java AMQP client library
-License:        GPL-2.0-or-later AND MPL-1.1
+License:        Apache-2.0 AND GPL-2.0-or-later AND MPL-2.0
 Group:          Development/Libraries/Java
 URL:            https://www.rabbitmq.com/java-client.html
-Source0:        %{name}-%{version}.tar.xz
-Source1:        rabbitmq-codegen-%{version}.tar.xz
-Patch0:         rabbitmq-java-client-3.3.4-disable-bundlor.diff
-Patch1:         rabbitmq-java-client-python3.patch
-BuildRequires:  ant
-BuildRequires:  apache-commons-io
-BuildRequires:  jakarta-commons-cli
-BuildRequires:  java-devel >= 1.8
-BuildRequires:  junit
-BuildRequires:  python3-devel
-Requires:       apache-commons-io
-Requires:       jakarta-commons-cli
+Source0:        
https://github.com/rabbitmq/%{name}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Source1:        
https://github.com/rabbitmq/rabbitmq-codegen/archive/refs/tags/v%{codegen_version}.tar.gz#/rabbitmq-codegen-%{codegen_version}.tar.gz
+BuildRequires:  fdupes
+BuildRequires:  maven-local
+BuildRequires:  python3
+BuildRequires:  mvn(com.fasterxml.jackson.core:jackson-databind)
+BuildRequires:  mvn(org.apache.felix:maven-bundle-plugin)
+BuildRequires:  mvn(org.codehaus.mojo:build-helper-maven-plugin)
+BuildRequires:  mvn(org.slf4j:slf4j-api)
 BuildArch:      noarch
 
 %description
 The RabbitMQ Java client library allows Java code to interface to AMQP servers.
 
+%package javadoc
+Summary:        API documentation for %{name}
+Group:          Documentation/HTML
+
+%description javadoc
+API documentation for %{name}.
+
 %prep
 %setup -q -a1
-ln -s rabbitmq-codegen-%{version} codegen
-%patch -P 0
-%patch -P 1 -p1
-find . -name *.jar | xargs rm -f
-# Java source and target
-sed -i -e 's#1\.6#1\.8#g' build.properties
+
+%pom_remove_dep org.junit:junit-bom
+
+# Exclude optional dependencies
+%pom_remove_dep io.dropwizard.metrics:metrics-core
+rm -f src/main/java/com/rabbitmq/client/impl/StandardMetricsCollector.java
+
+%pom_remove_dep io.micrometer:micrometer-core
+rm -f src/main/java/com/rabbitmq/client/impl/MicrometerMetricsCollector.java
+rm -rf src/main/java/com/rabbitmq/client/observation/micrometer
+
+%pom_remove_dep io.opentelemetry:opentelemetry-api
+rm -f src/main/java/com/rabbitmq/client/impl/OpenTelemetryMetricsCollector.java
+
+%pom_remove_plugin :groovy-maven-plugin
+
+# Exclude *-sources.jar
+%pom_remove_plugin :maven-source-plugin
+
+%pom_remove_plugin :keytool-maven-plugin
+
+%pom_xpath_remove pom:project/pom:build/pom:extensions
 
 %build
-export CLASSPATH=$(build-classpath commons-io commons-cli junit)
-ant dist
+export PYTHONPATH=rabbitmq-codegen-%{codegen_version}
+python3 ./codegen.py header ${PYTHONPATH}/amqp-rabbitmq-0.9.1.json 
src/main/java/com/rabbitmq/client/AMQP.java
+python3 ./codegen.py body ${PYTHONPATH}/amqp-rabbitmq-0.9.1.json 
src/main/java/com/rabbitmq/client/impl/AMQImpl.java
+%{mvn_build} -f -- -DskipTests=true
 
 %install
-mkdir -p %{buildroot}%{_javadir}
-install build/lib/rabbitmq-client.jar 
%{buildroot}%{_javadir}/rabbitmq-client.jar
+%mvn_install
+%fdupes -s %{buildroot}%{_javadocdir}
 
-%files
+%files -f .mfiles
 %license LICENSE LICENSE-APACHE2 LICENSE-GPL2 LICENSE-MPL-RabbitMQ
 %doc README.md
-%{_javadir}/rabbitmq-client.jar
+
+%files javadoc -f .mfiles-javadoc
+%license LICENSE LICENSE-APACHE2 LICENSE-GPL2 LICENSE-MPL-RabbitMQ
 

Reply via email to