I am really not sure if I should address this here, but I found that the reactor-context branch breaks with Spring Boot Webflux 2.2.0M4. It works with 1.3.0 RC.
org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.security.config.annotation.web.reactive.ServerHttpSecurityConfiguration]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: kotlinx/coroutines/reactive/flow/PublisherAsFlowKt
This is the changes in Flow experimental API during 1.3 version evolution, right.
We can return it back in the form of hidden API to preserve binary compatibility and maintain for a release or two if it is required.
@sdeleuze WDYT?
We are now managing Coroutines version at Spring Boot level to provide the right version compatible with Spring Framework and we are still in RC/Milestone phase (even if late) so I think we can live without hidden API to preserve compat. I prefer a clean breakage that something that working partially. Of course it is important to get the final API asap since we are approaching of the GA.
What is the fix for this issue? I am not able to proceed further with this version. Please suggest a stable version which supports coroutines for spring boot
Use Spring Boot 2.2 snapshots with the provided Coroutines version (1.3.0-RC2). There is no released version yet.
I am getting some other errors when I use Spring Boot 2.2 and with 1.3.0-RC2 Coroutines. Can you please tell me the coroutines version which has PublisherAsFlow in the package "kotlinx/coroutines/reactive/flow". So that I will use the same version to resolve this issue rather than changing the spring boot version.
org.springframework.core.annotation.AnnotationConfigurationException: Attribute 'proxyBeanMethods' in annotation [org.springframework.boot.autoconfigure.SpringBootApplication] is declared as an @AliasFor nonexistent attribute 'proxyBeanMethods' in annotation [org.springframework.context.annotation.Configuration
As said previously, it is 1.3.0-RC2, and Coroutines version is now managed by Spring Boot so no need to specify the version. If you use Spring Boot 2.2.0.BUILD-SNAPSHOT, Spring Framework 5.2.0.BUILD-SNAPSHOT and Coroutines 1.3.0-RC2 it should work.
@sdeleuze it's seem to have a version conflict
Spring Boot 2.2.0.BUILD-SNAPSHOT use Coroutines 1.3.0-RC2
spring-data-r2dbc 1.0.0.BUILD-SNAPSHOT use Coroutines 1.2.1
from Coroutines 1.3.0-RC2 to Coroutines 1.2.1 the methode kotlinx.coroutines.reactive.flow.asFlow was moved to kotlinx.coroutines.reactive.asFlow
i don't know where I should open an isssu spring boot or spring data ?
Indeed, I am waiting Coroutines 1.3 GA to update the Spring Data side, it will be fixed in a few days, sorry for the inconvenience.
Coroutines 1.3.0 GA is up!
Most helpful comment
Coroutines
1.3.0GA is up!