PyCharm 2020.3.x

Released: Dec 2, 2020

Updates in 2020.3.x

2020.3.4

Updated Mar 17, 2021

Features

Trusted projects

  • Introduced the concept of trusted projects to mitigate the risks associated with opening projects from unknown and untrusted sources.
  • When you open a project, PyCharm doesn’t execute any code from it and checks whether it is trusted or from a trusted location.
  • If the project currently is not trusted, the IDE will ask you to choose whether to open it in safe mode or full-trust mode. If the project currently is not trusted, the IDE will ask you to choose whether to open it in safe mode or full-trust mode.
  • If you open a project in safe mode, the IDE will disable all potential code execution upon opening. Since this makes it impossible to build an accurate project model, many IDE features, such as error highlighting, will be disabled. However, you can still browse the project’s contents and open its source files in the editor.
  • To avoid showing warnings for every project, the IDE allows you to define trusted locations. Projects in directories specified as “Trusted Locations” are always considered trusted.
  • To ensure that you get the untrusted project warnings only when something out of the ordinary is happening, It is recommended to add the directory where you usually create projects to your trusted locations.

Fixes

  • Apple ARM chip (Apple Silicon): the OS X Keychain is now accessible from your IDE.
  • Code insight: inspections work as expected for decorators defined as classes.
  • Pytest: failed tests for run configurations with additional arguments can now be rerun without errors.
  • Markdown: all characters are now rendered correctly in the preview tab.
  • Docker: fixed the issue causing log spamming when disconnecting from Docker.
  • Web development: the Vue.js plugin no longer breaks HTML templating.

2020.3.3

Updated Jan 27, 2021

Features

  • It is now possible to open projects in tabs on Apple macOS Big Sur.

Fixes

  • Fixed some shortcut issues on Apple Macs with an M1 chip.
  • Fixed patch updates for Apple Silicon IDE builds.
  • Fixed the IDE’s behavior when you double-click on a file in Local Changes. This action now opens the file in the editor. Alternatively, you can select an option to “Show Diff Instead of File Content on Double-Click” in the context menu.
  • Fixed the incorrect focus when dragging a file over an IDE window in Windows 10.
  • Fixed the completion of field lookups for Django models.
  • Fixed the problem causing numpy.mean to be flagged as an unresolved reference.
  • Resolved the issue involving the wrong cell background for deactivated colored cell mode in Powerful Data Viewer, thanks to the contribution of Daniel Schmidt.
  • Fixed the bug with newly added JSX tags causing simultaneous editing of non-related closing tags.
  • In React, code completion now works for dynamically evaluated className attribute values.

2020.3.2

Updated Dec 30, 2020

Features

  • Added support for Apple Silicon.

Fixes

  • Fixed the issue with freezes after resuming the debugging process.
  • An issue that was breaking the helpers path and preventing WSL debugger from working has now been fixed.
  • Unused variables sometimes arise in complex assignments. The quick-fix now removes only the unused variable, not the entire statement.
  • PyCharm detects when you are trying to import a non-existing name in CapitalizedWords style. Now PyCharm defines such an identifier as a class and suggests an appropriate quick-fix: “Create class … in module …”.

2020.3.1

Updated Dec 21, 2020

Fixes

  • Code analysis and code completion in PyCharm 2020.3 would sometimes get stuck and never finish.
  • The debugger now works on Linux with Python 3.9 and Cython speedups.
  • Python Console: parameter info and autocompletion is now displayed dynamically.
  • The type checker works correctly for the ‘argparse’ module.
  • NamedTuple factories are now supported.
  • PyCharm remembers the selected color theme for the Jupyter notebooks Preview pane.
  • Having the Vue.js plugin enabled no longer affects Django template tags recognition.
  • Settings for Django projects are no longer reset after closing the project.
  • Setting up Docker as a remote interpreter doesn’t result in an empty package list.
  • Standard library imports are now correctly resolved on Windows using the Python installed from Microsoft Store.

2020.3

Updated Dec 2, 2020

Features

