-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Suport new Spring Boot 3 autoconfiguration imports file #1766
Comments
Is this issue fixed in Resilience4J 2.0.0? I tried using Spring Boot 3.0.0 with Resilience4J 2.0.0 in the project git@github.com:resilience4j/resilience4j-spring-boot2-demo.git. I simply upgraded Spring Boot to 3.0.0 in the file It resulted in all tests failing on missing bean exceptions. After adding a file described above, e.g. https://github.com/spring-cloud/spring-cloud-circuitbreaker/blob/main/spring-cloud-circuitbreaker-resilience4j/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports, all tests, and the build run ok. |
aah |
Yes, it has to. |
I added a new |
Great, thanks! I tried out the new resilience4j-spring-boot3 v2.0.1-SNAPSHOT - module, and it worked fine! I'll try out the resilience4j-spring-boot3-demo - project as soon as I can find some time. I'll report issues, if any :-) |
The module |
@RobWin what should we be using instead of Vavr? I see the dependency was removed, but the documentation samples still show it being used. |
Do you have a concrete example where you are using Vavr? In most of the cases Vavr can still be used with some small adjustments. |
Similar to this example from the docs // Given // When I decorate my function // and chain an other function with map // Then the Try Monad returns a Success, if all functions ran successfully. |
Yes thanks. I need to fix the docs. Together with Vavr, it would look like this now. CheckedSupplier is not backwards-compatible:
Supplier is backwards-compatible:
But of course a simple try/catch would also work :D |
But doesn't that imply we now need to include the Vavr dependency ourselves? |
Yes, if you still want to make use of Vavr features. |
No we were just using it because it was inherited through Resilience4J |
Correct, there are are a couple of other places as well, but they are all similar |
I think I would drop Vavr in Cloud Circuitbreaker 3.x and replace it by a try/catch. |
OK thats simple enough. FYI we won't be able to upgrade to 2.0.0 because of this Can you point me to the snapshots repo so I can try 2.0.1? |
Yes, I plan to release 2.0.1 as soon as the next PR is merged. Repo is: https://oss.sonatype.org/content/repositories/snapshots |
OK I can confirm 2.0.1-SNAPSHOT works. We plan on doing our GA release of Spring Cloud CircuitBreaker based on Spring Boot 3.0.0 on December 14th. It would be great is we could have the next Resilience4J release included in that. |
Should be possible :) |
Awesome! Thanks for the help! Just tag me when the new release is available. |
FYI might want to update docs here on snapshots https://resilience4j.readme.io/docs/gradle |
2.0.1 is released |
Thanks! I just pushed the changes to Spring Cloud CircuitBreaker! |
@ryanjbaxter I have to release a 2.0.2 version, because of a bug :/ |
Thanks, I have upgraded |
Spring Boot 2.7 added a new mechanism to specify auto-configuration. See spring-projects/spring-boot#29698
Spring Boot 3 removed the ability to load auto-configuration via spring.factories spring-projects/spring-boot#29699
https://github.com/spring-cloud/spring-cloud-circuitbreaker will add these temporarily until support is added here.
/cc @ryanjbaxter
The text was updated successfully, but these errors were encountered: