LuaLS / LuaLS/vscode-lua

Specific files.exclude breaks file scanning workspace.library

Offen
#160 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
TypeScript
Sterne
215
Forks
62
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Which OS are you using?

Windows

Expected Behaviour

When I specify the complicated mask of editor's files.exclude ugh... because there is no other way https://github.com/microsoft/vscode/issues/869

		"files.exclude": {
			"**/?*.[!l]*": true,
			"**/?*.l[!u]*": true,
			"**/?*.lu[!a]*": true,
			"**/?*.lua?*": true
		},

I expect to exclude all files from the VS Code project except .lua, so this should not affect the plugin in any way.

Actual Behaviour

I see that LuaLS file scanning is starting to work incorrectly, it may selectively skip my libraries from Lua.workspace.library list.

Reproduction steps
  1. Setup Multi-root Workspaces project https://code.visualstudio.com/docs/editor/multi-root-workspaces
    for example our file located in proj/data/game/.vscode
	// relative to proj/data/game/.vscode
	"folders": [
		{
			"path": ".." // proj/data/game
		},
		{
			"path": "../../scripts" // proj/data/scripts
		},
		{
			"name": "system_data/game",
			"path": "../../../system_data/game" // proj/system_data/game
		},
		{
			"name": "system_data/scripts",
			"path": "../../../system_data/scripts" // proj/system_data/scripts
		}
	],
  1. Setup Lua.workspace.library for correct Multi-root Workspaces file scanning
		"Lua.workspace.library": [
			"../../data/game",
			"../../data/scripts",
			"../../system_data/game",
			"../../system_data/scripts",
			".vscode/library" // some meta definitions in `proj/data/game/.vscode`
		],
  1. Everything works fine. Then setup editor's files mask
		"files.exclude": {
			"**/?*.[!l]*": true,
			"**/?*.l[!u]*": true,
			"**/?*.lu[!a]*": true,
			"**/?*.lua?*": true
		},
  1. Now some annotations are missing or the files just haven't been loaded.
Additional Notes

No response

Log

No response

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

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 Windows-Szenario mit einem Multi-Root-Workspace unter Verwendung der gezeigten files.exclude- und Lua.workspace.library-Einstellungen. Beginne damit, den Pfad zum Scannen der Workspace-Dateien in der VS Code-Erweiterung nachzuverfolgen, und vergleiche die Ergebnisse mit und ohne files.exclude. Als erledigt gilt, dass alle konfigurierten Bibliothekspfade konsistent gescannt werden und die fehlenden Annotationen oder nicht geladenen Dateien nicht mehr auftreten.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
lua, typescript, vscode
Bereich
tooling
Issue-Typ
Bug
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.