@zzzen/pyright-internal 1.2.0-dev.20241208 → 1.2.0-dev.20241222

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 (285) hide show
  1. package/dist/analyzer/analysis.js +1 -1
  2. package/dist/analyzer/analysis.js.map +1 -1
  3. package/dist/analyzer/analyzerNodeInfo.js +17 -18
  4. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  5. package/dist/analyzer/backgroundAnalysisProgram.js +18 -35
  6. package/dist/analyzer/backgroundAnalysisProgram.js.map +1 -1
  7. package/dist/analyzer/binder.js +38 -55
  8. package/dist/analyzer/binder.js.map +1 -1
  9. package/dist/analyzer/checker.js +146 -185
  10. package/dist/analyzer/checker.js.map +1 -1
  11. package/dist/analyzer/codeFlowEngine.js +24 -31
  12. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  13. package/dist/analyzer/constraintSolver.js +23 -24
  14. package/dist/analyzer/constraintSolver.js.map +1 -1
  15. package/dist/analyzer/constraintTracker.js +1 -2
  16. package/dist/analyzer/constraintTracker.js.map +1 -1
  17. package/dist/analyzer/constructorTransform.js +10 -12
  18. package/dist/analyzer/constructorTransform.js.map +1 -1
  19. package/dist/analyzer/constructors.js +14 -19
  20. package/dist/analyzer/constructors.js.map +1 -1
  21. package/dist/analyzer/dataClasses.js +32 -27
  22. package/dist/analyzer/dataClasses.js.map +1 -1
  23. package/dist/analyzer/declarationUtils.js +8 -11
  24. package/dist/analyzer/declarationUtils.js.map +1 -1
  25. package/dist/analyzer/decorators.js +2 -3
  26. package/dist/analyzer/decorators.js.map +1 -1
  27. package/dist/analyzer/docStringConversion.js +6 -8
  28. package/dist/analyzer/docStringConversion.js.map +1 -1
  29. package/dist/analyzer/enums.js +12 -13
  30. package/dist/analyzer/enums.js.map +1 -1
  31. package/dist/analyzer/functionTransform.js +1 -2
  32. package/dist/analyzer/functionTransform.js.map +1 -1
  33. package/dist/analyzer/importResolver.js +18 -27
  34. package/dist/analyzer/importResolver.js.map +1 -1
  35. package/dist/analyzer/importStatementUtils.js +4 -5
  36. package/dist/analyzer/importStatementUtils.js.map +1 -1
  37. package/dist/analyzer/namedTuples.js +6 -7
  38. package/dist/analyzer/namedTuples.js.map +1 -1
  39. package/dist/analyzer/operations.js +14 -17
  40. package/dist/analyzer/operations.js.map +1 -1
  41. package/dist/analyzer/packageTypeVerifier.js +48 -50
  42. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  43. package/dist/analyzer/parameterUtils.js +5 -7
  44. package/dist/analyzer/parameterUtils.js.map +1 -1
  45. package/dist/analyzer/parentDirectoryCache.js +8 -9
  46. package/dist/analyzer/parentDirectoryCache.js.map +1 -1
  47. package/dist/analyzer/parseTreeUtils.js +30 -44
  48. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  49. package/dist/analyzer/parseTreeWalker.js +2 -3
  50. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  51. package/dist/analyzer/patternMatching.js +18 -20
  52. package/dist/analyzer/patternMatching.js.map +1 -1
  53. package/dist/analyzer/program.js +29 -40
  54. package/dist/analyzer/program.js.map +1 -1
  55. package/dist/analyzer/properties.js +7 -8
  56. package/dist/analyzer/properties.js.map +1 -1
  57. package/dist/analyzer/protocols.js +21 -23
  58. package/dist/analyzer/protocols.js.map +1 -1
  59. package/dist/analyzer/pythonPathUtils.js +1 -1
  60. package/dist/analyzer/pythonPathUtils.js.map +1 -1
  61. package/dist/analyzer/scope.js +10 -10
  62. package/dist/analyzer/scope.js.map +1 -1
  63. package/dist/analyzer/service.js +32 -47
  64. package/dist/analyzer/service.js.map +1 -1
  65. package/dist/analyzer/sourceFile.js +21 -26
  66. package/dist/analyzer/sourceFile.js.map +1 -1
  67. package/dist/analyzer/sourceFileInfo.js +2 -3
  68. package/dist/analyzer/sourceFileInfo.js.map +1 -1
  69. package/dist/analyzer/sourceFileInfoUtils.js +5 -5
  70. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  71. package/dist/analyzer/sourceMapper.js +19 -30
  72. package/dist/analyzer/sourceMapper.js.map +1 -1
  73. package/dist/analyzer/testWalker.js +1 -2
  74. package/dist/analyzer/testWalker.js.map +1 -1
  75. package/dist/analyzer/tracePrinter.js +7 -9
  76. package/dist/analyzer/tracePrinter.js.map +1 -1
  77. package/dist/analyzer/tuples.js +11 -13
  78. package/dist/analyzer/tuples.js.map +1 -1
  79. package/dist/analyzer/typeCacheUtils.js +5 -6
  80. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  81. package/dist/analyzer/typeDocStringUtils.js +7 -11
  82. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  83. package/dist/analyzer/typeEvaluator.js +619 -776
  84. package/dist/analyzer/typeEvaluator.js.map +1 -1
  85. package/dist/analyzer/typeEvaluatorTypes.d.ts +1 -1
  86. package/dist/analyzer/typeEvaluatorWithTracker.js +2 -2
  87. package/dist/analyzer/typeEvaluatorWithTracker.js.map +1 -1
  88. package/dist/analyzer/typeGuards.js +26 -36
  89. package/dist/analyzer/typeGuards.js.map +1 -1
  90. package/dist/analyzer/typePrinter.js +15 -24
  91. package/dist/analyzer/typePrinter.js.map +1 -1
  92. package/dist/analyzer/typeStubWriter.js +1 -2
  93. package/dist/analyzer/typeStubWriter.js.map +1 -1
  94. package/dist/analyzer/typeUtils.js +65 -94
  95. package/dist/analyzer/typeUtils.js.map +1 -1
  96. package/dist/analyzer/typeWalker.js +4 -8
  97. package/dist/analyzer/typeWalker.js.map +1 -1
  98. package/dist/analyzer/typedDicts.js +39 -46
  99. package/dist/analyzer/typedDicts.js.map +1 -1
  100. package/dist/analyzer/types.d.ts +1 -0
  101. package/dist/analyzer/types.js +64 -103
  102. package/dist/analyzer/types.js.map +1 -1
  103. package/dist/backgroundAnalysis.js +2 -3
  104. package/dist/backgroundAnalysis.js.map +1 -1
  105. package/dist/backgroundAnalysisBase.js +9 -10
  106. package/dist/backgroundAnalysisBase.js.map +1 -1
  107. package/dist/backgroundThreadBase.js +6 -7
  108. package/dist/backgroundThreadBase.js.map +1 -1
  109. package/dist/commands/createTypeStub.js +1 -1
  110. package/dist/commands/createTypeStub.js.map +1 -1
  111. package/dist/commands/dumpFileDebugInfoCommand.js +3 -3
  112. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  113. package/dist/commands/quickActionCommand.js +1 -1
  114. package/dist/commands/quickActionCommand.js.map +1 -1
  115. package/dist/common/asyncInitialization.js +1 -1
  116. package/dist/common/chokidarFileWatcherProvider.js +2 -4
  117. package/dist/common/chokidarFileWatcherProvider.js.map +1 -1
  118. package/dist/common/configOptions.js +6 -9
  119. package/dist/common/configOptions.js.map +1 -1
  120. package/dist/common/console.js +1 -2
  121. package/dist/common/console.js.map +1 -1
  122. package/dist/common/core.js +2 -2
  123. package/dist/common/core.js.map +1 -1
  124. package/dist/common/crypto.js +1 -1
  125. package/dist/common/crypto.js.map +1 -1
  126. package/dist/common/diagnostic.js +3 -5
  127. package/dist/common/diagnostic.js.map +1 -1
  128. package/dist/common/envVarUtils.js +1 -1
  129. package/dist/common/envVarUtils.js.map +1 -1
  130. package/dist/common/extensibility.d.ts +1 -0
  131. package/dist/common/extensibility.js.map +1 -1
  132. package/dist/common/fileSystem.d.ts +1 -0
  133. package/dist/common/fileSystem.js.map +1 -1
  134. package/dist/common/fullAccessHost.js +5 -5
  135. package/dist/common/fullAccessHost.js.map +1 -1
  136. package/dist/common/host.js +1 -1
  137. package/dist/common/host.js.map +1 -1
  138. package/dist/common/logTracker.js +1 -1
  139. package/dist/common/logTracker.js.map +1 -1
  140. package/dist/common/lspUtils.js +1 -2
  141. package/dist/common/lspUtils.js.map +1 -1
  142. package/dist/common/progressReporter.js +1 -2
  143. package/dist/common/progressReporter.js.map +1 -1
  144. package/dist/common/realFileSystem.js +2 -3
  145. package/dist/common/realFileSystem.js.map +1 -1
  146. package/dist/common/serviceProvider.js +1 -1
  147. package/dist/common/serviceProvider.js.map +1 -1
  148. package/dist/common/streamUtils.d.ts +2 -0
  149. package/dist/common/streamUtils.js +29 -0
  150. package/dist/common/streamUtils.js.map +1 -0
  151. package/dist/common/textEditTracker.js +4 -6
  152. package/dist/common/textEditTracker.js.map +1 -1
  153. package/dist/common/tomlUtils.js +3 -1
  154. package/dist/common/tomlUtils.js.map +1 -1
  155. package/dist/common/uri/baseUri.js +1 -1
  156. package/dist/common/uri/baseUri.js.map +1 -1
  157. package/dist/common/uri/emptyUri.js +1 -1
  158. package/dist/common/uri/emptyUri.js.map +1 -1
  159. package/dist/common/uri/fileUri.js +2 -2
  160. package/dist/common/uri/fileUri.js.map +1 -1
  161. package/dist/common/uri/memoization.js +1 -1
  162. package/dist/common/uri/memoization.js.map +1 -1
  163. package/dist/common/uri/uri.js +2 -3
  164. package/dist/common/uri/uri.js.map +1 -1
  165. package/dist/common/uri/uriUtils.js +6 -8
  166. package/dist/common/uri/uriUtils.js.map +1 -1
  167. package/dist/common/uri/webUri.js +2 -2
  168. package/dist/common/uri/webUri.js.map +1 -1
  169. package/dist/common/workspaceEditUtils.js +10 -15
  170. package/dist/common/workspaceEditUtils.js.map +1 -1
  171. package/dist/languageServerBase.js +34 -42
  172. package/dist/languageServerBase.js.map +1 -1
  173. package/dist/languageService/analyzerServiceExecutor.js +8 -10
  174. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  175. package/dist/languageService/autoImporter.js +16 -19
  176. package/dist/languageService/autoImporter.js.map +1 -1
  177. package/dist/languageService/callHierarchyProvider.js +6 -11
  178. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  179. package/dist/languageService/completionProvider.js +81 -106
  180. package/dist/languageService/completionProvider.js.map +1 -1
  181. package/dist/languageService/completionProviderUtils.js +3 -3
  182. package/dist/languageService/completionProviderUtils.js.map +1 -1
  183. package/dist/languageService/definitionProvider.js +6 -9
  184. package/dist/languageService/definitionProvider.js.map +1 -1
  185. package/dist/languageService/documentSymbolCollector.js +32 -32
  186. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  187. package/dist/languageService/dynamicFeature.js +1 -2
  188. package/dist/languageService/dynamicFeature.js.map +1 -1
  189. package/dist/languageService/hoverProvider.js +17 -23
  190. package/dist/languageService/hoverProvider.js.map +1 -1
  191. package/dist/languageService/referencesProvider.js +4 -9
  192. package/dist/languageService/referencesProvider.js.map +1 -1
  193. package/dist/languageService/renameProvider.js +2 -4
  194. package/dist/languageService/renameProvider.js.map +1 -1
  195. package/dist/languageService/signatureHelpProvider.js +11 -15
  196. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  197. package/dist/languageService/tooltipUtils.js +15 -17
  198. package/dist/languageService/tooltipUtils.js.map +1 -1
  199. package/dist/localization/localize.js +3 -3
  200. package/dist/localization/localize.js.map +1 -1
  201. package/dist/localization/package.nls.cs.json +6 -0
  202. package/dist/localization/package.nls.de.json +6 -0
  203. package/dist/localization/package.nls.en-us.json +8 -8
  204. package/dist/localization/package.nls.es.json +6 -0
  205. package/dist/localization/package.nls.fr.json +7 -1
  206. package/dist/localization/package.nls.it.json +6 -0
  207. package/dist/localization/package.nls.ja.json +6 -0
  208. package/dist/localization/package.nls.ko.json +6 -0
  209. package/dist/localization/package.nls.pl.json +6 -0
  210. package/dist/localization/package.nls.pt-br.json +6 -0
  211. package/dist/localization/package.nls.qps-ploc.json +6 -0
  212. package/dist/localization/package.nls.ru.json +6 -0
  213. package/dist/localization/package.nls.tr.json +6 -0
  214. package/dist/localization/package.nls.zh-cn.json +6 -0
  215. package/dist/localization/package.nls.zh-tw.json +6 -0
  216. package/dist/parser/parser.js +30 -38
  217. package/dist/parser/parser.js.map +1 -1
  218. package/dist/parser/tokenizer.js +8 -13
  219. package/dist/parser/tokenizer.js.map +1 -1
  220. package/dist/pprof/profiler.js +3 -3
  221. package/dist/pprof/profiler.js.map +1 -1
  222. package/dist/pyright.js +9 -11
  223. package/dist/pyright.js.map +1 -1
  224. package/dist/pyrightFileSystem.js +4 -5
  225. package/dist/pyrightFileSystem.js.map +1 -1
  226. package/dist/readonlyAugmentedFileSystem.js +3 -5
  227. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  228. package/dist/server.js +1 -1
  229. package/dist/server.js.map +1 -1
  230. package/dist/tests/chainedSourceFiles.test.js +3 -3
  231. package/dist/tests/chainedSourceFiles.test.js.map +1 -1
  232. package/dist/tests/classDeclaration.test.js +7 -10
  233. package/dist/tests/classDeclaration.test.js.map +1 -1
  234. package/dist/tests/completions.test.js +3 -3
  235. package/dist/tests/completions.test.js.map +1 -1
  236. package/dist/tests/config.test.js +10 -15
  237. package/dist/tests/config.test.js.map +1 -1
  238. package/dist/tests/diagnosticOverrides.test.js +4 -6
  239. package/dist/tests/diagnosticOverrides.test.js.map +1 -1
  240. package/dist/tests/envVarUtils.test.js +9 -12
  241. package/dist/tests/envVarUtils.test.js.map +1 -1
  242. package/dist/tests/harness/fourslash/testLanguageService.js +1 -1
  243. package/dist/tests/harness/fourslash/testLanguageService.js.map +1 -1
  244. package/dist/tests/harness/fourslash/testState.js +45 -60
  245. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  246. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js +6 -7
  247. package/dist/tests/harness/fourslash/workspaceEditTestUtils.js.map +1 -1
  248. package/dist/tests/harness/vfs/filesystem.js +3 -3
  249. package/dist/tests/harness/vfs/filesystem.js.map +1 -1
  250. package/dist/tests/importResolver.test.js +6 -7
  251. package/dist/tests/importResolver.test.js.map +1 -1
  252. package/dist/tests/importStatementUtils.test.js +2 -2
  253. package/dist/tests/importStatementUtils.test.js.map +1 -1
  254. package/dist/tests/ipythonMode.test.js +11 -12
  255. package/dist/tests/ipythonMode.test.js.map +1 -1
  256. package/dist/tests/languageServer.test.js +1 -2
  257. package/dist/tests/languageServer.test.js.map +1 -1
  258. package/dist/tests/lsp/languageServer.js +10 -14
  259. package/dist/tests/lsp/languageServer.js.map +1 -1
  260. package/dist/tests/lsp/languageServerTestUtils.js +10 -14
  261. package/dist/tests/lsp/languageServerTestUtils.js.map +1 -1
  262. package/dist/tests/parseTreeUtils.test.js +7 -7
  263. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  264. package/dist/tests/parser.test.js +2 -2
  265. package/dist/tests/parser.test.js.map +1 -1
  266. package/dist/tests/service.test.js +2 -3
  267. package/dist/tests/service.test.js.map +1 -1
  268. package/dist/tests/sourceFile.test.js +2 -3
  269. package/dist/tests/sourceFile.test.js.map +1 -1
  270. package/dist/tests/sourceMapperUtils.test.js +3 -4
  271. package/dist/tests/sourceMapperUtils.test.js.map +1 -1
  272. package/dist/tests/testState.test.js +3 -6
  273. package/dist/tests/testState.test.js.map +1 -1
  274. package/dist/tests/testStateUtils.js +3 -4
  275. package/dist/tests/testStateUtils.js.map +1 -1
  276. package/dist/tests/textEditUtil.test.js +2 -2
  277. package/dist/tests/textEditUtil.test.js.map +1 -1
  278. package/dist/tests/typeEvaluator1.test.js +1 -1
  279. package/dist/tests/typePrinter.test.js +1 -2
  280. package/dist/tests/typePrinter.test.js.map +1 -1
  281. package/dist/tests/workspaceEditUtils.test.js +3 -5
  282. package/dist/tests/workspaceEditUtils.test.js.map +1 -1
  283. package/dist/workspaceFactory.js +2 -3
  284. package/dist/workspaceFactory.js.map +1 -1
  285. package/package.json +1 -1
