micropython / micropython/micropython-lib
uasyncio: KeyError in `remove_reader` (MacOS)
Aperta
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 2.9k
- Fork
- 1.1k
- Merge medio
- 7g 6h
- PR unite (30g)
- 3
Descrizione
uasyncio version 1.2.4
I'm using it in a pretty common way:
loop = asyncio.get_event_loop()
print("* Starting Web Server at {}:{}".format(host, port))
loop.create_task(asyncio.start_server(self._handler, host, port, backlog=backlog))
if loop_forever:
loop.run_forever()
loop.close()
Sometimes (probably when connection is closed from client side) I see exception:
Traceback (most recent call last):
File "./esp_restapi.py", line 53, in <module>
File "./esp_restapi.py", line 49, in run
File "/Users/belyalov/.micropython/lib/tinyweb/server.py", line 320, in run
File "/Users/belyalov/.micropython/lib/uasyncio/core.py", line 136, in run_forever
File "/Users/belyalov/.micropython/lib/uasyncio/core.py", line 113, in run_forever
File "/Users/belyalov/.micropython/lib/uasyncio/__init__.py", line 39, in remove_reader
KeyError: 4339811008
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia da uasyncio/init.py intorno a remove_reader e segui come viene chiamato da uasyncio/core.py in run_forever. Riproduci il caso di chiusura della connessione su MacOS usando il pattern del server indicato e uasyncio version 1.2.4. Il lavoro è completato quando la chiusura lato client non solleva più KeyError 4339811008.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- networking
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 35/100