LuaLS / LuaLS/lua-language-server
Large Lua files have "Not showing N further errors and warnings"
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Lua
- Sterne
- 4.4k
- Forks
- 442
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
How are you using the lua-language-server?
Visual Studio Code Extension (sumneko.lua)
Which OS are you using?
Windows
What is the issue affecting?
Diagnostics/Syntax Checking
Problem
Related to: #1522
In large files, you can get into a situation where there are 0 errors reported in the errors pane except for "Not showing N further errors and warnings". Obviously, this makes it impossible to actually fix the errors, since you don't know what they are.
Thus, the bug seems to be that the Lua language server is incorrectly ignoring errors suppressed by the end-user, since they are still counting towards the 250 hardcoded (?) VSCode limit
Reproduction steps
Use the following Lua file:
With the following .luarc.json file:
{
"$schema": "https://raw.githubusercontent.com/sumneko/vscode-lua/master/setting/schema.json",
"diagnostics.globals": [
"ActionTriggers",
"ActiveSlot",
"BabySubType",
"BackdropType",
"BatterySubType",
"BedSubType",
"BitSet128",
"BombSubType",
"BombVariant",
"ButtonAction",
"CacheFlag",
"Card",
"Challenge",
"ChampionColor",
"ChestSubType",
"CoinSubType",
"CollectibleType",
"Color",
"CppContainer",
"DamageFlag",
"Difficulty",
"Direction",
"DoorSlot",
"DoorState",
"DoorVariant",
"EffectVariant",
"Entity",
"EntityBomb",
"EntityCollisionClass",
"EntityEffect",
"EntityFamiliar",
"EntityFlag",
"EntityGridCollisionClass",
"EntityKnife",
"EntityLaser",
"EntityNPC",
"EntityPartition",
"EntityPickup",
"EntityPlayer",
"EntityProjectile",
"EntityPtr",
"EntityRef",
"EntityTear",
"EntityType",
"FamiliarVariant",
"Font",
"Game",
"GameStateFlag",
"GetPtrHash",
"GridCollisionClass",
"GridEntity",
"GridEntityDesc",
"GridEntityDoor",
"GridEntityPit",
"GridEntityPoop",
"GridEntityPressurePlate",
"GridEntityRock",
"GridEntitySpikes",
"GridEntityTNT",
"GridEntityType",
"GridRooms",
"HUD",
"HeartSubType",
"Input",
"InputHook",
"Isaac",
"ItemConfig",
"ItemPool",
"ItemPoolType",
"ItemType",
"KColor",
"KeySubType",
"Keyboard",
"LaserOffset",
"LaserSubType",
"Level",
"LevelCurse",
"LevelStage",
"LevelStateFlag",
"LocustSubtypes",
"ModCallbacks",
"Mouse",
"Music",
"MusicManager",
"NpcState",
"NullItemID",
"Options",
"PathFinder",
"PickupPrice",
"PickupVariant",
"PillColor",
"PillEffect",
"PlayerForm",
"PlayerSpriteLayer",
"PlayerType",
"PlayerTypes",
"PoopPickupSubType",
"PoopSpellType",
"ProjectileFlags",
"ProjectileParams",
"ProjectileVariant",
"QueueItemData",
"REPENTANCE",
"RNG",
"Random",
"RandomVector",
"RegisterMod",
"RenderMode",
"Room",
"RoomConfig",
"RoomDescriptor",
"RoomShape",
"RoomTransitionAnim",
"RoomType",
"SFXManager",
"SackSubType",
"SeedEffect",
"Seeds",
"ShockwaveParams",
"SkinColor",
"SortingLayer",
"SoundEffect",
"Sprite",
"StageType",
"StartDebug",
"TearFlags",
"TearParams",
"TearVariant",
"TemporaryEffect",
"TemporaryEffects",
"TrinketType",
"UseFlag",
"Vector",
"WeaponType",
"AwaitingTextInput",
"EID",
"Encyclopedia",
"ModConfigMenu",
"MinimapAPI",
"StageAPI",
"g",
"gd",
"getParentFunctionDescription",
"sandboxGetTraceback",
"sandboxTraceback"
],
"preloadFileSize": 5000,
"runtime.version": "Lua 5.3"
}
Then, you will see that there are Not showing 2551 further errors and warnings. in the "Problems" pane of VSCode.
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
Reproduziere den Bericht mit der verknüpften großen main.lua-Datei, der bereitgestellten .luarc.json und dem Problems-Bereich von VS Code und vergleiche anschließend das Verhalten mit dem verwandten Issue #1522. Beginne beim Pfad für Diagnosen/Syntaxprüfung und ermittle, warum unterdrückte Diagnosen weiterhin auf das sichtbare Limit angerechnet werden. Als abgeschlossen gilt die Aufgabe, wenn echte Diagnosen weiterhin zugänglich sind, statt nur die Meldung "Not showing N further errors and warnings" anzuzeigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- lua, vscode
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100