@@ -66,7 +66,6 @@ function getNextServiceId(name) {
66
66
  }
67
67
  class AnalyzerService {
68
68
  constructor(instanceName, serviceProvider, options) {
69
- var _a, _b, _c, _d, _e;
70
69
  this._typeStubTargetIsSingleFile = false;
71
70
  this._extendedConfigFileUris = [];
72
71
  this._requireTrackedFileUpdate = true;
@@ -76,7 +75,7 @@ class AnalyzerService {
76
75
  this._instanceName = instanceName;
77
76
  this._executionRootUri = uri_1.Uri.empty();
78
77
  this.options = options;
79
- this.options.serviceId = (_a = this.options.serviceId) !== null && _a !== void 0 ? _a : getNextServiceId(instanceName);
78
+ this.options.serviceId = this.options.serviceId ?? getNextServiceId(instanceName);
80
79
  this.options.console = options.console || new console_1.StandardConsole();
81
80
  // Create local copy of the given service provider.
82
81
  this._serviceProvider = serviceProvider.clone();
@@ -87,11 +86,11 @@ class AnalyzerService {
87
86
  if (this.options.fileSystem) {
88
87
  this._serviceProvider.add(serviceKeys_1.ServiceKeys.fs, this.options.fileSystem);
89
88
  }
90
- this.options.importResolverFactory = (_b = options.importResolverFactory) !== null && _b !== void 0 ? _b : AnalyzerService.createImportResolver;
91
- this.options.cancellationProvider = (_c = options.cancellationProvider) !== null && _c !== void 0 ? _c : new cancellationUtils_1.DefaultCancellationProvider();
92
- this.options.hostFactory = (_d = options.hostFactory) !== null && _d !== void 0 ? _d : (() => new host_1.NoAccessHost());
89
+ this.options.importResolverFactory = options.importResolverFactory ?? AnalyzerService.createImportResolver;
90
+ this.options.cancellationProvider = options.cancellationProvider ?? new cancellationUtils_1.DefaultCancellationProvider();
91
+ this.options.hostFactory = options.hostFactory ?? (() => new host_1.NoAccessHost());
93
92
  this.options.configOptions =
94
- (_e = options.configOptions) !== null && _e !== void 0 ? _e : new configOptions_1.ConfigOptions(uri_1.Uri.file(process.cwd(), this._serviceProvider));
93
+ options.configOptions ?? new configOptions_1.ConfigOptions(uri_1.Uri.file(process.cwd(), this._serviceProvider));
95
94
  const importResolver = this.options.importResolverFactory(this._serviceProvider, this.options.configOptions, this.options.hostFactory());
96
95
  this._backgroundAnalysisProgram =
97
96
  this.options.backgroundAnalysisProgramFactory !== undefined
@@ -124,7 +123,6 @@ class AnalyzerService {
124
123
  this._instanceName = instanceName;
125
124
  }
126
125
  clone(instanceName, serviceId, backgroundAnalysis, fileSystem) {
127
- var _a;
128
126
  const service = new AnalyzerService(instanceName, this._serviceProvider, {
129
127
  ...this.options,
130
128
  serviceId,
@@ -140,7 +138,7 @@ class AnalyzerService {
140
138
  for (const fileInfo of this.backgroundAnalysisProgram.program.getOpened()) {
141
139
  const version = fileInfo.sourceFile.getClientVersion();
142
140
  if (version !== undefined) {
143
- service.setFileOpened(fileInfo.sourceFile.getUri(), version, fileInfo.sourceFile.getOpenFileContents(), fileInfo.sourceFile.getIPythonMode(), (_a = fileInfo.chainedSourceFile) === null || _a === void 0 ? void 0 : _a.sourceFile.getUri());
141
+ service.setFileOpened(fileInfo.sourceFile.getUri(), version, fileInfo.sourceFile.getOpenFileContents(), fileInfo.sourceFile.getIPythonMode(), fileInfo.chainedSourceFile?.sourceFile.getUri());
144
142
  }
145
143
  }
146
144
  return service;
@@ -292,14 +290,12 @@ class AnalyzerService {
292
290
  return this._shouldHandleLibraryFileWatchChanges(uri, libSearchUris);
293
291
  }
294
292
  writeTypeStub(token) {
295
- var _a;
296
293
  const typingsSubdirUri = this._getTypeStubFolder();
297
- this._program.writeTypeStub((_a = this._typeStubTargetUri) !== null && _a !== void 0 ? _a : uri_1.Uri.empty(), this._typeStubTargetIsSingleFile, typingsSubdirUri, token);
294
+ this._program.writeTypeStub(this._typeStubTargetUri ?? uri_1.Uri.empty(), this._typeStubTargetIsSingleFile, typingsSubdirUri, token);
298
295
  }
299
296
  writeTypeStubInBackground(token) {
300
- var _a;
301
297
  const typingsSubdirUri = this._getTypeStubFolder();
302
- return this._backgroundAnalysisProgram.writeTypeStub((_a = this._typeStubTargetUri) !== null && _a !== void 0 ? _a : uri_1.Uri.empty(), this._typeStubTargetIsSingleFile, typingsSubdirUri, token);
298
+ return this._backgroundAnalysisProgram.writeTypeStub(this._typeStubTargetUri ?? uri_1.Uri.empty(), this._typeStubTargetIsSingleFile, typingsSubdirUri, token);
303
299
  }
304
300
  invalidateAndForceReanalysis(reason) {
305
301
  this._backgroundAnalysisProgram.invalidateAndForceReanalysis(reason);
@@ -318,12 +314,11 @@ class AnalyzerService {
318
314
  }
319
315
  }
320
316
  applyConfigOptions(host) {
321
- var _a, _b;
322
317
  // Allocate a new import resolver because the old one has information
323
318
  // cached based on the previous config options.
324
319
  const importResolver = this._importResolverFactory(this._serviceProvider, this._backgroundAnalysisProgram.configOptions, host);
325
320
  this._backgroundAnalysisProgram.setImportResolver(importResolver);
326
- if (((_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.fromLanguageServer) || this._configOptions.verboseOutput) {
321
+ if (this._commandLineOptions?.fromLanguageServer || this._configOptions.verboseOutput) {
327
322
  const logLevel = this._configOptions.verboseOutput ? console_1.LogLevel.Info : console_1.LogLevel.Log;
328
323
  const execEnvs = this._configOptions.getExecutionEnvironments();
329
324
  for (const execEnv of execEnvs) {
@@ -338,7 +333,7 @@ class AnalyzerService {
338
333
  (0, console_1.log)(this._console, logLevel, ` (none)`);
339
334
  }
340
335
  (0, console_1.log)(this._console, logLevel, ` Python version: ${pythonVersion_1.PythonVersion.toString(execEnv.pythonVersion)}`);
341
- (0, console_1.log)(this._console, logLevel, ` Python platform: ${(_b = execEnv.pythonPlatform) !== null && _b !== void 0 ? _b : 'All'}`);
336
+ (0, console_1.log)(this._console, logLevel, ` Python platform: ${execEnv.pythonPlatform ?? 'All'}`);
342
337
  (0, console_1.log)(this._console, logLevel, ` Search paths:`);
343
338
  const roots = importResolver.getImportRoots(execEnv, /* forLogging */ true);
344
339
  roots.forEach((path) => {
@@ -368,28 +363,23 @@ class AnalyzerService {
368
363
  return this._backgroundAnalysisProgram.configOptions;
369
364
  }
370
365
  get _watchForSourceChanges() {
371
- var _a;
372
- return !!((_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.languageServerSettings.watchForSourceChanges);
366
+ return !!this._commandLineOptions?.languageServerSettings.watchForSourceChanges;
373
367
  }
374
368
  get _watchForLibraryChanges() {
375
- var _a;
376
- return (!!((_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.languageServerSettings.watchForLibraryChanges) &&
369
+ return (!!this._commandLineOptions?.languageServerSettings.watchForLibraryChanges &&
377
370
  !!this.options.libraryReanalysisTimeProvider);
378
371
  }
379
372
  get _watchForConfigChanges() {
380
- var _a;
381
- return !!((_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.languageServerSettings.watchForConfigChanges);
373
+ return !!this._commandLineOptions?.languageServerSettings.watchForConfigChanges;
382
374
  }
383
375
  get _typeCheckingMode() {
384
- var _a;
385
- return (_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.configSettings.typeCheckingMode;
376
+ return this._commandLineOptions?.configSettings.typeCheckingMode;
386
377
  }
387
378
  get _verboseOutput() {
388
379
  return !!this._configOptions.verboseOutput;
389
380
  }
390
381
  get _typeStubTargetImportName() {
391
- var _a;
392
- return (_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.languageServerSettings.typeStubTargetImportName;
382
+ return this._commandLineOptions?.languageServerSettings.typeStubTargetImportName;
393
383
  }
394
384
  // Calculates the effective options based on the command-line options,
395
385
  // an optional config file, and default values.
@@ -462,7 +452,7 @@ class AnalyzerService {
462
452
  }
463
453
  const configOptions = new configOptions_1.ConfigOptions(projectRoot);
464
454
  // If we found a config file, load it and apply its settings.
465
- const configs = this._getExtendedConfigurations(configFilePath !== null && configFilePath !== void 0 ? configFilePath : pyprojectFilePath);
455
+ const configs = this._getExtendedConfigurations(configFilePath ?? pyprojectFilePath);
466
456
  if (configs && configs.length > 0) {
467
457
  // With a pyrightconfig.json set, we want the typeCheckingMode to always be standard
468
458
  // as that's what the Pyright CLI will expect. Command line options (if not a language server) and
@@ -474,7 +464,7 @@ class AnalyzerService {
474
464
  configOptions.initializeFromJson(config.configFileJsonObj, config.configFileDirUri, this.serviceProvider, host);
475
465
  }
476
466
  // Set the configFileSource since we have a config file.
477
- configOptions.configFileSource = configFilePath !== null && configFilePath !== void 0 ? configFilePath : pyprojectFilePath;
467
+ configOptions.configFileSource = configFilePath ?? pyprojectFilePath;
478
468
  // When not in language server mode, command line options override config file options.
479
469
  if (!commandLineOptions.fromLanguageServer) {
480
470
  this._applyCommandLineOverrides(configOptions, commandLineOptions.configSettings, projectRoot, false);
@@ -502,7 +492,6 @@ class AnalyzerService {
502
492
  return configOptions;
503
493
  }
504
494
  _ensureDefaultOptions(host, configOptions, projectRoot, executionRoot, commandLineOptions) {
505
- var _a, _b;
506
495
  const defaultExcludes = ['**/node_modules', '**/__pycache__', '**/.*'];
507
496
  // If no include paths were provided, assume that all files within
508
497
  // the project should be included.
@@ -522,7 +511,7 @@ class AnalyzerService {
522
511
  }
523
512
  }
524
513
  if (!configOptions.defaultExtraPaths) {
525
- configOptions.ensureDefaultExtraPaths(this.fs, (_a = commandLineOptions.configSettings.autoSearchPaths) !== null && _a !== void 0 ? _a : false, commandLineOptions.configSettings.extraPaths);
514
+ configOptions.ensureDefaultExtraPaths(this.fs, commandLineOptions.configSettings.autoSearchPaths ?? false, commandLineOptions.configSettings.extraPaths);
526
515
  }
527
516
  if (configOptions.defaultPythonPlatform === undefined) {
528
517
  configOptions.defaultPythonPlatform = commandLineOptions.configSettings.pythonPlatform;
@@ -566,7 +555,7 @@ class AnalyzerService {
566
555
  // venvPath without venv means it won't do anything while resolveImport.
567
556
  // so first, try to set venv from existing configOption if it is null. if both are null,
568
557
  // then, resolveImport won't consider venv
569
- configOptions.venv = (_b = configOptions.venv) !== null && _b !== void 0 ? _b : this._configOptions.venv;
558
+ configOptions.venv = configOptions.venv ?? this._configOptions.venv;
570
559
  if (configOptions.venv && configOptions.venvPath) {
571
560
  const fullVenvPath = configOptions.venvPath.resolvePaths(configOptions.venv);
572
561
  if (!this.fs.existsSync(fullVenvPath) || !(0, uriUtils_1.isDirectory)(this.fs, fullVenvPath)) {
@@ -639,17 +628,16 @@ class AnalyzerService {
639
628
  }
640
629
  }
641
630
  _applyCommandLineOverrides(configOptions, commandLineOptions, projectRoot, fromLanguageServer) {
642
- var _a, _b, _c;
643
631
  if (commandLineOptions.typeCheckingMode) {
644
632
  configOptions.initializeTypeCheckingMode(commandLineOptions.typeCheckingMode);
645
633
  }
646
634
  if (commandLineOptions.extraPaths) {
647
- configOptions.ensureDefaultExtraPaths(this.fs, (_a = commandLineOptions.autoSearchPaths) !== null && _a !== void 0 ? _a : false, commandLineOptions.extraPaths);
635
+ configOptions.ensureDefaultExtraPaths(this.fs, commandLineOptions.autoSearchPaths ?? false, commandLineOptions.extraPaths);
648
636
  }
649
637
  if (commandLineOptions.pythonVersion || commandLineOptions.pythonPlatform) {
650
- configOptions.defaultPythonVersion = (_b = commandLineOptions.pythonVersion) !== null && _b !== void 0 ? _b : configOptions.defaultPythonVersion;
638
+ configOptions.defaultPythonVersion = commandLineOptions.pythonVersion ?? configOptions.defaultPythonVersion;
651
639
  configOptions.defaultPythonPlatform =
652
- (_c = commandLineOptions.pythonPlatform) !== null && _c !== void 0 ? _c : configOptions.defaultPythonPlatform;
640
+ commandLineOptions.pythonPlatform ?? configOptions.defaultPythonPlatform;
653
641
  }
654
642
  if (commandLineOptions.pythonPath) {
655
643
  this._console.info(`Setting pythonPath for service "${this._instanceName}": ` + `"${commandLineOptions.pythonPath}"`);
@@ -762,8 +750,8 @@ class AnalyzerService {
762
750
  return configJsonObjs;
763
751
  }
764
752
  _getTypeStubFolder() {
765
- var _a;
766
- const stubPath = (_a = this._configOptions.stubPath) !== null && _a !== void 0 ? _a : this.fs.realCasePath(this._configOptions.projectRoot.resolvePaths(pathConsts_1.defaultStubsDirectory));
753
+ const stubPath = this._configOptions.stubPath ??
754
+ this.fs.realCasePath(this._configOptions.projectRoot.resolvePaths(pathConsts_1.defaultStubsDirectory));
767
755
  if (!this._typeStubTargetUri || !this._typeStubTargetImportName) {
768
756
  const errMsg = `Import '${this._typeStubTargetImportName}'` + ` could not be resolved`;
769
757
  this._console.error(errMsg);
@@ -1053,11 +1041,11 @@ class AnalyzerService {
1053
1041
  if (!uriUtils_1.FileSpec.isInPath(includeSpec.wildcardRoot, exclude)) {
1054
1042
  let foundFileSpec = false;
1055
1043
  const stat = (0, uriUtils_1.tryStat)(this.fs, includeSpec.wildcardRoot);
1056
- if (stat === null || stat === void 0 ? void 0 : stat.isFile()) {
1044
+ if (stat?.isFile()) {
1057
1045
  results.push(includeSpec.wildcardRoot);
1058
1046
  foundFileSpec = true;
1059
1047
  }
1060
- else if (stat === null || stat === void 0 ? void 0 : stat.isDirectory()) {
1048
+ else if (stat?.isDirectory()) {
1061
1049
  visitDirectory(includeSpec.wildcardRoot, includeSpec.regExp, includeSpec.hasDirectoryWildcard);
1062
1050
  foundFileSpec = true;
1063
1051
  }
@@ -1289,12 +1277,11 @@ class AnalyzerService {
1289
1277
  return true;
1290
1278
  }
1291
1279
  _clearLibraryReanalysisTimer() {
1292
- var _a, _b, _c;
1293
1280
  if (this._libraryReanalysisTimer) {
1294
1281
  clearTimeout(this._libraryReanalysisTimer);
1295
1282
  this._libraryReanalysisTimer = undefined;
1296
- const handled = (_a = this._backgroundAnalysisProgram) === null || _a === void 0 ? void 0 : _a.libraryUpdated();
1297
- (_c = (_b = this.options.libraryReanalysisTimeProvider) === null || _b === void 0 ? void 0 : _b.libraryUpdated) === null || _c === void 0 ? void 0 : _c.call(_b, handled);
1283
+ const handled = this._backgroundAnalysisProgram?.libraryUpdated();
1284
+ this.options.libraryReanalysisTimeProvider?.libraryUpdated?.(handled);
1298
1285
  }
1299
1286
  }
1300
1287
  _scheduleLibraryAnalysis(isChange) {
@@ -1304,7 +1291,7 @@ class AnalyzerService {
1304
1291
  }
1305
1292
  this._clearLibraryReanalysisTimer();
1306
1293
  const reanalysisTimeProvider = this.options.libraryReanalysisTimeProvider;
1307
- const backOffTimeInMS = reanalysisTimeProvider === null || reanalysisTimeProvider === void 0 ? void 0 : reanalysisTimeProvider();
1294
+ const backOffTimeInMS = reanalysisTimeProvider?.();
1308
1295
  if (!backOffTimeInMS) {
1309
1296
  // We don't support library reanalysis.
1310
1297
  return;
@@ -1315,7 +1302,6 @@ class AnalyzerService {
1315
1302
  // tend to happen in big batches when packages
1316
1303
  // are installed or uninstalled.
1317
1304
  this._libraryReanalysisTimer = setTimeout(() => {
1318
- var _a, _b;
1319
1305
  this._clearLibraryReanalysisTimer();
1320
1306
  // Invalidate import resolver, mark all files dirty unconditionally,
1321
1307
  // and reanalyze.
@@ -1324,7 +1310,7 @@ class AnalyzerService {
1324
1310
  : backgroundAnalysisProgram_1.InvalidatedReason.LibraryWatcherChanged);
1325
1311
  this._scheduleReanalysis(/* requireTrackedFileUpdate */ false);
1326
1312
  // No more pending changes.
1327
- (_b = (_a = reanalysisTimeProvider).libraryReanalysisStarted) === null || _b === void 0 ? void 0 : _b.call(_a);
1313
+ reanalysisTimeProvider.libraryReanalysisStarted?.();
1328
1314
  this._pendingLibraryChanges.changesOnly = true;
1329
1315
  }, backOffTimeInMS);
1330
1316
  }
@@ -1402,15 +1388,14 @@ class AnalyzerService {
1402
1388
  }
1403
1389
  }
1404
1390
  _scheduleReanalysis(requireTrackedFileUpdate) {
1405
- var _a, _b;
1406
- if (this._disposed || !((_a = this._commandLineOptions) === null || _a === void 0 ? void 0 : _a.languageServerSettings.enableAmbientAnalysis)) {
1391
+ if (this._disposed || !this._commandLineOptions?.languageServerSettings.enableAmbientAnalysis) {
1407
1392
  // already disposed
1408
1393
  return;
1409
1394
  }
1410
1395
  if (requireTrackedFileUpdate) {
1411
1396
  this._requireTrackedFileUpdate = true;
1412
1397
  }
1413
- (_b = this._backgroundAnalysisCancellationSource) === null || _b === void 0 ? void 0 : _b.cancel();
1398
+ this._backgroundAnalysisCancellationSource?.cancel();
1414
1399
  // Remove any existing analysis timer.
1415
1400
  this._clearReanalysisTimer();
1416
1401
  // How long has it been since the user interacted with the service?
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../src/analyzer/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../../src/analyzer/service.ts"],"names":[],"mappings":"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"}
@@ -119,7 +119,6 @@ class WriteableData {
119
119
  // Empty
120
120
  }
121
121
  debugPrint() {
122
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
123
122
  return `WritableData:
124
123
  diagnosticVersion=${this.diagnosticVersion},
125
124
  noCircularDependencyConfirmed=${this.noCircularDependencyConfirmed},
@@ -135,20 +134,20 @@ class WriteableData {
135
134
  lastFileContentLength=${this.lastFileContentLength},
136
135
  lastFileContentHash=${this.lastFileContentHash},
137
136
  typeIgnoreAll=${this.typeIgnoreAll},
138
- imports=${(_a = this.imports) === null || _a === void 0 ? void 0 : _a.length},
139
- builtinsImport=${(_b = this.builtinsImport) === null || _b === void 0 ? void 0 : _b.importName},
140
- circularDependencies=${(_c = this.circularDependencies) === null || _c === void 0 ? void 0 : _c.length},
141
- parseDiagnostics=${(_d = this.parseDiagnostics) === null || _d === void 0 ? void 0 : _d.length},
142
- commentDiagnostics=${(_e = this.commentDiagnostics) === null || _e === void 0 ? void 0 : _e.length},
143
- bindDiagnostics=${(_f = this.bindDiagnostics) === null || _f === void 0 ? void 0 : _f.length},
144
- checkerDiagnostics=${(_g = this.checkerDiagnostics) === null || _g === void 0 ? void 0 : _g.length},
145
- taskListDiagnostics=${(_h = this.taskListDiagnostics) === null || _h === void 0 ? void 0 : _h.length},
146
- accumulatedDiagnostics=${(_j = this.accumulatedDiagnostics) === null || _j === void 0 ? void 0 : _j.length},
147
- typeIgnoreLines=${(_k = this.typeIgnoreLines) === null || _k === void 0 ? void 0 : _k.size},
148
- pyrightIgnoreLines=${(_l = this.pyrightIgnoreLines) === null || _l === void 0 ? void 0 : _l.size},
137
+ imports=${this.imports?.length},
138
+ builtinsImport=${this.builtinsImport?.importName},
139
+ circularDependencies=${this.circularDependencies?.length},
140
+ parseDiagnostics=${this.parseDiagnostics?.length},
141
+ commentDiagnostics=${this.commentDiagnostics?.length},
142
+ bindDiagnostics=${this.bindDiagnostics?.length},
143
+ checkerDiagnostics=${this.checkerDiagnostics?.length},
144
+ taskListDiagnostics=${this.taskListDiagnostics?.length},
145
+ accumulatedDiagnostics=${this.accumulatedDiagnostics?.length},
146
+ typeIgnoreLines=${this.typeIgnoreLines?.size},
147
+ pyrightIgnoreLines=${this.pyrightIgnoreLines?.size},
149
148
  checkTime=${this.checkTime},
150
- clientDocumentContents=${(_m = this.clientDocumentContents) === null || _m === void 0 ? void 0 : _m.length},
151
- parseResults=${(_o = this.parserOutput) === null || _o === void 0 ? void 0 : _o.parseTree.length}`;
149
+ clientDocumentContents=${this.clientDocumentContents?.length},
150
+ parseResults=${this.parserOutput?.parseTree.length}`;
152
151
  }
153
152
  }
154
153
  class SourceFile {
@@ -192,8 +191,8 @@ class SourceFile {
192
191
  }
193
192
  }
194
193
  // 'FG' or 'BG' based on current thread.
195
- this._logTracker = logTracker !== null && logTracker !== void 0 ? logTracker : new logTracker_1.LogTracker(console, worker_threads_1.isMainThread ? 'FG' : 'BG');
196
- this._ipythonMode = ipythonMode !== null && ipythonMode !== void 0 ? ipythonMode : IPythonMode.None;
194
+ this._logTracker = logTracker ?? new logTracker_1.LogTracker(console, worker_threads_1.isMainThread ? 'FG' : 'BG');
195
+ this._ipythonMode = ipythonMode ?? IPythonMode.None;
197
196
  }
198
197
  getIPythonMode() {
199
198
  return this._ipythonMode;
@@ -406,14 +405,13 @@ class SourceFile {
406
405
  return this._writableData.isCheckingNeeded;
407
406
  }
408
407
  getParseResults() {
409
- var _a;
410
408
  if (this.isParseRequired()) {
411
409
  return undefined;
412
410
  }
413
411
  (0, debug_1.assert)(this._writableData.parserOutput !== undefined && this._writableData.parsedFileContents !== undefined);
414
412
  // If we've cached the tokenizer output, use the cached version.
415
413
  // Otherwise re-tokenize the contents on demand.
416
- const tokenizerOutput = (_a = this._writableData.tokenizerOutput) !== null && _a !== void 0 ? _a : this._tokenizeContents(this._writableData.parsedFileContents);
414
+ const tokenizerOutput = this._writableData.tokenizerOutput ?? this._tokenizeContents(this._writableData.parsedFileContents);
417
415
  return {
418
416
  parserOutput: this._writableData.parserOutput,
419
417
  tokenizerOutput,
@@ -468,7 +466,7 @@ class SourceFile {
468
466
  const startTime = timing_1.timingStats.readFileTime.totalTime;
469
467
  timing_1.timingStats.readFileTime.timeOperation(() => {
470
468
  // Read the file's contents.
471
- fileContents = content !== null && content !== void 0 ? content : this.getFileContent();
469
+ fileContents = content ?? this.getFileContent();
472
470
  if (fileContents === undefined) {
473
471
  throw new Error("Can't get file content");
474
472
  }
@@ -757,7 +755,7 @@ class SourceFile {
757
755
  if (pyrightIgnoreComment.rulesList.find((rule) => rule.text === diagRule)) {
758
756
  // Update the pyrightIgnoreLinesClone to remove this rule.
759
757
  const oldClone = pyrightIgnoreLinesClone.get(line);
760
- if (oldClone === null || oldClone === void 0 ? void 0 : oldClone.rulesList) {
758
+ if (oldClone?.rulesList) {
761
759
  const filteredRulesList = oldClone.rulesList.filter((rule) => rule.text !== diagRule);
762
760
  if (filteredRulesList.length === 0) {
763
761
  pyrightIgnoreLinesClone.delete(line);
@@ -1033,7 +1031,6 @@ class SourceFile {
1033
1031
  return (0, logTracker_1.getPathForLogging)(this.fileSystem, fileUri);
1034
1032
  }
1035
1033
  _parseFile(configOptions, fileUri, fileContents, ipythonMode, diagSink) {
1036
- var _a;
1037
1034
  // Use the configuration options to determine the environment zin which
1038
1035
  // this source file will be executed.
1039
1036
  const execEnvironment = configOptions.findExecEnvironment(fileUri);
@@ -1043,7 +1040,7 @@ class SourceFile {
1043
1040
  parseOptions.isStubFile = true;
1044
1041
  }
1045
1042
  parseOptions.pythonVersion = execEnvironment.pythonVersion;
1046
- parseOptions.skipFunctionAndClassBody = (_a = configOptions.indexGenerationMode) !== null && _a !== void 0 ? _a : false;
1043
+ parseOptions.skipFunctionAndClassBody = configOptions.indexGenerationMode ?? false;
1047
1044
  // Parse the token stream, building the abstract syntax tree.
1048
1045
  const parser = new parser_1.Parser();
1049
1046
  return parser.parseSourceFile(fileContents, parseOptions, diagSink);
@@ -1062,11 +1059,9 @@ class SourceFile {
1062
1059
  return output;
1063
1060
  }
1064
1061
  _fireFileDirtyEvent() {
1065
- var _a;
1066
- (_a = this.serviceProvider.tryGet(serviceKeys_1.ServiceKeys.stateMutationListeners)) === null || _a === void 0 ? void 0 : _a.forEach((l) => {
1067
- var _a;
1062
+ this.serviceProvider.tryGet(serviceKeys_1.ServiceKeys.stateMutationListeners)?.forEach((l) => {
1068
1063
  try {
1069
- (_a = l.onFileDirty) === null || _a === void 0 ? void 0 : _a.call(l, this._uri);
1064
+ l.onFileDirty?.(this._uri);
1070
1065
  }
1071
1066
  catch (ex) {
1072
1067
  const console = this.serviceProvider.tryGet(serviceKeys_1.ServiceKeys.console);