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
[Regression] copyCompileCommands not copying the file in 1.20.52 update #4294
cmake.copyCompileCommands works in 1.19.52.
After updating to latest 1.20.52 extension the no longer copies the file.
From the debug output it seems that the file path is incomplete and not expanded properly, compared to the previous extension release.
[extension] Not updating the configuration provider because "C_Cpp.intelliSenseEngine" is set to "Disabled"
[main] Copying compile_commands.json from c:/develop/cmake_bld/dbg/compile_commands.json to compiler_commands.json
[extension] [9312] cmake.cleanConfigure finished (returned {"result":0,"resultType":0})
[extension] [8976] cmake.logDiagnostics started
[extension] [8976] cmake.logDiagnostics finished (returned undefined)
Additional Information
Log from 1.19:
[extension] Not updating the configuration provider because "C_Cpp.intelliSenseEngine" is set to "Disabled"
[expand] expanded ${workspaceFolder}/../compiler_commands.json
[main] Copying compile_commands.json from C:\develop\cmake_bld\dbg\compile_commands.json to c:/develop/../compiler_commands.json
[extension] [4267] cmake.cleanConfigure finished (returned {"result":0,"resultType":0})
acyr (@acyr) Is it not getting copied at all? Or is it simply not getting copied to the same location? Either way, it seems like a bug based on your description, but I want to make sure I understand
Also, could you copy the debug log with the logging settings set to debug for 1.20? It seems like maybe it isn't since I don't see the expansion output.
Or, the only two PR's that affected this feature that were in 1.20 are here: k0zmo@31372d6, k0zmo@74dce13. If you have a machine set up to debug, you could debug to help us identify the issue immediately.
[extension] Not updating the configuration provider because "C_Cpp.intelliSenseEngine" is set to "Disabled"
[expand] expanded ${workspaceFolder}/../compiler_commands.json
[main] Copying compile_commands.json from c:/develop/cmake_bld/dbg/compile_commands.json to c:/develop/compiler_commands.json
[extension] [5707] cmake.cleanConfigure finished (returned {"result":0,"resultType":0})
Activity
gcampbell-msft commentedon Feb 24, 2025
acyr (@acyr) Is it not getting copied at all? Or is it simply not getting copied to the same location? Either way, it seems like a bug based on your description, but I want to make sure I understand
gcampbell-msft commentedon Feb 24, 2025
Also, could you copy the debug log with the logging settings set to debug for 1.20? It seems like maybe it isn't since I don't see the expansion output.
acyr commentedon Feb 24, 2025
It's not getting copied at all, regardless of path I tried. I did not try a hardcoded path, always ${workspaceFolder} relative though.
I had same logging settings in both cases. I think the lack of expansion might be the problem.
gcampbell-msft commentedon Feb 24, 2025
Are you able to provide a minimal repro zip file?
Or, the only two PR's that affected this feature that were in 1.20 are here: k0zmo@31372d6, k0zmo@74dce13. If you have a machine set up to debug, you could debug to help us identify the issue immediately.
gcampbell-msft commentedon Feb 24, 2025
I may have identified the issue, I'll follow up momentarily with a vsix for you to test.
gcampbell-msft commentedon Feb 24, 2025
acyr (@acyr) Could you test with this vsix and see if it fixes your issue? If it does, I'll open a PR with the changes:
cmake-tools.zip
You'll need to download, modify the extension to .vsix, and then install manually before trying your repro.
acyr commentedon Feb 24, 2025
Yup, that works.
gcampbell-msft commentedon Feb 25, 2025
PR here: #4298
Amy-Li03 commentedon Mar 20, 2025
Verified this on cmake tools v1.21.7(pre-release), copyCompileCommands copy the file correctly.