WebStorm 2023.1 EAP #2: TypeScript Updates, Performance and Version Control Improvements, and More
We’re continuing working on WebStorm 2023.1 with our second EAP build. To catch up on all of the new features WebStorm 2023.1 will bring, check out our previous EAP blog posts.
Important! WebStorm EAP builds are not fully tested and might be unstable.
Below you can find the most interesting improvements available in WebStorm 2023.1 EAP #2. Please try them out and share your feedback in the comments below or by using our issue tracker.
Support for TypeScript in Vue template expressions
WebStorm 2023.1 includes support for TypeScript in Vue template expressions. The Vue template expressions now sync to
lang=”ts” added to script tags. As a result, WebStorm can better evaluate TypeScript, providing preferences and relevant refactorings matching what’s inside the script tag. You may have noticed before that there were differences between settings and refactorings for pure
.ts files. Now the
lang attributes will match.
Here are a few of the improvements you may notice:
- Inline casts can be used.
- Strict null checks in templates with support for type narrowing.
- Strict null checks for component props.
- Preferences / Settings unification across both scripts and templates.
- Types shown in Quick Documentation and other UI elements should work the same across scripts and templates.
- Template expressions now support literal types, like true instead of boolean.
We hope that this change will help solve a lot of your TypeScript troubles. We understand that there is still a lot we need to do for our TypeScript support and we will continue working on it. In the meantime, we have some more TypeScript updates for you in this EAP.
Other TypeScript updates
- Support for TypeScript 4.7 instantiation expressions. We’ve added support for TypeScript 4.7 instantiation expressions, which provide the ability to specify type arguments for generic functions or generic constructors without actually calling them. WebStorm now provides correct type inference and completion for the specified functions.
- Support for TypeScript 4.9 unlisted property narrowing with the
inoperator. WebStorm 2023.1 now supports unlisted property narrowing with the
inoperator. WebStorm will narrow the object type after using the in operator, so you get proper completion and documentation for the object.
- Support for Typescript 5.0 tsconfig.extends as array. We’ve added support for TypeScript 5.0’s multiple config inheritance. So if you decide to try multiple config, just remember that the last config defined in the list will redefine the previous ones.
Scanning files to index in smart mode
We’ve improved the IDE startup experience by performing the Scanning files to index… process in smart mode, which makes the startup process much quicker. When opening a project, WebStorm will use the project’s existing caches from the previous session and look for any new files to index. If no changes are found after scanning, the IDE will be ready to work. This significantly reduces the delays caused by waiting for indexing on startup.
New IDE suggestion to reconfigure Windows Defender settings for better performance
WebStorm 2023.1 EAP 2 includes a new notification that is triggered when Windows Defender with Real-Time Protection is running. Given that these antivirus checks can significantly decrease the IDE speed, WebStorm suggests adding certain folders to Defender’s list of exclusions. The notification provides the option to either reconfigure these settings automatically, or first check the Defender configuration instructions and do it manually.
Version control updates
Improved Branches popup
We’ve improved the usability of the Branches popup. Navigating between branches is now easier, as they are grouped and stored in expandable lists.
Auto-completion in the Create New Branch popup
With WebStorm 2023.1, we’ve implemented auto-completion in the Create New Branch popup. Once you start typing a name for your new branch, the IDE will suggest relevant prefixes based on the names of existing local branches.
Removed the toolbar in Zen and Distraction Free modes
We are continuing to make refinements to the new UI based on your feedback. You can enable the new UI under Preferences / Settings | Appearance & Behavior. In WebStorm 2023.1 EAP #2, we’ve made it so the top toolbar is no longer visible when you are using Zen and Distraction Free modes.
Other notable changes
- We’ve added an option to assign a custom shortcut to run the current file with coverage. To assign a shortcut, go to Preferences / Settings | Keymap, look for the Run with Coverage context configuration option, and add a new key combination for it (IDEA-289765).
- We’ve updated our tsconfig schema so that WebStorm no longer throws the error “String violates the pattern: ‘^([Ee]Ss)$” (WEB-57013).
That’s all for today! For a full list of the latest enhancements available in WebStorm 2023.1 EAP #2, check out the release notes.
Your feedback about the new features is very important to us, so please try them out and let us know what you think in the comments section below or on Twitter. If you come across a bug, submit a report in our issue tracker.
The WebStorm team
Subscribe to Blog updates
Thanks, we've got you!
WebStorm 2023.3 Early Access Program Is Now Open!
Our 2023.3 Early Access Program is now open! Read our first EAP digest to discover the latest enhancements to WebStorm.
WebStorm 2023.2 Release Candidate Is Here
WebStorm 2023.2 RC is now available! Read about some of the most exciting improvements making it into the release.
WebStorm 2023.2 Beta Is Here!
WebStorm 2023.2 Beta is now available with provide and inject support in Vue, support for GraphQL and WebSocket in the HTTP Client CLI, and more.