Skip to content

Commit d1ae170

Browse files
authored
Merge branch 'main' into file-comms-4
2 parents c6c47f7 + b428ba5 commit d1ae170

File tree

67 files changed

+730
-797
lines changed

Some content is hidden

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

67 files changed

+730
-797
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ jobs:
165165
# macOS runners are expensive, and we assume that Ubuntu is enough to cover the Unix case.
166166
os: [ubuntu-latest, windows-latest]
167167
# Run the tests on the oldest and most recent versions of Python.
168-
python: ['3.8', '3.x', '3.12-dev']
168+
python: ['3.8', '3.x', '3.13-dev']
169169

170170
steps:
171171
- name: Checkout

.github/workflows/pr-check.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ jobs:
147147
# macOS runners are expensive, and we assume that Ubuntu is enough to cover the Unix case.
148148
os: [ubuntu-latest, windows-latest]
149149
# Run the tests on the oldest and most recent versions of Python.
150-
python: ['3.8', '3.x'] # run for 3 pytest versions, most recent stable, oldest version supported and pre-release
150+
python: ['3.8', '3.x', '3.13-dev'] # run for 3 pytest versions, most recent stable, oldest version supported and pre-release
151151
pytest-version: ['pytest', 'pytest@pre-release', 'pytest==6.2.0']
152152

153153
steps:

package.json

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -582,10 +582,7 @@
582582
"Warning"
583583
],
584584
"scope": "resource",
585-
"type": "string",
586-
"tags": [
587-
"experimental"
588-
]
585+
"type": "string"
589586
},
590587
"python.locator": {
591588
"default": "js",
@@ -595,7 +592,8 @@
595592
"native"
596593
],
597594
"tags": [
598-
"experimental"
595+
"experimental",
596+
"onExP"
599597
],
600598
"scope": "machine",
601599
"type": "string"
@@ -662,7 +660,7 @@
662660
"scope": "resource",
663661
"type": "boolean",
664662
"tags": [
665-
"experimental"
663+
"preview"
666664
]
667665
},
668666
"python.REPL.enableREPLSmartSend": {
@@ -677,7 +675,8 @@
677675
"scope": "resource",
678676
"type": "boolean",
679677
"tags": [
680-
"experimental"
678+
"experimental",
679+
"onExP"
681680
]
682681
},
683682
"python.REPL.provideVariables": {

package.nls.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@
3636
"python.diagnostics.sourceMapsEnabled.description": "Enable source map support for meaningful stack traces in error logs.",
3737
"python.envFile.description": "Absolute path to a file containing environment variable definitions.",
3838
"python.experiments.enabled.description": "Enables A/B tests experiments in the Python extension. If enabled, you may get included in proposed enhancements and/or features.",
39-
"python.experiments.optInto.description": "List of experiment to opt into. If empty, user is assigned the default experiment groups. See [here](https://github.com/microsoft/vscode-python/wiki/AB-Experiments) for more details.",
40-
"python.experiments.optOutFrom.description": "List of experiment to opt out of. If empty, user is assigned the default experiment groups. See [here](https://github.com/microsoft/vscode-python/wiki/AB-Experiments) for more details.",
39+
"python.experiments.optInto.description": "List of experiments to opt into. If empty, user is assigned the default experiment groups. See [here](https://github.com/microsoft/vscode-python/wiki/AB-Experiments) for more details.",
40+
"python.experiments.optOutFrom.description": "List of experiments to opt out of. If empty, user is assigned the default experiment groups. See [here](https://github.com/microsoft/vscode-python/wiki/AB-Experiments) for more details.",
4141
"python.experiments.All.description": "Combined list of all experiments.",
4242
"python.experiments.pythonSurveyNotification.description": "Denotes the Python Survey Notification experiment.",
4343
"python.experiments.pythonPromptNewToolsExt.description": "Denotes the Python Prompt New Tools Extension experiment.",

pythonExtensionApi/package-lock.json

Lines changed: 21 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pythonExtensionApi/package.json

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
{
22
"name": "@vscode/python-extension",
33
"description": "An API facade for the Python extension in VS Code",
4-
"version": "1.0.5",
4+
"version": "1.0.6",
55
"author": {
6-
"name": "Microsoft Corporation"
6+
"name": "Microsoft Corporation"
77
},
88
"keywords": [
99
"Python",
10-
"VSCode",
11-
"API"
12-
],
13-
"main": "./out/main.js",
14-
"types": "./out/main.d.ts",
15-
"engines": {
16-
"node": ">=18.17.1",
17-
"vscode": "^1.78.0"
18-
},
10+
"VSCode",
11+
"API"
12+
],
13+
"main": "./out/main.js",
14+
"types": "./out/main.d.ts",
15+
"engines": {
16+
"node": ">=18.17.1",
17+
"vscode": "^1.93.0"
18+
},
1919
"license": "MIT",
2020
"homepage": "https://github.com/microsoft/vscode-python/tree/main/pythonExtensionApi",
2121
"repository": {
@@ -26,18 +26,18 @@
2626
"url": "https://github.com/Microsoft/vscode-python/issues"
2727
},
2828
"devDependencies": {
29-
"typescript": "5.0.4",
30-
"@types/vscode": "^1.78.0",
29+
"typescript": "~5.2",
30+
"@types/vscode": "^1.93.0",
3131
"source-map": "^0.8.0-beta.0"
3232
},
3333
"scripts": {
3434
"prepublishOnly": "echo \"⛔ Can only publish from a secure pipeline ⛔\" && node ../build/fail",
35-
"prepack": "npm run all:publish",
36-
"compile": "node ./node_modules/typescript/lib/tsc.js -b ./tsconfig.json",
37-
"clean": "node ../node_modules/rimraf/bin.js out",
38-
"lint": "node ../node_modules/eslint/bin/eslint.js --ext ts src",
39-
"all": "npm run clean && npm run compile",
35+
"prepack": "npm run all:publish",
36+
"compile": "node ./node_modules/typescript/lib/tsc.js -b ./tsconfig.json",
37+
"clean": "node ../node_modules/rimraf/bin.js out",
38+
"lint": "node ../node_modules/eslint/bin/eslint.js --ext ts src",
39+
"all": "npm run clean && npm run compile",
4040
"formatTypings": "node ../node_modules/eslint/bin/eslint.js --fix ./out/main.d.ts",
41-
"all:publish": "git clean -xfd . && npm install && npm run compile && npm run formatTypings"
41+
"all:publish": "git clean -xfd . && npm install && npm run compile && npm run formatTypings"
4242
}
4343
}

