use orjson instead of json#175
Merged
mdonoughe merged 4 commits intogurumitts:devfrom Dec 26, 2024
jonoberheide:dev
Merged
Conversation
… spends a lot of time munging json and orjson is fast at that.
bdraco
reviewed
Nov 14, 2024
bdraco
reviewed
Nov 14, 2024
Contributor
|
I think this is a good change. Some minor nits above. |
…lso use writelines() in a couple places.
bdraco
approved these changes
Nov 14, 2024
Contributor
|
Tested with an RA2 select system 👍 |
bdraco
reviewed
Nov 14, 2024
bdraco
reviewed
Nov 14, 2024
bdraco
reviewed
Nov 14, 2024
Contributor
Author
Your Lutron lights are approaching the speed of light now! 🏎💨 I should note I'm testing on QSX. |
mdonoughe
approved these changes
Nov 24, 2024
Collaborator
mdonoughe
left a comment
There was a problem hiding this comment.
I don't know if this is going to make a noticeable difference because the CPU running pylutron_caseta should be much faster than the CPU in the bridge, or at least that's the case for Caseta.
Contributor
|
Might make a difference for some single board systems, then again the pure Python JSON implementation should be an order of magnitude slower or worse if the hub has implemented it in native code |
Contributor
|
The hub uses a compiled language (golang). It'll be pretty fast, even on a much slower CPU. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Use orjson instead of json like home assistant does. pylutron-caseta spends a lot of time munging json and orjson is fast at that. The main compatibility difference between json and orjson is that dumps() returns bytes.