Skip to content

Move main branch to 2.4 #1354

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 11, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 12 additions & 11 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -39,27 +39,27 @@ ext {
modifiedFiles =
files(grgit.status().unstaged.modified).filter{ f -> f.name.endsWith('.java') || f.name.endsWith('.kt') }

assertjVersion = '3.18.1'
assertkVersion = '0.23'
assertjVersion = '3.19.0'
assertkVersion = '0.24'
awaitilityVersion = '4.0.3'
commonsHttpClientVersion = '4.5.13'
commonsPoolVersion = '2.9.0'
googleJsr305Version = '3.0.2'
hamcrestVersion = '2.2'
hibernateValidationVersion = '6.2.0.Final'
jacksonBomVersion = '2.11.4'
jacksonBomVersion = '2.12.3'
jaywayJsonPathVersion = '2.4.0'
junit4Version = '4.13.1'
junit4Version = '4.13.2'
junitJupiterVersion = '5.7.2'
log4jVersion = '2.13.3'
log4jVersion = '2.14.1'
logbackVersion = '1.2.3'
micrometerVersion = '1.5.14'
mockitoVersion = '3.6.28'
rabbitmqVersion = project.hasProperty('rabbitmqVersion') ? project.rabbitmqVersion : '5.9.0'
rabbitmqHttpClientVersion = '3.8.0.RELEASE'
micrometerVersion = '1.7.0'
mockitoVersion = '3.9.0'
rabbitmqVersion = project.hasProperty('rabbitmqVersion') ? project.rabbitmqVersion : '5.12.0'
rabbitmqHttpClientVersion = '3.9.0.RELEASE'
reactorVersion = '2020.0.7'
springDataCommonsVersion = '2.4.9'
springVersion = project.hasProperty('springVersion') ? project.springVersion : '5.3.7'
springDataCommonsVersion = '2.5.1'
springVersion = project.hasProperty('springVersion') ? project.springVersion : '5.3.8'
springRetryVersion = '1.3.1'
}

