@zzzen/pyright-internal 1.2.0-dev.20221225 → 1.2.0-dev.20230108

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/analyzer/binder.js +5 -3
  2. package/dist/analyzer/binder.js.map +1 -1
  3. package/dist/analyzer/checker.js +17 -11
  4. package/dist/analyzer/checker.js.map +1 -1
  5. package/dist/analyzer/codeFlowEngine.d.ts +16 -1
  6. package/dist/analyzer/codeFlowEngine.js +36 -13
  7. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  8. package/dist/analyzer/constraintSolver.js +30 -31
  9. package/dist/analyzer/constraintSolver.js.map +1 -1
  10. package/dist/analyzer/importResolver.d.ts +2 -1
  11. package/dist/analyzer/importResolver.js +18 -3
  12. package/dist/analyzer/importResolver.js.map +1 -1
  13. package/dist/analyzer/patternMatching.js +5 -4
  14. package/dist/analyzer/patternMatching.js.map +1 -1
  15. package/dist/analyzer/program.d.ts +1 -0
  16. package/dist/analyzer/program.js +52 -25
  17. package/dist/analyzer/program.js.map +1 -1
  18. package/dist/analyzer/regions.js +14 -5
  19. package/dist/analyzer/regions.js.map +1 -1
  20. package/dist/analyzer/sourceFile.d.ts +1 -1
  21. package/dist/analyzer/sourceFile.js +1 -0
  22. package/dist/analyzer/sourceFile.js.map +1 -1
  23. package/dist/analyzer/sourceMapper.d.ts +2 -2
  24. package/dist/analyzer/sourceMapper.js +14 -5
  25. package/dist/analyzer/sourceMapper.js.map +1 -1
  26. package/dist/analyzer/typeCacheUtils.d.ts +26 -0
  27. package/dist/analyzer/{typeCache.js → typeCacheUtils.js} +9 -19
  28. package/dist/analyzer/typeCacheUtils.js.map +1 -0
  29. package/dist/analyzer/typeDocStringUtils.d.ts +2 -1
  30. package/dist/analyzer/typeDocStringUtils.js +18 -7
  31. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  32. package/dist/analyzer/typeEvaluator.js +551 -379
  33. package/dist/analyzer/typeEvaluator.js.map +1 -1
  34. package/dist/analyzer/typeEvaluatorTypes.d.ts +2 -1
  35. package/dist/analyzer/typeGuards.d.ts +5 -1
  36. package/dist/analyzer/typeGuards.js +181 -45
  37. package/dist/analyzer/typeGuards.js.map +1 -1
  38. package/dist/analyzer/typeUtils.d.ts +13 -3
  39. package/dist/analyzer/typeUtils.js +288 -135
  40. package/dist/analyzer/typeUtils.js.map +1 -1
  41. package/dist/analyzer/typeVarContext.d.ts +2 -10
  42. package/dist/analyzer/typeVarContext.js +12 -31
  43. package/dist/analyzer/typeVarContext.js.map +1 -1
  44. package/dist/analyzer/types.d.ts +4 -12
  45. package/dist/analyzer/types.js +22 -22
  46. package/dist/analyzer/types.js.map +1 -1
  47. package/dist/commands/dumpFileDebugInfoCommand.js +2 -2
  48. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  49. package/dist/commands/quickActionCommand.js +1 -1
  50. package/dist/commands/quickActionCommand.js.map +1 -1
  51. package/dist/common/collectionUtils.d.ts +1 -0
  52. package/dist/common/collectionUtils.js +9 -1
  53. package/dist/common/collectionUtils.js.map +1 -1
  54. package/dist/common/textEditUtils.d.ts +3 -2
  55. package/dist/common/textEditUtils.js +11 -10
  56. package/dist/common/textEditUtils.js.map +1 -1
  57. package/dist/languageServerBase.d.ts +1 -1
  58. package/dist/languageService/completionProvider.d.ts +3 -0
  59. package/dist/languageService/completionProvider.js +212 -159
  60. package/dist/languageService/completionProvider.js.map +1 -1
  61. package/dist/languageService/hoverProvider.d.ts +0 -1
  62. package/dist/languageService/hoverProvider.js +7 -20
  63. package/dist/languageService/hoverProvider.js.map +1 -1
  64. package/dist/languageService/indentationUtils.js +1 -1
  65. package/dist/languageService/indentationUtils.js.map +1 -1
  66. package/dist/languageService/tooltipUtils.d.ts +5 -1
  67. package/dist/languageService/tooltipUtils.js +28 -4
  68. package/dist/languageService/tooltipUtils.js.map +1 -1
  69. package/dist/localization/localize.d.ts +18 -3
  70. package/dist/localization/localize.js +7 -1
  71. package/dist/localization/localize.js.map +1 -1
  72. package/dist/localization/package.nls.en-us.json +7 -1
  73. package/dist/parser/parser.js +3 -1
  74. package/dist/parser/parser.js.map +1 -1
  75. package/dist/tests/completions.test.d.ts +1 -0
  76. package/dist/tests/completions.test.js +331 -0
  77. package/dist/tests/completions.test.js.map +1 -0
  78. package/dist/tests/filesystem.test.js +11 -0
  79. package/dist/tests/filesystem.test.js.map +1 -1
  80. package/dist/tests/harness/fourslash/testState.js +1 -1
  81. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  82. package/dist/tests/harness/vfs/filesystem.d.ts +2 -2
  83. package/dist/tests/harness/vfs/filesystem.js +5 -1
  84. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  85. package/dist/tests/hoverProvider.test.d.ts +1 -0
  86. package/dist/tests/hoverProvider.test.js +247 -0
  87. package/dist/tests/hoverProvider.test.js.map +1 -0
  88. package/dist/tests/indentationUtils.ptvs.test.js +1 -1
  89. package/dist/tests/indentationUtils.test.js +4 -4
  90. package/dist/tests/typeEvaluator1.test.js +16 -0
  91. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  92. package/dist/tests/typeEvaluator2.test.js +6 -2
  93. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  94. package/dist/tests/typeEvaluator3.test.js +9 -1
  95. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  96. package/dist/tests/typeEvaluator4.test.js +8 -0
  97. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  98. package/dist/tests/typeEvaluator5.test.js +54 -6
  99. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  100. package/dist/workspaceMap.js +1 -3
  101. package/dist/workspaceMap.js.map +1 -1
  102. package/package.json +6 -6
  103. package/dist/analyzer/typeCache.d.ts +0 -40
  104. package/dist/analyzer/typeCache.js.map +0 -1
