@zzzen/pyright-internal 1.2.0-dev.20230924 → 1.2.0-dev.20231008

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 (143) hide show
  1. package/dist/analyzer/checker.d.ts +3 -1
  2. package/dist/analyzer/checker.js +59 -18
  3. package/dist/analyzer/checker.js.map +1 -1
  4. package/dist/analyzer/codeFlowEngine.js +17 -3
  5. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  6. package/dist/analyzer/decorators.d.ts +6 -1
  7. package/dist/analyzer/decorators.js +34 -24
  8. package/dist/analyzer/decorators.js.map +1 -1
  9. package/dist/analyzer/operations.js +4 -2
  10. package/dist/analyzer/operations.js.map +1 -1
  11. package/dist/analyzer/parseTreeUtils.d.ts +1 -0
  12. package/dist/analyzer/parseTreeUtils.js +21 -2
  13. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  14. package/dist/analyzer/patternMatching.js +47 -16
  15. package/dist/analyzer/patternMatching.js.map +1 -1
  16. package/dist/analyzer/program.d.ts +2 -3
  17. package/dist/analyzer/program.js +6 -6
  18. package/dist/analyzer/program.js.map +1 -1
  19. package/dist/analyzer/properties.js +4 -0
  20. package/dist/analyzer/properties.js.map +1 -1
  21. package/dist/analyzer/protocols.js +7 -1
  22. package/dist/analyzer/protocols.js.map +1 -1
  23. package/dist/analyzer/scopeUtils.js +3 -2
  24. package/dist/analyzer/scopeUtils.js.map +1 -1
  25. package/dist/analyzer/service.d.ts +4 -4
  26. package/dist/analyzer/service.js +4 -18
  27. package/dist/analyzer/service.js.map +1 -1
  28. package/dist/analyzer/sourceFile.d.ts +3 -1
  29. package/dist/analyzer/sourceFile.js +9 -5
  30. package/dist/analyzer/sourceFile.js.map +1 -1
  31. package/dist/analyzer/typeEvaluator.d.ts +2 -1
  32. package/dist/analyzer/typeEvaluator.js +211 -233
  33. package/dist/analyzer/typeEvaluator.js.map +1 -1
  34. package/dist/analyzer/typeEvaluatorTypes.d.ts +7 -0
  35. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  36. package/dist/analyzer/typeGuards.d.ts +1 -1
  37. package/dist/analyzer/typeGuards.js +55 -43
  38. package/dist/analyzer/typeGuards.js.map +1 -1
  39. package/dist/analyzer/typeUtils.d.ts +1 -0
  40. package/dist/analyzer/typeUtils.js +22 -3
  41. package/dist/analyzer/typeUtils.js.map +1 -1
  42. package/dist/analyzer/types.d.ts +2 -1
  43. package/dist/analyzer/types.js +9 -3
  44. package/dist/analyzer/types.js.map +1 -1
  45. package/dist/backgroundAnalysisBase.js +0 -22
  46. package/dist/backgroundAnalysisBase.js.map +1 -1
  47. package/dist/commands/dumpFileDebugInfoCommand.js +1 -1
  48. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  49. package/dist/common/configOptions.d.ts +1 -0
  50. package/dist/common/configOptions.js +4 -0
  51. package/dist/common/configOptions.js.map +1 -1
  52. package/dist/common/diagnosticRules.d.ts +1 -0
  53. package/dist/common/diagnosticRules.js +1 -0
  54. package/dist/common/diagnosticRules.js.map +1 -1
  55. package/dist/common/extensibility.d.ts +26 -28
  56. package/dist/common/extensibility.js +6 -97
  57. package/dist/common/extensibility.js.map +1 -1
  58. package/dist/common/pathUtils.d.ts +3 -0
  59. package/dist/common/pathUtils.js +13 -8
  60. package/dist/common/pathUtils.js.map +1 -1
  61. package/dist/common/pythonVersion.d.ts +1 -1
  62. package/dist/common/pythonVersion.js +1 -1
  63. package/dist/common/realFileSystem.js +9 -16
  64. package/dist/common/realFileSystem.js.map +1 -1
  65. package/dist/common/serviceProvider.d.ts +22 -3
  66. package/dist/common/serviceProvider.js +89 -9
  67. package/dist/common/serviceProvider.js.map +1 -1
  68. package/dist/common/serviceProviderExtensions.d.ts +5 -1
  69. package/dist/common/serviceProviderExtensions.js +5 -2
  70. package/dist/common/serviceProviderExtensions.js.map +1 -1
  71. package/dist/languageServerBase.d.ts +2 -0
  72. package/dist/languageServerBase.js +28 -4
  73. package/dist/languageServerBase.js.map +1 -1
  74. package/dist/languageService/callHierarchyProvider.d.ts +0 -1
  75. package/dist/languageService/callHierarchyProvider.js +33 -16
  76. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  77. package/dist/languageService/definitionProvider.d.ts +3 -2
  78. package/dist/languageService/definitionProvider.js +13 -11
  79. package/dist/languageService/definitionProvider.js.map +1 -1
  80. package/dist/languageService/documentHighlightProvider.js +5 -2
  81. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  82. package/dist/languageService/documentSymbolCollector.d.ts +32 -23
  83. package/dist/languageService/documentSymbolCollector.js +171 -266
  84. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  85. package/dist/languageService/hoverProvider.js +5 -9
  86. package/dist/languageService/hoverProvider.js.map +1 -1
  87. package/dist/languageService/referencesProvider.d.ts +6 -6
  88. package/dist/languageService/referencesProvider.js +23 -8
  89. package/dist/languageService/referencesProvider.js.map +1 -1
  90. package/dist/languageService/renameProvider.js +3 -3
  91. package/dist/languageService/renameProvider.js.map +1 -1
  92. package/dist/localization/localize.d.ts +29 -1
  93. package/dist/localization/localize.js +11 -1
  94. package/dist/localization/localize.js.map +1 -1
  95. package/dist/localization/package.nls.cs.json +8 -1
  96. package/dist/localization/package.nls.de.json +8 -1
  97. package/dist/localization/package.nls.en-us.json +11 -1
  98. package/dist/localization/package.nls.es.json +8 -1
  99. package/dist/localization/package.nls.fr.json +8 -1
  100. package/dist/localization/package.nls.it.json +8 -1
  101. package/dist/localization/package.nls.ja.json +8 -1
  102. package/dist/localization/package.nls.ko.json +8 -1
  103. package/dist/localization/package.nls.pl.json +8 -1
  104. package/dist/localization/package.nls.pt-br.json +8 -1
  105. package/dist/localization/package.nls.qps-ploc.json +8 -1
  106. package/dist/localization/package.nls.ru.json +8 -1
  107. package/dist/localization/package.nls.tr.json +8 -1
  108. package/dist/localization/package.nls.zh-cn.json +8 -1
  109. package/dist/localization/package.nls.zh-tw.json +8 -1
  110. package/dist/parser/stringTokenUtils.js +9 -5
  111. package/dist/parser/stringTokenUtils.js.map +1 -1
  112. package/dist/parser/tokenizer.d.ts +1 -0
  113. package/dist/parser/tokenizer.js +5 -5
  114. package/dist/parser/tokenizer.js.map +1 -1
  115. package/dist/tests/checker.test.js +8 -0
  116. package/dist/tests/checker.test.js.map +1 -1
  117. package/dist/tests/documentSymbolCollector.test.js +8 -363
  118. package/dist/tests/documentSymbolCollector.test.js.map +1 -1
  119. package/dist/tests/importResolver.test.js +654 -481
  120. package/dist/tests/importResolver.test.js.map +1 -1
  121. package/dist/tests/pathUtils.test.js +39 -1
  122. package/dist/tests/pathUtils.test.js.map +1 -1
  123. package/dist/tests/sourceFile.test.js +2 -1
  124. package/dist/tests/sourceFile.test.js.map +1 -1
  125. package/dist/tests/testStateUtils.d.ts +3 -0
  126. package/dist/tests/testStateUtils.js +25 -1
  127. package/dist/tests/testStateUtils.js.map +1 -1
  128. package/dist/tests/typeEvaluator1.test.js +1 -1
  129. package/dist/tests/typeEvaluator2.test.js +12 -6
  130. package/dist/tests/typeEvaluator2.test.js.map +1 -1
  131. package/dist/tests/typeEvaluator3.test.js +14 -4
  132. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  133. package/dist/tests/typeEvaluator4.test.js +9 -8
  134. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  135. package/dist/tests/typeEvaluator5.test.js +4 -2
  136. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  137. package/dist/workspaceFactory.d.ts +2 -1
  138. package/dist/workspaceFactory.js +3 -1
  139. package/dist/workspaceFactory.js.map +1 -1
  140. package/package.json +3 -2
  141. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.overriddenFunction.fourslash.d.ts +0 -1
  142. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.overriddenFunction.fourslash.js +0 -40
  143. package/dist/tests/fourslash/showcallhierarchy.incomingCalls.overriddenFunction.fourslash.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"pathUtils.js","sourceRoot":"","sources":["../../../src/common/pathUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pathUtils.js","sourceRoot":"","sources":["../../../src/common/pathUtils.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export declare enum PythonVersion {
14
14
  V3_12 = 780,
15
15
  V3_13 = 781
16
16
  }
17
- export declare const latestStablePythonVersion = PythonVersion.V3_11;
17
+ export declare const latestStablePythonVersion = PythonVersion.V3_12;
18
18
  export declare function versionToString(version: PythonVersion): string;
19
19
  export declare function versionFromString(verString: string): PythonVersion | undefined;
20
20
  export declare function versionFromMajorMinor(major: number, minor: number): PythonVersion | undefined;
@@ -29,7 +29,7 @@ var PythonVersion;
29
29
  PythonVersion[PythonVersion["V3_12"] = 780] = "V3_12";
30
30
  PythonVersion[PythonVersion["V3_13"] = 781] = "V3_13";
31
31
  })(PythonVersion = exports.PythonVersion || (exports.PythonVersion = {}));
32
- exports.latestStablePythonVersion = PythonVersion.V3_11;
32
+ exports.latestStablePythonVersion = PythonVersion.V3_12;
33
33
  function versionToString(version) {
34
34
  const majorVersion = (version >> 8) & 0xff;
35
35
  const minorVersion = version & 0xff;
@@ -209,19 +209,10 @@ class RealFileSystem {
209
209
  }
210
210
  }
211
211
  readdirSync(path) {
212
- return yarnFS.readdirSync(path).map((entry) => {
213
- // Make sure the entry name is the real case.
214
- const fullPath = (0, pathUtils_1.combinePaths)(path, entry);
215
- const realPath = this.realCasePath(fullPath);
216
- return (0, pathUtils_1.getFileName)(realPath);
217
- });
212
+ return yarnFS.readdirSync(path);
218
213
  }
219
214
  readdirEntriesSync(path) {
220
215
  return yarnFS.readdirSync(path, { withFileTypes: true }).map((entry) => {
221
- // Make sure the entry name is the real case.
222
- const fullPath = (0, pathUtils_1.combinePaths)(path, entry.name);
223
- const realPath = this.realCasePath(fullPath);
224
- entry.name = (0, pathUtils_1.getFileName)(realPath);
225
216
  // Treat zip/egg files as directories.
226
217
  // See: https://github.com/yarnpkg/berry/blob/master/packages/vscode-zipfs/sources/ZipFSProvider.ts
227
218
  if (hasZipExtension(entry.name)) {
@@ -320,12 +311,9 @@ class RealFileSystem {
320
311
  }
321
312
  realCasePath(path) {
322
313
  try {
323
- // If it doesn't exist in the real FS, try going up a level and combining it.
314
+ // If it doesn't exist in the real FS, then just use this path.
324
315
  if (!this.existsSync(path)) {
325
- if ((0, pathUtils_1.getRootLength)(path) <= 0) {
326
- return path;
327
- }
328
- return (0, pathUtils_1.combinePaths)(this.realCasePath((0, pathUtils_1.getDirectoryPath)(path)), (0, pathUtils_1.getFileName)(path));
316
+ return path;
329
317
  }
330
318
  // If it does exist, skip this for symlinks.
331
319
  const stat = fs.lstatSync(path);
@@ -334,7 +322,12 @@ class RealFileSystem {
334
322
  }
335
323
  // realpathSync.native will return casing as in OS rather than
336
324
  // trying to preserve casing given.
337
- return fs.realpathSync.native(path);
325
+ const realCase = fs.realpathSync.native(path);
326
+ // On UNC mapped drives we want to keep the original drive letter.
327
+ if ((0, pathUtils_1.getRootLength)(realCase) !== (0, pathUtils_1.getRootLength)(path)) {
328
+ return path;
329
+ }
330
+ return realCase;
338
331
  }
339
332
  catch (e) {
340
333
  // Return as it is, if anything failed.
@@ -1 +1 @@
1
- {"version":3,"file":"realFileSystem.js","sourceRoot":"","sources":["../../../src/common/realFileSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"realFileSystem.js","sourceRoot":"","sources":["../../../src/common/realFileSystem.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,31 @@
1
- interface InternalKey {
1
+ declare abstract class InternalKey {
2
+ abstract readonly kind: 'singleton' | 'group';
2
3
  }
3
- export declare class ServiceKey<T> implements InternalKey {
4
+ /**
5
+ * Key for singleton service T.
6
+ */
7
+ export declare class ServiceKey<T> extends InternalKey {
8
+ readonly kind = "singleton";
4
9
  }
10
+ /**
11
+ * Key for group of service T.
12
+ */
13
+ export declare class GroupServiceKey<T> extends InternalKey {
14
+ readonly kind = "group";
15
+ }
16
+ export declare type AllServiceKeys<T> = ServiceKey<T> | GroupServiceKey<T>;
5
17
  export declare class ServiceProvider {
6
18
  private _container;
7
- get items(): IterableIterator<[InternalKey, any]>;
8
19
  add<T>(key: ServiceKey<T>, value: T | undefined): void;
20
+ add<T>(key: GroupServiceKey<T>, value: T): void;
21
+ remove<T>(key: ServiceKey<T>): void;
22
+ remove<T>(key: GroupServiceKey<T>, value: T): void;
9
23
  tryGet<T>(key: ServiceKey<T>): T | undefined;
24
+ tryGet<T>(key: GroupServiceKey<T>): readonly T[] | undefined;
10
25
  get<T>(key: ServiceKey<T>): T;
26
+ get<T>(key: GroupServiceKey<T>): readonly T[];
27
+ clone(): ServiceProvider;
28
+ private _addGroupService;
29
+ private _removeGroupService;
11
30
  }
12
31
  export {};
@@ -6,37 +6,117 @@
6
6
  *
7
7
  * Container for different services used within the application.
8
8
  */
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
9
28
  Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.ServiceProvider = exports.ServiceKey = void 0;
29
+ exports.ServiceProvider = exports.GroupServiceKey = exports.ServiceKey = void 0;
30
+ const collectionUtils_1 = require("./collectionUtils");
31
+ const debug = __importStar(require("./debug"));
32
+ class InternalKey {
33
+ }
34
+ /**
35
+ * Key for singleton service T.
36
+ */
11
37
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
12
- class ServiceKey {
38
+ class ServiceKey extends InternalKey {
39
+ constructor() {
40
+ super(...arguments);
41
+ this.kind = 'singleton';
42
+ }
13
43
  }
14
44
  exports.ServiceKey = ServiceKey;
45
+ /**
46
+ * Key for group of service T.
47
+ */
48
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
49
+ class GroupServiceKey extends InternalKey {
50
+ constructor() {
51
+ super(...arguments);
52
+ this.kind = 'group';
53
+ }
54
+ }
55
+ exports.GroupServiceKey = GroupServiceKey;
15
56
  class ServiceProvider {
16
57
  constructor() {
17
58
  this._container = new Map();
18
59
  }
19
- get items() {
20
- return this._container.entries();
21
- }
22
60
  add(key, value) {
23
- if (value !== undefined) {
24
- this._container.set(key, value);
61
+ if (key.kind === 'group') {
62
+ this._addGroupService(key, value);
63
+ return;
25
64
  }
26
- else {
65
+ if (key.kind === 'singleton') {
66
+ if (value !== undefined) {
67
+ this._container.set(key, value);
68
+ }
69
+ else {
70
+ this.remove(key);
71
+ }
72
+ return;
73
+ }
74
+ debug.assertNever(key, `Unknown key type ${typeof key}`);
75
+ }
76
+ remove(key, value) {
77
+ if (key.kind === 'group') {
78
+ this._removeGroupService(key, value);
79
+ return;
80
+ }
81
+ if (key.kind === 'singleton') {
27
82
  this._container.delete(key);
83
+ return;
28
84
  }
85
+ debug.assertNever(key, `Unknown key type ${typeof key}`);
29
86
  }
30
87
  tryGet(key) {
31
88
  return this._container.get(key);
32
89
  }
33
90
  get(key) {
34
- const value = this.tryGet(key);
91
+ const value = key.kind === 'group' ? this.tryGet(key) : this.tryGet(key);
35
92
  if (value === undefined) {
36
93
  throw new Error(`Global service provider not initialized for ${key.toString()}`);
37
94
  }
38
95
  return value;
39
96
  }
97
+ clone() {
98
+ const serviceProvider = new ServiceProvider();
99
+ this._container.forEach((value, key) => serviceProvider._container.set(key, value));
100
+ return serviceProvider;
101
+ }
102
+ _addGroupService(key, newValue) {
103
+ // Explicitly cast to remove `readonly`
104
+ const services = this.tryGet(key);
105
+ if (services === undefined) {
106
+ this._container.set(key, [newValue]);
107
+ return;
108
+ }
109
+ if (newValue !== undefined) {
110
+ (0, collectionUtils_1.addIfUnique)(services, newValue);
111
+ }
112
+ }
113
+ _removeGroupService(key, oldValue) {
114
+ const services = this.tryGet(key);
115
+ if (services === undefined) {
116
+ return;
117
+ }
118
+ (0, collectionUtils_1.removeArrayElements)(services, (s) => s === oldValue);
119
+ }
40
120
  }
41
121
  exports.ServiceProvider = ServiceProvider;
42
122
  //# sourceMappingURL=serviceProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serviceProvider.js","sourceRoot":"","sources":["../../../src/common/serviceProvider.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAIH,6DAA6D;AAC7D,MAAa,UAAU;CAA6B;AAApD,gCAAoD;AAEpD,MAAa,eAAe;IAA5B;QACY,eAAU,GAA0B,IAAI,GAAG,EAAoB,CAAC;IAyB5E,CAAC;IAvBG,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IAED,GAAG,CAAI,GAAkB,EAAE,KAAoB;QAC3C,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;SACnC;aAAM;YACH,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC/B;IACL,CAAC;IAED,MAAM,CAAI,GAAkB;QACxB,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,GAAG,CAAI,GAAkB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAI,GAAG,CAAC,CAAC;QAClC,IAAI,KAAK,KAAK,SAAS,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,+CAA+C,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SACpF;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AA1BD,0CA0BC"}
1
+ {"version":3,"file":"serviceProvider.js","sourceRoot":"","sources":["../../../src/common/serviceProvider.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { ISourceFileFactory } from '../analyzer/program';
2
2
  import { SupportPartialStubs, SupportUriToPathMapping } from '../pyrightFileSystem';
3
3
  import { ConsoleInterface } from './console';
4
+ import { StatusMutationListener, SymbolDefinitionProvider, SymbolUsageProviderFactory } from './extensibility';
4
5
  import { FileSystem } from './fileSystem';
5
- import { ServiceKey, ServiceProvider } from './serviceProvider';
6
+ import { GroupServiceKey, ServiceKey, ServiceProvider } from './serviceProvider';
6
7
  declare module './serviceProvider' {
7
8
  interface ServiceProvider {
8
9
  fs(): FileSystem;
@@ -18,5 +19,8 @@ export declare namespace ServiceKeys {
18
19
  const sourceFileFactory: ServiceKey<ISourceFileFactory>;
19
20
  const partialStubs: ServiceKey<SupportPartialStubs>;
20
21
  const uriMapper: ServiceKey<SupportUriToPathMapping>;
22
+ const symbolDefinitionProvider: GroupServiceKey<SymbolDefinitionProvider>;
23
+ const symbolUsageProviderFactory: GroupServiceKey<SymbolUsageProviderFactory>;
24
+ const stateMutationListeners: GroupServiceKey<StatusMutationListener>;
21
25
  }
22
26
  export declare function createServiceProvider(...services: any): ServiceProvider;
@@ -21,6 +21,9 @@ var ServiceKeys;
21
21
  ServiceKeys.sourceFileFactory = new serviceProvider_1.ServiceKey();
22
22
  ServiceKeys.partialStubs = new serviceProvider_1.ServiceKey();
23
23
  ServiceKeys.uriMapper = new serviceProvider_1.ServiceKey();
24
+ ServiceKeys.symbolDefinitionProvider = new serviceProvider_1.GroupServiceKey();
25
+ ServiceKeys.symbolUsageProviderFactory = new serviceProvider_1.GroupServiceKey();
26
+ ServiceKeys.stateMutationListeners = new serviceProvider_1.GroupServiceKey();
24
27
  })(ServiceKeys = exports.ServiceKeys || (exports.ServiceKeys = {}));
25
28
  function createServiceProvider(...services) {
26
29
  const sp = new serviceProvider_1.ServiceProvider();
@@ -62,8 +65,8 @@ serviceProvider_1.ServiceProvider.prototype.sourceFileFactory = function () {
62
65
  return result || DefaultSourceFileFactory;
63
66
  };
64
67
  const DefaultSourceFileFactory = {
65
- createSourceFile(fs, filePath, moduleName, isThirdPartyImport, isThirdPartyPyTypedPresent, editMode, console, logTracker, realFilePath, ipythonMode) {
66
- return new sourceFile_1.SourceFile(fs, filePath, moduleName, isThirdPartyImport, isThirdPartyPyTypedPresent, editMode, console, logTracker, realFilePath, ipythonMode);
68
+ createSourceFile(serviceProvider, filePath, moduleName, isThirdPartyImport, isThirdPartyPyTypedPresent, editMode, console, logTracker, realFilePath, ipythonMode) {
69
+ return new sourceFile_1.SourceFile(serviceProvider, filePath, moduleName, isThirdPartyImport, isThirdPartyPyTypedPresent, editMode, console, logTracker, realFilePath, ipythonMode);
67
70
  },
68
71
  };
69
72
  //# sourceMappingURL=serviceProviderExtensions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"serviceProviderExtensions.js","sourceRoot":"","sources":["../../../src/common/serviceProviderExtensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serviceProviderExtensions.js","sourceRoot":"","sources":["../../../src/common/serviceProviderExtensions.ts"],"names":[],"mappings":"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"}
@@ -185,6 +185,7 @@ export declare abstract class LanguageServerBase implements LanguageServerInterf
185
185
  protected readonly cacheManager: CacheManager;
186
186
  protected readonly uriMapper: SupportUriToPathMapping;
187
187
  protected readonly fs: FileSystem;
188
+ protected readonly documentsWithDiagnostics: Set<string>;
188
189
  readonly uriParser: UriParser;
189
190
  constructor(serverOptions: ServerOptions, connection: Connection, uriParserFactory?: (fs: FileSystem) => UriParser);
190
191
  get console(): ConsoleInterface;
@@ -249,6 +250,7 @@ export declare abstract class LanguageServerBase implements LanguageServerInterf
249
250
  protected getDiagCode(_diag: AnalyzerDiagnostic, rule: string | undefined): string | undefined;
250
251
  protected onAnalysisCompletedHandler(fs: FileSystem, results: AnalysisResults): void;
251
252
  protected onWorkspaceCreated(workspace: Workspace): void;
253
+ protected onWorkspaceRemoved(workspace: Workspace): void;
252
254
  protected createAnalyzerServiceForWorkspace(name: string, _rootPath: string, _uri: string, kinds: string[], services?: WorkspaceServices): AnalyzerService;
253
255
  protected recordUserInteractionTime(): void;
254
256
  protected getDocumentationUrlForDiagnostic(diag: AnalyzerDiagnostic): string | undefined;
@@ -26,7 +26,6 @@ const commandLineOptions_1 = require("./common/commandLineOptions");
26
26
  const configOptions_1 = require("./common/configOptions");
27
27
  const console_1 = require("./common/console");
28
28
  const diagnostic_1 = require("./common/diagnostic");
29
- const extensibility_1 = require("./common/extensibility");
30
29
  const lspUtils_1 = require("./common/lspUtils");
31
30
  const pathUtils_1 = require("./common/pathUtils");
32
31
  const progressReporter_1 = require("./common/progressReporter");
@@ -137,6 +136,8 @@ class LanguageServerBase {
137
136
  completionItemResolveSupportsAdditionalTextEdits: false,
138
137
  };
139
138
  this.openFileMap = new Map();
139
+ // The URIs for which diagnostics are reported
140
+ this.documentsWithDiagnostics = new Set();
140
141
  // Stash the base directory into a global variable.
141
142
  // This must happen before fs.getModulePath().
142
143
  global.__rootDirectory = serverOptions.rootDirectory;
@@ -147,7 +148,7 @@ class LanguageServerBase {
147
148
  this.fs = this.serverOptions.serviceProvider.fs();
148
149
  this.uriParser = uriParserFactory(this.fs);
149
150
  this.workspaceFactory = new workspaceFactory_1.WorkspaceFactory(this.console, this.uriParser,
150
- /* isWeb */ false, this.createAnalyzerServiceForWorkspace.bind(this), this.isPythonPathImmutable.bind(this), this.onWorkspaceCreated.bind(this));
151
+ /* isWeb */ false, this.createAnalyzerServiceForWorkspace.bind(this), this.isPythonPathImmutable.bind(this), this.onWorkspaceCreated.bind(this), this.onWorkspaceRemoved.bind(this));
151
152
  // Set the working directory to a known location within
152
153
  // the extension directory. Otherwise the execution of
153
154
  // python can have unintended and surprising results.
@@ -160,8 +161,6 @@ class LanguageServerBase {
160
161
  this._progressReporter = new progressReporter_1.ProgressReportTracker(this.createProgressReporter());
161
162
  // Listen on the connection.
162
163
  this.connection.listen();
163
- // Setup extensions
164
- extensibility_1.Extensions.createLanguageServiceExtensions(this);
165
164
  }
166
165
  get console() {
167
166
  return this.serverOptions.serviceProvider.console();
@@ -807,6 +806,25 @@ class LanguageServerBase {
807
806
  }
808
807
  // Otherwise the initialize completion should cause settings to be updated on all workspaces.
809
808
  }
809
+ onWorkspaceRemoved(workspace) {
810
+ const documentsWithDiagnosticsList = [...this.documentsWithDiagnostics];
811
+ const otherWorkspaces = this.workspaceFactory.items().filter((w) => w !== workspace);
812
+ for (const uri of documentsWithDiagnosticsList) {
813
+ const filePath = (0, pathUtils_1.convertUriToPath)(workspace.service.fs, uri);
814
+ if (workspace.service.isTracked(filePath)) {
815
+ // Do not clean up diagnostics for files tracked by multiple workspaces
816
+ if (otherWorkspaces.some((w) => w.service.isTracked(filePath))) {
817
+ continue;
818
+ }
819
+ this._sendDiagnostics([
820
+ {
821
+ uri: uri,
822
+ diagnostics: [],
823
+ },
824
+ ]);
825
+ }
826
+ }
827
+ }
810
828
  createAnalyzerServiceForWorkspace(name, _rootPath, _uri, kinds, services) {
811
829
  // 5 seconds default
812
830
  const defaultBackOffTime = 5 * 1000;
@@ -891,6 +909,12 @@ class LanguageServerBase {
891
909
  }
892
910
  _sendDiagnostics(params) {
893
911
  for (const param of params) {
912
+ if (param.diagnostics.length === 0) {
913
+ this.documentsWithDiagnostics.delete(param.uri);
914
+ }
915
+ else {
916
+ this.documentsWithDiagnostics.add(param.uri);
917
+ }
894
918
  this.connection.sendDiagnostics(param);
895
919
  }
896
920
  }