Web polyfill constants: add missing InstanceValue exposure on WebSocket and XMLHttpRequest
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 82/100
Direzione di ricerca
Leggi Polyfills/WebSocket/Source/WebSocket.cpp e Polyfills/XMLHttpRequest/Source/XMLHttpRequest.cpp, confrontando i relativi descrittori delle costanti con Polyfills/File/Source/FileReader.cpp. Aggiungi l’esposizione dell’istanza mancante accanto a ciascuna costante statica elencata, quindi verifica che le costanti siano disponibili sia dai costruttori sia dalle istanze; tratta l’idea dell’helper o della macro come un follow-up separato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Per WHATWG IDL, class const members are exposed on both the constructor (static) and instances (via the prototype). JRH polyfills currently do this inconsistently:
Polyfills/WebSocket/Source/WebSocket.cpp(L16–19) —CONNECTING/OPEN/CLOSING/CLOSEDareStaticValueonly.new WebSocket(...).OPENreturnsundefined.Polyfills/XMLHttpRequest/Source/XMLHttpRequest.cpp(L72–76) —UNSENT/OPENED/HEADERS_RECEIVED/LOADING/DONEareStaticValueonly. Same gap.Polyfills/File/Source/FileReader.cpp(new in #169) — exposes both, conformant.
Fix: add an InstanceValue entry alongside each StaticValue for both polyfills. Going forward, web polyfill classes with IDL const members should define one of each.
Follow-up: investigate whether a helper function/macro can emit both descriptors from a single declaration so authors don't have to remember the dual exposure (and constants can't silently drift between static and instance values).
References:
- Lingua principale
- C++
- Stelle
- 22
- Fork
- 23
- Merge medio
- 2h 29m
- PR unite (30g)
- 3
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi 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.
Altre issue di BabylonJS/JsRuntimeHost
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
BabylonJS/JsRuntimeHost#234 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 42/100
BabylonJS/JsRuntimeHost#241 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
BabylonJS/JsRuntimeHost#228 ·
I maintainer di solito rispondono entro 1 giorno
-
napi_unwrap does not reject objects that were never wrapped (V8 port faults, QuickJS port confuses types)Forse già presa @bghgary l’ha presa 52 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 68/100
BabylonJS/JsRuntimeHost#226 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
BabylonJS/JsRuntimeHost#219 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di BabylonJS/JsRuntimeHost
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
backend bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
mudler/parakeet.cpp#99 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
raspberrypi/rpi-imager#1773 ·
I maintainer di solito rispondono entro 1 giorno