Early Access Program Releases

PyCharm 2023.1 EAP 4 Is Out!

This build brings support for Tailwind CSS configuration options, the ability to configure Actions on Save for new projects, and more.

To see what has already been added in PyCharm 2023.1, take a look at our previous EAP blog posts.

The Toolbox App is the easiest way to get the EAP builds and keep both your stable and EAP versions up to date. You can also manually download the EAP builds from our website.

Download PyCharm 2023.1 EAP

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

User experience 

Redesigned Run widget for the new UI

In response to the feedback we’ve received about the IDE’s new UI, we’ve redesigned the Run widget in the main window header so that its appearance is unobtrusive and easier on the eyes.

Option to show hidden tabs in the new UI 

Users of the new UI can now see the full list of open editor tabs. It’s accessible via the Show Hidden Tabs selector located at the right end of the tabs row. 

Setting to configure Actions on Save for new projects

PyCharm 2023.1 EAP 4 adds an option to predefine the behavior of Actions on Save for new projects. 

For this, go to File | New Projects Setup | Preferences For New Projects | Tools | Actions on Save and select which actions you want to be triggered when saving changes in your future projects.

ML-powered search for classes in Search Everywhere enabled by default

To provide you with more relevant and accurate search results, we continue our efforts to integrate machine-learning ranking into the Search Everywhere (Double ⇧ / Double Shift) functionality. 

The sorting algorithm in the Classes tab is now also powered by machine learning by default, along with the results in the Actions and Files tabs.  


Option to specify the placement of pasted content

For version 2023.1, we’ve fine-tuned the user experience when pasting a line that was copied or cut without selection. There’s now a special setting that allows you to control the placement of the pasted content. 

In Preferences / Settings | Advanced Settings, find the Editor section and select the desired behavior for the Paste action from the drop-down list. 

Option to show whitespaces only in selected code

There’s a new Selection checkbox in Preferences / Settings | Editor | General | Appearance | Show Whitespace that allows you to configure this setting so that the IDE shows whitespaces as small dots only when you select code.

Web development

Configure Tailwind CSS

In PyCharm 2023.1 we’ve added highly anticipated improvements for Tailwind CSS. In this build, we’ve added support for all configuration options, such as configuring custom class name completions under the `classAttributes` option, or even an experimental one like tailwindCSS.experimental.configFile.

You can find and set up these configuration options under Preferences / Settings | Languages & Frameworks | Style Sheets | Tailwind CSS.

Run Jest tests in folders

We’ve also added the ability to run all the tests in a specific folder through the right-click menu. This makes it much easier to run Jest tests.

Example of running tests from the context menu in the project tool window

Convert strings to template literals automatically

In PyCharm 2023.1 your single- or double-quoted strings will be automatically transformed into template literals whenever you type ${. This works for raw strings as well as for JSX properties.

using the new convert strings to template literals working

Universal approach to handling file references

We’ve improved the way PyCharm handles references in JavaScript, TypeScript, HTML, CSS, and various frameworks in v2023.1. References are now handled in a more generic way across your projects. For instance, resolving images, CSS, or HTML files now works with path aliases.

showing resolve works now, all our features like rename, show usages should work as expected

Component imports added on copy-paste

When you copy and paste code from one file to another, PyCharm automatically copies and adds all the required imports. This was previously the case with plain JavaScript, TypeScript, and React templates. In PyCharm 2023.1 it now works for Vue, Svelte, Astro, and Angular templates, too.

Gif demonstrating all the import information being added on paste

Better prioritization of imported libraries for auto-import

We’ve improved the IDE’s behavior when adding auto-imports from different libraries with the same exported element name.

A popup with import options is no longer shown if the project already has an import for an element. Auto-imports are now added based on the existing import in the project.

If you need to add an import for an element from another library, the import statement must be added manually. The IDE will then provide a popup with options to make it work like it did in previous versions.

gif showing that on the first import a popup appears but on the second and third it does it automatically

Version control systems

Improved code review workflow for GitHub

For PyCharm 2023.1 we’ve fine-tuned the process of reviewing code inside the IDE. 

Our research found that the most common scenario is when a user goes first to GitHub and then refers to the IDE in cases where it’s necessary to fully browse the code. 

To facilitate this workflow, we’ve reworked the Pull Request tool window. It now features a dedicated tab for each pull request you open. The tab instantly displays the list of changed files, but now provides less information than before. This allows you to better focus on the current task. There is now also a dedicated button to easily execute the action that’s considered the most important given the pull request’s current state.

Notable fixes:

  • Run configurations now respect the type of Docker interpreter used by the project. [PY-55642
  • Using parentheses in the “yield from” statement no longer leads to a false positive Remove redundant parentheses. [PY-45143
  • RuntimeError exceptions are now printed in the Python console. [PY-57783]

These are the most important updates for PyCharm 2023.1 EAP 4. For the full list of improvements, check out the release notes. Share your feedback on the new features in the comments below, on Twitter, or in our issue tracker.

image description