Expand Down Expand Up @@ -325,6 +325,7 @@ project('spring-amqp') {

optionalApi 'com.fasterxml.jackson.core:jackson-core'
optionalApi 'com.fasterxml.jackson.core:jackson-databind'
optionalApi 'com.fasterxml.jackson.core:jackson-annotations'
optionalApi 'com.fasterxml.jackson.dataformat:jackson-dataformat-xml'

// Spring Data projection message binding support
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version=2.3.9-SNAPSHOT
version=2.4.0-SNAPSHOT
org.gradlee.caching=true
org.gradle.daemon=true
org.gradle.parallel=true
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2002-2020 the original author or authors.
* Copyright 2002-2021 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -150,7 +150,7 @@ void testStatelessRetryWithAllMessagesFailing() throws Exception {
}

@Test
void testStatefulRetryWithNoMessageIds() {
void testStatefulRetryWithNoMessageIds() throws Exception {

int messageCount = 2;
int txSize = 1;
Expand All @@ -165,11 +165,8 @@ void testStatefulRetryWithNoMessageIds() {
this.retryTemplate.setRetryContextCache(new MapRetryContextCache(1));
// The container should have shutdown, so there are now no active consumers
assertThatThrownBy(() -> doTestStatefulRetry(messageCount, txSize, failFrequency, concurrentConsumers))
.hasMessageContaining("Expecting:")
.hasMessageContaining(" <0>")
.hasMessageContaining("to be equal to")
.hasMessageContaining(" <1>")
.hasMessageContaining("but was not.");
.hasMessageContaining("expected: 1")
.hasMessageContaining("but was : 0");
}

@RepeatedTest(10)
Expand Down
62 changes: 62 additions & 0 deletions src/reference/asciidoc/appendix.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,68 @@ See <<whats-new>>.
[[previous-whats-new]]
=== Previous Releases

==== Changes in 2.3 Since 2.2

This section describes the changes between version 2.2 and version 2.3.
See <<change-history>> for changes in previous versions.

===== Connection Factory Changes

Two additional connection factories are now provided.
See <<choosing-factory>> for more information.

===== `@RabbitListener` Changes

You can now specify a reply content type.
See <<reply-content-type>> for more information.

===== Message Converter Changes

The `Jackson2JMessageConverter` s can now deserialize abstract classes (including interfaces) if the `ObjectMapper` is configured with a custom deserializer.
See <<jackson-abstract>> for more information.

===== Testing Changes

A new annotation `@SpringRabbitTest` is provided to automatically configure some infrastructure beans for when you are not using `SpringBootTest`.
See <<spring-rabbit-test>> for more information.

===== RabbitTemplate Changes

The template's `ReturnCallback` has been refactored as `ReturnsCallback` for simpler use in lambda expressions.
See <<template-confirms>> for more information.

When using returns and correlated confirms, the `CorrelationData` now requires a unique `id` property.
See <<template-confirms>> for more information.

When using direct reply-to, you can now configure the template such that the server does not need to return correlation data with the reply.
See <<direct-reply-to>> for more information.

===== Listener Container Changes

A new listener container property `consumeDelay` is now available; it is helpful when using the https://github.com/rabbitmq/rabbitmq-sharding[RabbitMQ Sharding Plugin].

The default `JavaLangErrorHandler` now calls `System.exit(99)`.
To revert to the previous behavior (do nothing), add a no-op handler.

The containers now support the `globalQos` property to apply the `prefetchCount` globally for the channel rather than for each consumer on the channel.

See <<containerAttributes>> for more information.

===== MessagePostProcessor Changes

The compressing `MessagePostProcessor` s now use a comma to separate multiple content encodings instead of a colon.
The decompressors can handle both formats but, if you produce messages with this version that are consumed by versions earlier than 2.2.12, you should configure the compressor to use the old delimiter.
See the IMPORTANT note in <<post-processing>> for more information.

===== Multiple Broker Support Improvements

See <<multi-rabbit>> for more information.

===== RepublishMessageRecoverer Changes

A new subclass of this recoverer is not provided that supports publisher confirms.
See <<async-listeners>> for more information.

==== Changes in 2.2 Since 2.1

This section describes the changes between version 2.1 and version 2.2.
Expand Down
61 changes: 2 additions & 59 deletions src/reference/asciidoc/whats-new.adoc
Original file line number Diff line number Diff line change
@@ -1,64 +1,7 @@
[[whats-new]]
== What's New

=== Changes in 2.3 Since 2.2
=== Changes in 2.4 Since 2.3

This section describes the changes between version 2.2 and version 2.3.
This section describes the changes between version 2.4 and version 2.4.
See <<change-history>> for changes in previous versions.

==== Connection Factory Changes

Two additional connection factories are now provided.
See <<choosing-factory>> for more information.

==== `@RabbitListener` Changes

You can now specify a reply content type.
See <<reply-content-type>> for more information.

==== Message Converter Changes

The `Jackson2JMessageConverter` s can now deserialize abstract classes (including interfaces) if the `ObjectMapper` is configured with a custom deserializer.
See <<jackson-abstract>> for more information.

==== Testing Changes

A new annotation `@SpringRabbitTest` is provided to automatically configure some infrastructure beans for when you are not using `SpringBootTest`.
See <<spring-rabbit-test>> for more information.

==== RabbitTemplate Changes

The template's `ReturnCallback` has been refactored as `ReturnsCallback` for simpler use in lambda expressions.
See <<template-confirms>> for more information.

When using returns and correlated confirms, the `CorrelationData` now requires a unique `id` property.
See <<template-confirms>> for more information.

When using direct reply-to, you can now configure the template such that the server does not need to return correlation data with the reply.
See <<direct-reply-to>> for more information.

==== Listener Container Changes

A new listener container property `consumeDelay` is now available; it is helpful when using the https://github.com/rabbitmq/rabbitmq-sharding[RabbitMQ Sharding Plugin].

The default `JavaLangErrorHandler` now calls `System.exit(99)`.
To revert to the previous behavior (do nothing), add a no-op handler.

The containers now support the `globalQos` property to apply the `prefetchCount` globally for the channel rather than for each consumer on the channel.

See <<containerAttributes>> for more information.

==== MessagePostProcessor Changes

The compressing `MessagePostProcessor` s now use a comma to separate multiple content encodings instead of a colon.
The decompressors can handle both formats but, if you produce messages with this version that are consumed by versions earlier than 2.2.12, you should configure the compressor to use the old delimiter.
See the IMPORTANT note in <<post-processing>> for more information.

==== Multiple Broker Support Improvements

See <<multi-rabbit>> for more information.

==== RepublishMessageRecoverer Changes

A new subclass of this recoverer is not provided that supports publisher confirms.
See <<async-listeners>> for more information.