objectionary/eo-lsp-server

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

オープン

#338 opened on 2026/06/03

 (5 件のコメント) (0 件のリアクション) (0 人の担当者)TypeScript (9 件のフォーク)github user discovery
bughelp wanted

Repository metrics

Stars
 (6 個のスター)
PR merge metrics
 (平均マージ 4d 17h) (30d で 5 merged PRs)

説明

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.

コントリビューターガイド