Upgrade from Lovelace M3 to Lovelace RC1 for examples requiring Lovelace. Upgrade to latest stable MongoDB drivers. Adapt to API changes. Un-pin examples that were previously bound to Spring Data Kay.
Use blocking queue for imperative synchronization to not depend on the actual machine timing. Refactor reactive API example to use StepVerifier.
Reuse embedded MongoDB utility.
Simplify Customer type using Lombok. Move test code from GridFsApplication to GridFsTests. Split tests into methods. Remove superfluous files.
Original pull request: #229.
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.
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.
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.
Tweaked the output folder for Querydsl type generation to avoid running into a bug in the Maven compiler plugin 3.5.1 [0].
Fixed an issue in a sample script used to demonstrate MongoDB script execution as the new JavaScript engine seems to be more strict.
Switched to the MongoDB starter and excluded the legacy MongoDB Java driver from projects using Querydsl to consistently make use of the current driver only.
[0] https://issues.apache.org/jira/browse/MCOMPILER-271
Requires an upgrade to snapshots as the JPA implementation is broken in Hopper SR1 but will be fixed in SR2 (Boot 1.4 RC1). Switched to use @SpringBootTest in test cases.
Removed all previous references to snpahosts. Removed explicit version declaration of Lombok as Boot sets that for us in 1.4.
Upgraded Elasticsearch dependency to 2.2 and uncommented the actual sample module as it needs to be updated due to API changes in Elasticsearch and Spring Data Elasticsearch in turn.
Adapt to API changes in entity lookup configuration for Spring Data REST.
Tweaked Neo4j build setup by using the dedicated embedded driver JAR.
Switched to renamed Redis starter POM.
Removed invalid @Transactional annotation from projections example in MongoDB.
Added Mark Paluch as contributor in the root POM.
Removed MongoDB dependency by adding Flapdoodle embedded MongoDB. That allows us to get rid of the utility module we had in place for the MongoDB samples guarding the tests to only run when a MongoDB instance is running.
Tweaked Travis setup to not require the MongoDB service anymore.
Use a server-side script to simulate putIfAbsent(…) as contracted by the Map interface. The operation will be atomic since MongoDB will put a lock on database until the script is finished.