spring-cloud / spring-cloud-config

External configuration (server and client) for Spring Cloud
Apache License 2.0
1.95k stars 1.29k forks source link

[Refactoring] Introduce RequestContext to easily pass new parameters to downstream methods #2408

Open opeco17 opened 5 months ago

opeco17 commented 5 months ago

Fixes https://github.com/spring-cloud/spring-cloud-config/issues/2407

opeco17 commented 5 months ago

Hi, @ryanjbaxter @spencergibb

Could you please review this PR? Thank you!

ryanjbaxter commented 5 months ago

I think this is the right idea for where we want to go.

The issue is as is it could only go in a major release because of the breaking API changes. That is fine but after talking about it some more with the team we should really be deprecating the existing public APIs in the 2024 release (which will be a minor) and then remove them in 2025 release (which will likely be our next major). Its more of a process thing than anything else, but this way we could also get #2402 in the 2024 release as well.

opeco17 commented 5 months ago

@ryanjbaxter

Thank you for sharing. It would be nice if #2402 becomes available in 2024 release.

May I know the next action that I should take? Is some revise to this PR necessary?

ryanjbaxter commented 5 months ago

Yes we would need to keep the existing public APIs intact and unchanged and mark them all as @Deprecated then introduce the new ones (as you already have in this PR) which use the RequestContext object.