Removed Spring Framework 5 build profile as Boot 2.0 is based on that already. Removed obsolete custom property to use Spring Data Kay. Removed explicit declaration of the compiler plugin as Boot defaults to Java 8 and compiling with -parameters now.
Removed fixed versions of dependencies. Removed explicit declaration of Lettuce version as it is now managed by Boot. Switched to Lettuce as primary Redis driver in application setup. We keep using Jedis in the embedded server support.
Adapt to changed API. Migrate tests to use AssertJ. Re-enable Cassandra examples. Adapt Cassandra examples to relocated packages. Adapt reactive Cassandra examples to removed insert(Publisher) method.
Exclude the reporter-config3 library from cassandra-all as it pulls in an outdated hibernate-validator version 4.3.0 that conflicts with Spring Boot's Hibernate Validator baseline and it's not required during tests because we don't publish any metrics.
The modifying query now clears the EntityManager so that the changes are really flushed to the database. This is necessary as Boot 2.0 flips the default for Hibernate's new identifier mappings which causes entities less aggressively being flushed and the previously used detach apparently removing them from the persistence context without ever making it to the database.
Bumped version number to 2.0. Upgraded to Spring Boot 2.0.
Stuff disabled in the meantime:
- Cassandra: needs API adaptions in configuration
- JPA > Security: test fails with weird Hibernate error
- Redis > Reactive: API updates needed
- Solr: configration updates necessary
adjust versions
Updated elastic search to the new version.
Fixed the reactor version to Bismuth-BUILD-SNAPSHOT. This probably should be undone when boot references the proper bom.
Exclude CassandraDataAutoConfiguration because the referenced Spring Data Cassandra version is not compatible with CassandraDataAutoConfiguration. Refactor bulk loading to flapMap(…) as CassandraTemplate.insert(…) no longer accepts an entity stream.
Upgraded to Boot 1.5.6. Updated dependencies of reactive projects to latest versions to make sure the APIs of Boot work with the changes in Spring Data Kay RC1. Upgraded all other dependencies to match and got both the Redis and the Cassandra examples to compile again.
Disabled Cassandra reactive samples for now as they fail at runtime.
We now calculate the equals(…) and hashCode() methods by looking at the indentifier only. Removed default constructor in favor of Lombok's @NoArgConstructor.
Rename the Redis cluster-sentinel project to sentinel and leave a hint in the cluster-sentinel directory that points to the Redis Cluster and Redis Sentinel examples mentioning clarifying the cluster-sentinel naming.
Port handling for embedded MongoDB use has changed. Spring Boot no longer writes the port to MongoProperties but updates property sources to provide local.mongo.port so the reactive configuration is required to read local.mongo.port to obtain the port.
Embedded MongoDB auto-configuration randomizes its port. Configuration happens during the creation of embeddedMongoServer so our MongoClient creation must be delayed until then.
We now check whether an external Apache Cassandra instance is available at localhost:9042 and use it to run the examples. Otherwise, if no external Apache Cassandra instance is available, we start an embedded Cassandra instance.