Skip to content
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

Support CBOR serialization #19

Open
6 tasks
VigneshVSV opened this issue Jul 27, 2024 · 0 comments
Open
6 tasks

Support CBOR serialization #19

VigneshVSV opened this issue Jul 27, 2024 · 0 comments
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@VigneshVSV
Copy link
Owner

VigneshVSV commented Jul 27, 2024

From node-wot perspective, it was recommended by the community to try CBOR serializer for faster than JSON serialization.

Especially, this may be supported property-by-property basis & set the content type headers correctly just for the particular property. Before all that, it is useful to start supporting CBOR as a general serializer itself.

Possible steps involved

  • Find a C/C++ supporting CBOR serialization implementation
  • Overload BaseSerializer and add dumps and loads methods, type replacement registration, allowance for a separate hook which accepts types that are not by default seriliazable
  • do speed tests and compare with other serializers, there is some boiler plate code here. Especially numpy types must be considered.
  • test RPC operations & events (test_rpc.py, test_events.py)
  • test support from Thing's init
  • update content type for HTTP if it is used for thing.http_serializer
@VigneshVSV VigneshVSV added enhancement New feature or request help wanted Extra attention is needed good first issue Good for newcomers labels Jul 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant