@zzzen/pyright-internal 1.2.0-dev.20230319 → 1.2.0-dev.20230402

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 (142) hide show
  1. package/dist/analyzer/cacheManager.js +1 -1
  2. package/dist/analyzer/checker.js +52 -26
  3. package/dist/analyzer/checker.js.map +1 -1
  4. package/dist/analyzer/constraintSolver.js +4 -1
  5. package/dist/analyzer/constraintSolver.js.map +1 -1
  6. package/dist/analyzer/constructorTransform.js +4 -3
  7. package/dist/analyzer/constructorTransform.js.map +1 -1
  8. package/dist/analyzer/dataClasses.js +10 -0
  9. package/dist/analyzer/dataClasses.js.map +1 -1
  10. package/dist/analyzer/declarationUtils.d.ts +8 -0
  11. package/dist/analyzer/declarationUtils.js +147 -1
  12. package/dist/analyzer/declarationUtils.js.map +1 -1
  13. package/dist/analyzer/importStatementUtils.js +1 -1
  14. package/dist/analyzer/parameterUtils.d.ts +25 -1
  15. package/dist/analyzer/parameterUtils.js +182 -1
  16. package/dist/analyzer/parameterUtils.js.map +1 -1
  17. package/dist/analyzer/patternMatching.js +55 -5
  18. package/dist/analyzer/patternMatching.js.map +1 -1
  19. package/dist/analyzer/program.js +40 -26
  20. package/dist/analyzer/program.js.map +1 -1
  21. package/dist/analyzer/properties.js +13 -13
  22. package/dist/analyzer/properties.js.map +1 -1
  23. package/dist/analyzer/protocols.js +21 -5
  24. package/dist/analyzer/protocols.js.map +1 -1
  25. package/dist/analyzer/pythonPathUtils.js +1 -1
  26. package/dist/analyzer/regions.js +4 -4
  27. package/dist/analyzer/regions.js.map +1 -1
  28. package/dist/analyzer/service.js +16 -22
  29. package/dist/analyzer/service.js.map +1 -1
  30. package/dist/analyzer/sourceFile.js +1 -1
  31. package/dist/analyzer/sourceFileInfoUtils.js +1 -1
  32. package/dist/analyzer/sourceMapper.js +1 -1
  33. package/dist/analyzer/sourceMapperUtils.d.ts +0 -8
  34. package/dist/analyzer/sourceMapperUtils.js +18 -25
  35. package/dist/analyzer/sourceMapperUtils.js.map +1 -1
  36. package/dist/analyzer/staticExpressions.js +2 -2
  37. package/dist/analyzer/symbolUtils.js +1 -1
  38. package/dist/analyzer/testWalker.js +3 -0
  39. package/dist/analyzer/testWalker.js.map +1 -1
  40. package/dist/analyzer/tracePrinter.js +1 -1
  41. package/dist/analyzer/typeEvaluator.js +187 -87
  42. package/dist/analyzer/typeEvaluator.js.map +1 -1
  43. package/dist/analyzer/typeEvaluatorTypes.d.ts +3 -3
  44. package/dist/analyzer/typeEvaluatorTypes.js +0 -1
  45. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  46. package/dist/analyzer/typeEvaluatorWithTracker.js +3 -5
  47. package/dist/analyzer/typeEvaluatorWithTracker.js.map +1 -1
  48. package/dist/analyzer/typeGuards.js +182 -159
  49. package/dist/analyzer/typeGuards.js.map +1 -1
  50. package/dist/analyzer/typeUtils.d.ts +2 -25
  51. package/dist/analyzer/typeUtils.js +59 -188
  52. package/dist/analyzer/typeUtils.js.map +1 -1
  53. package/dist/analyzer/typeVarContext.js +6 -2
  54. package/dist/analyzer/typeVarContext.js.map +1 -1
  55. package/dist/analyzer/typedDicts.js +2 -1
  56. package/dist/analyzer/typedDicts.js.map +1 -1
  57. package/dist/analyzer/types.d.ts +1 -0
  58. package/dist/analyzer/types.js.map +1 -1
  59. package/dist/common/configOptions.js +1 -1
  60. package/dist/common/configOptions.js.map +1 -1
  61. package/dist/common/diagnosticSink.js +1 -1
  62. package/dist/common/envVarUtils.js +7 -7
  63. package/dist/common/envVarUtils.js.map +1 -1
  64. package/dist/common/fileBasedCancellationUtils.js +5 -1
  65. package/dist/common/fileBasedCancellationUtils.js.map +1 -1
  66. package/dist/common/host.js +1 -1
  67. package/dist/common/lspUtils.js +1 -1
  68. package/dist/common/pathConsts.d.ts +1 -0
  69. package/dist/common/pathConsts.js +2 -1
  70. package/dist/common/pathConsts.js.map +1 -1
  71. package/dist/common/progressReporter.js +4 -1
  72. package/dist/common/progressReporter.js.map +1 -1
  73. package/dist/common/pythonVersion.js +1 -2
  74. package/dist/common/pythonVersion.js.map +1 -1
  75. package/dist/common/realFileSystem.js +1 -1
  76. package/dist/common/textEditTracker.js +1 -1
  77. package/dist/common/workspaceEditUtils.js +1 -1
  78. package/dist/languageServerBase.js +2 -2
  79. package/dist/languageServerBase.js.map +1 -1
  80. package/dist/languageService/analyzerServiceExecutor.js +2 -2
  81. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  82. package/dist/languageService/autoImporter.d.ts +1 -1
  83. package/dist/languageService/autoImporter.js +6 -3
  84. package/dist/languageService/autoImporter.js.map +1 -1
  85. package/dist/languageService/callHierarchyProvider.d.ts +7 -3
  86. package/dist/languageService/callHierarchyProvider.js +38 -6
  87. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  88. package/dist/languageService/completionProvider.d.ts +1 -0
  89. package/dist/languageService/completionProvider.js +30 -11
  90. package/dist/languageService/completionProvider.js.map +1 -1
  91. package/dist/languageService/completionProviderUtils.js +2 -2
  92. package/dist/languageService/completionProviderUtils.js.map +1 -1
  93. package/dist/languageService/documentSymbolProvider.js +1 -2
  94. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  95. package/dist/languageService/hoverProvider.js +1 -1
  96. package/dist/languageService/hoverProvider.js.map +1 -1
  97. package/dist/languageService/importSorter.js +1 -1
  98. package/dist/languageService/indentationUtils.js +2 -1
  99. package/dist/languageService/indentationUtils.js.map +1 -1
  100. package/dist/languageService/signatureHelpProvider.js +9 -7
  101. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  102. package/dist/languageService/tooltipUtils.js +2 -2
  103. package/dist/localization/localize.d.ts +0 -3
  104. package/dist/localization/localize.js +0 -1
  105. package/dist/localization/localize.js.map +1 -1
  106. package/dist/localization/package.nls.en-us.json +0 -1
  107. package/dist/tests/checker.test.js +1 -1
  108. package/dist/tests/checker.test.js.map +1 -1
  109. package/dist/tests/completions.test.js +41 -0
  110. package/dist/tests/completions.test.js.map +1 -1
  111. package/dist/tests/fourslash/fourslash.d.ts +5 -0
  112. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.d.ts +1 -0
  113. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js +34 -0
  114. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedFunction.fourslash.js.map +1 -0
  115. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.d.ts +1 -0
  116. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js +19 -0
  117. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.aliasedVariable.fourslash.js.map +1 -0
  118. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.d.ts +1 -0
  119. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js +39 -0
  120. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.function.fourslash.js.map +1 -0
  121. package/dist/tests/harness/fourslash/testState.d.ts +5 -0
  122. package/dist/tests/harness/fourslash/testState.js +21 -0
  123. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  124. package/dist/tests/hoverProvider.test.js +50 -0
  125. package/dist/tests/hoverProvider.test.js.map +1 -1
  126. package/dist/tests/typeEvaluator1.test.js +8 -0
  127. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  128. package/dist/tests/typeEvaluator2.test.js +13 -1
  129. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  130. package/dist/tests/typeEvaluator3.test.js +9 -1
  131. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  132. package/dist/tests/typeEvaluator4.test.js +48 -116
  133. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  134. package/dist/tests/typeEvaluator5.test.js +1 -5
  135. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  136. package/dist/workspaceFactory.d.ts +1 -0
  137. package/dist/workspaceFactory.js +20 -10
  138. package/dist/workspaceFactory.js.map +1 -1
  139. package/package.json +1 -1
  140. package/dist/analyzer/aliasDeclarationUtils.d.ts +0 -9
  141. package/dist/analyzer/aliasDeclarationUtils.js +0 -142
  142. package/dist/analyzer/aliasDeclarationUtils.js.map +0 -1
