-
Notifications
You must be signed in to change notification settings - Fork 17
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
BREAKING CHANGE: buffers exposed as binary, as a UTF-8 string #94
Conversation
6d865f5
to
8f92672
Compare
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.
Nearly there!
Some data type inaccuracies to correct and very minor code cleanup required.
Thanks for your review! |
540335e
to
31fb3b3
Compare
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.
A few more changes needed.
Now that the code has specific support for C++20 the CI tests should compile and run with both C++17 and C++20.
Already add c++20 CI tests in pipeline |
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.
Some more minor changes and one question regading C++14 (which we might have previously supported).
We didn't support C++14(or lower) since |
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.
Looking good!
685a98f
to
84b09b0
Compare
Overview
This change introduces a minor breaking API change.
In preparation for follow-up work, the ILP buffer will change from always internally serializing to a UTF-8 string to serializing to binary data.
This PR changes the API to allow this, without changing any of the functionality or wire format.
Detail
The APIs that exposes the buffer in Rust (
.as_str()
), C (line_sender_buffer_peek
) and C++ (buffer::peek()
) have been changed to return a binary buffer.In Rust specifically, the
.as_str()
method has been renamed to.as_bytes()
.This PR closes #89
Internally this change swaps
Buffer
's backing from aString
to aVec<u8>
.