PyCharm 2020.2

Adds smart in-editor exceptions preview, and in-place signature-change refactoring.
July 31, 2020 - 9:03
New Version

Features

Version Control

  • New pull request dedicated view - The new dedicated view makes it easier for you to interact with your pull requests. Find all the information you need in a separate dedicated tool window where you can perform tasks within the full PR workflow from the comfort of your IDE.
  • New reviews support - Reviews are a very important part of the pull request flow, and now you have everything you need to complete every stage of the review workflow from within Pycharm. Start and request reviews, attach comments, and submit reviews, all in PyCharm.
  • New merging support - Merging your pull request into master from PyCharm was not so easy before; though it was possible with some inventive workarounds. This has all changed in PyCharm 2020.2. Now you can easily merge your PR, rebase and merge, or squash and merge with no effort at all.
  • Improved compare-branches action - Now when comparing two branches in PyCharm you’ll see all their commits in one overview. The improved action now opens the logs of both branches in the editor instead of opening it in the VCS tool window, giving you more space, a better overview, and increasing your visibility and ability to compare them.
  • Further improvements
    • While you review your PRs, PyCharm will display any issue found during the pre-commit checks with links to help you resolve it.
    • You can now select a number of local commits in the Log tab of the Git tool window and squash them into one.
    • Improved the UX of the dialogs for Git Merge, Pull, and Rebase to make it easier for you to identify which action and flags were invoked.

Python

  • New in-editor exceptions preview - PyCharm can now automatically stop on an exception breakpoint in your test without needing you to explicitly set it. It means that PyCharm understands your code, catches exceptions, stops the execution, and displays the problem exactly where it is happening.
  • New in-place signature change refactoring - You no longer need to go through a hidden modal dialog to change the signature of a method. Now you can simply edit the parameters in-place and use either the new gutter icon or intention action (Alt+Enter) to quickly review it and apply the changes to all its usages.
  • New in-place rename refactoring - Similarly to the new in-place signature change, you can rename classes and methods in-place and go through the new in-place refactoring shortcut to quickly review it and apply the changes. You can apply project-wide refactorings in just a few steps.
  • Full support for Python 3.9 - As always, PyCharm is up-to-date with recent changes in the Python language and, this release anticipates the upcoming Python 3.9 release and included support for PEP-614 (expr syntax), PEP-585 (Generic types in std. collections) and PEP-593 (x: Annotated[...] type), and more.
  • Further improvements
    • Forgot to add ‘f’ to your f-string? PyCharm now auto-enables f-strings when the user adds curly braces within a string statement.
    • Trailing commas are automatically added before a line break in multi-line collection literals.

Web Development

  • New support for Django configuration constants completion in settings.py - Do you see yourself frequently typing the same configuration variables in settings.py across Django projects? Now PyCharm can autocomplete the names of the documented Django settings (Ctrl-Q, or F1 on Apple macOS).
  • Python console becomes a Flask shell when Flask is enabled - When you open a Python console in a Flask project, PyCharm will automatically start the Flask shell so that you already have your Flask application and your application context 'g' available for interactive experimentation.
  • Spport for Vue - Nuxt.js support, Vue-specific code style settings, improvements around Vue in TypeScript projects, and lots of other things have been added. Vue support in PyCharm has never been so advanced.
  • Save time with new features for JavaScript - New smart intentions (Alt+Enter) will help you perform some actions faster. For example, you can now quickly convert a for loop with a numeric index into a forEach array method. Looking through documentation comments has also become easier as you can now render them right in the editor.
  • Further improvements
    • Now you can make Prettier the default formatter in your JavaScript projects.

IDE Improvements

  • New inspections widget - The new inspection widget was designed to make it easier for you to have a clear overview of all issues present in your current file while also allowing you to inspect deeper. Configure the highlight level and make sure to have all the information you need to make your code better.
  • Proper support for npipe and Docker on Microsoft Windows - If you are a Microsoft Windows user you will be happy to know that PyCharm now has proper support for “Docker on Windows”, specifically regarding native support for npipe connections on Windows.
  • Further improvements
    • If you work with Docker frequently you might be happy to know that PyCharm now has support for deleting "failed" and/or "deleted" nodes from the DockerView.
    • If you use screen-readers, PyCharm detects this and will automatically enable all its built-in accessibility features for you.

Databases

  • Even better JOIN completion - It takes one less step to complete JOIN clauses as PyCharm now offers the whole clause when you start typing ‘JOIN’. Also, completion offers a way to JOIN by two columns when applicable, and, of course, all with support for writing Python code.
  • New UI for boolean values - There’s now a more user-friendly way to view and edit boolean values. True values are now marked with a bullet point to distinguish them from all the others.
  • Better filtering for MongoDB - In addition to ObjectId and ISODate, filtering now supports UUID, NumberDecimal, NumberLong, and BinData. Also, if you have a valid UUID/ObjectId/ISODate in your clipboard, you will see this value in the list of suggested filters.
  • Further improvements
    • Oracle DB links now have basic support and are now shown in the database explorer, and the code that uses them is correctly highlighted.
New in-editor exceptions preview

PyCharm

The Python IDE for professional developers.

PyCharm is also available in:

Got a Question?

Live Chat with our JetBrains licensing specialists now.