We now use StepVerifier and RxJava's .test() methods instead of .block() calls. Using blocking methods is an anti pattern which should be avoided within tests. Test API comes with timeouts and protects tests from never completing.
Replace flatMap(…) operator after collection drop with then(…) to create the collection regardless of whether the previous operation emitted an element or not.
Collect emitted elements to add an assertion and fail if the tailing does not work.
Tweak bom to reflect Spring Framework and Spring Data versions.
Remove reactive Couchbase configuration code required prior to Spring Boot 2.0 M7.
Tweak CORS examples to adapt to Spring Framework's disabled allowCredentials by default.
Add license headers. Replace CouchbaseConfiguration with Spring Boot properties. Post-process example data to make it accessible for repository use. Fix Id type. Add examples for N1ql and view access.
Enable couchbase examples in parent pom.
Add test rule to skip tests if Couchbase is not available.
Original pull request: #275.
Previously, the deprecated hibernate-entitymanager dependency was excluded but that was not taking effect, since current spring-boot-starter-data-jpa depends on hibernate-core.
Tweaked setup of in-memory user accounts in Spring Security example to accommodate the changes in Password encoding.
Tweaked Elasticsearch examples to use Log4j 2 instead of Logback as embedded Elasticsearch requires it to run properly.
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.