Early Access Program Releases

PyCharm 2016.3 EAP is Available with Initial Support for Python 3.6

Great news: a couple of weeks ago Python 3.6.0 beta 1 was released, marking the end of the feature development phase for Python 3.6. And today we give you the first PyCharm 2016.3 Early Access Preview build which includes initial support for Python 3.6.

Head on over to the PyCharm Early Access Preview (EAP) page and have a look at the download section where you can get it for your platform right now.

pycharm_splash2016_3_eap-01

PyCharm 2016.3 EAP introduces new features and bug-fixes that are unique to PyCharm, as well as a lot of improvements from the Web and IntelliJ Platform sides. Talking about Python-related improvements, the new features in this first preview build are mostly concentrated around initial support for Python 3.6, not to mention many bug fixes in various subsystems.

Support for PEP 526: Syntax for variable annotations
PyCharm 2016.3 EAP brings support for the new PEP 526 Python 3.6 standard, which introduces the syntax for type annotations of variables including class variables and instance variables. That means PyCharm now recognizes the new syntax and uses this meta information about types for type inference. Ultimately this positively affects code completion, inspections and error checking:

variable-annotations4-cropped

Support for PEP 498: Formatted string literals

Per the description of the standard, formatted string literals are a new kind of string literals, prefixed with ‘f’. They are similar to the format strings accepted by str.format(). They contain replacement fields surrounded by curly braces. Replacement fields are expressions that are evaluated at run-time and then formatted using the format() protocol. PyCharm so far provides basic support for f-strings, recognizing their syntax and providing code completion inside them:

f-strings-cropped

There are still many things we need to do in order to provide full support for f-strings and type annotations to leverage them for better development experience. There are also many other new language features and standards which will likely change before the final release of Python 3.6. We’re going to consider and implement these changes during the PyCharm 2016.3 Early Access Program.

We’ve added a few more Python-specific features:

  • Support for PEP 515: Underscores in numeric literals
  • Type checking of the inferred type of a function against the type specified in the type hint
  • Tab code completion in IPython console

PyCharm 2016.3 EAP also includes all of the recent IntelliJ Platform improvements:

  • Improved Version Control integration with new undo commit and delete/restore tracked branch actions, sign-off commits and file scope highlighting
  • Improved Database Tools: database drivers auto-updates, improved table editor, external dump tools integration, improved SQL code completion and inspections, and many others
  • Improved find in path dialog
  • Font improvements including the new default San Francisco font for Mac OS X

Web-related improvements in PyCharm 2016.3 EAP include:

  • Integration with Flow
  • PostCSS support
  • Using Docker with Node.js apps
  • Smarter Rename for TypeScript
  • Angular CLI
  • Grouped files in Project view
  • Generate .editorconfig
  • Spaces around arrow functions
  • And more

We encourage you to give PyCharm 2016.3 EAP a spin and try the latest features ahead of the official release. After downloading the latest EAP build you’ll start getting weekly updates with new features and improvements. (To be notified of updates, make sure to select “Early Access Program” in your update settings.) Your feature requests and bug reports are welcome and much appreciated in our issue tracker. We also look forward to your feedback in the comments to this blog post.

Your PyCharm Team
The Drive to Develop

image description