microsoft / microsoft/TypeScript
project reference { "path": "" } is ignored
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Go
- Sterne
- 111k
- Forks
- 14.3k
- Ø Merge
- 2 T. 4 Std.
- Gemergte PRs (30 T.)
- 132
Beschreibung
Steps to reproduce
In every project folder I have a ./tsconfig.build.json which my build script finds and compiles.
In one project I have no subdirectories but only flat files, so I reference "the same directory".
./tsconfig.build.json
{
"$schema": "http://json.schemastore.org/tsconfig",
"references": [
{ "path": "" }
],
"files": [],
"include": []
}
The file ./tsconfig.json contains the final compile:
{
"$schema": "http://json.schemastore.org/tsconfig",
"extends": "../tsconfig_base",
"include": ["./*.ts"]
}
Looks silly, but I also have ./tsconfig.build.json which have this:
"references": [
{ "path": "Worker/" },
{ "path": "" },
Behavior with typescript@6.0
Compiles
> node_modules\.bin\tsc --build Folder/tsconfig.build.json --force --verbose
[17:36:53] Projects in this build:
* Folder/tsconfig.json
* Folder/tsconfig.build.json
...
Behavior with tsgo
> node_modules\.bin\tsgo --build Folder/tsconfig.build.json --force --verbose
[05:37:22 PM] Projects in this build:
* Folder/tsconfig.build.json
...
When I change the file ./tsconfig.build.json to that:
{
"$schema": "http://json.schemastore.org/tsconfig",
"references": [
{ "path": "./" }
],
"files": [],
"include": []
}
It compiles like a charm, but still I wanted to report the compiler difference.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, den Unterschied mit der gezeigten tsconfig.build.json und den Befehlen tsc --build und tsgo --build nachzubilden, und vergleiche ihre ausführlichen Projektlisten. Verfolge, wie jeder Befehl die references-Pfadwerte "" und "./" auflöst; abgeschlossen ist die Arbeit, wenn ein leerer Pfad konsistent mit dem Pfad des aktuellen Verzeichnisses behandelt wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- go, typescript
- Bereich
- build-system
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 62/100