@@ -76,7 +76,7 @@ class WorkspaceFactory {
76
76
  });
77
77
  }
78
78
  else if (params.rootPath) {
79
- this._add(params.rootPath, params.rootPath, params.rootPath, undefined, WorkspacePythonPathKind.Mutable, [
79
+ this._add(params.rootUri || '', params.rootPath, '', undefined, WorkspacePythonPathKind.Mutable, [
80
80
  WellKnownWorkspaceKinds.Regular,
81
81
  ]);
82
82
  }
@@ -92,9 +92,15 @@ class WorkspaceFactory {
92
92
  });
93
93
  params.added.forEach((workspaceInfo) => {
94
94
  const rootPath = this._uriParser.decodeTextDocumentUri(workspaceInfo.uri);
95
- this._add(workspaceInfo.uri, rootPath, workspaceInfo.name, undefined, WorkspacePythonPathKind.Mutable, [
96
- WellKnownWorkspaceKinds.Regular,
97
- ]);
95
+ // If there's a workspace that contains this folder, we need to mimic files from this workspace to
96
+ // to the new one. Otherwise the subfolder won't have the changes for the files in it.
97
+ const containing = this.items().filter((w) => rootPath.startsWith(w.rootPath))[0];
98
+ // Add the new workspace.
99
+ const newWorkspace = this._add(workspaceInfo.uri, rootPath, workspaceInfo.name, undefined, WorkspacePythonPathKind.Mutable, [WellKnownWorkspaceKinds.Regular]);
100
+ // Move files from the containing workspace to the new one that are in the new folder.
101
+ if (containing) {
102
+ this._mimicOpenFiles(containing, newWorkspace, (f) => f.startsWith(rootPath));
103
+ }
98
104
  });
99
105
  }
