microsoft / microsoft/TypeScript

Fourslash is broken when making requests in unconfigured .js files

未关闭
#63,797 3 条评论 1 个 reaction 已指派 2 人 在 GitHub 查看

@iisaduan 已经在做这个了。

开始于 2026年1月30日。

Bug
主要语言
Go
星标
111k
派生
14.3k
平均合并
2 天 4 小时
30 天内合并 PR
132

描述

Error message:

--- FAIL: TestAutoImportCompletionJs (0.07s)
    c:/typescript-go/internal/fourslash/tests/autoImportCompletion_test.go:159: At marker 'd': textDocument/completion request returned error: [-32603]: no project found for URI file:///d.js
FAIL
FAIL	github.com/microsoft/typescript-go/internal/fourslash/tests	1.758s

Repro:

Fails on requests called in .js files (formatting, completions, codefixes, etc)

Example: in internal/fourslash/tests/autoImportCompletions_test.go:

func TestAutoImportCompletionJs(t *testing.T) {
	t.Parallel()
	defer testutil.RecoverAndFail(t, "Panic on fourslash test")
	const content = `// @Filename: a.js
export const someVar = 10;

// @Filename: d.js
import {someVar} from "./a";
someVar;
a/*d*/
`
	f, done := fourslash.NewFourslash(t, nil /*capabilities*/, content)
	defer done()
		f.VerifyCompletions(t, "d", &fourslash.CompletionsExpectedList{
		UserPreferences: &lsutil.UserPreferences{
			IncludeCompletionsForModuleExports:    core.TSTrue,
			IncludeCompletionsForImportStatements: core.TSTrue,
		},
		IsIncomplete: false,
		ItemDefaults: &fourslash.CompletionsExpectedItemDefaults{
			CommitCharacters: &DefaultCommitCharacters,
			EditRange:        Ignored,
		},
		Items: &fourslash.CompletionsExpectedItems{
			Includes: []fourslash.CompletionsExpectedItem{"someVar", "anotherVar"},
		},
	})
}

Info:

I've traced it back to .js files not being found in a project during GetDefaultProject

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。