Use YJS for sending diffs (JsonPatch replacement)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- javascript, python, rust
- Domain
- backend, distributed-systems, networking
Research direction
Start by reviewing the JsonPatch diffing change in pull request #809, then read the YJS, y-crdt/ypy, and ypy-websocket references linked in the issue. The work is done when the current diff-sending approach is replaced with YJS and the Python and ASGI websocket integration is validated.
Written by the indexing model from the issue text.
Description
Current Situation
Currently, we've turned off diffing with JsonPatch due to bugs in the Python implementation.
Proposed Actions
While what we're doing now seems to work fine. We could replace JsonPatch with YJS since the YJS protocol has a Python implementation and an ASGI compliant websocket connector. Since the Python implementation ultimately wraps a Rust binary, this would likely be many times faster than JsonPatch, being implemented in pure Python, ever could have been.
- Dominant language
- Python
- Stars
- 8.1k
- Forks
- 332
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from reactive-python/reactpy
-
Outdated GIF in Docs Openpriority-3-low type-docs
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
reactive-python/reactpy#1034 ·
-
priority-2-moderate type-revision
Difficulty 5/5 Over a week Newbie friendliness 25/100
reactive-python/reactpy#1319 ·
-
priority-1-high
Difficulty 5/5 Over a week Newbie friendliness 25/100
reactive-python/reactpy#1277 ·
-
priority-3-low
Difficulty 5/5 Over a week Newbie friendliness 35/100
reactive-python/reactpy#1273 · 1 reaction ·
-
priority-2-moderate
Difficulty 5/5 Over a week Newbie friendliness 30/100
reactive-python/reactpy#1272 · 2 reactions ·
All issues in reactive-python/reactpy
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
🐛 Bug 🔔 Pending processing
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
jumpserver/jumpserver#17584 ·