codeconsole commented on PR #16230:
URL: https://github.com/apache/grails-core/pull/16230#issuecomment-5429317555

   Follow-up on the legacy async-library integrations: the current PR does 
**not** remove them. The branch still builds, publishes, documents, and 
discovers these optional PromiseFactory implementations through `ServiceLoader`:
   
   - GPars 1.2.1 (`grails-async-gpars`)
   - RxJava 1.3.8 (`grails-async-rxjava`)
   - RxJava 2.2.21 (`grails-async-rxjava2`)
   - RxJava 3 (`grails-async-rxjava3`)
   
   None of these libraries is required for `grails-async` functionality 
anymore. The modern baseline can be implemented entirely with JDK 
`CompletableFuture`, Spring Boot's managed `applicationTaskExecutor`, Spring 
MVC async processing, and the existing Groovy `Promise` facade.
   
   Recommended disposition:
   
   - Remove RxJava 1 support because it is end-of-life.
   - Remove RxJava 2 support because it has been superseded by RxJava 3.
   - Remove GPars support from `grails-async`; it provides no required 
capability over the new JDK/Spring implementation.
   - Prefer removing RxJava 3 as well unless Grails intentionally wants to 
maintain first-party RxJava interoperability.
   
   Removing all four adapters would leave a single supported JDK/Spring 
implementation while retaining the `PromiseFactory` SPI for independently 
maintained integrations. It would also eliminate the current behavior where 
adding a provider library to the classpath can silently replace the global 
promise engine through `ServiceLoader`.
   
   This is a user-visible breaking change because these modules are published 
artifacts, so it should be documented in the Grails 8 release and migration 
notes. It also requires a broader repository review: `grails-events-gpars` 
remains a separate optional event bus, `grails-cache` exposes GPars as an API 
dependency, and Neo4j uses GPars in tests.
   


-- 
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]

Reply via email to