Skip to content

Commit d8a98f9

Browse files
authored
Merge branch 'spring-projects:main' into main
2 parents add353e + 6268133 commit d8a98f9

File tree

305 files changed

+725
-800
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

305 files changed

+725
-800
lines changed

ci/pipeline.properties

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Java versions
2-
java.main.tag=17.0.15_6-jdk-focal
2+
java.main.tag=24.0.1_9-jdk-noble
33
java.next.tag=24.0.1_9-jdk-noble
44

55
# Docker container images - standard
@@ -14,7 +14,6 @@ docker.mongodb.8.0.version=8.0.9
1414
# Supported versions of Redis
1515
docker.redis.6.version=6.2.13
1616
docker.redis.7.version=7.2.4
17-
docker.valkey.8.version=8.1.1
1817

1918
# Docker environment settings
2019
docker.java.inside.basic=-v $HOME:/tmp/jenkins-home

pom.xml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,20 @@
55

66
<groupId>org.springframework.data</groupId>
77
<artifactId>spring-data-elasticsearch</artifactId>
8-
<version>5.5.0-SNAPSHOT</version>
8+
<version>6.0.0-SNAPSHOT</version>
99

1010
<parent>
1111
<groupId>org.springframework.data.build</groupId>
1212
<artifactId>spring-data-parent</artifactId>
13-
<version>3.5.0-SNAPSHOT</version>
13+
<version>4.0.0-SNAPSHOT</version>
1414
</parent>
1515

1616
<name>Spring Data Elasticsearch</name>
1717
<description>Spring Data Implementation for Elasticsearch</description>
1818
<url>https://github.com/spring-projects/spring-data-elasticsearch</url>
1919

2020
<properties>
21-
<springdata.commons>3.5.0-SNAPSHOT</springdata.commons>
21+
<springdata.commons>4.0.0-SNAPSHOT</springdata.commons>
2222

2323
<!-- version of the ElasticsearchClient -->
2424
<elasticsearch-java>9.0.1</elasticsearch-java>
@@ -144,6 +144,13 @@
144144
</exclusions>
145145
</dependency>
146146

147+
<dependency>
148+
<groupId>com.querydsl</groupId>
149+
<artifactId>querydsl-core</artifactId>
150+
<version>${querydsl}</version>
151+
<optional>true</optional>
152+
</dependency>
153+
147154
<!-- Jackson JSON Mapper -->
148155
<dependency>
149156
<groupId>com.fasterxml.jackson.core</groupId>

src/main/antora/modules/ROOT/pages/elasticsearch/auditing.adoc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ In order for the auditing code to be able to decide whether an entity instance i
1010
----
1111
package org.springframework.data.domain;
1212
13-
import org.springframework.lang.Nullable;
13+
import org.jspecify.annotations.Nullable;
1414
1515
public interface Persistable<ID> {
1616
@Nullable
@@ -81,5 +81,5 @@ class MyConfiguration {
8181
}
8282
----
8383

84-
If your code contains more than one `AuditorAware` bean for different types, you must provide the name of the bean to use as an argument to the `auditorAwareRef` parameter of the
85-
`@EnableElasticsearchAuditing` annotation.
84+
If your code contains more than one `AuditorAware` bean for different types, you must provide the name of the bean to use as an argument to the `auditorAwareRef` parameter of the
85+
`@EnableElasticsearchAuditing` annotation.

src/main/antora/modules/ROOT/pages/elasticsearch/scripted-and-runtime-fields.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ Whereas the birthdate is fix, the age depends on the time when a query is issued
2020
====
2121
[source,java]
2222
----
23+
import org.jspecify.annotations.Nullable;
2324
import org.springframework.data.annotation.Id;
2425
import org.springframework.data.elasticsearch.annotations.DateFormat;
2526
import org.springframework.data.elasticsearch.annotations.Document;
2627
import org.springframework.data.elasticsearch.annotations.Field;
2728
import org.springframework.data.elasticsearch.annotations.ScriptedField;
28-
import org.springframework.lang.Nullable;
2929
3030
import java.time.LocalDate;
3131
import java.time.format.DateTimeFormatter;

src/main/antora/modules/ROOT/pages/elasticsearch/versions.adoc

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ The following table shows the Elasticsearch and Spring versions that are used by
66
[cols="^,^,^,^",options="header"]
77
|===
88
| Spring Data Release Train | Spring Data Elasticsearch | Elasticsearch | Spring Framework
9-
| 2025.0 (in development) | 5.5.x | 8.18.1 | 6.2.x
9+
| 2025.1 (in development) | 6.0.x | 8.18.1 | 7.0.x
10+
| 2025.0 | 5.5.x | 8.18.1 | 6.2.x
1011
| 2024.1 | 5.4.x | 8.15.5 | 6.1.x
11-
| 2024.0 | 5.3.x | 8.13.4 | 6.1.x
12-
| 2023.1 (Vaughan) | 5.2.xfootnote:oom[Out of maintenance] | 8.11.1 | 6.1.x
12+
| 2024.0 | 5.3.xfootnote:oom[Out of maintenance] | 8.13.4 | 6.1.x
13+
| 2023.1 (Vaughan) | 5.2.xfootnote:oom[] | 8.11.1 | 6.1.x
1314
| 2023.0 (Ullmann) | 5.1.xfootnote:oom[] | 8.7.1 | 6.0.x
1415
| 2022.0 (Turing) | 5.0.xfootnote:oom[] | 8.5.3 | 6.0.x
1516
| 2021.2 (Raj) | 4.4.xfootnote:oom[] | 7.17.3 | 5.3.x

src/main/java/org/springframework/data/elasticsearch/ElasticsearchErrorCause.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,18 @@
1515
*/
1616
package org.springframework.data.elasticsearch;
1717

18-
import org.springframework.lang.Nullable;
19-
2018
import java.util.List;
2119

20+
import org.jspecify.annotations.Nullable;
21+
2222
/**
2323
* Object describing an Elasticsearch error
2424
*
2525
* @author Peter-Josef Meisch
2626
* @since 4.4
2727
*/
2828
public class ElasticsearchErrorCause {
29-
@Nullable
30-
private final String type;
29+
@Nullable private final String type;
3130

3231
private final String reason;
3332

src/main/java/org/springframework/data/elasticsearch/UncategorizedElasticsearchException.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
*/
1616
package org.springframework.data.elasticsearch;
1717

18+
import org.jspecify.annotations.Nullable;
1819
import org.springframework.dao.UncategorizedDataAccessException;
19-
import org.springframework.lang.Nullable;
2020

2121
/**
2222
* @author Peter-Josef Meisch
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
@org.springframework.lang.NonNullApi
2-
@org.springframework.lang.NonNullFields
1+
@org.jspecify.annotations.NullMarked
32
package org.springframework.data.elasticsearch.annotations;

src/main/java/org/springframework/data/elasticsearch/aot/SpringDataElasticsearchRuntimeHints.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import java.util.Arrays;
2121

22+
import org.jspecify.annotations.Nullable;
2223
import org.springframework.aot.hint.MemberCategory;
2324
import org.springframework.aot.hint.RuntimeHints;
2425
import org.springframework.aot.hint.RuntimeHintsRegistrar;
@@ -32,7 +33,6 @@
3233
import org.springframework.data.elasticsearch.core.event.ReactiveAfterLoadCallback;
3334
import org.springframework.data.elasticsearch.core.event.ReactiveAfterSaveCallback;
3435
import org.springframework.data.elasticsearch.core.event.ReactiveBeforeConvertCallback;
35-
import org.springframework.lang.Nullable;
3636

3737
/**
3838
* @author Peter-Josef Meisch
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
@org.springframework.lang.NonNullApi
2-
@org.springframework.lang.NonNullFields
1+
@org.jspecify.annotations.NullMarked
32
package org.springframework.data.elasticsearch.aot;

src/main/java/org/springframework/data/elasticsearch/client/ClientConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@
2525
import javax.net.ssl.HostnameVerifier;
2626
import javax.net.ssl.SSLContext;
2727

28+
import org.jspecify.annotations.Nullable;
2829
import org.springframework.data.elasticsearch.support.HttpHeaders;
29-
import org.springframework.lang.Nullable;
3030

3131
/**
3232
* Configuration interface exposing common client configuration properties for Elasticsearch clients.

src/main/java/org/springframework/data/elasticsearch/client/ClientConfigurationBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,11 @@
2525
import javax.net.ssl.HostnameVerifier;
2626
import javax.net.ssl.SSLContext;
2727

28+
import org.jspecify.annotations.Nullable;
2829
import org.springframework.data.elasticsearch.client.ClientConfiguration.ClientConfigurationBuilderWithRequiredEndpoint;
2930
import org.springframework.data.elasticsearch.client.ClientConfiguration.MaybeSecureClientConfigurationBuilder;
3031
import org.springframework.data.elasticsearch.client.ClientConfiguration.TerminalClientConfigurationBuilder;
3132
import org.springframework.data.elasticsearch.support.HttpHeaders;
32-
import org.springframework.lang.Nullable;
3333
import org.springframework.util.Assert;
3434

3535
/**

src/main/java/org/springframework/data/elasticsearch/client/DefaultClientConfiguration.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,8 @@
2424
import javax.net.ssl.HostnameVerifier;
2525
import javax.net.ssl.SSLContext;
2626

27-
import org.elasticsearch.client.RestClientBuilder.HttpClientConfigCallback;
27+
import org.jspecify.annotations.Nullable;
2828
import org.springframework.data.elasticsearch.support.HttpHeaders;
29-
import org.springframework.lang.Nullable;
3029

3130
/**
3231
* Default {@link ClientConfiguration} implementation.

src/main/java/org/springframework/data/elasticsearch/client/elc/AbstractQueryProcessor.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717

1818
import java.util.function.Consumer;
1919

20+
import org.jspecify.annotations.Nullable;
2021
import org.springframework.data.elasticsearch.core.query.CriteriaQuery;
2122
import org.springframework.data.elasticsearch.core.query.Query;
2223
import org.springframework.data.elasticsearch.core.query.StringQuery;
23-
import org.springframework.lang.Nullable;
2424

2525
/**
2626
* An abstract class that serves as a base for query processors. It provides a common interface and basic functionality
@@ -38,8 +38,8 @@ public abstract class AbstractQueryProcessor {
3838
* @param queryConverter correct mapped field names and the values to the converted values.
3939
* @return an Elasticsearch {@literal query}.
4040
*/
41-
@Nullable
42-
static co.elastic.clients.elasticsearch._types.query_dsl.Query getEsQuery(@Nullable Query query,
41+
42+
static co.elastic.clients.elasticsearch._types.query_dsl.@Nullable Query getEsQuery(@Nullable Query query,
4343
@Nullable Consumer<Query> queryConverter) {
4444
if (query == null) {
4545
return null;

src/main/java/org/springframework/data/elasticsearch/client/elc/CriteriaQueryProcessor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@
3131
import java.util.List;
3232
import java.util.Objects;
3333

34+
import org.jspecify.annotations.Nullable;
3435
import org.springframework.data.elasticsearch.annotations.FieldType;
3536
import org.springframework.data.elasticsearch.core.query.Criteria;
3637
import org.springframework.data.elasticsearch.core.query.Field;
3738
import org.springframework.data.elasticsearch.core.query.HasChildQuery;
3839
import org.springframework.data.elasticsearch.core.query.HasParentQuery;
3940
import org.springframework.data.elasticsearch.core.query.InnerHitsQuery;
40-
import org.springframework.lang.Nullable;
4141
import org.springframework.util.Assert;
4242

4343
/**

src/main/java/org/springframework/data/elasticsearch/client/elc/DocumentAdapters.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,14 @@
3434

3535
import org.apache.commons.logging.Log;
3636
import org.apache.commons.logging.LogFactory;
37+
import org.jspecify.annotations.Nullable;
3738
import org.springframework.data.elasticsearch.core.MultiGetItem;
3839
import org.springframework.data.elasticsearch.core.document.Document;
3940
import org.springframework.data.elasticsearch.core.document.Explanation;
4041
import org.springframework.data.elasticsearch.core.document.NestedMetaData;
4142
import org.springframework.data.elasticsearch.core.document.SearchDocument;
4243
import org.springframework.data.elasticsearch.core.document.SearchDocumentAdapter;
4344
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
44-
import org.springframework.lang.Nullable;
4545
import org.springframework.util.Assert;
4646

4747
/**
@@ -160,7 +160,7 @@ public static SearchDocument from(CompletionSuggestOption<EntityAsMap> completio
160160
}
161161

162162
@Nullable
163-
private static Explanation from(@Nullable co.elastic.clients.elasticsearch.core.explain.Explanation explanation) {
163+
private static Explanation from(co.elastic.clients.elasticsearch.core.explain.@Nullable Explanation explanation) {
164164

165165
if (explanation == null) {
166166
return null;

src/main/java/org/springframework/data/elasticsearch/client/elc/ElasticsearchAggregations.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
import java.util.List;
2323
import java.util.Map;
2424

25+
import org.jspecify.annotations.Nullable;
2526
import org.springframework.data.elasticsearch.core.AggregationsContainer;
26-
import org.springframework.lang.Nullable;
2727
import org.springframework.util.Assert;
2828

2929
/**

src/main/java/org/springframework/data/elasticsearch/client/elc/ElasticsearchClientFactoryBean.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919

2020
import org.apache.commons.logging.Log;
2121
import org.apache.commons.logging.LogFactory;
22+
import org.jspecify.annotations.Nullable;
2223
import org.springframework.beans.factory.DisposableBean;
2324
import org.springframework.beans.factory.FactoryBean;
2425
import org.springframework.beans.factory.FactoryBeanNotInitializedException;
2526
import org.springframework.beans.factory.InitializingBean;
2627
import org.springframework.data.elasticsearch.client.ClientConfiguration;
27-
import org.springframework.lang.Nullable;
2828
import org.springframework.util.Assert;
2929

3030
/**

src/main/java/org/springframework/data/elasticsearch/client/elc/ElasticsearchClients.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,9 @@
4646
import org.elasticsearch.client.RequestOptions;
4747
import org.elasticsearch.client.RestClient;
4848
import org.elasticsearch.client.RestClientBuilder;
49+
import org.jspecify.annotations.Nullable;
4950
import org.springframework.data.elasticsearch.client.ClientConfiguration;
5051
import org.springframework.data.elasticsearch.support.HttpHeaders;
51-
import org.springframework.lang.Nullable;
5252
import org.springframework.util.Assert;
5353

5454
/**

src/main/java/org/springframework/data/elasticsearch/client/elc/ElasticsearchTemplate.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040

4141
import org.apache.commons.logging.Log;
4242
import org.apache.commons.logging.LogFactory;
43+
import org.jspecify.annotations.Nullable;
4344
import org.springframework.data.elasticsearch.BulkFailureException;
4445
import org.springframework.data.elasticsearch.client.UnsupportedBackendOperation;
4546
import org.springframework.data.elasticsearch.core.AbstractElasticsearchTemplate;
@@ -59,7 +60,6 @@
5960
import org.springframework.data.elasticsearch.core.reindex.ReindexResponse;
6061
import org.springframework.data.elasticsearch.core.script.Script;
6162
import org.springframework.data.elasticsearch.core.sql.SqlResponse;
62-
import org.springframework.lang.Nullable;
6363
import org.springframework.util.Assert;
6464

6565
/**

src/main/java/org/springframework/data/elasticsearch/client/elc/HighlightQueryBuilder.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@
2020
import java.util.Arrays;
2121
import java.util.stream.Collectors;
2222

23+
import org.jspecify.annotations.Nullable;
2324
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
2425
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentProperty;
2526
import org.springframework.data.elasticsearch.core.query.highlight.Highlight;
2627
import org.springframework.data.elasticsearch.core.query.highlight.HighlightField;
2728
import org.springframework.data.elasticsearch.core.query.highlight.HighlightFieldParameters;
2829
import org.springframework.data.elasticsearch.core.query.highlight.HighlightParameters;
2930
import org.springframework.data.mapping.context.MappingContext;
30-
import org.springframework.lang.Nullable;
3131
import org.springframework.util.StringUtils;
3232

3333
/**
@@ -43,7 +43,8 @@ class HighlightQueryBuilder {
4343
private final RequestConverter requestConverter;
4444

4545
HighlightQueryBuilder(
46-
MappingContext<? extends ElasticsearchPersistentEntity<?>, ElasticsearchPersistentProperty> mappingContext, RequestConverter requestConverter) {
46+
MappingContext<? extends ElasticsearchPersistentEntity<?>, ElasticsearchPersistentProperty> mappingContext,
47+
RequestConverter requestConverter) {
4748
this.mappingContext = mappingContext;
4849
this.requestConverter = requestConverter;
4950
}

src/main/java/org/springframework/data/elasticsearch/client/elc/IndicesTemplate.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import java.util.Objects;
2828
import java.util.Set;
2929

30+
import org.jspecify.annotations.Nullable;
3031
import org.springframework.core.annotation.AnnotatedElementUtils;
3132
import org.springframework.dao.InvalidDataAccessApiUsageException;
3233
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
@@ -49,7 +50,6 @@
4950
import org.springframework.data.elasticsearch.core.mapping.CreateIndexSettings;
5051
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
5152
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
52-
import org.springframework.lang.Nullable;
5353
import org.springframework.util.Assert;
5454

5555
/**

src/main/java/org/springframework/data/elasticsearch/client/elc/JsonUtils.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
import org.apache.commons.logging.Log;
2525
import org.apache.commons.logging.LogFactory;
26-
import org.springframework.lang.Nullable;
26+
import org.jspecify.annotations.Nullable;
2727

2828
/**
2929
* @author Peter-Josef Meisch
@@ -48,7 +48,7 @@ public static String toJson(Object object, JsonpMapper mapper) {
4848
}
4949

5050
@Nullable
51-
public static String queryToJson(@Nullable co.elastic.clients.elasticsearch._types.query_dsl.Query query,
51+
public static String queryToJson(co.elastic.clients.elasticsearch._types.query_dsl.@Nullable Query query,
5252
JsonpMapper mapper) {
5353

5454
if (query == null) {

0 commit comments

Comments
 (0)