objectionary/eo-lsp-server

Redundant `config || defaultSettings` fallback in `validateTextDocument` at `server.ts`

開放

#338 建立於 2026年6月3日

 (5 則留言) (0 個反應) (0 位負責人)TypeScript (9 個分叉)github user discovery
bughelp wanted

倉庫指標

星標
 (6 顆星)
PR 合併指標
 (平均合併 4天 17小時) (30 天內合併 5 個 PR)

描述

In validateTextDocument, the settings are read with const effective = config || defaultSettings; followed by const limit = effective.limit; at src/server.ts:168. The config value is the resolved result of getDocumentSettings, which already guarantees a real settings object on every path: the no-configuration branch returns settings at src/server.ts:143, and the configuration branch falls back to defaultSettings inside its own .then at src/server.ts:150. By the time line 168 runs, config can never be null or undefined.

That makes the outer || defaultSettings a fallback that can never fire, and the effective variable just an alias for config. The two lines are equivalent to const limit = config.limit;.

The fix is to drop effective and read config.limit directly. The genuine default handling already lives inside getDocumentSettings, so it should stay there and not be removed.

貢獻者指南