Python v2018.8.0 Release Notes
Release Date: 2018-09-04 // 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
- 4.1.1
- 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: 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
- Improved language server startup time by 40%.
(#1865)
๐ 1. Add pip dependency support to the conda
environment.yml
YAML schema support (thanks Mark Edwards). (#2119) ๐ 1. Added a German translation. (thanks to bschley and by means of berndverst and croth1 for the reviews) (#2203) - The new setting
python.analysis.diagnosticPublishDelay
allows you to control when language server publishes diagnostics. Default is 1 second after the user activity, such a typing, ceases. If diagnostic is clear (i.e. errors got fixed), the publishing is immediate. (#2270) ๐ 1. Language server now supports hierarchical document outline per language server protocol 4.4+ and VS Code 1.26+. (#2384) - Make use of the
http.proxy
field insettings.json
when downloading the Python Language Server. (#2385)
๐ Fixes
- Fix debugger issue that prevented users from copying the value of a variable from the Variables debugger window. (#1398) โ 1. Enable code lenses for tests when using the new language server. (#1948) ๐ป 1. Fix null reference exception in the language server causing server initialization to fail. The exception happened when search paths contained a folder that did not exist. (#2017)
- Language server now populates document outline with all symbols instead of just top-level ones.
(#2050)
โ
1. Ensure test count values in the status bar represent the correct number of tests that were discovered and run.
(#2143)
๐ 1. Fixed issue in the language server when documentation for a function always produced "Documentation is still being calculated, please try again soon".
(#2179)
๐ 1. Change linter message parsing so it respects
python.linting.maxNumberOfProblems
. (thanks Scott Saponas) (#2198) ๐ 1. Fixed language server issue when it could enter infinite loop reloading modules. (#2207) - Ensure workspace
pipenv
environment is not labeled as avirtual env
. (#2223) - Improve reliability of document outline population with language server. (#2224)
- Language server now correctly handles
with
statement when__enter__
is declared in a base class. (#2240) - Fix
visualstudio_py_testLauncher
to stop breaking out of test discovery too soon. (#2241) ๐ 1. Notify the user when the language server does not support their platform. (#2245) ๐ 1. Fix issue with survey not opening in a browser for Windows users. (#2252) - Correct banner survey question text to reference the Python Language Server. (#2253) ๐ 1. Fixed issue in the language server when typing dot under certain conditions produced null reference exception. (#2262)
- Fix error when switching from new language server to the old
Jedi
language server. (#2281) โฌ๏ธ 1. Unpin Pylint from < 2.0 (prospector was upgraded and isn't stuck on that any longer) (#2284) ๐ 1. Add support for breaking into the first line of code in the new debugger. (#2299) - Show the debugger survey banner for only a subset of users.
(#2300)
๐ง 1. Ensure Flask debug configuration launches flask in a debug environment with the Flask debug mode disabled.
This is necessary to ensure the custom debugger takes precedence over the interactive debugger, and live reloading is disabled.
http://flask.pocoo.org/docs/1.0/api/#flask.Flask.debug
(#2309)
๐ 1. Language server now correctly merges data from typeshed and the Python library.
(#2345)
โ
1. Fix pytest >= 3.7 test discovery.
(#2347)
โก๏ธ 1. Update the downloaded Python language server nuget package filename to
Python-Language-Server-{OSType}.beta.nupkg
. (#2362) 0๏ธโฃ 1. Added setting to control language server log output. Default is now 'error' so there should be much less noise in the output. (#2405) - Fix
experimental
debugger when debugging Python files with Unicode characters in the file path. (#688) - Ensure stepping out of debugged code does not take user into
PTVSD
debugger code. (#767) โฌ๏ธ 1. UpgradepythonExperimental
topython
inlaunch.json
. (#2478)
Code Health
โช 1. Revert change that moved IExperimentalDebuggerBanner into a common location. (#2195)
- Decorate
EventEmitter
within atry..catch
to play nice with other extensions performing the same operation. (#2196) 0๏ธโฃ 1. Change the default interpreter to favor Python 3 over Python 2. (#2266) ๐ 1. Deprecate commandPython: Build Workspace Symbols
when using the language server. (#2267) ๐ 1. Pin version ofpylint
to3.6.3
to allow ensurepylint
gets installed on Travis with Python2.7. (#2305) ๐ 1. Remove some of the debugger tests and fix some minor debugger issues. (#2307) ๐ 1. Only use the current stable version of PTVSD in CI builds/releases. (#2432)