WebStorm 2020.1 EAP #2: Inspection for Converting let to const, Improvements in the Git Branches Popup, New Commit Tool Window, and More

WebStorm 2020.1 Early Preview build #2 is now available!

If you’re unfamiliar with our Early Access Program or if you want to catch up on all the new features, check out the previous EAP blog posts.

The Toolbox App is the easiest way to get the EAP builds and keep both your stable WebStorm version and any EAP versions up to date. Or you can download the EAP builds from our website. You can also get notified right from the IDE when a new EAP build is available: go to Preferences/Settings | Appearance & Behavior | System Settings | Updates and select Automatically check updates for Early Access Program.

DOWNLOAD WEBSTORM 2020.1 EAP

Important! WebStorm EAP builds are not fully tested and might be unstable.

Here are some of the highlights of WebStorm 2020.1 EAP #2 (build 201.4515.27). For the full list of issues fixed in this update, see the release notes.

Inspection for converting let to const

With this new inspection, you can quickly turn the variable with a non-reassignable value into a constant one. To do this, place the caret on the let you’d like to replace with a const, press Alt-Enter, and select Convert to const.

inspection-for-converting-to-const

If you’d like to do the same but on a larger scale, e.g. across the entire project or a specific directory, you can use the Run inspection by name action instead. For this, select Code | Run Inspection by Name in the main menu or press Cmd/Ctrl-Shift-Alt-I, then start typing let used where it could be a const and hit Enter to select the inspection. In the dialog that appears, you’ll be able to configure a custom inspection scope.

run-inspection-by-name

Keep in mind that, while the inspection is turned on by default, it isn’t set to highlight the variables with let that can be potentially replaced with const in your code. You can change this behavior in Preferences/Settings | Editor | Inspections | JavaScript and TypeScript | ECMAScript 6 migration aids | ‘let’ used where it could be a ‘const’.

New tool window for making commits

For a while, we’ve been working on making the commit process more convenient for users. We’ve tried several approaches to the commit UI and even tested them during the previous EAP cycle.

Now we’re ready to introduce the new Commit tool window, which you can use to handle all commit-related tasks, such as checking diffs, selecting files and chunks to commit, and adding a commit message.

commit-tool-window

The new Commit tool window incorporates the Local Changes and Shelf tabs. As you can see, now it is a vertical tool window located on the left. This leaves more room for the list of files and commit messages as well as for using the entire editor to show the diff.

If you’re not thrilled with this new setup for any reason, you can bring the old Commit dialog back by unchecking Commit from the Local Changes without showing a dialog in Preferences/Settings | Version Control | Commit Dialog.

We are still working to improve the new tool window, and your suggestions and general feedback are very welcome in the comments!

Improved work with branches

To make working with branches more straightforward, we’ve made some improvements to the interface of the Git Branches popup.

improved-branches-popup-2020-1

First, the popup now has an explicit search bar, which simplifies the process of looking for the existing remote and local branches. Previously, a floating search field would appear only the moment you started typing the name of a branch, which made this functionality difficult to discover.

The other improvement affects the Refresh button: we’ve reworked it so that you can use it to update the existing remote branches.

Last, we’ve added the incoming (blue) and outgoing (green) commit indicators to the status bar.

Full file paths in the Go to popup

In WebStorm 2020.1, we’ve fixed a small but irritating usability problem that affected those who used the Go to Class/Symbol and Go to Definition features: we’ve made it simpler to look for JavaScript and TypeScript symbols, especially if they have identical names. If you now look for a symbol, you’ll get more complete information about the file where that symbol is defined, with the full path to the symbol instead of just a file name as it was before.

go-to-symbol-2020-1

New view mode

We’ve added the new Zen mode to help you focus completely on your code. It combines the Distraction Free mode and the Full Screen mode, so that you don’t have to enable or disable both of these modes every time you want to enter or exit them.

