jdaugherty opened a new pull request, #16619: URL: https://github.com/apache/grails-core/pull/16619
RxJava 1 and RxJava 2 are no longer maintained. This deprecates the `grails-async-rxjava` and `grails-async-rxjava2` modules for removal since Grails 8.1 and keeps `grails-async-rxjava3` as the supported implementation. ### Changes - `RxPromiseFactory` and `RxPromise` in both modules are annotated `@Deprecated(since = '8.1', forRemoval = true)`, with `@deprecated` javadoc naming `grails-async-rxjava3` as the replacement. - Both factories log a warning when they are created, so an application that still ships either module sees it at startup. - New `RxPromiseFactoryDeprecationSpec` in each module verifies the annotation, the warning, and that the service-loaded factory still produces working promises. The test runtime switches from `slf4j-nop` to `logback-classic` so the warning can be captured. - The promise factory table in the Promises chapter marks the RxJava 1 and 2 rows as deprecated with a warning admonition, and What's New gets an "RxJava 1 and RxJava 2 Promise Factories Deprecated" section. No behaviour of the deprecated modules changes. ### Not included - `grails-events-rxjava` and `grails-events-rxjava2` are left as they are; they can follow separately. - The `rx-mongodb` profile feature still references `grails-async-rxjava`, since RxGORM for MongoDB is itself RxJava 1 based. ### Verification - `./gradlew :grails-async-rxjava:test :grails-async-rxjava2:test :grails-async-rxjava:codeStyle :grails-async-rxjava2:codeStyle` passes locally. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
