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