micropython / micropython/micropython-lib

uasyncio.websocket.server compatibility with websocket clients

Open
#355 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
2.9k
Forks
1.1k
Avg merge
7d 6h
Merged PRs (30d)
3

Description

server.py does not work with every clients. For instance CPython websockets client https://pypi.org/project/websockets/

I have made some experiments https://forum.micropython.org/viewtopic.php?f=15&t=6568&p=37374#p37374 and found that there is already some modifications to uncomment to enable compatibility with this client, plus pycopy port unable this modifications, with some explanation in the last PR. https://github.com/pfalcon/pycopy-lib/commit/3803ff6ad7156dee9575f1c921f4df3fa2bdc117

Is there a reason why it is not enabled ? does it broke compatibility with some other client ?
In this case could it be possible to selectively enable it depending the connected client?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with server.py and compare its WebSocket behavior with the CPython websockets client and the changes in commit 3803ff6ad7156dee9575f1c921f4df3fa2bdc117. Read the linked forum discussion to understand why the modifications were disabled and whether enabling them affects other clients; done means the compatibility issue and safe behavior for existing clients are resolved.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.