-
-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Labels
beginnerbeginner level good first issues, usually issues that can worked on without skimming the whole repobeginner level good first issues, usually issues that can worked on without skimming the whole repogood first issueGood for newcomersGood for newcomers
Milestone
Description
CBOR - Concise Binary Object Representation, seems to be used to a good extent within the IoT community. Also the recommended serialization for CoAP.
From node-wot perspective, it was recommended by the community to try CBOR serializer for a faster-than-JSON serialization protocol.
Specifically, we already support per interaction affordance customisation of serialization & set the content type headers correctly for each interaction affordance. Normally, for low-size payloads, people may use JSON for readability, but other serialisations may be used for larger payloads.
Possible steps involved
- Find a C/C++ supporting CBOR serialization implementation
- Overload BaseSerializer and add dumps and loads methods, content type, type replacement registration, allowance for a separate hook which accepts types that are not by default serializable
- do speed tests and compare with other serializers, there is some boiler plate code here. Especially numpy types must be considered. This is optional, but very useful if numbers can be added into the documentation at some point.
- import of a CBOR serializer must be optional (i..e the dependency that provides this serilization format). If people want, they can explicity install this serilization. This should be added to documentation and as an optional dependency in
pyproject.toml - add tests and docs
Metadata
Metadata
Assignees
Labels
beginnerbeginner level good first issues, usually issues that can worked on without skimming the whole repobeginner level good first issues, usually issues that can worked on without skimming the whole repogood first issueGood for newcomersGood for newcomers
Type
Projects
Status
Ready