Skip to content

Spring Data 2023.0 (Ullman) Release Notes

Oliver Drotbohm edited this page Mar 2, 2023 · 29 revisions

General Themes

  • AOT reflection Hints for Querydsl Q classes

  • Add support for Kotlin Inline classes

  • Add keyset-based pagination for MongoDB and JPA modules

Participating Modules

Details

New and Noteworthy

Spring Data Commons - 3.1

Spring Data JPA - 3.1

Spring Data Relational - 3.1

Spring Data MongoDB - 4.1

Improved ReadPreference & ReadConcern handling

The new API now allows defining both, the ReadPreference, how the client routes an operation to members of a replica set and the ReadConcern, that controls read consistency and isolation level, for queries, aggregations and geo-near operations.

Support for let and pipeline in $lookup aggregation stage

The newly introduced options allow making use of MongoDB’s ability to perform correlated-subqueries which also removes the need for an equality match on the foreign fields.

Aggregation.lookup().from("restaurants")
  .localField("restaurant_name")
  .foreignField("name")
  .let(newVariable("orders_drink").forField("drink"))
  .pipeline(match(ctx -> new Document("$expr", new Document("$in", List.of("$$orders_drink", "$beverages")))))
  .as("matches");

Spring Data Neo4j - 7.1

Spring Data Elasticsearch - 5.1

Spring Data Couchbase - 5.1

Spring Data for Apache Cassandra - 4.1

Spring Data Redis - 3.1

Spring Data KeyValue - 3.1

Spring Data REST - 4.1

Support for returning response bodies when deleting item resources — #2225

RepositoryRestConfiguration now exposes a ….setReturnResponseBodyOnDelete(…) to forcibly enable or disable a response body written when deleting item resources. The default (the option set to null) now considers the Accept header similar to what we already do for POST and PUT requests. If present, a body will be returned alongside a status code of 200. If not, it will stay a 204.

Support for Slice as return type of methods backing query method resources — #2235

Repository methods returning a Slice are now properly turned into a Spring HATEOAS SlicedModel to then render the corresponding SliceMetadata and hypermedia elements to traverse the previous and next slice.

Spring Data LDAP - 3.1

Release Dates

  • M1/M2 - Feb 17, 2023

  • M3 - Mar 17, 2022

  • RC1 - Apr 14, 2022

  • GA - May 12, 2022

  • OSS Support until: May 18, 2024

  • End of Life: Aug 18 2025

Clone this wiki locally