Jonas Helming, Maximilian Koegel and Philip Langer co-lead EclipseSource. They work as consultants and software engineers for building web-based and desktop-based tools. …
Eclipse Theia 1.41 Release: News and Noteworthy
September 5, 2023 | 5 min ReadWe are happy to announce the Eclipse Theia 1.41 release! Even though we are still in vacation season, the release contains 50 merged pull requests and we welcome three new contributors. In this article we will highlight some selected improvements and provide an overview of the latest news around Theia.
You don’t know about Eclipse Theia, yet? It is the next-generation platform for building IDEs and tools for the web or desktop, based on modern state-of-the-art web technologies. For more details, please refer to this article and visit the Theia website.
We would like to remind again that the call for submissions is open for TheiaCon 2023 is open. TheiaCon 2023 will take place as a 2 days virtual event on November 15th and 16th. The event is the perfect place to learn about news around Theia and its community. If you have anything interesting to share, please consider submitting a talk. This especially also includes adopter stories, i.e. if you build an application based on Theia, TheiaCon is a great place to present it.
Another great event to learn about Theia and related technologies is coming up in October (16.-19.), make sure you register for EclipseCon 2023:
If you are looking for a simple way to check out the new release, please download Theia Blueprint, which has just been updated to 1.41.
Eclipse Theia 1.41: Selected features and improvements
In the following, we will highlight some selected improvements in the new release. As usual we cannot mention all 50 improvements, however we will focus on the most notable changes as well as changes visible to end users. The corresponding pull requests are linked under the respective heading when applicable.
Support for Notebooks (API)
We are excited to announce that Eclipse Theia 1.41 adds support for notebook editors. Notebook editors allow you to open files and render executable cells mixed with a variety of rich and interactive outputs (see screenshot below). You might know this popular concept from tools such as the Jupyter Notebook. Notebook editors in Theia can be contributed via the VS Code extension API, e.g. the popular Python extension uses Notebooks.
The Notebook support opens many new application scenarios for Theia, e.g. for applications in science or other data oriented use cases. Please check out the PR linked above for more details!
Startup editor preference
Theia 1.41 introduces a new user preference to control what is shown in the editor area on startup. As shown in the screenshot below, users can choose from one of the following options:
- none: no editor will be shown on startup.
- welcomePage: the default welcome page will be shown on startup.
- readme: Theia will open the readme file in the current folder in preview mode.
- newUntitledFile: opens an untitled file on startup.
- welcomePageInEmptyWorkbench: Theia only opens the welcome page when opening an empty workbench.
Add extensible “New File” menu entry
Theia 1.41 adds a new menu entry to the file menu to allow the user to create new files. This sub menu can be filled by extensions providing support for specific file types. As shown in the screenshot below, this allows e.g. to directly python files or Java classes in contrast to plain files only.\
Tree View Checkbox API
Theia 1.41 adds support for the “Tree View Checkbox API”, which allows VS Code extensions to create/contribute to tree views that use check boxes (see screenshot below).
Open files via middle click
The new Theia release supports the middle-click mouse button behavior in all regular widgets displaying files, such as the explorer or the search results. Selecting a file using the middle-button will open that file as an open-editor instead of simply selecting it. This achieves the same functionality as double-clicking on a file, but it can be faster.
Improvements for adopters
The Theia 1.41 release contains several improvements for adopters, i.e. stakeholders who build their own custom tool based on Theia. The new release provides the results of stopwatches in a serialized format. This data provides insights on the start-up performance of Theia and of any tool built on Theia. It can be picked up by testing frameworks to capture and visualize data over time, too. This allows a continuous measurement and optimization of Theia-based applications.
We also updated two technologies that are used by Theia. First, Theia 1.41 makes the move from Node 16 to Node >=18. Second, Playwright, the end-to-end testing framework directly supported by Theia, was updated to the latest version. Along with this updated, the page object model for Playwright in Theia was also extended.
As always the 1.41 release contains much more than described in this article, e.g. does Theia 1.41 increase the VS Code extension compatibility to 1.80.
All these features and improvements (in total 50) were the result of one month of intensive development. Eclipse Theia follows a monthly release schedule. We are looking forward to the next release due next month, stay tuned! To be notified about future releases, follow Theia on Twitter and register to our mailing list.
If you are interested in building custom tools or IDEs based on Eclipse Theia, EclipseSource provides consulting and implementation services for Eclipse Theia as well as for web-based tools in general. Furthermore, if you want to extend Theia with features such as the toolbar or the test framework, EclipseSource provides sponsored development for Theia, too. Finally, we provide consulting and support for hosting web-based tools in the cloud. Get in contact with us, to discuss your use case!