Python v2018.10.0 Release Notes
Release Date: 2018-11-08 // over 5 years ago-
Thanks
Thanks to the following projects which we fully rely on to provide some of our features:
- isort 4.3.4
- jedi 0.12.0 and parso 0.2.1
- Microsoft Python Language Server
- ptvsd
- exuberant ctags (user-installed)
- rope (user-installed)
Also thanks to the various projects we provide integrations with which help ๐ make this extension useful:
- ๐ Debugging support: Django, Flask, gevent, Jinja, Pyramid, PySpark, Scrapy, Watson
- Formatting: autopep8, black, yapf
- ๐ Interpreter support: conda, direnv, pipenv, pyenv, venv, virtualenv
- ๐ Linting: bandit, flake8, mypy, prospector, pylint, pydocstyle, pylama
- โ Testing: nose, pytest, unittest
And finally thanks to the Python development team and community for creating a fantastic programming language and community to be a part of!
โจ Enhancements
๐ 1. Add support for code completion in the debug console window. (#1076)
- Add a new simple snippet for
if __name__ == '__main__':
block. The snippet can be accessed by typing__main__
(thanks R S Nikhil Krishna) (#2242) - Add Python Interactive mode for data science. (#2302)
- Added a debugger setting to show return values of functions while stepping. (#2463)
- Enable on-type formatting from language server
(#2690)
๐ 1. Add bandit to supported linters.
(thanks Steven Demurjian Jr.)
(#2775)
๐ 1. Ensure
python.condaPath
supports paths relative toHome
. E.g."python.condaPath":"~/anaconda3/bin/conda"
. (#2781) ๐ 1. Updated the language server to 0.1.57/2018.11.0 (from 2018.10.0) and the debugger to 4.2.0 (from 4.1.3). Highlights include:- Language server
- Completion support for
collections.namedtuple
. - Support
typing.NewType
andtyping.TypeVar
.
- Completion support for
- Debugger
- Language server
- Clear cached list of interpreters when an interpeter is created in the workspace folder (this allows for virtual environments created in one's workspace folder to be detectable immediately). (#656) ๐ 1. Pylint is no longer enabled by default when using the language server. Users that have not configured pylint but who have installed it in their workspace will be asked if they'd like to enable it. (#974)
๐ Fixes
๐ 1. Support "conda activate" after 4.4.0. (#1882) ๐ฆ 1. Fix installation of codna packages when conda environment contains spaces. (#2015) ๐ 1. Ensure
python.formatting.blackPath
supports paths relative toHome
. E.g."python.formatting.blackPath":"~/venv/bin/black"
. (#2274) โ 1. Correct errors with timing, resetting, and exceptions, related to unittest during discovery and execution of tests. Re-enableunittest.test
suite. (#2692)- Fix colon-triggered block formatting.
(#2714)
๐ 1. Ensure relative paths to python interpreters in
python.pythonPath
ofsettings.json
are prefixed with./
or.\\
(depending on the OS). (#2744) - Give preference to PTSVD in current path.
(#2818)
๐ 1. Fixed a typo in the Python interpreter selection balloon for macOS.
(thanks Joe Graham)
(#2868)
๐ 1. Updated the language server to 0.1.57/2018.11.0 (from 2018.10.0)
and the debugger to
4.2.0 (from 4.1.3). Highlights include:
- Language server
- Completions on generic containers work (e.g.
x: List[T]
now have completions forx
, not justx[]
). - Fixed issues relating to
Go to Definition
forfrom ... import
statements. None
is no longer flagged as undefined.BadSourceException
should no longer be raised.- Fixed a null reference exception when handling certain function overloads.
- Completions on generic containers work (e.g.
- Debugger
- Properly deal with handled or unhandled exception in top level frames.
- Any folder ending with
site-packages
is considered a library. - Treat any code not in
site-packages
as user code. - Handle case where no completions are provided by the debugger.
- Language server
Code Health
๐ 1. Remove test-specific code from
configSettings.ts
class. (#2678) โ 1. Add a unit test for the MyPy output regex. (#2696) โก๏ธ 1. Update all npm dependencies to use the caret operator. (#2746) ๐ 1. Move contents of the foldersrc/utils
intosrc/client/common/utils
. (#2748) ๐ 1. Moved languageServer-related files to a languageServer folder. (#2756) ๐ท 1. Skip known failing tests for specific OS and Python version combinations to get CI running cleanly. (#2795)- Move the linting error code out of the linting message and let VS Code manage it in the Problems panel (Thanks Nafly Mohammed). (#2815) ๐ 1. Remove code related to the old debugger. (#2828) โฌ๏ธ 1. Upgrade Gulp to 4.0.0. (#2909) ๐ 1. Remove pre-commit hooks. (#2963) โ 1. Only perform Black-related formatting tests when the current Python-version supports it. (#2999) ๐ 1. Move language server downloads to the CDN. (#3000) ๐ 1. Pin extension to a minimum version of the language server. (#3125)