Project setup and navigation

  • Environment autoconfiguration for your imported or cloned projects - If you are cloning or importing a project from the repo with a requirements.txt, setup.py, environment.yml, or pipfile inside it, PyCharm will set up your Python environment for you.
  • ‘Search Everywhere’ to find Git commits - Search Everywhere now also looks for your Git commits. Press Shift twice to open Search Everywhere and start searching. You can even use the search dialog to find the answers to math calculations.
  • New Welcome screen for faster initial setup - PyCharm’s Welcome screen has been redesigned. The initial setup wizard has been replaced with a quick-access screen containing four pages: ‘Projects’, for managing your projects; ‘Customize’, for setting up the IDE interface; ‘Plugins’, for plugin installation; and ‘Learn PyCharm’, for access to learning resources.
  • Further improvements
    • The VCS menu now adapts to match the version control system in use. The most useful actions and key features are now available at your fingertips, so you no longer have to go searching for them in the submenu.

Code editor

  • Invert ‘if’ statements - You can now invert “if” statements: go to the context menu for “if”, choose Show Context Actions, and then select Invert ‘if’ condition. The branches will switch their positions, but the semantics will stay the same. This feature works for all “if” statements without “elif” branches. The action understands control flow, and handles early return.
  • Drag and drop tabs or open them in ‘Right Split’ - If you want to have several tabs open while working on a project, you can now drag and drop file tabs to split the editor either horizontally or vertically. This release also introduced the Open in Right Split action, which splits the editor vertically upon opening your file. You can invoke this action from the Project view or other navigation popups, such as Recent Files, Search Everywhere, and the navigation bar.
  • Enhanced code insight for type aliases - Starting from Python 3.10, using type aliases will no longer interfere with code insight. The new TypeAlias annotation will be supported by PyCharm as soon as it is released in Python.
  • Further improvements
    • Added the ability to use custom color settings for nested functions and specify your custom colors.

IDE Improvements

  • Git Stage support - You can now stage changes directly from PyCharm. You can also stage changes right from the gutter or in the Diff view.
  • A more powerful Data Viewer - SciView now allows selecting and copying values, as well as sorting and filtering for columns. You can open and visually compare two datasets directly in the editor pane, and export your processed data to the CSV format.
  • Better preview UI for the Markdown tool - You can customize the Markdown format. Press Ctrl+Alt+L to apply the formatting. The Auto-Scroll Preview button in the top right-hand corner of the editor allows you to sync the scrolling of the preview pane with the editor.
  • Intelligent spelling and grammar checks - Now when you press Alt+Enter, the IDE invokes suggestions to correct your grammar and spelling. What’s more, this release has started using a new version of the LanguageTool grammar checking engine, which improves text reviews in English and adds support for more than 10 additional languages.
  • Further improvements
    • Sync your PyCharm theme with your OS settings on Apple macOS and Microsoft Windows. This feature will be especially useful if you’ve already set up auto-switching between Light and Dark mode depending on the time of the day.
    • Added the ability to set PyCharm as the default application for certain file formats.

Frontend development

  • Create a React component from usage - Place the caret at the unresolved React components location, press Alt+Enter, and select Create class/function component from the list – the IDE will create the relevant code construct for you.
  • cURL conversion in the HTTP client - You can now export an HTTP request to cURL. Press Alt+Enter in the HTTP request editor and select Convert to cURL and copy to clipboard. This conversion works in both directions, from cURL to an HTTP request and from an HTTP request to cURL.
  • Tailwind CSS support - PyCharm can now help you work with Tailwind CSS more productively. Install the Tailwind CSS plugin and the IDE will autocomplete your Tailwind classes, show you a preview of the resulting CSS on mouseover, and support the customizations you make using tailwind.config.js files.
  • Further improvements
    • If you are looking for a certain code element in one of your open JavaScript and TypeScript files, just click on the file name in the Navigation bar and get the list of all code elements from that file in a popup.
    • Added support for code formatting in JavaScript for multiline CSS and HTML blocks with JavaScript inside them. The IDE will indent correctly when you add code in these more complex template literals or reformat your code.

Collaborative development

  • Code With Me Plugin - PyCharm 2020.3 supports Code With Me (EAP), a new service from JetBrains for collaborative development and pair programming. Code With Me enables you to share the project you currently have open in your IDE with others and work on it together in real time.