microsoft / microsoft/TypeScript

Feedback to improve compileOnSave with tsserver.

Offen
#17,630 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Domain: API Help Wanted Suggestion VS Code Tracked
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.4k
Ø Merge
1 T. 19 Std.
Gemergte PRs (30 T.)
117

Beschreibung

I have implemented inside Eclipse compile on save with tsserver by consuming compileOnSaveAffectedFileList and compileOnSaveEmitFile commands. It works great but I think we could again improved it

For compileOnSaveAffectedFileList:

  • compileOnSaveAffectedFileList should throw error when the given file is excluded of tsconfig.json. It will give the capability to display an error dialog when user wishes to compile a ts file which is excluded by tsconfig.json
  • in some case, tsserver compileOnSaveAffectedFileList returns *.d.ts files (see ttps://github.com/angelozerr/typescript.java/issues/190#issuecomment-317876026) those *.d.ts files must be ignored for compilation.

For compileOnSaveEmitFile:

  • the reponse compileOnSaveEmitFile should return diagnostics errors. I had to call the two tsserver commands syntacticDiagnosticsSync and semantacticDiagnosticsSync after the call of compileOnSaveEmitFile to display errors in the Eclipse "Problem View"
  • the reponse compileOnSaveEmitFile should return the emited files path (js and *.js.map). In Eclipse case it's very helpful because I could refresh the files.

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

Beginne mit den tsserver-Einstiegspunkten für compileOnSaveAffectedFileList und compileOnSaveEmitFile und untersuche anschließend die zugehörigen Befehle syntacticDiagnosticsSync und semantacticDiagnosticsSync. Als abgeschlossen gilt die Aufgabe, wenn ausgeschlossene Dateien einen Fehler erzeugen, Deklarationsdateien ignoriert werden und compileOnSaveEmitFile Diagnosen sowie die Pfade der erzeugten JavaScript- und Source-Map-Dateien meldet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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