pythonExtensionApi/src/main.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ export interface PythonExtension {
2525

2626
/**
2727
* Gets the path to the debugger package used by the extension.
28-
* @returns {Promise<string>}
2928
*/
3029
getDebuggerPackagePath(): Promise<string | undefined>;
3130
};
Lines changed: 32 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,53 @@
1-
#
2-
# This file is autogenerated by pip-compile with Python 3.8
3-
# by the following command:
4-
#
5-
# pip-compile --generate-hashes 'python_files\jedilsp_requirements\requirements.in'
6-
#
7-
attrs==23.1.0 \
8-
--hash=sha256:1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04 \
9-
--hash=sha256:6279836d581513a26f1bf235f9acd333bc9115683f14f7e8fae46c98fc50e015
1+
# This file was autogenerated by uv via the following command:
2+
# uv pip compile --generate-hashes python_files\jedilsp_requirements\requirements.in
3+
attrs==24.2.0 \
4+
--hash=sha256:5cfb1b9148b5b086569baec03f20d7b6bf3bcacc9a42bebf87ffaaca362f6346 \
5+
--hash=sha256:81921eb96de3191c8258c199618104dd27ac608d9366f5e35d011eae1867ede2
106
# via
117
# cattrs
128
# lsprotocol
13-
cattrs==23.1.2 \
14-
--hash=sha256:b2bb14311ac17bed0d58785e5a60f022e5431aca3932e3fc5cc8ed8639de50a4 \
15-
--hash=sha256:db1c821b8c537382b2c7c66678c3790091ca0275ac486c76f3c8f3920e83c657
9+
cattrs==24.1.2 \
10+
--hash=sha256:67c7495b760168d931a10233f979b28dc04daf853b30752246f4f8471c6d68d0 \
11+
--hash=sha256:8028cfe1ff5382df59dd36474a86e02d817b06eaf8af84555441bac915d2ef85
1612
# via
1713
# jedi-language-server
1814
# lsprotocol
19-
docstring-to-markdown==0.12 \
20-
--hash=sha256:40004224b412bd6f64c0f3b85bb357a41341afd66c4b4896709efa56827fb2bb \
21-
--hash=sha256:7df6311a887dccf9e770f51242ec002b19f0591994c4783be49d24cdc1df3737
15+
# pygls
16+
docstring-to-markdown==0.15 \
17+
--hash=sha256:27afb3faedba81e34c33521c32bbd258d7fbb79eedf7d29bc4e81080e854aec0 \
18+
--hash=sha256:e146114d9c50c181b1d25505054a8d0f7a476837f0da2c19f07e06eaed52b73d
2219
# via jedi-language-server
23-
exceptiongroup==1.1.3 \
24-
--hash=sha256:097acd85d473d75af5bb98e41b61ff7fe35efe6675e4f9370ec6ec5126d160e9 \
25-
--hash=sha256:343280667a4585d195ca1cf9cef84a4e178c4b6cf2274caef9859782b567d5e3
20+
exceptiongroup==1.2.2 \
21+
--hash=sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b \
22+
--hash=sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc
2623
# via cattrs
27-
importlib-metadata==6.8.0 \
28-
--hash=sha256:3ebb78df84a805d7698245025b975d9d67053cd94c79245ba4b3eb694abe68bb \
29-
--hash=sha256:dbace7892d8c0c4ac1ad096662232f831d4e64f4c4545bd53016a3e9d4654743
30-
# via typeguard
3124
jedi==0.19.1 \
3225
--hash=sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd \
3326
--hash=sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0
3427
# via jedi-language-server
35-
jedi-language-server==0.41.1 \
36-
--hash=sha256:3f15ca5cc28e728564f7d63583e171b418025582447ce023512e3f2b2d71ebae \
37-
--hash=sha256:ca9b3e7f48b70f0988d85ffde4f01dd1ab94c8e0f69e8c6424e6657117b44f91
38-
# via -r requirements.in
39-
lsprotocol==2023.0.0b1 \
40-
--hash=sha256:ade2cd0fa0ede7965698cb59cd05d3adbd19178fd73e83f72ef57a032fbb9d62 \
41-
--hash=sha256:f7a2d4655cbd5639f373ddd1789807450c543341fa0a32b064ad30dbb9f510d4
28+
jedi-language-server==0.41.4 \
29+
--hash=sha256:53c6ce0eae5e332e5f6d76acf8d8c9cf33eae8191d31cc37913773127cd09f28 \
30+
--hash=sha256:af010173f9f62dfcd3b3f4e2ea0ea3020fb4285c9b6b18b481aa978f28b5a36a
31+
# via -r python_files/jedilsp_requirements/requirements.in
32+
lsprotocol==2023.0.1 \
33+
--hash=sha256:c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2 \
34+
--hash=sha256:cc5c15130d2403c18b734304339e51242d3018a05c4f7d0f198ad6e0cd21861d
4235
# via
4336
# jedi-language-server
4437
# pygls
45-
parso==0.8.3 \
46-
--hash=sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0 \
47-
--hash=sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75
38+
parso==0.8.4 \
39+
--hash=sha256:a418670a20291dacd2dddc80c377c5c3791378ee1e8d12bffc35420643d43f18 \
40+
--hash=sha256:eb3a7b58240fb99099a345571deecc0f9540ea5f4dd2fe14c2a99d6b281ab92d
4841
# via jedi
49-
pygls==1.0.2 \
50-
--hash=sha256:6d278d29fa6559b0f7a448263c85cb64ec6e9369548b02f1a7944060848b21f9 \
51-
--hash=sha256:888ed63d1f650b4fc64d603d73d37545386ec533c0caac921aed80f80ea946a4
42+
pygls==1.3.1 \
43+
--hash=sha256:140edceefa0da0e9b3c533547c892a42a7d2fd9217ae848c330c53d266a55018 \
44+
--hash=sha256:6e00f11efc56321bdeb6eac04f6d86131f654c7d49124344a9ebb968da3dd91e
5245
# via
53-
# -r requirements.in
46+
# -r python_files/jedilsp_requirements/requirements.in
5447
# jedi-language-server
55-
typeguard==3.0.2 \
56-
--hash=sha256:bbe993854385284ab42fd5bd3bee6f6556577ce8b50696d6cb956d704f286c8e \
57-
--hash=sha256:fee5297fdb28f8e9efcb8142b5ee219e02375509cd77ea9d270b5af826358d5a
58-
# via pygls
59-
typing-extensions==4.8.0 \
60-
--hash=sha256:8f92fc8806f9a6b641eaa5318da32b44d401efaac0f6678c9bc448ba3605faa0 \
61-
--hash=sha256:df8e4339e9cb77357558cbdbceca33c303714cf861d1eef15e1070055ae8b7ef
48+
typing-extensions==4.12.2 \
49+
--hash=sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d \
50+
--hash=sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8
6251
# via
6352
# cattrs
6453
# jedi-language-server
65-
# typeguard
66-
zipp==3.19.1 \
67-
--hash=sha256:2828e64edb5386ea6a52e7ba7cdb17bb30a73a858f5eb6eb93d8d36f5ea26091 \
68-
--hash=sha256:35427f6d5594f4acf82d25541438348c26736fa9b3afa2754bcd63cdb99d8e8f
69-
# via importlib-metadata

python_files/python_server.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,10 @@ def get_value(self) -> str:
159159

160160
def get_headers():
161161
headers = {}
162-
while line := STDIN.readline().strip():
162+
while True:
163+
line = STDIN.readline().strip()
164+
if not line:
165+
break
163166
name, value = line.split(":", 1)
164167
headers[name] = value.strip()
165168
return headers

python_files/testing_tools/adapter/util.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,12 @@ def _resolve_relpath(
102102
if path.startswith("./"):
103103
return path[2:]
104104
if not _path_isabs(path):
105+
if rootdir:
106+
rootdir = rootdir.replace(_pathsep, "/")
107+
if not rootdir.endswith("/"):
108+
rootdir += "/"
109+
if _normcase(path).startswith(_normcase(rootdir)):
110+
return path[len(rootdir) :]
105111
return path
106112

107113
# Deal with root-dir-as-fileid.

0 commit comments

Comments
 (0)