2025-12-15 9:35 AM
Hello,
Today I opened VS Code to work on my project and noticed the update was available. That's awesome, but typically we're forced to freeze our toolchain once we release the code to product, to avoid the risk that updates have unwanted side effects. Right now I've been evaluating whether we can use VS Code, or if we better stay with tried and true CubeIDE.
It's fine for hobbyists to always update to the bleeding edge, but what about anyone using STM32 micro for application in automotive, medical, and defense application? It's a requirement to know that every possible change is tested before releasing code to the product, including toolchain and IDE updates. We can't know if there's a bug on day 0 of the release, of course!
Can we understand if the ability to freeze version is on the development roadmap of the VS code plugin? If not ever, any safety critical application should probably avoid it, don't you think?
Thanks.
Solved! Go to Solution.
2025-12-15 10:09 AM
Thank you for your question. We take care to address your concerns. We aim to serve all users, not only hobbyists.
The STM32CubeIDE for Visual Studio Code solution consists of three main components:
You should be able to maintain full control.
At a high level, we recommend keeping VS Code extensions and bundles up to date.
That said, despite taking great care, not updating extensions can be risky because some depend on each other. VS Code itself improves over time.
Locking bundles is fairly safe and more meaningful to us, which is why we provide this bundle locking capability. The rationale is that bundles support core processing; we are fully aware that toolchain updates may impact end-user applications.
VS Code extensions mainly support the GUI, which may not impact results but affect the user experience.
The solution is new, so we welcome any feedback and will do our best to improve based on your input.
2025-12-15 9:36 AM
I should have elaborated that I could not debug my micro from VS code without updating first. So the update basically disabled my IDE.
2025-12-15 10:09 AM
Thank you for your question. We take care to address your concerns. We aim to serve all users, not only hobbyists.
The STM32CubeIDE for Visual Studio Code solution consists of three main components:
You should be able to maintain full control.
At a high level, we recommend keeping VS Code extensions and bundles up to date.
That said, despite taking great care, not updating extensions can be risky because some depend on each other. VS Code itself improves over time.
Locking bundles is fairly safe and more meaningful to us, which is why we provide this bundle locking capability. The rationale is that bundles support core processing; we are fully aware that toolchain updates may impact end-user applications.
VS Code extensions mainly support the GUI, which may not impact results but affect the user experience.
The solution is new, so we welcome any feedback and will do our best to improve based on your input.
2025-12-16 5:21 AM
Thanks Vincent
I will freeze version and see how it works.
Connectivity issues of stm32cubeIDE for Vscode - STMicroelectronics Community
Based on previous issues, it looks like the problem is that if my version is outdated, I won't be able to connect to server, so plugin won't work.
Is there a development timeline for implementation of offline mode + version freeze?
2025-12-16 7:12 AM
You have expressed agreement with my point. Freezing an environment is possible; however, it has drawbacks related to maintaining the capabilities and limitations of the frozen state.
We are working to improve the environment, so each update is expected to be better than the previous one. This approach is not unique to STM32Cube but is a common practice and a general rule.
Because we understand your requirement for reproducibility in non-hobbyist contexts, please share which assets you consider most sensitive to freeze. For example, is it only the toolchain, or does it also include the debug chain and other components?
Note: You can freeze and stay online. The proper settings shared above are capable of this.