From 684fac25f2b74f35c2e7e115b0ba3cfd4e3f480b Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Thu, 13 Mar 2025 15:48:24 -0400 Subject: [PATCH] Fix docs for version `4.0` * Move existing `What's New` to the respective `changes-in-3-2-since-3-1.adoc` * Add entries for the current version into `What's New` * Start new `rabbitmq-amqp-client.adoc` chapter --- src/reference/antora/modules/ROOT/nav.adoc | 1 + .../changes-in-3-2-since-3-1.adoc | 17 ++++++++++++ .../ROOT/pages/rabbitmq-amqp-client.adoc | 8 ++++++ .../antora/modules/ROOT/pages/whats-new.adoc | 26 +++++++++++-------- 4 files changed, 41 insertions(+), 11 deletions(-) create mode 100644 src/reference/antora/modules/ROOT/pages/appendix/previous-whats-new/changes-in-3-2-since-3-1.adoc create mode 100644 src/reference/antora/modules/ROOT/pages/rabbitmq-amqp-client.adoc diff --git a/src/reference/antora/modules/ROOT/nav.adoc b/src/reference/antora/modules/ROOT/nav.adoc index b4327b38..8bc51e5a 100644 --- a/src/reference/antora/modules/ROOT/nav.adoc +++ b/src/reference/antora/modules/ROOT/nav.adoc @@ -57,6 +57,7 @@ *** xref:amqp/multi-rabbit.adoc[] *** xref:amqp/debugging.adoc[] ** xref:stream.adoc[] +** xref:rabbitmq-amqp-client.adoc[] ** xref:logging.adoc[] ** xref:sample-apps.adoc[] ** xref:testing.adoc[] diff --git a/src/reference/antora/modules/ROOT/pages/appendix/previous-whats-new/changes-in-3-2-since-3-1.adoc b/src/reference/antora/modules/ROOT/pages/appendix/previous-whats-new/changes-in-3-2-since-3-1.adoc new file mode 100644 index 00000000..cecbc5f8 --- /dev/null +++ b/src/reference/antora/modules/ROOT/pages/appendix/previous-whats-new/changes-in-3-2-since-3-1.adoc @@ -0,0 +1,17 @@ +[[changes-in-3-2-since-3-1]] += Changes in 3.2 Since 3.1 + +[[spring-framework-6-2]] +== Spring Framework 6.1 + +This version requires Spring Framework 6.2. + +[[x32-consistent-hash-exchange]] +== Consistent Hash Exchange + +The convenient `ConsistentHashExchange` and respective `ExchangeBuilder.consistentHashExchange()` API has been introduced. + +[[x32-retry-count-header]] +== The `retry_count` header + +The `retry_count` header should be used now instead of relying on server side increment for the `x-death.count` property. \ No newline at end of file diff --git a/src/reference/antora/modules/ROOT/pages/rabbitmq-amqp-client.adoc b/src/reference/antora/modules/ROOT/pages/rabbitmq-amqp-client.adoc new file mode 100644 index 00000000..a1e2fce8 --- /dev/null +++ b/src/reference/antora/modules/ROOT/pages/rabbitmq-amqp-client.adoc @@ -0,0 +1,8 @@ +[[amqp-client]] += RabbitMQ AMQP 1.0 Support + +Version 4.0 introduces `spring-rabbitmq-client` module for https://www.rabbitmq.com/client-libraries/amqp-client-libraries[AMQP 1.0] protocol support on RabbitMQ. + +This artifact is based on the {rabbitmq-github}/rabbitmq-amqp-java-client[com.rabbitmq.client:amqp-client] library and therefore can work only with RabbitMQ and its AMQP 1.0 protocol support. +It cannot be used for any arbitrary AMQP 1.0 broker. +For that purpose a https://qpid.apache.org/components/jms/index.html[JMS bridge] and respective {spring-framework-docs}/integration/jms.html[Spring JMS] integration is recommended so far. \ No newline at end of file diff --git a/src/reference/antora/modules/ROOT/pages/whats-new.adoc b/src/reference/antora/modules/ROOT/pages/whats-new.adoc index 0e643ec6..3031c1cb 100644 --- a/src/reference/antora/modules/ROOT/pages/whats-new.adoc +++ b/src/reference/antora/modules/ROOT/pages/whats-new.adoc @@ -2,20 +2,24 @@ = What's New :page-section-summary-toc: 1 -[[changes-in-3-2-since-3-1]] -== Changes in 3.2 Since 3.1 +[[changes-in-4-2-since-3-2]] +== Changes in 4.0 Since 3.2 -[[spring-framework-6-2]] -=== Spring Framework 6.1 +[[spring-framework-7-0]] +=== Spring Framework 7.0 -This version requires Spring Framework 6.2. +This version requires Spring Framework 7.0. -[[x32-consistent-hash-exchange]] -=== Consistent Hash Exchange +[[x40-null-away]] +=== Null-safety -The convenient `ConsistentHashExchange` and respective `ExchangeBuilder.consistentHashExchange()` API has been introduced. +As many other Spring portfolio projects, Spring AMQP has been migrated to https://jspecify.dev/docs/start-here[JSpecify] annotations to declare the nullness of API. +The https://github.com/uber/NullAway[NullAway] Gradle plugin is used to check the consistency of null-safety declarations. -[[x32-retry-count-header]] -=== The `retry_count` header +[[x40-rabbitmq-amqp-client]] +=== The `spring-rabbitmq-client` module -The `retry_count` header should be used now instead of relying on server side increment for the `x-death.count` property. \ No newline at end of file +The new `spring-rabbitmq-client` module (with same artifact name) is introduced. +This is an implementation of AMQP 1.0 protocol specific to RabbitMQ since `4.0` and based on the `com.rabbitmq.client:amqp-client` library. + +See xref:rabbitmq-amqp-client.adoc[] for more information. \ No newline at end of file