Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move ReactorResourceFactory to org.springframework.http.client package #31399

Closed
sdeleuze opened this issue Oct 10, 2023 · 4 comments
Closed
Assignees
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Milestone

Comments

@sdeleuze
Copy link
Contributor

sdeleuze commented Oct 10, 2023

Due to #31280, ReactorResourceFactory is now used from org.springframework.http.client.ReactorNettyClientRequestFactory in addition to org.springframework.http.client.reactive.ReactorClientHttpConnector, so org.springframework.http.client.reactive is likely not the right package anymore for this class. After a discussion on the various options possible, the Spring Framework teams agreed on moving ReactorResourceFactory to org.springframework.http.client package, which is a breaking chance but one worth doing to have a sane arrangement.

I will communicate with the Spring Boot team upfront about that change.

@sdeleuze sdeleuze added in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement labels Oct 10, 2023
@sdeleuze sdeleuze added this to the 6.1.0-RC1 milestone Oct 10, 2023
@sdeleuze sdeleuze self-assigned this Oct 10, 2023
@sdeleuze sdeleuze changed the title Move ReactorNettyClientRequestFactory to org.springframework.http.client package Move ReactorResourceFactory to org.springframework.http.client package Oct 10, 2023
sdeleuze added a commit to sdeleuze/spring-framework that referenced this issue Oct 10, 2023
@wilkinsona
Copy link
Member

wilkinsona commented Oct 10, 2023

This is a breaking change for Boot users as defining a custom ReactorResourceFactory is a documented feature:

Given this, can we please have org.springframework.http.client.reactive.ReactorResourceFactory reinstated in deprecated form?

@sdeleuze sdeleuze reopened this Oct 10, 2023
@sdeleuze
Copy link
Contributor Author

Yes, I reopen this issue to perform what @wilkinsona suggested.

@chrislhardin
Copy link

yeah def a breaking change and to work around, I had to do an exclude for org.springframework.boot.autoconfigure.web.reactive.function.client.ClientHttpConnectorAutoConfiguration,org.springframework.boot.autoconfigure.web.reactive.function.client.WebClientAutoConfiguration to get around it but that may not work for other situations. Having it back in at least deprecated form until spring-boot-autoconfigure is updated to support it would be nice.

@sdeleuze
Copy link
Contributor Author

I have reintroduced a deprecated ReactorResourceFactory in org.springframework.http.client.reactive package that extends the one in org.springframework.http.client package to avoid an API breaking change and to provide a smoother upgrade experience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in: web Issues in web modules (web, webmvc, webflux, websocket) type: enhancement A general enhancement
Projects
None yet
Development

No branches or pull requests

3 participants