Release Train Ockham (2020.0.0) - spring-projects/spring-data-commons GitHub Wiki

This page contains a list of the most significant features and bugfixes implemented in the Spring Data Ockham release train that will not be back-ported into Neumann service releases. With this release train, we switch to a calver-based versioning scheme for the release train. The version follows the pattern YYYY.minor.micro where minor starts at 0 each year and gets incremented for each release in that year.

  • M1 - Jun 25, 2020
  • M2 - Aug 12, 2020
  • RC1 - Sept 16, 2020
  • RC2 - Oct 14, 2020
  • GA - Oct 28, 2020
  • OSS Support until: November 2021
  • End of Life: August 2022

Core themes

  • Switch Release Train version to calver (2020.0.0) and introduce spring-data-bom artifact.
  • Improve Graal Native Image experience.
  • Reactive SpEL context extensions and auditing support.
  • Include SDN-RX as Spring Data Neo4j 6.0.
  • Refactor Spring Data R2DBC on top of Spring Framework’s R2DBC module.
  • Upgrade to Redis 6.0.
  • De-lombok production code.

Summarizing blog posts

Participating modules

  1. Spring Data Build 2.4
  2. Spring Data Commons 2.4
  3. Spring Data JPA 2.4
  4. Spring Data MongoDB 3.1
  5. Spring Data Neo4j 6.0
  6. Spring Data for Apache Solr 4.2
  7. Spring Data Elasticsearch 4.1
  8. Spring Data Couchbase 4.1
  9. Spring Data for Apache Cassandra 3.1
  10. Spring Data for Apache Geode 2.4
  11. Spring Data Redis 2.4
  12. Spring Data REST 3.4
  13. Spring Data KeyValue 2.4
  14. Spring Data LDAP 2.4
  15. Spring Data JDBC 2.1
  16. Spring Data R2DBC 1.2
  17. Spring Data Envers 2.4

Spring Data Build - 2.4

M1

  • #1100 - Remove BOM in favor of Spring Data BOM.

Spring Data Commons - 2.4

M1

M2

  • DATACMNS-1108 - Reactive support for SpEL expressions using Reactor's Context abstraction.
  • DATACMNS-1231 - Add infrastructure for reactive auditing.
  • DATACMNS-1754 - Support nested classes/interfaces for repository fragments.
  • DATACMNS-1764 - Allow registration of QueryMethod invocation listeners for metrics collection.

RC2

Spring Data JPA - 2.4

M1

Spring Data MongoDB - 3.1

M1

M2

RC2

  • DATAMONGO-2294 - Support multiple parameters for query field projections.
  • DATAMONGO-2596 - Introduce extension to render KProperty/KPropertyPath as property path.
  • DATAMONGO-2630 - Add support for suspend repository query methods returning List<T>.

Spring Data Neo4j - 6.0

M1

Spring Data for Apache Solr - 4.2

M1

Spring Data Elasticsearch - 4.1

M1

M2

Spring Data Couchbase - 4.1

M1

Spring Data for Apache Cassandra - 3.1

M2

  • DATACASS-767 - Allow configuring keyspace per Statement.
  • DATACASS-784 - Add support for reactive auditing.
  • DATACASS-788 - Use reactive subscriber context for SpEL evaluation in query execution.

RC2

  • DATACASS-806 - Add support for suspend repository query methods returning List<T>.
  • DATACASS-809 - Add queryForStream methods to CqlOperations.
  • DATACASS-810 - Add DataClassRowMapper.

Spring Data for Apache Geode - 2.4

M1

Spring Data Redis - 2.4

M1

M2

RC1

RC2

Spring Data REST - 3.4

M1

Spring Data LDAP - 2.4

M1

Spring Data JDBC - 2.1

M2

RC2

  • DATAJDBC-430 - Add support for using Spring beans as RowMapper or ResultSetExtractor.

Spring Data R2DBC - 1.2

M2

  • #215 - Add lifecycle callbacks and EntityCallback support.
  • #281 - Add support for auditing.
  • #407 - Add ReactiveSortingRepository support.
  • #411 - Introduce EnumWriteSupport for simpler pass-thru of enum values.
  • #412 - Refactor Spring Data R2DBC on top of Spring R2DBC.
  • #414 - Use reactive subscriber context for SpEL evaluation in query execution.

RC1

  • #423 - Add r2dbc-postgresql Geotypes to simple types.
  • #447 - Register R2dbcConverter bean and deprecate ReactiveDataAccessStrategy.
  • #450 - Add support for @Value when creating entities using their constructor.
  • #453 - Introduce converters to consume Postgres Json and convert these to String/byte[].

RC2

  • #395 - Allow suspend + List in CoroutineCrudRepository.

Spring Data Envers - 2.4

M1