Skip to content

Commit 905c713

Browse files
committed
sync fork with upstream
2 parents ffba179 + 5aaef3b commit 905c713

File tree

304 files changed

+12258
-4758
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

304 files changed

+12258
-4758
lines changed

.editorconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ root = true
88
indent_style = space
99
indent_size = 4
1010
trim_trailing_whitespace = true
11+
insert_final_newline = true
1112

1213
# The indent size used in the `package.json` file cannot be changed
1314
# https://github.com/npm/npm/pull/3180#issuecomment-16336516

.gitignore

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@
22
out
33
node_modules
44
*.pyc
5-
.vscode/.ropeproject/**
6-
src/test/.vscode/**
5+
**/.vscode/.ropeproject/**
76
**/testFiles/**/.cache/**
87
*.noseids
8+
.vscode-test
9+
__pycache__
10+
npm-debug.log
11+
**/.mypy_cache/**

.gitmodules

Lines changed: 0 additions & 4 deletions
This file was deleted.

.jshintignore

Lines changed: 0 additions & 1 deletion
This file was deleted.

.jshintrc

Lines changed: 0 additions & 10 deletions
This file was deleted.

.travis.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ before_install: |
4848
pyenv install $PYTHON
4949
pyenv global $PYTHON
5050
fi
51+
export TRAVIS_PYTHON_PATH=`which python`
5152
install:
5253
- pip install --upgrade -r requirements.txt
5354
- npm install

.vscode/launch.json

Lines changed: 29 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,7 @@
11
// A launch configuration that compiles the extension and then opens it inside a new window
22
{
33
"version": "0.1.0",
4-
"configurations": [{
5-
"name": "CompletionServer.ppy",
6-
"type": "python",
7-
"request": "launch",
8-
"stopOnEntry": true,
9-
"pythonPath": "python",
10-
"program": "${workspaceRoot}/pythonFiles/completionServer.py",
11-
"cwd": "${workspaceRoot}",
12-
"env": {},
13-
"args": [
14-
"123"
15-
],
16-
"envFile": "${workspaceRoot}/.env",
17-
"debugOptions": [
18-
"WaitOnAbnormalExit",
19-
"WaitOnNormalExit",
20-
"RedirectOutput"
21-
]
22-
},
4+
"configurations": [
235
{
246
"name": "Launch Extension",
257
"type": "extensionHost",
@@ -30,7 +12,9 @@
3012
],
3113
"stopOnEntry": false,
3214
"sourceMaps": true,
33-
"outDir": "${workspaceRoot}/out",
15+
"outFiles": [
16+
"${workspaceRoot}/out/**/*.js"
17+
],
3418
"preLaunchTask": "compile"
3519
},
3620
{
@@ -43,7 +27,9 @@
4327
"--server=4711"
4428
],
4529
"sourceMaps": true,
46-
"outDir": "${workspaceRoot}/out/client",
30+
"outFiles": [
31+
"${workspaceRoot}/out/client/**/*.js"
32+
],
4733
"cwd": "${workspaceRoot}"
4834
},
4935
{
@@ -58,33 +44,36 @@
5844
],
5945
"stopOnEntry": false,
6046
"sourceMaps": true,
61-
"xxoutDir": "${workspaceRoot}/out/test",
6247
"outFiles": [
6348
"${workspaceRoot}/out/**/*.js"
6449
],
6550
"preLaunchTask": "compile"
6651
},
6752
{
68-
"name": "Python",
69-
"type": "python",
53+
"name": "Launch Multiroot Tests",
54+
"type": "extensionHost",
7055
"request": "launch",
71-
"stopOnEntry": true,
72-
"pythonPath": "python",
73-
"program": "${file}",
74-
"console": "integratedTerminal",
75-
"args": [],
76-
"debugOptions": [
77-
"WaitOnAbnormalExit",
78-
"WaitOnNormalExit",
79-
"RedirectOutput"
56+
"runtimeExecutable": "${execPath}",
57+
"args": [
58+
"${workspaceRoot}/src/testMultiRootWkspc/multi.code-workspace",
59+
"--extensionDevelopmentPath=${workspaceRoot}",
60+
"--extensionTestsPath=${workspaceRoot}/out/test"
8061
],
81-
"cwd": "${workspaceRoot}"
62+
"stopOnEntry": false,
63+
"sourceMaps": true,
64+
"outFiles": [
65+
"${workspaceRoot}/out/**/*.js"
66+
],
67+
"preLaunchTask": "compile"
8268
}
8369
],
84-
"compounds": [{
85-
"name": "Extension + Debugger",
86-
"configurations": [
87-
"Launch Extension", "Launch Extension as debugServer"
88-
]
89-
}]
70+
"compounds": [
71+
{
72+
"name": "Extension + Debugger",
73+
"configurations": [
74+
"Launch Extension",
75+
"Launch Extension as debugServer"
76+
]
77+
}
78+
]
9079
}