To enable this new mode, go to View | Appearance | Enter Zen Mode from the main menu, or choose it from the Switch popup (Ctrl+` | View mode | Enter Zen Mode).

zen-mode

Please report any issues on our issue tracker. And stay tuned for next week’s update!

The WebStorm Team

About Ekaterina Ryabukha

WebStorm Product Marketing Manager at JetBrains
This entry was posted in Early Access Preview and tagged , . Bookmark the permalink.

13 Responses to WebStorm 2020.1 EAP #2: Inspection for Converting let to const, Improvements in the Git Branches Popup, New Commit Tool Window, and More

  1. Joeri van Oostveen says:

    I’ve seen the new commit flow in the previous EAP cycle and immediately disabled it. So now I’m trying it again and remembered why I disabled it in the first place. I normally work with 2 source files next to each other (split vertically), and the new commit flow only takes over the left pane, keeping the right pane with my source file. Now there is not so much room for the commit dialog and changes as with the overlay dialog (as that takes up as much screen as you want, ignoring any split editors etc). I think there might be some optimisations there :)

    Keep up the good work!

    One other thing, when I installed the stable WebStorm right next to the EAP (with the Toolbox), the stable one would no longer start and showed my all kinds of errors… so it seems the EAP does some aggressive updating of shared parts?

  2. Patrick Oswald says:

    I must say I like the commit flow in 2020.1 EAP build 201.3803.72 the best so far. Much more than in 2020.1 EAP build 201.4515.27.

    Reasons:
    * usually if have my editor window splitted (left & right)
    ** this negates the agrument “using the entire editor to show the diff” (since only the left half of the editor will be used)
    * having the changes in to bottom (full width) was always enough for me, because
    ** per commit I usually don’t have that many edited files, therefore vertical space is not an issue
    ** per changed file I usually don’t have that many changes, therefore I did not need the changes to be visible full screen. And if I still wanted to see the changes full screen (which is rather rarely), I could always open the diff window.

    I will therefore roll back to 2020.1 EAP build 201.3803.72, sorry :-)

    • Ekaterina Ryabukha says:

      Hello Patrick,

      Thank you for the feedback! I’ve shared it with the team responsible for improving the commit flow.

  3. Nic C says:

    With the new commit flow, when you enable “Preview Diff” I’m no longer able to have the Diff Preview show up to the right of the selected file, as it will only show in the main window, replacing whatever previous file I had open. Is there any way to get the preview to show up in in to the right still?

    • Ekaterina Ryabukha says:

      Hello,

      Thank you for sharing your thoughts on the new commit flow! Could you kindly elaborate on why the existing solution is worse than the previous one so we could share your feedback with the team responsible for the commit flow? Right now, you get “Preview Diff” opened in a new tab, so the file you had open in the editor is still there on the left of the “Preview Diff” tab.

      Unfortunately, there’s no easy way to get the previous flow back: you can get the modal commit dialog back by unchecking “Commit from the Local Changes without showing a dialog” in Preferences/Settings | Version Control | Commit Dialog, but for the previous version of the non-modal commit flow you’d need to modify some registry keys.

      • Nic C says:

        Hi Ekaterina,

        I’ve rolled back because the new flow feels much less convenient. A few reasons that I can think of why I find it so:
        1. This flow assumes that you are always in the process of committing, but that isn’t the case a lot of the time. For example, if I’m working on a file, in want to quickly see a change I’ve made in another file so I can properly adjust some code, then the file I’m working on is completely replaced. In the previous flow, you could see your changes in a different area/context and jump between them very quickly, while continuing your work. This is the part that I find most frustrating. While actually committing, sure it’s nice to see the whole file, but in the process of working, it is much less convenient.
        2. With this flow you can only focus on a single file/change at a time. In the old flow you could have your most recently modified file (or files if you’re split) and you have full context of what you were working on, as well as the changes in a tab below to verify everything was ready to commit. This flow forces a single file and less flexibility.
        2 Opening in a tab shows the whole file, in the context of what I’m doing, I only want to see the differences of things, which is what the Preview Diff does. I think this is a preference/context thing.
        3. I very regularly have split tabs in my main window, so this whole thing feels very awkward with lots of empty space.

        In general my own work flow and preference is very against this new flow. I understand with any changes, there are adjustments, but this isn’t just a new flow to learn problem, this is a step backwards and is much less convenient for me.

        • Ekaterina Ryabukha says:

          Many thanks for such detailed feedback! I’ve shared it with the team. As I said in the blog post, we’re still working to improve the new tool window, so every piece of feedback is valuable to us.

  4. Artem says:

    New commit sidebar with diff view and selective shelf are absolutely charming!

    A person who designed it – I love you!

    It is the best change all over the ten years I using WebStorm.

  5. Arno Nyhm says:

    i don’t like the changes in the new EAP. had before an tab “version control” and there a treepoint “Local changes”

    now it is “git” and i can not find a tab “local changes”
    i used it to track changes before i can submit it

    • Ekaterina Ryabukha says:

      Hello Arno,

      Thank you for sharing the feedback! It’s still a work in progress. The Local Changes tab should be under the new Commit tool window.

  6. Stanislav says:

    If I disable the “Commit from the Local Changes without showing a dialog” option I still get my diffs in the main window, instead of showing in the Local Changes tab. I would expect this behaviour to return to its current state when the option is deselected. Right now this is not really useful to have diffs appearing in the main window if you are not using the new Commit tab. I hope the old behaviour could be restored in the next versions. Thank you.

Leave a Reply

Your email address will not be published. Required fields are marked *