2024-12-04 –, kirkstone
The Yocto Project VS Code extension stands at a crossroads between two worlds: embedded Linux and web development. Providing a seamless IDE experience came with many challenges, such as integrating the slow BitBake build system with the fast-paced TypeScript language server. In this talk, we will dive into the architecture of the extension, focusing on advanced tradeoffs and optimization strategies to create a seamless and intuitive development experience.
The following key features will be highlighted:
- Resolving local file URLs
- Providing tooltips from BitBake environment scans
- Caching results and managing the huge number of files
- Integrating with exotic shell build environments
- Parsing Python and Bitbake sections with the relevant extensions
- Continuous integration to detect incompatibilities with new Yocto versions
Enguerrand is a seasoned embedded Linux developer working at Savoir-faire Linux. He writes BSP layers, integrates Yocto distributions but most importantly, he enjoys doing it with modern tooling! Hence he was hugely involved in the architecture and development of the Yocto project's Visual Studio Code extension and still acts as one of its principal maintainers.