Skip to content

refactor: Flexible encoding/decoding refactoring#3317

Merged
hindessm merged 2 commits intoIBM:mainfrom
hindessm:flexible-refactoring
Oct 1, 2025
Merged

refactor: Flexible encoding/decoding refactoring#3317
hindessm merged 2 commits intoIBM:mainfrom
hindessm:flexible-refactoring

Conversation

@hindessm
Copy link
Copy Markdown
Collaborator

Modify the flexible/compact handling to make the protocol code simpler.

Many thanks to @puellanivis for the feedback on #3303 which lead to this approach being used.

Create a separate decoder for flexible/compact entities and then
select the correct decoder for the request/response version.

Signed-off-by: beanz <[email protected]>
Create a separate encoder for flexible/compact entities and then
select the correct encoder for the request/response version.

Signed-off-by: beanz <[email protected]>
@hindessm hindessm force-pushed the flexible-refactoring branch from 28812d0 to e32aab9 Compare September 30, 2025 07:57
@dnwe dnwe added the internal label Sep 30, 2025
Copy link
Copy Markdown
Collaborator

@dnwe dnwe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! This will certainly make it much simpler and cleaner to extend our protocol support to the latest versions

@hindessm
Copy link
Copy Markdown
Collaborator Author

This change will have been worth the effort to me just to avoid having to decide in which manner to fix the inconsistent putNullableCompactString and getCompactNullableString method names. :-)

@hindessm hindessm merged commit 78601bd into IBM:main Oct 1, 2025
16 checks passed
@hindessm hindessm deleted the flexible-refactoring branch October 1, 2025 10:44
@dnwe dnwe mentioned this pull request Oct 1, 2025
dnwe added a commit that referenced this pull request Oct 3, 2025
Improve the api_versions_response_test in general to be more
representative of the different good and bad responses it might receive.

As part of that add some skipped tests and add a FIXME to note that
(since #3317) we need to determine a mechanism for ApiVersionsResponse
by which we can downgrade the decoder from flexible to non-flexible
after reading the ErrorCode.
dnwe added a commit that referenced this pull request Oct 3, 2025
Improve the api_versions_response_test in general to be more
representative of the different good and bad responses it might receive.

As part of that add some skipped tests and add a FIXME to note that
(since #3317) we need to determine a mechanism for ApiVersionsResponse
by which we can downgrade the decoder from flexible to non-flexible
after reading the ErrorCode.

Signed-off-by: Dominic Evans <[email protected]>
dnwe added a commit that referenced this pull request Oct 3, 2025
Improve the api_versions_response_test in general to be more
representative of the different good and bad responses it might receive.

As part of that add some skipped tests and add a FIXME to note that
(since #3317) we need to determine a mechanism for ApiVersionsResponse
by which we can downgrade the decoder from flexible to non-flexible
after reading the ErrorCode.

Signed-off-by: Dominic Evans <[email protected]>
dnwe added a commit that referenced this pull request Oct 3, 2025
Improve the api_versions_response_test in general to be more
representative of the different good and bad responses it might receive.

As part of that add some skipped tests and add a FIXME to note that
(since #3317) we need to determine a mechanism for ApiVersionsResponse
by which we can downgrade the decoder from flexible to non-flexible
after reading the ErrorCode.

Signed-off-by: Dominic Evans <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants