cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeIde for VSCode - workspace dirty by ST files all the time

andyi
Associate III

Hello, 

Long time lurker here. 

First of all, thank you for the extensions, really appreciated the possibility to work directly in vscode.

I have a couple of situation, however, that are really annoying and that I would like to solve.

 

While developing in vscode with the extension enabled. It is sufficient to update the CMake presets in order to have the tools installed by the ST extension to make the git repository dirty.

If before committing the files to the repo a pre-commit that formats the files in a proper way then it is amplificated.

The files:

  •  c_cpp_properties.json in the .vscode folder is always updated with the compileCommands updated if dynamic folders for Debug and Release are used
  •  .clangd configuration file is updated in the CompilationDatabase field.

In my opinion there are two different types of settings:

  •  settings that needs to be persinstent, and maybe reusable on different computers by different users
  • settings related only to the current run

There should exist a good way for switching branches and change configuration without having to worry about the extension that changes files at his willing.

Is it unclear if I can put under gitignore the content of .settings folder. Anyway I cannot place under gitignore the other two files mentioned above because I am using them for other configurations.

 

Thank you in advance

 

11 REPLIES 11
andyi
Associate III

Sorry... I'm a linux user and still I have to fight with the generated files because the formatting is not the same as every automatic formatter that could be enabled will do. At least from those I tried.

 

Also... having absolute path names in the files means that they are basically not portable around systems.

 

LordN
Associate II

Not sure if it helps in your case, but there is a setting you can put into VS Code workspace settings.json to prevent the ST extension from meddling with .clandg and compile_commands.json:

"stm32cube-ide-build-cmake.intellisense.enableAutomaticConfiguration": false