-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Fix StackOverflow on cyclic references involving collections. #4512
Fix StackOverflow on cyclic references involving collections. #4512
Conversation
03730a5
to
56cf440
Compare
56cf440
to
4a182f7
Compare
@andreaTP, I have added keycloak test in the latest commit, just to see how that would look like. |
Thanks, a lot @xRodney ! At least, this guarantees us that we are at the end of the tunnel 🙂 super glad you picked it up! Let @manusa and @rohanKanojia decide whether they think adding this hard dependency to test is a good idea or not. |
a7cced0
to
80cf4ad
Compare
80cf4ad
to
0a80f73
Compare
Hi, @manusa and @rohanKanojia, do you have any opinion on this? |
Okay, so regarding my original uncertainty regarding the purpose of About Keycloak dependency: |
0a80f73
to
849d45b
Compare
Hi, sorry for the delayed response, it's been 4 long hectic weeks and I'm now catching up with everything
Yes, it's better we discuss this separately. In general it's better to proceed this way since otherwise things get delayed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
code-wise looks good.
🙏 Andrea/Chris check if feature-wise it's OK.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for the separate PR on the Keycloak CR 👍
849d45b
to
0975eae
Compare
Kudos, SonarCloud Quality Gate passed! |
Description
The logic in ClassDependenciesVisitor was prone to SO when there were cyclic references in the schema. This should fix it, and the tests are still passing, so hopefully it is safe.
Fixes #4510
TBH, I do not fully understand the purpose of ClassDependenciesVisitor, I realize it it used in tests and maybe when someone would want to include the generator in their own code? I would be grateful for some pointers.It appears that it exists mostly to facilitate conditional hot reload when used with quarkus, as implemented here https://github.com/quarkiverse/quarkus-operator-sdk/blob/main/core/deployment/src/main/java/io/quarkiverse/operatorsdk/deployment/OperatorSDKProcessor.java#L187
This still works with my changes, see my comment below.
Type of change
test, version modification, documentation, etc.)
Checklist