We’re happy to announce the release of v2.8.0, which includes a few new features as well as bug fixes. Check out the summarized changelog below:
Renamed command “Pick configuration” to “Change active buildConfiguration”
Automatically re-scan when changing buildConfiguration
Cache per-buildConfiguration scan results
Make the recipes view appear as “loading” while a scan is ongoing
Add “Change active buildConfiguration” to the main contextual menus
Update dependencies and make according changes
Verify Open VSX publisher for “The Yocto Project”
Rate-limit loading bars in the debug logs
Add support for the new `devtool modify –debug-build` option
Add the “bitbake.disableDevtoolDebugBuild” setting to disable this new default behavior
Fix an issue with the highlighting of the word “python”
Improve compatibility and documentation around kas-container’s ssh-agent option
Please check out the full release notes to see all the changes made in this release.
Project scan per buildConfiguration
Did you know that you can already configure the VS Code Yocto extension to handle multiple bitbake environments at once? If you haven’t, make sure to check out our configuration guide.
This feature allows you to hot-swap between environments to run bitbake tasks and scan your recipes or your project. A status bar and selector are present in the bottom right corner of the screen to that end. The typical use case is to navigate between multiple machines or distros that you might be using from the same set of layers. It even works with kas and other commandWrappers.
One of our enthusiastic users of this feature wanted to expand on those capabilities which they asked for through a GitHub issue. (By the way, we also encourage YOU to give us feedback as well through GitHub, or the VS Code marketplace). While the Christmas elves were working for Santa, we granted that user’s wish and implemented dynamic project scans aligned with the selected buildConfiguration.
With this release, whenever you pick a different buildConfiguration, the Recipes and Devtool panels are automatically refreshed. The first time you enter a buildConfiguration, a project re-scan will have to be done, which will take a few seconds as usual. Once complete, we cache the result so that hot-swapping becomes very responsive, as illustrated below. You can still manually re-scan when you know the cached recipe list is no longer accurate (because you added or deleted recipes, for instance). Like before, this cache is persistent across VS Code sessions, so you don’t have to wait for a re-scan when you restart your favorite IDE.
New error handling is also required. We also implemented the required logic for corner cases, like changing the settings.json. Everything should refresh appropriately and automatically. Since lengthy re-scans are also more frequent with this update, we improved their rendering by making the recipes panel appear as “loading” when a scan is ongoing, in addition to the bottom left status bar and terminal views.
Support for the new devtool modify –debug-build option
Adrian Freihofer has recently pushed a new devtool feature that passes “DEBUG_BUILD=1” to the recipe’s workspace. This adds debugging information to your packages which combines very well with our devtool ide-sdk workflow. If you haven’t already, you should check it out! Once you have created a devtool workspace, you can right-click on it and run the “Configure VSCode SDK” command. It will generate a VS Code configuration for CMake and Meson workspaces for linting and remote SSH debugging.
Since –debug-build will most of the time be excellent for our workflow, we now automatically detect if your Yocto version is compatible and enable it. Some users, however, may want to keep the old behavior which can be achieved with the new “bitbake.disableDevtoolDebugBuild” setting.
Presentation at the Yocto Project Virtual Summit 2024.12
I gave a talk on the Typescript and BitBake alchemy that runs behind the scenes. I discussed some challenges we faced and the optimizations we implemented to address them. The goal was to introduce more people to the technologies at hand, to make it more accessible to contribute. We were thrilled that this presentation sparked a lot of interest and ideas for future work with the community! If you want to replay this presentation, it will soon be available on streaming platforms.
Links and resources
Install the extension from the VS Code extension marketplace
What’s new? We’re happy to announce the release of v2.7.0, which includes a few new features as well as bug fixes. Check out the summarized changelog below: Add bitbake environment scan for global variables Add skipped recipes to the tree view with skip reason Add support for latest Yocto devtool status output Add sanity check […]
What’s new? We’re happy to announce the release of v2.6.0, which includes which a few new features, improvements to user experience, and minor bug fixes. Check out the summarized changelog below: Handle completion on bash simple variable expansion Handle keywords import, require and inherit in Bash/Python context Add SPDX license suggestions Show license description on […]
What’s new? We’re happy to announce the release of v2.5.0, which includes a few new features as well as quality-of-life improvements and minor bug fixes. Here is the change log: Add Yocto variables renaming across a recipe file Add code suggestions for SRC_URI local files Add code suggestions for recipe names in variables (DEPENDS, RDEPENDS, […]
Nuremberg, April 9th, 2024 – In an era where cybersecurity threats are increasingly sophisticated and pervasive, Savoir-faire Linux, a leading provider in open-source technological innovation and software engineering for embedded systems across North America and Europe, is proud to announce the launch of its Cybersecurity professional services tailored specifically for product engineering and embedded systems. […]
Savoir-faire Linux is happy to introduce the v2.4.0 release of the official Yocto Project extension for VS Code. These developments were carried out as part of the investment provided by the Sovereign Tech Fund to the Yocto Project to improves the long-term sustainability of the project by attracting a new generation of developers. The changelog […]