@@ -0,0 +1,331 @@
1
+ "use strict";
2
+ /*
3
+ * completions.test.ts
4
+ *
5
+ * completions tests.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ const vscode_languageserver_types_1 = require("vscode-languageserver-types");
9
+ const testState_1 = require("./harness/fourslash/testState");
10
+ test('completion import statement tooltip', async () => {
11
+ const code = `
12
+ // @filename: pyrightconfig.json
13
+ //// {
14
+ //// "useLibraryCodeForTypes": true
15
+ //// }
16
+
17
+ // @filename: test.py
18
+ //// import [|/*marker*/m|]
19
+
20
+ // @filename: matplotlib/__init__.py
21
+ // @library: true
22
+ //// """ matplotlib """
23
+ `;
24
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
25
+ const marker = state.getMarkerByName('marker');
26
+ state.openFile(marker.fileName);
27
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
28
+ marker: {
29
+ completions: [
30
+ {
31
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
32
+ label: 'matplotlib',
33
+ documentation: 'matplotlib',
34
+ },
35
+ ],
36
+ },
37
+ });
38
+ });
39
+ test('completion import statement tooltip - stub file', async () => {
40
+ const code = `
41
+ // @filename: pyrightconfig.json
42
+ //// {
43
+ //// "useLibraryCodeForTypes": true
44
+ //// }
45
+
46
+ // @filename: test.py
47
+ //// import [|/*marker*/m|]
48
+
49
+ // @filename: matplotlib/__init__.pyi
50
+ // @library: true
51
+ //// # empty
52
+
53
+ // @filename: matplotlib/__init__.py
54
+ // @library: true
55
+ //// """ matplotlib """
56
+ `;
57
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
58
+ const marker = state.getMarkerByName('marker');
59
+ state.openFile(marker.fileName);
60
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
61
+ marker: {
62
+ completions: [
63
+ {
64
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
65
+ label: 'matplotlib',
66
+ documentation: 'matplotlib',
67
+ },
68
+ ],
69
+ },
70
+ });
71
+ });
72
+ test('completion import statement tooltip - doc in stub file', async () => {
73
+ const code = `
74
+ // @filename: pyrightconfig.json
75
+ //// {
76
+ //// "useLibraryCodeForTypes": true
77
+ //// }
78
+
79
+ // @filename: test.py
80
+ //// import [|/*marker*/m|]
81
+
82
+ // @filename: matplotlib/__init__.pyi
83
+ // @library: true
84
+ //// """ matplotlib """
85
+
86
+ // @filename: matplotlib/__init__.py
87
+ // @library: true
88
+ //// # empty
89
+ `;
90
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
91
+ const marker = state.getMarkerByName('marker');
92
+ state.openFile(marker.fileName);
93
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
94
+ marker: {
95
+ completions: [
96
+ {
97
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
98
+ label: 'matplotlib',
99
+ documentation: 'matplotlib',
100
+ },
101
+ ],
102
+ },
103
+ });
104
+ });
105
+ test('completion import statement tooltip - sub modules', async () => {
106
+ const code = `
107
+ // @filename: pyrightconfig.json
108
+ //// {
109
+ //// "useLibraryCodeForTypes": true
110
+ //// }
111
+
112
+ // @filename: test.py
113
+ //// import matplotlib.[|/*marker*/p|]
114
+
115
+ // @filename: matplotlib/__init__.py
116
+ // @library: true
117
+ //// """ matplotlib """
118
+
119
+ // @filename: matplotlib/pyplot.py
120
+ // @library: true
121
+ //// """ pyplot """
122
+ `;
123
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
124
+ const marker = state.getMarkerByName('marker');
125
+ state.openFile(marker.fileName);
126
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
127
+ marker: {
128
+ completions: [
129
+ {
130
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
131
+ label: 'pyplot',
132
+ documentation: 'pyplot',
133
+ },
134
+ ],
135
+ },
136
+ });
137
+ });
138
+ test('completion import reference tooltip', async () => {
139
+ const code = `
140
+ // @filename: pyrightconfig.json
141
+ //// {
142
+ //// "useLibraryCodeForTypes": true
143
+ //// }
144
+
145
+ // @filename: test.py
146
+ //// import matplotlib
147
+ //// [|/*marker*/m|]
148
+
149
+ // @filename: matplotlib/__init__.py
150
+ // @library: true
151
+ //// """ matplotlib """
152
+ `;
153
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
154
+ const marker = state.getMarkerByName('marker');
155
+ state.openFile(marker.fileName);
156
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
157
+ marker: {
158
+ completions: [
159
+ {
160
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
161
+ label: 'matplotlib',
162
+ documentation: '```python\nmatplotlib\n```\n---\nmatplotlib',
163
+ },
164
+ ],
165
+ },
166
+ });
167
+ });
168
+ test('completion import reference tooltip - first module', async () => {
169
+ const code = `
170
+ // @filename: pyrightconfig.json
171
+ //// {
172
+ //// "useLibraryCodeForTypes": true
173
+ //// }
174
+
175
+ // @filename: test.py
176
+ //// import matplotlib.pyplot
177
+ //// [|/*marker*/m|]
178
+
179
+ // @filename: matplotlib/__init__.py
180
+ // @library: true
181
+ //// """ matplotlib """
182
+
183
+ // @filename: matplotlib/pyplot.py
184
+ // @library: true
185
+ //// """ pyplot """
186
+ `;
187
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
188
+ const marker = state.getMarkerByName('marker');
189
+ state.openFile(marker.fileName);
190
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
191
+ marker: {
192
+ completions: [
193
+ {
194
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
195
+ label: 'matplotlib',
196
+ documentation: '```python\nmatplotlib\n```\n---\nmatplotlib',
197
+ },
198
+ ],
199
+ },
200
+ });
201
+ });
202
+ test('completion import reference tooltip - child module', async () => {
203
+ const code = `
204
+ // @filename: pyrightconfig.json
205
+ //// {
206
+ //// "useLibraryCodeForTypes": true
207
+ //// }
208
+
209
+ // @filename: test.py
210
+ //// import matplotlib.pyplot
211
+ //// matplotlib.[|/*marker*/p|]
212
+
213
+ // @filename: matplotlib/__init__.py
214
+ // @library: true
215
+ //// """ matplotlib """
216
+
217
+ // @filename: matplotlib/pyplot.py
218
+ // @library: true
219
+ //// """ pyplot """
220
+ `;
221
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
222
+ const marker = state.getMarkerByName('marker');
223
+ state.openFile(marker.fileName);
224
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
225
+ marker: {
226
+ completions: [
227
+ {
228
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
229
+ label: 'pyplot',
230
+ documentation: '```python\npyplot\n```\n---\npyplot',
231
+ },
232
+ ],
233
+ },
234
+ });
235
+ });
236
+ test('completion from import statement tooltip - first module', async () => {
237
+ const code = `
238
+ // @filename: pyrightconfig.json
239
+ //// {
240
+ //// "useLibraryCodeForTypes": true
241
+ //// }
242
+
243
+ // @filename: test.py
244
+ //// from [|/*marker*/m|]
245
+
246
+ // @filename: matplotlib/__init__.py
247
+ // @library: true
248
+ //// """ matplotlib """
249
+ `;
250
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
251
+ const marker = state.getMarkerByName('marker');
252
+ state.openFile(marker.fileName);
253
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
254
+ marker: {
255
+ completions: [
256
+ {
257
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
258
+ label: 'matplotlib',
259
+ documentation: 'matplotlib',
260
+ },
261
+ ],
262
+ },
263
+ });
264
+ });
265
+ test('completion from import statement tooltip - child module', async () => {
266
+ const code = `
267
+ // @filename: pyrightconfig.json
268
+ //// {
269
+ //// "useLibraryCodeForTypes": true
270
+ //// }
271
+
272
+ // @filename: test.py
273
+ //// from matplotlib.[|/*marker*/p|]
274
+
275
+ // @filename: matplotlib/__init__.py
276
+ // @library: true
277
+ //// """ matplotlib """
278
+
279
+ // @filename: matplotlib/pyplot.py
280
+ // @library: true
281
+ //// """ pyplot """
282
+ `;
283
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
284
+ const marker = state.getMarkerByName('marker');
285
+ state.openFile(marker.fileName);
286
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
287
+ marker: {
288
+ completions: [
289
+ {
290
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
291
+ label: 'pyplot',
292
+ documentation: 'pyplot',
293
+ },
294
+ ],
295
+ },
296
+ });
297
+ });
298
+ test('completion from import statement tooltip - implicit module', async () => {
299
+ const code = `
300
+ // @filename: pyrightconfig.json
301
+ //// {
302
+ //// "useLibraryCodeForTypes": true
303
+ //// }
304
+
305
+ // @filename: test.py
306
+ //// from matplotlib import [|/*marker*/p|]
307
+
308
+ // @filename: matplotlib/__init__.py
309
+ // @library: true
310
+ //// """ matplotlib """
311
+
312
+ // @filename: matplotlib/pyplot.py
313
+ // @library: true
314
+ //// """ pyplot """
315
+ `;
316
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
317
+ const marker = state.getMarkerByName('marker');
318
+ state.openFile(marker.fileName);
319
+ await state.verifyCompletion('included', vscode_languageserver_types_1.MarkupKind.Markdown, {
320
+ marker: {
321
+ completions: [
322
+ {
323
+ kind: vscode_languageserver_types_1.CompletionItemKind.Module,
324
+ label: 'pyplot',
325
+ documentation: 'pyplot',
326
+ },
327
+ ],
328
+ },
329
+ });
330
+ });
331
+ //# sourceMappingURL=completions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"completions.test.js","sourceRoot":"","sources":["../../../src/tests/completions.test.ts"],"names":[],"mappings":"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"}
@@ -56,6 +56,17 @@ test('Folders', () => {
56
56
  fs.chdir('a');
57
57
  });
58
58
  });
59
+ test('Folders Recursive', () => {
60
+ const cwd = (0, pathUtils_1.normalizeSlashes)('/');
61
+ const fs = new vfs.TestFileSystem(/*ignoreCase*/ true, { cwd });
62
+ // no such dir exist
63
+ assert_1.default.throws(() => {
64
+ fs.chdir('a');
65
+ });
66
+ const path = (0, pathUtils_1.combinePaths)('/', 'a', 'b', 'c');
67
+ fs.mkdirSync(path, { recursive: true });
68
+ (0, assert_1.default)(fs.existsSync(path));
69
+ });
59
70
  test('Files', () => {
60
71
  const cwd = (0, pathUtils_1.normalizeSlashes)('/');
61
72
  const fs = new vfs.TestFileSystem(/*ignoreCase*/ true, { cwd });
@@ -1 +1 @@
1
- {"version":3,"file":"filesystem.test.js","sourceRoot":"","sources":["../../../src/tests/filesystem.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filesystem.test.js","sourceRoot":"","sources":["../../../src/tests/filesystem.test.ts"],"names":[],"mappings":"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"}
@@ -667,7 +667,7 @@ class TestState {
667
667
  }
668
668
  this.verifyCompletionItem(expected, actual);
669
669
  if (expected.documentation !== undefined) {
670
- if (actual.documentation === undefined) {
670
+ if (actual.documentation === undefined && actual.data) {
671
671
  this.workspace.serviceInstance.resolveCompletionItem(filePath, actual, options, nameMap, vscode_languageserver_1.CancellationToken.None);
672
672
  }
673
673
  if (vscode_languageserver_1.MarkupContent.is(actual.documentation)) {