aioble/server.py: Allow BufferedCharacteristic to support all ops. #729
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Updated version of #629 (adds a test and slightly simplifies the argument handling). I'm not too fussed about the backwards compatibility here because the existing behavior was broken, it never should have been read=True by default, rather it should have been
write=True
. (The whole point of the buffered characteristic is to allow the client to write larger values, and optionally have them accumulated via the append flag).Previously a BufferedCharacteristic could only be read by the client, where it should have been writeable. This makes it support all ops (read / write / write-with-response, etc).
Adds a test to check the max_len and append functionality of BufferedCharacteristic.
This work was funded through GitHub Sponsors.