100
106
  items() {
@@ -328,20 +334,24 @@ class WorkspaceFactory {
328
334
  }
329
335
  return bestInstance;
330
336
  }
331
- _createImmutableCopy(workspace, pythonPath) {
337
+ _mimicOpenFiles(source, dest, predicate) {
332
338
  var _a;
333
- const result = this._add(workspace.uri, workspace.rootPath, workspace.workspaceName, pythonPath, WorkspacePythonPathKind.Immutable, workspace.kinds);
334
339
  // All mutable open files in the first workspace should be opened in the new workspace.
335
340
  // Immutable files should stay where they are since they're tied to a specific workspace.
336
- const files = workspace.service.getOpenFiles().filter((f) => !this._isPythonPathImmutable(f));
341
+ const files = source.service.getOpenFiles().filter((f) => !this._isPythonPathImmutable(f));
337
342
  for (const file of files) {
338
- const sourceFileInfo = workspace.service.backgroundAnalysisProgram.program.getSourceFileInfo(file);
339
- if (sourceFileInfo) {
343
+ const sourceFileInfo = source.service.backgroundAnalysisProgram.program.getSourceFileInfo(file);
344
+ if (sourceFileInfo && predicate(file)) {
340
345
  const sourceFile = sourceFileInfo.sourceFile;
341
346
  const fileContents = sourceFile.getFileContent();
342
- result.service.setFileOpened(file, sourceFile.getClientVersion() || null, fileContents || '', sourceFile.getIPythonMode(), (_a = sourceFileInfo.chainedSourceFile) === null || _a === void 0 ? void 0 : _a.sourceFile.getFilePath(), sourceFile.getRealFilePath());
347
+ dest.service.setFileOpened(file, sourceFile.getClientVersion() || null, fileContents || '', sourceFile.getIPythonMode(), (_a = sourceFileInfo.chainedSourceFile) === null || _a === void 0 ? void 0 : _a.sourceFile.getFilePath(), sourceFile.getRealFilePath());
343
348
  }
344
349
  }
350
+ }
351
+ _createImmutableCopy(workspace, pythonPath) {
352
+ const result = this._add(workspace.uri, workspace.rootPath, workspace.workspaceName, pythonPath, WorkspacePythonPathKind.Immutable, workspace.kinds);
353
+ // Copy over the open files
354
+ this._mimicOpenFiles(workspace, result, () => true);
345
355
  return result;
346
356
  }
347
357
  _getBestWorkspaceForFile(filePath, pythonPath) {
@@ -1 +1 @@
1
- {"version":3,"file":"workspaceFactory.js","sourceRoot":"","sources":["../../src/workspaceFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspaceFactory.js","sourceRoot":"","sources":["../../src/workspaceFactory.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@zzzen/pyright-internal",
3
3
  "displayName": "pyright",
4
4
  "description": "Type checker for the Python language",
5
- "version": "1.2.0-dev.20230319",
5
+ "version": "1.2.0-dev.20230402",
6
6
  "license": "MIT",
7
7
  "private": false,
8
8
  "files": [
@@ -1,9 +0,0 @@
1
- import { ImportLookup } from './analyzerFileInfo';
2
- import { Declaration } from './declaration';
3
- export interface ResolvedAliasInfo {
4
- declaration: Declaration | undefined;
5
- isPrivate: boolean;
6
- privatePyTypedImported?: string;
7
- privatePyTypedImporter?: string;
8
- }
9
- export declare function resolveAliasDeclaration(importLookup: ImportLookup, declaration: Declaration, resolveLocalNames: boolean, allowExternallyHiddenAccess: boolean): ResolvedAliasInfo | undefined;
@@ -1,142 +0,0 @@
1
- "use strict";
2
- /*
3
- * aliasDeclarationUtils.ts
4
- * Copyright (c) Microsoft Corporation.
5
- * Licensed under the MIT license.
6
- *
7
- * Helper functions around alias declarations.
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.resolveAliasDeclaration = void 0;
11
- // If the specified declaration is an alias declaration that points to a symbol,
12
- // it resolves the alias and looks up the symbol, then returns the a declaration
13
- // (typically the last) associated with that symbol. It does this recursively if
14
- // necessary. If a symbol lookup fails, undefined is returned. If resolveLocalNames
15
- // is true, the method resolves aliases through local renames ("as" clauses found
16
- // in import statements).
17
- function resolveAliasDeclaration(importLookup, declaration, resolveLocalNames, allowExternallyHiddenAccess) {
18
- let curDeclaration = declaration;
19
- const alreadyVisited = [];
20
- let isPrivate = false;
21
- // These variables are used to find a transition from a non-py.typed to
22
- // a py.typed resolution chain. In this case, if the imported symbol
23
- // is a private symbol (i.e. not intended to be re-exported), we store
24
- // the name of the importer and imported modules so the caller can
25
- // report an error.
26
- let sawPyTypedTransition = false;
27
- let privatePyTypedImported;
28
- let privatePyTypedImporter;
29
- while (true) {
30
- if (curDeclaration.type !== 8 /* Alias */ || !curDeclaration.symbolName) {
31
- return {
32
- declaration: curDeclaration,
33
- isPrivate,
34
- privatePyTypedImported,
35
- privatePyTypedImporter,
36
- };
37
- }
38
- // If we are not supposed to follow local alias names and this
39
- // is a local name, don't continue to follow the alias.
40
- if (!resolveLocalNames && curDeclaration.usesLocalName) {
41
- return {
42
- declaration: curDeclaration,
43
- isPrivate,
44
- privatePyTypedImported,
45
- privatePyTypedImporter,
46
- };
47
- }
48
- let lookupResult;
49
- if (curDeclaration.path && curDeclaration.loadSymbolsFromPath) {
50
- lookupResult = importLookup(curDeclaration.path);
51
- }
52
- const symbol = lookupResult
53
- ? lookupResult.symbolTable.get(curDeclaration.symbolName)
54
- : undefined;
55
- if (!symbol) {
56
- if (curDeclaration.submoduleFallback) {
57
- return resolveAliasDeclaration(importLookup, curDeclaration.submoduleFallback, resolveLocalNames, allowExternallyHiddenAccess);
58
- }
59
- // If the symbol comes from a native library, we won't
60
- // be able to resolve its type directly.
61
- if (curDeclaration.isNativeLib) {
62
- return {
63
- declaration: undefined,
64
- isPrivate,
65
- };
66
- }
67
- return undefined;
68
- }
69
- if (symbol.isPrivateMember()) {
70
- isPrivate = true;
71
- }
72
- if (symbol.isExternallyHidden() && !allowExternallyHiddenAccess) {
73
- return undefined;
74
- }
75
- // Prefer declarations with specified types. If we don't have any of those,
76
- // fall back on declarations with inferred types.
77
- let declarations = symbol.getTypedDeclarations();
78
- // Try not to use declarations within an except suite even if it's a typed
79
- // declaration. These are typically used for fallback exception handling.
80
- declarations = declarations.filter((decl) => !decl.isInExceptSuite);
81
- if (declarations.length === 0) {
82
- declarations = symbol.getDeclarations();
83
- declarations = declarations.filter((decl) => !decl.isInExceptSuite);
84
- }
85
- if (declarations.length === 0) {
86
- // Use declarations within except clauses if there are no alternatives.
87
- declarations = symbol.getDeclarations();
88
- }
89
- if (declarations.length === 0) {
90
- return undefined;
91
- }
92
- // Prefer the last unvisited declaration in the list. This ensures that
93
- // we use all of the overloads if it's an overloaded function.
94
- const unvisitedDecls = declarations.filter((decl) => !alreadyVisited.includes(decl));
95
- if (unvisitedDecls.length > 0) {
96
- curDeclaration = unvisitedDecls[unvisitedDecls.length - 1];
97
- }
98
- else {
99
- curDeclaration = declarations[declarations.length - 1];
100
- }
101
- if (lookupResult === null || lookupResult === void 0 ? void 0 : lookupResult.isInPyTypedPackage) {
102
- if (!sawPyTypedTransition) {
103
- if (symbol.isPrivatePyTypedImport()) {
104
- privatePyTypedImporter = curDeclaration === null || curDeclaration === void 0 ? void 0 : curDeclaration.moduleName;
105
- }
106
- // Note that we've seen a transition from a non-py.typed to a py.typed
107
- // import. No further check is needed.
108
- sawPyTypedTransition = true;
109
- }
110
- else {
111
- // If we've already seen a transition, look for the first non-private
112
- // symbol that is resolved so we can tell the user to import from this
113
- // location instead.
114
- if (!symbol.isPrivatePyTypedImport()) {
115
- privatePyTypedImported = privatePyTypedImported !== null && privatePyTypedImported !== void 0 ? privatePyTypedImported : curDeclaration === null || curDeclaration === void 0 ? void 0 : curDeclaration.moduleName;
116
- }
117
- }
118
- }
119
- // Make sure we don't follow a circular list indefinitely.
120
- if (alreadyVisited.find((decl) => decl === curDeclaration)) {
121
- // If the path path of the alias points back to the original path, use the submodule
122
- // fallback instead. This happens in the case where a module's __init__.py file
123
- // imports a submodule using itself as the import target. For example, if
124
- // the module is foo, and the foo.__init__.py file contains the statement
125
- // "from foo import bar", we want to import the foo/bar.py submodule.
126
- if (curDeclaration.path === declaration.path &&
127
- curDeclaration.type === 8 /* Alias */ &&
128
- curDeclaration.submoduleFallback) {
129
- return resolveAliasDeclaration(importLookup, curDeclaration.submoduleFallback, resolveLocalNames, allowExternallyHiddenAccess);
130
- }
131
- return {
132
- declaration,
133
- isPrivate,
134
- privatePyTypedImported,
135
- privatePyTypedImporter,
136
- };
137
- }
138
- alreadyVisited.push(curDeclaration);
139
- }
140
- }
141
- exports.resolveAliasDeclaration = resolveAliasDeclaration;
142
- //# sourceMappingURL=aliasDeclarationUtils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aliasDeclarationUtils.js","sourceRoot":"","sources":["../../../src/analyzer/aliasDeclarationUtils.ts"],"names":[],"mappings":"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"}