.vscode/settings.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,10 @@
44
"out": true, // set this to true to hide the "out" folder with the compiled JS files
55
"**/*.pyc": true,
66
"**/__pycache__": true,
7-
"node_modules": true
7+
"node_modules": true,
8+
".vscode-test": true,
9+
"**/.mypy_cache/**": true,
10+
"**/.ropeproject/**": true
811
},
912
"search.exclude": {
1013
"out": true // set this to false to include "out" folder in search results

.vscode/tasks.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,18 @@
5353
"fileLocation": "relative"
5454
}
5555
]
56+
},
57+
{
58+
"label": "lint-staged",
59+
"type": "npm",
60+
"script": "lint-staged",
61+
"problemMatcher": [
62+
"$tsc",
63+
{
64+
"base": "$tslint5",
65+
"fileLocation": "relative"
66+
}
67+
]
5668
}
5769
]
5870
}

CHANGELOG.md

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,38 @@
1+
### Version 0.8.0 (9 November 2017)
2+
* Add support for multi-root workspaces [#1228](https://github.com/DonJayamanne/pythonVSCode/issues/1228), [#1302](https://github.com/DonJayamanne/pythonVSCode/pull/1302), [#1328](https://github.com/DonJayamanne/pythonVSCode/issues/1328), [#1357](https://github.com/DonJayamanne/pythonVSCode/pull/1357)
3+
* Add code snippet for ```ipdb``` [#1141](https://github.com/DonJayamanne/pythonVSCode/pull/1141)
4+
* Add ability to resolving environment variables in path to ```mypy``` [#1195](https://github.com/DonJayamanne/pythonVSCode/issues/1195)
5+
* Add ability to disable a linter globally and disable prompts to install linters [#1207](https://github.com/DonJayamanne/pythonVSCode/issues/1207)
6+
* Auto-selecting an interpreter from a virtual environment if only one is found in the root directory of the project [#1216](https://github.com/DonJayamanne/pythonVSCode/issues/1216)
7+
* Add support for specifying the working directory for unit tests [#1155](https://github.com/DonJayamanne/pythonVSCode/issues/1155), [#1185](https://github.com/DonJayamanne/pythonVSCode/issues/1185)
8+
* Add syntax highlighting of pip requirements files [#1247](https://github.com/DonJayamanne/pythonVSCode/pull/1247)
9+
* Add ability to select an interpreter even when a workspace is not open [#1260](https://github.com/DonJayamanne/pythonVSCode/issues/1260), [#1263](https://github.com/DonJayamanne/pythonVSCode/pull/1263)
10+
* Display a code lens to change the selected interpreter to the one specified in the shebang line [#1257](https://github.com/DonJayamanne/pythonVSCode/pull/1257), [#1263](https://github.com/DonJayamanne/pythonVSCode/pull/1263), [#1267](https://github.com/DonJayamanne/pythonVSCode/pull/1267), [#1280](https://github.com/DonJayamanne/pythonVSCode/issues/1280), [#1261](https://github.com/DonJayamanne/pythonVSCode/issues/1261), [#1290](https://github.com/DonJayamanne/pythonVSCode/pull/1290)
11+
* Expand list of interpreters displayed for selection [#1147](https://github.com/DonJayamanne/pythonVSCode/issues/1147), [#1148](https://github.com/DonJayamanne/pythonVSCode/issues/1148), [#1224](https://github.com/DonJayamanne/pythonVSCode/pull/1224), [#1240](https://github.com/DonJayamanne/pythonVSCode/pull/1240)
12+
* Display details of current or selected interpreter in statusbar [#1147](https://github.com/DonJayamanne/pythonVSCode/issues/1147), [#1217](https://github.com/DonJayamanne/pythonVSCode/issues/1217)
13+
* Ensure paths in workspace symbols are not prefixed with ```.vscode``` [#816](https://github.com/DonJayamanne/pythonVSCode/issues/816), [#1066](https://github.com/DonJayamanne/pythonVSCode/pull/1066), [#829](https://github.com/DonJayamanne/pythonVSCode/issues/829)
14+
* Ensure paths in ```PYTHONPATH``` environment variable are delimited using the OS-specific path delimiter [#832](https://github.com/DonJayamanne/pythonVSCode/issues/832)
15+
* Ensure ```Rope``` is not packaged with the extension [#1208](https://github.com/DonJayamanne/pythonVSCode/issues/1208), [#1207](https://github.com/DonJayamanne/pythonVSCode/issues/1207), [#1243](https://github.com/DonJayamanne/pythonVSCode/pull/1243), [#1229](https://github.com/DonJayamanne/pythonVSCode/issues/1229)
16+
* Ensure ctags are rebuilt as expected upon file save [#624](https://github.com/DonJayamanne/pythonVSCode/issues/1212)
17+
* Ensure right test method is executed when two test methods exist with the same name in different classes [#1203](https://github.com/DonJayamanne/pythonVSCode/issues/1203)
18+
* Ensure unit tests run successfully on Travis for both Python 2.7 and 3.6 [#1255](https://github.com/DonJayamanne/pythonVSCode/pull/1255), [#1241](https://github.com/DonJayamanne/pythonVSCode/issues/1241), [#1315](https://github.com/DonJayamanne/pythonVSCode/issues/1315)
19+
* Fix building of ctags when a path contains a space [#1064](https://github.com/DonJayamanne/pythonVSCode/issues/1064), [#1144](https://github.com/DonJayamanne/pythonVSCode/issues/1144),, [#1213](https://github.com/DonJayamanne/pythonVSCode/pull/1213)
20+
* Fix autocompletion in unsaved Python files [#1194](https://github.com/DonJayamanne/pythonVSCode/issues/1194)
21+
* Fix running of test methods in nose [#597](https://github.com/DonJayamanne/pythonVSCode/issues/597), [#1225](https://github.com/DonJayamanne/pythonVSCode/pull/1225)
22+
* Fix to disable linting of diff windows [#1221](https://github.com/DonJayamanne/pythonVSCode/issues/1221), [#1244](https://github.com/DonJayamanne/pythonVSCode/pull/1244)
23+
* Fix docstring formatting [#1188](https://github.com/DonJayamanne/pythonVSCode/issues/1188)
24+
* Fix to ensure language features can run in parallel without interference with one another [#1314](https://github.com/DonJayamanne/pythonVSCode/issues/1314), [#1318](https://github.com/DonJayamanne/pythonVSCode/pull/1318)
25+
* Fix to ensure unit tests can be debugged more than once per run [#948](https://github.com/DonJayamanne/pythonVSCode/issues/948), [#1353](https://github.com/DonJayamanne/pythonVSCode/pull/1353)
26+
* Fix to ensure parameterized unit tests can be debugged [#1284](https://github.com/DonJayamanne/pythonVSCode/issues/1284), [#1299](https://github.com/DonJayamanne/pythonVSCode/pull/1299)
27+
* Fix issue that causes debugger to freeze/hang [#1041](https://github.com/DonJayamanne/pythonVSCode/issues/1041), [#1354](https://github.com/DonJayamanne/pythonVSCode/pull/1354)
28+
* Fix to support unicode characters in Python tests [#1282](https://github.com/DonJayamanne/pythonVSCode/issues/1282), [#1291](https://github.com/DonJayamanne/pythonVSCode/pull/1291)
29+
* Changes as a result of VS Code API changes [#1270](https://github.com/DonJayamanne/pythonVSCode/issues/1270), [#1288](https://github.com/DonJayamanne/pythonVSCode/pull/1288), [#1372](https://github.com/DonJayamanne/pythonVSCode/issues/1372), [#1300](https://github.com/DonJayamanne/pythonVSCode/pull/1300), [#1298](https://github.com/DonJayamanne/pythonVSCode/issues/1298)
30+
* Updates to Readme [#1212](https://github.com/DonJayamanne/pythonVSCode/issues/1212), [#1222](https://github.com/DonJayamanne/pythonVSCode/issues/1222)
31+
* Fix executing a command under PowerShell [#1098](https://github.com/DonJayamanne/pythonVSCode/issues/1098)
32+
33+
134
### Version 0.7.0 (3 August 2017)
2-
* Displaying internal documntation [#1008](https://github.com/DonJayamanne/pythonVSCode/issues/1008), [#10860](https://github.com/DonJayamanne/pythonVSCode/issues/10860)
35+
* Displaying internal documentation [#1008](https://github.com/DonJayamanne/pythonVSCode/issues/1008), [#10860](https://github.com/DonJayamanne/pythonVSCode/issues/10860)
336
* Fixes to 'async with' snippet [#1108](https://github.com/DonJayamanne/pythonVSCode/pull/1108), [#996](https://github.com/DonJayamanne/pythonVSCode/issues/996)
437
* Add support for environment variable in unit tests [#1074](https://github.com/DonJayamanne/pythonVSCode/issues/1074)
538
* Fixes to unit test code lenses not being displayed [#1115](https://github.com/DonJayamanne/pythonVSCode/issues/1115)

CODE_OF_CONDUCT.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
This project has adopted the [Microsoft Open Source Code of
2+
Conduct](https://opensource.microsoft.com/codeofconduct/).
3+
For more information see the [Code of Conduct
4+
FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or
5+
6+
with any additional questions or comments.

CONTRIBUTING.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
## Prerequisites
66
1. Node.js
7-
2. Python v2.6 or later (required only for testing the extension and running unit tests)
7+
2. Python 2.7 or later (required only for testing the extension and running unit tests)
88
3. Windows, OS X or Linux
99

1010
## Setup
@@ -25,18 +25,18 @@ To test the changes you launch a development version of VS Code on the workspace
2525
Use the "Launch Extension" launch option.
2626

2727
### Unit Tests
28-
Run the Unit Tests via the "Launch Test" launch option.
28+
Run the Unit Tests via the "Launch Test" launch option.
2929
Currently unit tests only run on [Travis](https://travis-ci.org/DonJayamanne/pythonVSCode)
3030

31-
_Requirements_
32-
1. Ensure you have disabled breaking into 'Uncaught Exceptions' when running the Unit Tests
33-
2. For the linters and formatters tests to pass successfully, you will need to have those corresponding Python libraries installed locally
31+
_Requirements_
32+
1. Ensure you have disabled breaking into 'Uncaught Exceptions' when running the Unit Tests
33+
2. For the linters and formatters tests to pass successfully, you will need to have those corresponding Python libraries installed locally
3434

3535
## Debugging the extension
3636
### Standard Debugging
3737
Clone the repo into any directory and start debugging.
38-
From there use the "Launch Extension" launch option.
38+
From there use the "Launch Extension" launch option.
3939

4040
### Debugging the Python Extension Debugger
41-
The easiest way to debug the Python Debugger (in my opinion) is to clone this git repo directory into [your](https://code.visualstudio.com/docs/extensions/install-extension#_your-extensions-folder) extensions directory.
41+
The easiest way to debug the Python Debugger (in our opinion) is to clone this git repo directory into [your](https://code.visualstudio.com/docs/extensions/install-extension#_your-extensions-folder) extensions directory.
4242
From there use the ```Launch Extension as debugserver``` launch option.

LICENSE

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
The MIT License (MIT)
1+
Copyright (c) Microsoft Corporation. All rights reserved.
22

3-
Copyright (c) 2015 DonJayamanne
3+
MIT License
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal
@@ -12,7 +12,7 @@ furnished to do so, subject to the following conditions:
1212
The above copyright notice and this permission notice shall be included in all
1313
copies or substantial portions of the Software.
1414

15-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1616
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1717
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1818
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER

README.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,93 @@
1+
<<<<<<< HEAD
12
# This repository is no longer maintained. I will continue my work on this extension on the corresponding [Microsoft fork](https://github.com/Microsoft/vscode-python).
23

4+
=======
5+
# Python extension for Visual Studio Code
6+
7+
A [Visual Studio Code](https://code.visualstudio.com/) [extension](https://marketplace.visualstudio.com/VSCode) with rich support for the [Python language](https://www.python.org/) (_including Python 3.6_), with features including the following and more:
8+
* Linting ([Prospector](https://pypi.io/project/prospector/), [Pylint](https://pypi.io/project/pylint/), [pycodestyle](https://pypi.io/project/pycodestyle/), [Flake8](https://pypi.io/project/flake8/), [pylama](https://github.com/klen/pylama), [pydocstyle](https://pypi.io/project/pydocstyle/), [mypy](http://mypy-lang.org/) with config files and plugins)
9+
* Intellisense (autocompletion with support for PEP 484 and PEP 526)
10+
* Auto indenting
11+
* Code formatting ([autopep8](https://pypi.io/project/autopep8/), [yapf](https://pypi.io/project/yapf/), with config files)
12+
* Code refactoring (Rename, Extract Variable, Extract Method,Sort Imports)
13+
* Viewing references, code navigation, view signature
14+
* Excellent debugging support (remote debugging over SSH, mutliple threads, django, flask)
15+
* Running and debugging Unit tests ([unittest](https://docs.python.org/3/library/unittest.html#module-unittest), [pytest](https://pypi.io/project/pytest/), [nose](https://pypi.io/project/nose/), with config files)
16+
* Execute file or code in a python terminal
17+
* Local help file (offline documentation)
18+
* Snippets
19+
20+
## Quick Start
21+
* Install the extension
22+
* optionally install `ctags` for Workspace Symbols, from [here](http://ctags.sourceforge.net/), or using `brew install ctags` on macOS
23+
* Select your Python interpreter
24+
+ If it's already in your path then you're set
25+
+ Otherwise, to select a different Python Interpreter/Version (or use a virtual environment), use the command `Select Workspace Interpreter`)
26+
27+
## [Documentation](https://code.visualstudio.com/docs/languages/python)
28+
For further information and details continue through to the [documentation](https://code.visualstudio.com/docs/languages/python).
29+
30+
## Issues, Feature Requests, and Contributions
31+
* If you come across a problem with the extension please [file an issue](https://github.com/microsoft/vscode-python)
32+
* Contributions are always welcome! Please see our [contributing guide](https://github.com/Microsoft/vscode-python/blob/master/CONTRIBUTING.md) for more details
33+
* Any and all feedback is appreciated and welcome!
34+
- If someone has already [file an issue](https://github.com/Microsoft/vscode-python) that encompasses your feedback, please leave a 👍/👎 reaction on the issue
35+
- Othewise please file a new issue
36+
37+
## Feature Details
38+
* IDE-like Features
39+
+ Automatic indenting
40+
+ Code navigation ("Go to", "Find all" references)
41+
+ Code definition (Peek and hover definition, View signatures)
42+
+ Rename refactoring
43+
+ Sorting import statements (use the `Python: Sort Imports` command)
44+
* Intellisense and Autocomplete (including PEP 484 support)
45+
+ Ability to include custom module paths (e.g. include paths for libraries like Google App Engine, etc.; use the setting `python.autoComplete.extraPaths = []`)
46+
* Code formatting
47+
+ Auto formatting of code upon saving changes (default to 'Off')
48+
+ Use either [yapf](https://pypi.io/project/yapf/) or [autopep8](https://pypi.io/project/autopep8/) for code formatting (defaults to autopep8)
49+
* Linting
50+
+ Support for multiple linters with custom settings (default is [Pylint](https://pypi.io/project/pylint/), but [Prospector](https://pypi.io/project/prospector/), [pycodestyle](https://pypi.io/project/pycodestyle/), [Flake8](https://pypi.io/project/flake8/), [pylama](https://github.com/klen/pylama), [pydocstyle](https://pypi.io/project/pydocstyle/), and [mypy](http://mypy-lang.org/) are also supported)
51+
* Debugging
52+
+ Watch window
53+
+ Evaluate Expressions
54+
+ Step through code ("Step in", "Step out", "Continue")
55+
+ Add/remove break points
56+
+ Local variables and arguments
57+
+ Multi-threaded applications
58+
+ Web applications (such as [Flask](http://flask.pocoo.org/) & [Django](https://www.djangoproject.com/), with template debugging)
59+
+ Expanding values (viewing children, properties, etc)
60+
+ Conditional break points
61+
+ Remote debugging (over SSH)
62+
+ Google App Engine
63+
+ Debugging in the integrated or external terminal window
64+
+ Debugging as sudo
65+
* Unit Testing
66+
+ Support for [unittest](https://docs.python.org/3/library/unittest.html#module-unittest), [pytest](https://pypi.io/project/pytest/), and [nose](https://pypi.io/project/nose/)
67+
+ Ability to run all failed tests, individual tests
68+
+ Debugging unit tests
69+
* Snippets
70+
* Miscellaneous
71+
+ Running a file or selected text in python terminal
72+
* Refactoring
73+
+ Rename Refactorings
74+
+ Extract Variable Refactorings
75+
+ Extract Method Refactorings
76+
+ Sort Imports
77+
78+
![General Features](https://raw.githubusercontent.com/microsoft/vscode-python/master/images/general.gif)
79+
80+
![Debugging](https://raw.githubusercontent.com/microsoft/vscode-python/master/images/debugDemo.gif)
81+
82+
![Unit Tests](https://raw.githubusercontent.com/microsoft/vscode-python/master/images/unittest.gif)
83+
84+
85+
## Data/Telemetry
86+
The Microsoft Python Extension for Visual Studio Code collects usage
87+
data and sends it to Microsoft to help improve our products and
88+
services. Read our
89+
[privacy statement](https://privacy.microsoft.com/privacystatement) to
90+
learn more. This extension respects the `telemetry.enableTelemetry`
91+
setting which you can learn more about at
92+
https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting.
93+
>>>>>>> upstream/master

0 commit comments

Comments
 (0)