[Web API type definition issue] WebAssembly.Module interface is empty, allowing invalid assignments
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- typescript, wasm
Rechercherichtung
Beginne mit der im Issue gezeigten WebAssembly.Module-Deklaration und reproduziere die Zuweisung im verlinkten TypeScript Playground. Ermittle, wie die generierte Schnittstelle Module-Instanzen von beliebigen Werten unterscheiden kann und dabei der unterstützten Web API entspricht, und überprüfe anschließend, dass die Zuweisung abgelehnt wird, ohne die gültige Module-Nutzung zu beeinträchtigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
The WebAssembly.Module interface is currently emitted as an empty interface, making it structurally compatible with any object in TypeScript
Expected vs. Actual Behavior
const abc: WebAssembly.Module = 0;
I would expect the above to be a compilation error.
But WebAssembly.Module gets emitted as an empty interface allowing all assignments.
interface Module { }
Playground Link
Browser Support
- This API is supported in at least two major browser engines (not two Chromium-based browsers).
Have Tried The Latest Releases
- This issue applies to the latest release of TypeScript.
- This issue applies to the latest release of
@types/web.
Additional Context
Do we need to make WebAssembly.Module nominally typed? 🫣
I'm not aware of any other interfaces with only constructors/static methods but no instance members
- Vorherrschende Sprache
- TypeScript
- Sterne
- 740
- Forks
- 474
- Ø Merge
- 2 T. 8 Std.
- Gemergte PRs (30 T.)
- 15
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus microsoft/TypeScript-DOM-lib-generator
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
microsoft/TypeScript-DOM-lib-generator#2554 · 6 Kommentare ·
-
lib.d.ts bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
-
lib.d.ts bug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 68/100
microsoft/TypeScript-DOM-lib-generator#2154 · 1 Reaktion ·
-
lib.d.ts bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
microsoft/TypeScript-DOM-lib-generator#2107 · 5 Kommentare ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
microsoft/TypeScript-DOM-lib-generator#1675 · 2 Kommentare · 1 Reaktion ·
Alle Issues in microsoft/TypeScript-DOM-lib-generator
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
-
calcite-components needs triage refactor
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Esri/calcite-design-system#15203 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 90/100
danielmiessler/LifeOS#2218 ·