You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
File/folder renames where only capitalization changes causes assumed duplication #3478
When a file or folder is renamed from, for example, test to Test, the language server should not suddenly mark everything as Duplicate-Defined-Field/etc.
Actual Behaviour
All fields within classes are marked as duplicates.
Reproduction steps
Create a file, a.lua.
Open the file so it's an opened tab in the editor.
Rename it to A.lua.
Write a basic class definition into it.
---@classX---@fieldYstringlocalx= {}
functionx.new() end
Observe the bug.
Additional Notes
Windows treats paths containing different capitalization as the same file, unlike linux. a.lua in Windows is the same as A.lua. I believe there is an assumption somewhere that a.lua does not equal A.lua and it causes the language server to bug out.
Log File
I just want to report this then sleep. If nobody else is able to reproduce/get logs, I will do so tomorrow.
On Windows, performing a case-only rename in VS Code actually does not take effect at all. It causes VS Code to show two copies—one with the old name and one with the new name—while the file on disk may not actually be renamed, and may even be renamed back by a version control tool. So this is not something a language server can solve, but it can be appropriately addressed at the editor level: first close VS Code, then rename the file on disk, then delete .vscode and reopen VS Code. Only in this way can the effects of this rename be thoroughly cleaned up.
Activity
CppCXY commentedon Oct 20, 2026
On Windows, performing a case-only rename in VS Code actually does not take effect at all. It causes VS Code to show two copies—one with the old name and one with the new name—while the file on disk may not actually be renamed, and may even be renamed back by a version control tool. So this is not something a language server can solve, but it can be appropriately addressed at the editor level: first close VS Code, then rename the file on disk, then delete .vscode and reopen VS Code. Only in this way can the effects of this rename be thoroughly cleaned up.