microsoft / microsoft/TypeScript

Module is present in declarations even though it is unused.

Offen
#55,571 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bug Domain: Declaration Emit
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.4k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

🔎 Search Terms

module unused declarations

🕗 Version & Regression Information
  • This is the behavior in every version I tried, and I reviewed the FAQ
⏯ Playground Link

https://www.typescriptlang.org/play?ts=5.2.2#code/KYDwDg9gTgLgBAbwL4CgAmwDGAbAhlYOAWwjQFdtCS0BGRFORuUSWOGATzEJmAGcYdALxwBUAJYA7AOYBuFKgw58VUhVVoATPSZxxRVvF4DhxUjQB0xwfN0to8BO36C4SeUiA

💻 Code
export {}
declare module mod1 {
    export type test1 = string;
}
declare module mod2 {
    import test1 = mod1.test1;
    export { test1 };
}
🙁 Actual behavior

mod1 is kept in the declaration.

🙂 Expected behavior

mod1 is not kept in the declaration file since it is only used in mod2 which is omitted from the declaration file.

Additional information about the issue

Found while working on isolated declarations in test reExportAliasMakesInstantiated.ts added by #54816 (cc @andrewbranch )

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduziere das Verhalten mit dem verknüpften TypeScript Playground-Beispiel, lies dann den im Issue erwähnten isolated-declarations-Test reExportAliasMakesInstantiated.ts und vergleiche dessen ausgegebene Declaration-Ausgabe. Als erledigt gilt, wenn die ungenutzte mod1-Deklaration weggelassen wird, sobald mod2 selbst aus der Declaration-Datei weggelassen wird, und der entsprechende Test das Verhalten abdeckt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
typescript
Bereich
compilers
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.