microsoft / microsoft/vscode

Rename Symbol fails for generic type parameters

Open
#335,144 1 comment 0 reactions 1 assignee Claimed by @bryanchen-d View on GitHub
stale triage-needed
Dominant language
TypeScript
Stars
193k
Forks
42.4k
PR merge metrics
PR metrics pending

Description

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.136.1
OS Version: Sonoma 14.0 (23A344)

1. Open the file containing type definitions:

```ts
const useApiMutation = (
endpoint: Endpoint | null,
options: MutationOptions & {
swr?: SWRMutationConfiguration;
} = {}
) => {
const pathname = usePathname();
const url = endpoint ? getApiUrl(endpoint) : null;

return useSWRMutation(url, async (url, {arg}) => {
const payload = arg as unknown as ResolvedPayload;
const resolver: UrlResolver = options.getUrl?.(url, arg) ?? {url, payload};

let fetchOptions: RequestInit = {
method: Methods.POST,
...options.fetch
};

if (resolver.payload !== undefined) {
const body = resolver.payload instanceof FormData ?
resolver.payload : JSON.stringify(resolver.payload);

fetchOptions = {...fetchOptions, body};
}

return apiFetch(resolver.url, {
fetch: fetchOptions,
api: {
loader: true,
...options.api
}
}, pathname);
}, {
revalidate: false,
...options.swr
});
};
```

2. Place cursor on the `T` type parameter
3. Trigger Rename Symbol
4. Type `R` in the rename input field
5. Press Enter

https://github.com/user-attachments/assets/ad369042-5ad7-4657-9f1d-19a4448d9ffe

Expected Behavior

`T` renames to `R` everywhere

Actual Behavior

1 .Rename cancelled
2. "No result" appears
3. `T` stays as `T`

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.