@zzzen/pyright-internal 1.2.0-dev.20260809 → 1.2.0-dev.20260823

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 (365) hide show
  1. package/dist/analyzer/analyzerNodeInfo.d.ts +119 -24
  2. package/dist/analyzer/analyzerNodeInfo.js +408 -89
  3. package/dist/analyzer/analyzerNodeInfo.js.map +1 -1
  4. package/dist/analyzer/binder.d.ts +6 -3
  5. package/dist/analyzer/binder.js +157 -70
  6. package/dist/analyzer/binder.js.map +1 -1
  7. package/dist/analyzer/checker.d.ts +5 -2
  8. package/dist/analyzer/checker.js +92 -34
  9. package/dist/analyzer/checker.js.map +1 -1
  10. package/dist/analyzer/codeFlowEngine.d.ts +2 -1
  11. package/dist/analyzer/codeFlowEngine.js +12 -10
  12. package/dist/analyzer/codeFlowEngine.js.map +1 -1
  13. package/dist/analyzer/codeFlowUtils.d.ts +2 -1
  14. package/dist/analyzer/codeFlowUtils.js +2 -3
  15. package/dist/analyzer/codeFlowUtils.js.map +1 -1
  16. package/dist/analyzer/constraintSolver.js +47 -7
  17. package/dist/analyzer/constraintSolver.js.map +1 -1
  18. package/dist/analyzer/constructors.js +18 -8
  19. package/dist/analyzer/constructors.js.map +1 -1
  20. package/dist/analyzer/dataClasses.d.ts +6 -4
  21. package/dist/analyzer/dataClasses.js +119 -75
  22. package/dist/analyzer/dataClasses.js.map +1 -1
  23. package/dist/analyzer/declarationUtils.d.ts +2 -1
  24. package/dist/analyzer/declarationUtils.js +2 -2
  25. package/dist/analyzer/declarationUtils.js.map +1 -1
  26. package/dist/analyzer/decorators.d.ts +5 -4
  27. package/dist/analyzer/decorators.js +38 -21
  28. package/dist/analyzer/decorators.js.map +1 -1
  29. package/dist/analyzer/enums.d.ts +5 -4
  30. package/dist/analyzer/enums.js +11 -10
  31. package/dist/analyzer/enums.js.map +1 -1
  32. package/dist/analyzer/importResolver.d.ts +1 -1
  33. package/dist/analyzer/importResolver.js +5 -3
  34. package/dist/analyzer/importResolver.js.map +1 -1
  35. package/dist/analyzer/importStatementUtils.d.ts +3 -1
  36. package/dist/analyzer/importStatementUtils.js +14 -7
  37. package/dist/analyzer/importStatementUtils.js.map +1 -1
  38. package/dist/analyzer/namedTuples.d.ts +2 -1
  39. package/dist/analyzer/namedTuples.js +3 -4
  40. package/dist/analyzer/namedTuples.js.map +1 -1
  41. package/dist/analyzer/operations.d.ts +3 -2
  42. package/dist/analyzer/operations.js +8 -8
  43. package/dist/analyzer/operations.js.map +1 -1
  44. package/dist/analyzer/packageTypeVerifier.js +2 -2
  45. package/dist/analyzer/packageTypeVerifier.js.map +1 -1
  46. package/dist/analyzer/parseTreeUtils.d.ts +13 -11
  47. package/dist/analyzer/parseTreeUtils.js +62 -36
  48. package/dist/analyzer/parseTreeUtils.js.map +1 -1
  49. package/dist/analyzer/parseTreeWalker.d.ts +7 -2
  50. package/dist/analyzer/parseTreeWalker.js +29 -175
  51. package/dist/analyzer/parseTreeWalker.js.map +1 -1
  52. package/dist/analyzer/patternMatching.d.ts +4 -3
  53. package/dist/analyzer/patternMatching.js +47 -43
  54. package/dist/analyzer/patternMatching.js.map +1 -1
  55. package/dist/analyzer/program.d.ts +12 -0
  56. package/dist/analyzer/program.js +235 -29
  57. package/dist/analyzer/program.js.map +1 -1
  58. package/dist/analyzer/properties.d.ts +4 -3
  59. package/dist/analyzer/properties.js +7 -8
  60. package/dist/analyzer/properties.js.map +1 -1
  61. package/dist/analyzer/protocols.js +14 -2
  62. package/dist/analyzer/protocols.js.map +1 -1
  63. package/dist/analyzer/scope.d.ts +3 -0
  64. package/dist/analyzer/scope.js +10 -0
  65. package/dist/analyzer/scope.js.map +1 -1
  66. package/dist/analyzer/scopeUtils.d.ts +4 -3
  67. package/dist/analyzer/scopeUtils.js +8 -8
  68. package/dist/analyzer/scopeUtils.js.map +1 -1
  69. package/dist/analyzer/sentinel.d.ts +2 -1
  70. package/dist/analyzer/sentinel.js +2 -3
  71. package/dist/analyzer/sentinel.js.map +1 -1
  72. package/dist/analyzer/service.js +28 -10
  73. package/dist/analyzer/service.js.map +1 -1
  74. package/dist/analyzer/sourceEnumerator.d.ts +5 -0
  75. package/dist/analyzer/sourceEnumerator.js +57 -3
  76. package/dist/analyzer/sourceEnumerator.js.map +1 -1
  77. package/dist/analyzer/sourceFile.d.ts +12 -6
  78. package/dist/analyzer/sourceFile.js +73 -50
  79. package/dist/analyzer/sourceFile.js.map +1 -1
  80. package/dist/analyzer/sourceFileInfoUtils.d.ts +1 -0
  81. package/dist/analyzer/sourceFileInfoUtils.js +8 -0
  82. package/dist/analyzer/sourceFileInfoUtils.js.map +1 -1
  83. package/dist/analyzer/sourceMapper.d.ts +4 -1
  84. package/dist/analyzer/sourceMapper.js +14 -8
  85. package/dist/analyzer/sourceMapper.js.map +1 -1
  86. package/dist/analyzer/symbol.d.ts +4 -1
  87. package/dist/analyzer/symbol.js +8 -0
  88. package/dist/analyzer/symbol.js.map +1 -1
  89. package/dist/analyzer/testWalker.js +2 -1
  90. package/dist/analyzer/testWalker.js.map +1 -1
  91. package/dist/analyzer/tracePrinter.d.ts +2 -1
  92. package/dist/analyzer/tracePrinter.js +2 -2
  93. package/dist/analyzer/tracePrinter.js.map +1 -1
  94. package/dist/analyzer/tuples.d.ts +3 -2
  95. package/dist/analyzer/tuples.js +5 -5
  96. package/dist/analyzer/tuples.js.map +1 -1
  97. package/dist/analyzer/typeCacheUtils.d.ts +6 -2
  98. package/dist/analyzer/typeCacheUtils.js +16 -37
  99. package/dist/analyzer/typeCacheUtils.js.map +1 -1
  100. package/dist/analyzer/typeDocStringUtils.d.ts +5 -7
  101. package/dist/analyzer/typeDocStringUtils.js +229 -132
  102. package/dist/analyzer/typeDocStringUtils.js.map +1 -1
  103. package/dist/analyzer/typeEvaluator.d.ts +2 -0
  104. package/dist/analyzer/typeEvaluator.js +1280 -302
  105. package/dist/analyzer/typeEvaluator.js.map +1 -1
  106. package/dist/analyzer/typeEvaluatorTypes.d.ts +2 -0
  107. package/dist/analyzer/typeEvaluatorTypes.js.map +1 -1
  108. package/dist/analyzer/typeGuards.d.ts +3 -2
  109. package/dist/analyzer/typeGuards.js +37 -33
  110. package/dist/analyzer/typeGuards.js.map +1 -1
  111. package/dist/analyzer/typeStubWriter.js +12 -9
  112. package/dist/analyzer/typeStubWriter.js.map +1 -1
  113. package/dist/analyzer/typeUtils.js +3 -1
  114. package/dist/analyzer/typeUtils.js.map +1 -1
  115. package/dist/analyzer/typedDicts.d.ts +4 -3
  116. package/dist/analyzer/typedDicts.js +15 -14
  117. package/dist/analyzer/typedDicts.js.map +1 -1
  118. package/dist/analyzer/types.d.ts +11 -1
  119. package/dist/analyzer/types.js +48 -0
  120. package/dist/analyzer/types.js.map +1 -1
  121. package/dist/commands/dumpFileDebugInfoCommand.js +1 -1
  122. package/dist/commands/dumpFileDebugInfoCommand.js.map +1 -1
  123. package/dist/common/collectionUtils.js +15 -6
  124. package/dist/common/collectionUtils.js.map +1 -1
  125. package/dist/common/commandLineOptions.d.ts +1 -0
  126. package/dist/common/commandLineOptions.js.map +1 -1
  127. package/dist/common/configOptions.d.ts +4 -1
  128. package/dist/common/configOptions.js +68 -12
  129. package/dist/common/configOptions.js.map +1 -1
  130. package/dist/common/envVarUtils.d.ts +1 -0
  131. package/dist/common/envVarUtils.js +41 -10
  132. package/dist/common/envVarUtils.js.map +1 -1
  133. package/dist/common/extensibility.d.ts +3 -1
  134. package/dist/common/extensibility.js.map +1 -1
  135. package/dist/common/extraPathGlob.d.ts +12 -0
  136. package/dist/common/extraPathGlob.js +315 -0
  137. package/dist/common/extraPathGlob.js.map +1 -0
  138. package/dist/common/host.d.ts +2 -0
  139. package/dist/common/host.js.map +1 -1
  140. package/dist/common/languageServerInterface.d.ts +2 -1
  141. package/dist/common/languageServerInterface.js.map +1 -1
  142. package/dist/common/pathConsts.d.ts +1 -0
  143. package/dist/common/pathConsts.js +11 -1
  144. package/dist/common/pathConsts.js.map +1 -1
  145. package/dist/common/processUtils.d.ts +4 -2
  146. package/dist/common/processUtils.js +3 -0
  147. package/dist/common/processUtils.js.map +1 -1
  148. package/dist/common/stringUtils.d.ts +6 -0
  149. package/dist/common/stringUtils.js +87 -5
  150. package/dist/common/stringUtils.js.map +1 -1
  151. package/dist/common/textEditTracker.d.ts +3 -1
  152. package/dist/common/textEditTracker.js +8 -6
  153. package/dist/common/textEditTracker.js.map +1 -1
  154. package/dist/common/textRangeCollection.d.ts +1 -0
  155. package/dist/common/textRangeCollection.js +32 -1
  156. package/dist/common/textRangeCollection.js.map +1 -1
  157. package/dist/common/uri/uriUtils.d.ts +3 -0
  158. package/dist/common/uri/uriUtils.js +65 -15
  159. package/dist/common/uri/uriUtils.js.map +1 -1
  160. package/dist/fileSystemMapping.d.ts +10 -0
  161. package/dist/fileSystemMapping.js +176 -0
  162. package/dist/fileSystemMapping.js.map +1 -0
  163. package/dist/languageService/analyzerServiceExecutor.js +2 -1
  164. package/dist/languageService/analyzerServiceExecutor.js.map +1 -1
  165. package/dist/languageService/autoImporter.d.ts +1 -0
  166. package/dist/languageService/autoImporter.js +32 -5
  167. package/dist/languageService/autoImporter.js.map +1 -1
  168. package/dist/languageService/callHierarchyProvider.d.ts +7 -0
  169. package/dist/languageService/callHierarchyProvider.js +97 -11
  170. package/dist/languageService/callHierarchyProvider.js.map +1 -1
  171. package/dist/languageService/completionProvider.d.ts +30 -8
  172. package/dist/languageService/completionProvider.js +298 -93
  173. package/dist/languageService/completionProvider.js.map +1 -1
  174. package/dist/languageService/definitionProvider.js +7 -6
  175. package/dist/languageService/definitionProvider.js.map +1 -1
  176. package/dist/languageService/documentHighlightProvider.js +2 -1
  177. package/dist/languageService/documentHighlightProvider.js.map +1 -1
  178. package/dist/languageService/documentSymbolCollector.d.ts +3 -1
  179. package/dist/languageService/documentSymbolCollector.js +78 -14
  180. package/dist/languageService/documentSymbolCollector.js.map +1 -1
  181. package/dist/languageService/documentSymbolProvider.js +3 -2
  182. package/dist/languageService/documentSymbolProvider.js.map +1 -1
  183. package/dist/languageService/fileWatcherDynamicFeature.js +28 -1
  184. package/dist/languageService/fileWatcherDynamicFeature.js.map +1 -1
  185. package/dist/languageService/hoverProvider.d.ts +2 -1
  186. package/dist/languageService/hoverProvider.js +48 -16
  187. package/dist/languageService/hoverProvider.js.map +1 -1
  188. package/dist/languageService/importSorter.d.ts +3 -1
  189. package/dist/languageService/importSorter.js +4 -2
  190. package/dist/languageService/importSorter.js.map +1 -1
  191. package/dist/languageService/importStatementCandidates.js +4 -2
  192. package/dist/languageService/importStatementCandidates.js.map +1 -1
  193. package/dist/languageService/quickActions.js +2 -1
  194. package/dist/languageService/quickActions.js.map +1 -1
  195. package/dist/languageService/referencesProvider.js +12 -5
  196. package/dist/languageService/referencesProvider.js.map +1 -1
  197. package/dist/languageService/signatureHelpProvider.d.ts +3 -0
  198. package/dist/languageService/signatureHelpProvider.js +56 -18
  199. package/dist/languageService/signatureHelpProvider.js.map +1 -1
  200. package/dist/languageService/symbolIndexer.d.ts +2 -1
  201. package/dist/languageService/symbolIndexer.js +7 -7
  202. package/dist/languageService/symbolIndexer.js.map +1 -1
  203. package/dist/languageService/tooltipUtils.d.ts +1 -1
  204. package/dist/languageService/tooltipUtils.js +103 -35
  205. package/dist/languageService/tooltipUtils.js.map +1 -1
  206. package/dist/languageService/workspaceSymbolProvider.js +3 -2
  207. package/dist/languageService/workspaceSymbolProvider.js.map +1 -1
  208. package/dist/localization/localize.d.ts +12 -0
  209. package/dist/localization/localize.js +14 -0
  210. package/dist/localization/localize.js.map +1 -1
  211. package/dist/localization/package.nls.cs.json +11 -0
  212. package/dist/localization/package.nls.de.json +11 -0
  213. package/dist/localization/package.nls.en-us.json +18 -0
  214. package/dist/localization/package.nls.es.json +11 -0
  215. package/dist/localization/package.nls.fr.json +11 -0
  216. package/dist/localization/package.nls.it.json +11 -0
  217. package/dist/localization/package.nls.ja.json +11 -0
  218. package/dist/localization/package.nls.ko.json +11 -0
  219. package/dist/localization/package.nls.pl.json +11 -0
  220. package/dist/localization/package.nls.pt-br.json +11 -0
  221. package/dist/localization/package.nls.qps-ploc.json +11 -0
  222. package/dist/localization/package.nls.ru.json +11 -0
  223. package/dist/localization/package.nls.tr.json +11 -0
  224. package/dist/localization/package.nls.zh-cn.json +12 -1
  225. package/dist/localization/package.nls.zh-tw.json +13 -2
  226. package/dist/parser/parseNodes.d.ts +85 -80
  227. package/dist/parser/parseNodes.js +182 -159
  228. package/dist/parser/parseNodes.js.map +1 -1
  229. package/dist/parser/parseTreeUtils.d.ts +3 -0
  230. package/dist/parser/parseTreeUtils.js +209 -0
  231. package/dist/parser/parseTreeUtils.js.map +1 -0
  232. package/dist/parser/parser.d.ts +16 -6
  233. package/dist/parser/parser.js +210 -144
  234. package/dist/parser/parser.js.map +1 -1
  235. package/dist/parser/stringAnnotationInfo.d.ts +16 -0
  236. package/dist/parser/stringAnnotationInfo.js +26 -0
  237. package/dist/parser/stringAnnotationInfo.js.map +1 -0
  238. package/dist/readonlyAugmentedFileSystem.d.ts +2 -9
  239. package/dist/readonlyAugmentedFileSystem.js +17 -144
  240. package/dist/readonlyAugmentedFileSystem.js.map +1 -1
  241. package/dist/server.js +2 -2
  242. package/dist/server.js.map +1 -1
  243. package/dist/tests/analyzerNodeInfo.test.d.ts +1 -0
  244. package/dist/tests/analyzerNodeInfo.test.js +113 -0
  245. package/dist/tests/analyzerNodeInfo.test.js.map +1 -0
  246. package/dist/tests/collectionUtils.test.js +46 -0
  247. package/dist/tests/collectionUtils.test.js.map +1 -1
  248. package/dist/tests/completions.test.js +34 -0
  249. package/dist/tests/completions.test.js.map +1 -1
  250. package/dist/tests/config.test.js +131 -6
  251. package/dist/tests/config.test.js.map +1 -1
  252. package/dist/tests/extraPathGlob.test.d.ts +1 -0
  253. package/dist/tests/extraPathGlob.test.js +434 -0
  254. package/dist/tests/extraPathGlob.test.js.map +1 -0
  255. package/dist/tests/fileSystemMapping.test.d.ts +1 -0
  256. package/dist/tests/fileSystemMapping.test.js +458 -0
  257. package/dist/tests/fileSystemMapping.test.js.map +1 -0
  258. package/dist/tests/fourslash/completions.call.typedDict.fourslash.js +23 -0
  259. package/dist/tests/fourslash/completions.call.typedDict.fourslash.js.map +1 -1
  260. package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.js +14 -0
  261. package/dist/tests/fourslash/completions.call.typedDict.list.fourslash.js.map +1 -1
  262. package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.js +7 -0
  263. package/dist/tests/fourslash/completions.call.typedDict.states.fourslash.js.map +1 -1
  264. package/dist/tests/fourslash/completions.callSite.isinstanceNarrowing.fourslash.d.ts +1 -0
  265. package/dist/tests/fourslash/completions.callSite.isinstanceNarrowing.fourslash.js +41 -0
  266. package/dist/tests/fourslash/completions.callSite.isinstanceNarrowing.fourslash.js.map +1 -0
  267. package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.js +2 -0
  268. package/dist/tests/fourslash/completions.dictionary.keys.literalTypes.fourslash.js.map +1 -1
  269. package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.js +5 -0
  270. package/dist/tests/fourslash/completions.fstring.stringLiteral.fourslash.js.map +1 -1
  271. package/dist/tests/fourslash/completions.stringLiteral.fourslash.js +4 -0
  272. package/dist/tests/fourslash/completions.stringLiteral.fourslash.js.map +1 -1
  273. package/dist/tests/fourslash/findallreferences.protocolMemberVariable.fourslash.d.ts +1 -0
  274. package/dist/tests/fourslash/findallreferences.protocolMemberVariable.fourslash.js +48 -0
  275. package/dist/tests/fourslash/findallreferences.protocolMemberVariable.fourslash.js.map +1 -0
  276. package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js +8 -2
  277. package/dist/tests/fourslash/hover.inherited.docFromSrc.fourslash.js.map +1 -1
  278. package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js +5 -2
  279. package/dist/tests/fourslash/hover.inherited.docFromStub.fourslash.js.map +1 -1
  280. package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.js +2 -2
  281. package/dist/tests/fourslash/signature.docstrings.overloaded.fourslash.js.map +1 -1
  282. package/dist/tests/harness/fourslash/testState.js +1 -1
  283. package/dist/tests/harness/fourslash/testState.js.map +1 -1
  284. package/dist/tests/hoverProvider.test.js +38 -0
  285. package/dist/tests/hoverProvider.test.js.map +1 -1
  286. package/dist/tests/importStatementUtils.test.js +6 -3
  287. package/dist/tests/importStatementUtils.test.js.map +1 -1
  288. package/dist/tests/ipythonMode.test.js +38 -0
  289. package/dist/tests/ipythonMode.test.js.map +1 -1
  290. package/dist/tests/parseTreeUtils.test.js +88 -0
  291. package/dist/tests/parseTreeUtils.test.js.map +1 -1
  292. package/dist/tests/parser.test.js +60 -3
  293. package/dist/tests/parser.test.js.map +1 -1
  294. package/dist/tests/positionUtils.test.js +23 -0
  295. package/dist/tests/positionUtils.test.js.map +1 -1
  296. package/dist/tests/pyrightFileSystem.test.js +41 -0
  297. package/dist/tests/pyrightFileSystem.test.js.map +1 -1
  298. package/dist/tests/service.test.js +77 -0
  299. package/dist/tests/service.test.js.map +1 -1
  300. package/dist/tests/sourceEnumeratorSymlink.test.d.ts +1 -0
  301. package/dist/tests/sourceEnumeratorSymlink.test.js +203 -0
  302. package/dist/tests/sourceEnumeratorSymlink.test.js.map +1 -0
  303. package/dist/tests/stringUtils.test.js +84 -0
  304. package/dist/tests/stringUtils.test.js.map +1 -1
  305. package/dist/tests/symlinkAliasInvalidation.test.d.ts +1 -0
  306. package/dist/tests/symlinkAliasInvalidation.test.js +471 -0
  307. package/dist/tests/symlinkAliasInvalidation.test.js.map +1 -0
  308. package/dist/tests/testUtils.d.ts +2 -0
  309. package/dist/tests/testUtils.js +7 -1
  310. package/dist/tests/testUtils.js.map +1 -1
  311. package/dist/tests/textEditUtil.test.js +2 -2
  312. package/dist/tests/textEditUtil.test.js.map +1 -1
  313. package/dist/tests/textRangeCollection.test.d.ts +1 -0
  314. package/dist/tests/textRangeCollection.test.js +137 -0
  315. package/dist/tests/textRangeCollection.test.js.map +1 -0
  316. package/dist/tests/typeCacheUtils.test.d.ts +1 -0
  317. package/dist/tests/typeCacheUtils.test.js +69 -0
  318. package/dist/tests/typeCacheUtils.test.js.map +1 -0
  319. package/dist/tests/typeEvaluator1.test.js +24 -3
  320. package/dist/tests/typeEvaluator1.test.js.map +1 -1
  321. package/dist/tests/typeEvaluator3.test.js +8 -0
  322. package/dist/tests/typeEvaluator3.test.js.map +1 -1
  323. package/dist/tests/typeEvaluator4.test.js +4 -0
  324. package/dist/tests/typeEvaluator4.test.js.map +1 -1
  325. package/dist/tests/typeEvaluator5.test.js +12 -0
  326. package/dist/tests/typeEvaluator5.test.js.map +1 -1
  327. package/dist/tests/typeEvaluator6.test.js +33 -1
  328. package/dist/tests/typeEvaluator6.test.js.map +1 -1
  329. package/dist/tests/typeEvaluator7.test.js +29 -0
  330. package/dist/tests/typeEvaluator7.test.js.map +1 -1
  331. package/dist/tests/typeEvaluator8.test.js +318 -4
  332. package/dist/tests/typeEvaluator8.test.js.map +1 -1
  333. package/dist/tests/typeServer/typeCache.test.d.ts +1 -0
  334. package/dist/tests/typeServer/typeCache.test.js +69 -0
  335. package/dist/tests/typeServer/typeCache.test.js.map +1 -0
  336. package/dist/tests/typeServer/typeServer.virtualFileRedirect.test.js +18 -0
  337. package/dist/tests/typeServer/typeServer.virtualFileRedirect.test.js.map +1 -1
  338. package/dist/tests/types.test.d.ts +1 -0
  339. package/dist/{analyzer/parseTreeCleaner.js → tests/types.test.js} +23 -25
  340. package/dist/tests/types.test.js.map +1 -0
  341. package/dist/tests/uri.test.js +51 -0
  342. package/dist/tests/uri.test.js.map +1 -1
  343. package/dist/typeServer/notebookDocumentHandler.d.ts +9 -2
  344. package/dist/typeServer/notebookDocumentHandler.js +16 -6
  345. package/dist/typeServer/notebookDocumentHandler.js.map +1 -1
  346. package/dist/typeServer/programWrapper.d.ts +1 -0
  347. package/dist/typeServer/programWrapper.js +28 -15
  348. package/dist/typeServer/programWrapper.js.map +1 -1
  349. package/dist/typeServer/protocol/tspSupplemental.d.ts +1 -1
  350. package/dist/typeServer/protocol/tspSupplemental.js +2 -2
  351. package/dist/typeServer/server.d.ts +13 -2
  352. package/dist/typeServer/server.js +36 -23
  353. package/dist/typeServer/server.js.map +1 -1
  354. package/dist/typeServer/typeCache.d.ts +8 -4
  355. package/dist/typeServer/typeCache.js +33 -5
  356. package/dist/typeServer/typeCache.js.map +1 -1
  357. package/dist/typeServer/typeEvalUtils.d.ts +2 -1
  358. package/dist/typeServer/typeEvalUtils.js +7 -3
  359. package/dist/typeServer/typeEvalUtils.js.map +1 -1
  360. package/dist/typeServer/typeServerFileSystem.d.ts +10 -9
  361. package/dist/typeServer/typeServerFileSystem.js +16 -12
  362. package/dist/typeServer/typeServerFileSystem.js.map +1 -1
  363. package/package.json +7 -5
  364. package/dist/analyzer/parseTreeCleaner.d.ts +0 -8
  365. package/dist/analyzer/parseTreeCleaner.js.map +0 -1
@@ -457,6 +457,44 @@ test('unused expression is error if within another statement', async () => {
457
457
  `;
458
458
  verifyAnalysisDiagnosticCount(code, 1, diagnosticRules_1.DiagnosticRule.reportUnusedExpression);
459
459
  });
460
+ test('magic as only statement in a suite body is not a parse error', () => {
461
+ const code = `
462
+ // @filename: test.py
463
+ // @ipythonMode: true
464
+ //// def foo():
465
+ //// %cd test[|/*marker*/|]
466
+ `;
467
+ verifyAnalysisDiagnosticCount(code, 0);
468
+ });
469
+ test('magic as first line of an if-suite is not a parse error', () => {
470
+ const code = `
471
+ // @filename: test.py
472
+ // @ipythonMode: true
473
+ //// if True:
474
+ //// %pip install matplotlib[|/*marker*/|]
475
+ `;
476
+ verifyAnalysisDiagnosticCount(code, 0);
477
+ });
478
+ test('magic as first line of a nested suite body is not a parse error', () => {
479
+ const code = `
480
+ // @filename: test.py
481
+ // @ipythonMode: true
482
+ //// def foo():
483
+ //// if True:
484
+ //// %cd test[|/*marker*/|]
485
+ `;
486
+ verifyAnalysisDiagnosticCount(code, 0);
487
+ });
488
+ test('shell escape as first line of a suite body followed by a statement is not a parse error', () => {
489
+ const code = `
490
+ // @filename: test.py
491
+ // @ipythonMode: true
492
+ //// def foo():
493
+ //// !echo hi
494
+ //// pass[|/*marker*/|]
495
+ `;
496
+ verifyAnalysisDiagnosticCount(code, 0);
497
+ });
460
498
  function verifyAnalysisDiagnosticCount(code, expectedCount, expectedRule) {
461
499
  const state = (0, testState_1.parseAndGetTestState)(code).state;
462
500
  state.analyze();
@@ -1 +1 @@
1
- {"version":3,"file":"ipythonMode.test.js","sourceRoot":"","sources":["../../../../../src/tests/ipythonMode.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ipythonMode.test.js","sourceRoot":"","sources":["../../../../../src/tests/ipythonMode.test.ts"],"names":[],"mappings":"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"}
@@ -6,11 +6,45 @@
6
6
  *
7
7
  * Unit tests for parseTreeUtils module.
8
8
  */
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
24
+ });
25
+ var __importStar = (this && this.__importStar) || (function () {
26
+ var ownKeys = function(o) {
27
+ ownKeys = Object.getOwnPropertyNames || function (o) {
28
+ var ar = [];
29
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
30
+ return ar;
31
+ };
32
+ return ownKeys(o);
33
+ };
34
+ return function (mod) {
35
+ if (mod && mod.__esModule) return mod;
36
+ var result = {};
37
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
38
+ __setModuleDefault(result, mod);
39
+ return result;
40
+ };
41
+ })();
9
42
  var __importDefault = (this && this.__importDefault) || function (mod) {
10
43
  return (mod && mod.__esModule) ? mod : { "default": mod };
11
44
  };
12
45
  Object.defineProperty(exports, "__esModule", { value: true });
13
46
  const assert_1 = __importDefault(require("assert"));
47
+ const AnalyzerNodeInfo = __importStar(require("../analyzer/analyzerNodeInfo"));
14
48
  const parseTreeUtils_1 = require("../analyzer/parseTreeUtils");
15
49
  const textRange_1 = require("../common/textRange");
16
50
  const parseNodes_1 = require("../parser/parseNodes");
@@ -63,6 +97,36 @@ test('getFirstAncestorOrSelfOfKind', () => {
63
97
  (0, assert_1.default)(node.start === result.pos);
64
98
  (0, assert_1.default)(textRange_1.TextRange.getEnd(node) === result.end);
65
99
  });
100
+ test('isWithinTypeAnnotation requires an actual quoted-string association', () => {
101
+ const code = `
102
+ //// from typing import TypedDict
103
+ ////
104
+ //// class Data:
105
+ //// pass
106
+ ////
107
+ //// unquoted: /*unquoted*/Data
108
+ //// quoted: "/*quoted*/Data"
109
+ //// td: TypedDict[{"/*key*/field": "/*value*/int"}]
110
+ `;
111
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
112
+ const unquotedNode = (0, testState_1.getNodeAtMarker)(state, 'unquoted');
113
+ assert_1.default.strictEqual(unquotedNode.nodeType, 38 /* ParseNodeType.Name */);
114
+ assert_1.default.strictEqual((0, parseTreeUtils_1.isWithinTypeAnnotation)(unquotedNode, /* requireQuotedAnnotation */ true), false);
115
+ const quotedStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'quoted'), 48 /* ParseNodeType.StringList */);
116
+ assert_1.default.ok(quotedStringList);
117
+ const quotedAnnotation = (0, parseNodes_1.getParserStringAnnotation)(quotedStringList);
118
+ assert_1.default.ok(quotedAnnotation);
119
+ assert_1.default.strictEqual((0, parseTreeUtils_1.isWithinTypeAnnotation)(quotedAnnotation, /* requireQuotedAnnotation */ true), true);
120
+ const keyStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'key'), 48 /* ParseNodeType.StringList */);
121
+ assert_1.default.ok(keyStringList);
122
+ assert_1.default.strictEqual((0, parseNodes_1.getParserStringAnnotation)(keyStringList), undefined);
123
+ assert_1.default.strictEqual((0, parseTreeUtils_1.isWithinTypeAnnotation)(keyStringList, /* requireQuotedAnnotation */ true), false);
124
+ const valueStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'value'), 48 /* ParseNodeType.StringList */);
125
+ assert_1.default.ok(valueStringList);
126
+ const valueAnnotation = (0, parseNodes_1.getParserStringAnnotation)(valueStringList);
127
+ assert_1.default.ok(valueAnnotation);
128
+ assert_1.default.strictEqual((0, parseTreeUtils_1.isWithinTypeAnnotation)(valueAnnotation, /* requireQuotedAnnotation */ true), true);
129
+ });
66
130
  test('getDottedNameWithGivenNodeAsLastName', () => {
67
131
  const code = `
68
132
  //// [|/*result1*/[|/*marker1*/a|]|]
@@ -259,6 +323,30 @@ test('printExpression', () => {
259
323
  assert_1.default.strictEqual((0, parseTreeUtils_1.printExpression)(node), expected);
260
324
  }
261
325
  });
326
+ test('printExpression forward declarations use parser annotations but not owner annotations', () => {
327
+ const code = `
328
+ //// from typing import cast
329
+ ////
330
+ //// class Data:
331
+ //// pass
332
+ ////
333
+ //// parser_tier: "/*parser*/list[Data]"
334
+ //// owner_tier = cast("/*owner*/Data", object())
335
+ `;
336
+ const state = (0, testState_1.parseAndGetTestState)(code).state;
337
+ while (state.program.analyze()) {
338
+ // Continue until analysis completes and the cast annotation is parsed lazily.
339
+ }
340
+ const parserStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'parser'), 48 /* ParseNodeType.StringList */);
341
+ assert_1.default.ok(parserStringList);
342
+ assert_1.default.ok((0, parseNodes_1.getParserStringAnnotation)(parserStringList));
343
+ assert_1.default.strictEqual((0, parseTreeUtils_1.printExpression)(parserStringList, 1 /* PrintExpressionFlags.ForwardDeclarations */), 'list[Data]');
344
+ const ownerStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'owner'), 48 /* ParseNodeType.StringList */);
345
+ assert_1.default.ok(ownerStringList);
346
+ assert_1.default.strictEqual((0, parseNodes_1.getParserStringAnnotation)(ownerStringList), undefined);
347
+ assert_1.default.ok(AnalyzerNodeInfo.getStringAnnotation(ownerStringList, state.program.analyzerNodeInfoContext));
348
+ assert_1.default.strictEqual((0, parseTreeUtils_1.printExpression)(ownerStringList, 1 /* PrintExpressionFlags.ForwardDeclarations */), '"Data"');
349
+ });
262
350
  test('findNodeByOffset', () => {
263
351
  const code = `
264
352
  //// class A:
@@ -1 +1 @@
1
- {"version":3,"file":"parseTreeUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/parseTreeUtils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseTreeUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/parseTreeUtils.test.ts"],"names":[],"mappings":"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"}
@@ -47,9 +47,11 @@ const parseTreeUtils_1 = require("../analyzer/parseTreeUtils");
47
47
  const configOptions_1 = require("../common/configOptions");
48
48
  const diagnosticSink_1 = require("../common/diagnosticSink");
49
49
  const pythonVersion_1 = require("../common/pythonVersion");
50
+ const stringUtils_1 = require("../common/stringUtils");
50
51
  const textRange_1 = require("../common/textRange");
51
52
  const uriUtils_1 = require("../common/uri/uriUtils");
52
53
  const localize_1 = require("../localization/localize");
54
+ const parseNodes_1 = require("../parser/parseNodes");
53
55
  const parser_1 = require("../parser/parser");
54
56
  const testState_1 = require("./harness/fourslash/testState");
55
57
  const TestUtils = __importStar(require("./testUtils"));
@@ -59,6 +61,19 @@ test('Empty', () => {
59
61
  assert.equal(diagSink.fetchAndClear().length, 0);
60
62
  assert.equal(parserOutput.parseTree.d.statements.length, 0);
61
63
  });
64
+ test('Parser uses a precomputed content fingerprint when provided', () => {
65
+ const parser = new parser_1.Parser();
66
+ const fingerprint = (0, stringUtils_1.getStringFingerprint)('precomputed');
67
+ const results = parser.parseSourceFile('', new parser_1.ParseOptions(), new diagnosticSink_1.DiagnosticSink(), fingerprint);
68
+ assert.deepEqual(results.contentHash, fingerprint);
69
+ });
70
+ test('Parser computes the complete content fingerprint for Unicode text when one is not provided', () => {
71
+ const results = new parser_1.Parser().parseSourceFile('π😀\n', new parser_1.ParseOptions(), new diagnosticSink_1.DiagnosticSink());
72
+ assert.deepEqual(results.contentHash, {
73
+ primary: 83559239,
74
+ secondary: -893512024,
75
+ });
76
+ });
62
77
  test('Parser1', () => {
63
78
  const diagSink = new diagnosticSink_1.DiagnosticSink();
64
79
  const parserOutput = TestUtils.parseSampleFile('parser1.py', diagSink).parserOutput;
@@ -127,7 +142,7 @@ test('Inline TypedDict dict key is not a forward-reference annotation', () => {
127
142
  // An inline TypedDict field-name key must not be parsed into a
128
143
  // forward-reference expression even though the dictionary appears inside a type
129
144
  // annotation. Suspending type-annotation parsing for the key leaves its StringList
130
- // without a synthesized `annotation` expression, while the value remains a type
145
+ // without a parser-derived annotation association, while the value remains a type
131
146
  // annotation and must still parse its forward reference.
132
147
  const code = `
133
148
  //// from typing import TypedDict
@@ -136,10 +151,52 @@ test('Inline TypedDict dict key is not a forward-reference annotation', () => {
136
151
  const state = (0, testState_1.parseAndGetTestState)(code).state;
137
152
  const keyStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'key'), 48 /* ParseNodeType.StringList */);
138
153
  assert.ok(keyStringList, 'Expected the dict key to be a StringList node');
139
- assert.strictEqual(keyStringList.d.annotation, undefined, 'Inline TypedDict key string must not be parsed into a forward-reference annotation');
154
+ assert.strictEqual((0, parseNodes_1.getParserStringAnnotation)(keyStringList), undefined, 'Inline TypedDict key string must not be parsed into a forward-reference annotation');
140
155
  const valueStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)((0, testState_1.getNodeAtMarker)(state, 'value'), 48 /* ParseNodeType.StringList */);
141
156
  assert.ok(valueStringList, 'Expected the dict value to be a StringList node');
142
- assert.ok(valueStringList.d.annotation, 'Inline TypedDict value string is a type annotation and must still parse its forward reference');
157
+ assert.ok((0, parseNodes_1.getParserStringAnnotation)(valueStringList), 'Inline TypedDict value string is a type annotation and must still parse its forward reference');
158
+ });
159
+ test('Parser string-annotation side data preserves recursive associations and structural ownership', () => {
160
+ const source = `value: "list['Data']"\n`;
161
+ const parserOutput = TestUtils.parseText(source, new diagnosticSink_1.DiagnosticSink()).parserOutput;
162
+ const outerNode = (0, parseTreeUtils_1.findNodeByOffset)(parserOutput.parseTree, source.indexOf('list'));
163
+ const outerStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)(outerNode, 48 /* ParseNodeType.StringList */);
164
+ assert.ok(outerStringList);
165
+ const outerAnnotation = parserOutput.stringAnnotations.get(outerStringList);
166
+ assert.ok(outerAnnotation);
167
+ const nestedNode = (0, parseTreeUtils_1.findNodeByOffset)(outerAnnotation, source.indexOf('Data'));
168
+ const nestedStringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)(nestedNode, 48 /* ParseNodeType.StringList */);
169
+ assert.ok(nestedStringList);
170
+ const nestedAnnotation = parserOutput.stringAnnotations.get(nestedStringList);
171
+ assert.ok(nestedAnnotation);
172
+ assert.strictEqual(nestedAnnotation.nodeType, 38 /* ParseNodeType.Name */);
173
+ if (nestedAnnotation.nodeType !== 38 /* ParseNodeType.Name */) {
174
+ throw new Error('Expected the nested quoted annotation to parse as a name');
175
+ }
176
+ assert.strictEqual(nestedAnnotation.d.value, 'Data');
177
+ assert.strictEqual(outerAnnotation.parent, outerStringList);
178
+ assert.strictEqual(nestedAnnotation.parent, nestedStringList);
179
+ assert.strictEqual(outerStringList.a, parserOutput.parseTree.a);
180
+ assert.strictEqual(nestedStringList.a, parserOutput.parseTree.a);
181
+ assert.strictEqual(parserOutput.stringAnnotations, (0, parseNodes_1.getParserStringAnnotationInfo)(parserOutput.parseTree));
182
+ assert.deepStrictEqual(Object.keys(outerStringList.d), ['strings', 'hasParens']);
183
+ });
184
+ test('Parser string-annotation side data excludes unsupported and non-annotation strings', () => {
185
+ const cases = [
186
+ { source: `value = "Ordinary"\n`, needle: 'Ordinary', expected: false },
187
+ { source: `value: "Esc\\x61ped"\n`, needle: 'Esc', expected: false },
188
+ { source: `value: r"Raw"\n`, needle: 'Raw', expected: false },
189
+ { source: `value: b"Bytes"\n`, needle: 'Bytes', expected: false },
190
+ { source: `value: f"Formatted"\n`, needle: 'Formatted', expected: false },
191
+ { source: `value: "Positive"\n`, needle: 'Positive', expected: true },
192
+ ];
193
+ for (const testCase of cases) {
194
+ const parserOutput = TestUtils.parseText(testCase.source, new diagnosticSink_1.DiagnosticSink()).parserOutput;
195
+ const node = (0, parseTreeUtils_1.findNodeByOffset)(parserOutput.parseTree, testCase.source.indexOf(testCase.needle));
196
+ const stringList = (0, parseTreeUtils_1.getFirstAncestorOrSelfOfKind)(node, 48 /* ParseNodeType.StringList */);
197
+ assert.ok(stringList, `Expected a StringList for ${testCase.source.trim()}`);
198
+ assert.strictEqual(parserOutput.stringAnnotations.get(stringList) !== undefined, testCase.expected, testCase.source.trim());
199
+ }
143
200
  });
144
201
  test('ParserRecovery1', () => {
145
202
  const diagSink = new diagnosticSink_1.DiagnosticSink();
@@ -1 +1 @@
1
- {"version":3,"file":"parser.test.js","sourceRoot":"","sources":["../../../../../src/tests/parser.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.test.js","sourceRoot":"","sources":["../../../../../src/tests/parser.test.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,29 @@ test('convertOffsetsToRange handles an empty file', () => {
76
76
  end: { line: 0, character: 0 },
77
77
  });
78
78
  });
79
+ test('convertOffsetToPosition is order-independent (getItemContaining memo)', () => {
80
+ // getItemContaining memoizes its last hit, so converting the same offsets in a
81
+ // different order (against the same reused lines collection) must not change the
82
+ // result. Compare a warm collection against a memo-free reference for every offset.
83
+ const code = ['def foo(bar):', ' baz = bar', '', 'class C:\r', ' x = 1\r', 'last = 2'].join('\n');
84
+ const lines = new tokenizer_1.Tokenizer().tokenize(code).lines;
85
+ const forward = [];
86
+ for (let offset = 0; offset <= code.length; offset++) {
87
+ forward.push(offset);
88
+ }
89
+ // Reference computed on a single forward pass over a separate collection.
90
+ const referenceLines = new tokenizer_1.Tokenizer().tokenize(code).lines;
91
+ const reference = new Map();
92
+ for (const offset of forward) {
93
+ reference.set(offset, (0, positionUtils_1.convertOffsetToPosition)(offset, referenceLines));
94
+ }
95
+ const orders = [forward, [...forward].reverse(), [4, 0, code.length, 20, 4, 20, 0, code.length, 12, 12]];
96
+ for (const order of orders) {
97
+ for (const offset of order) {
98
+ assert_1.default.deepStrictEqual((0, positionUtils_1.convertOffsetToPosition)(offset, lines), reference.get(offset), `offset ${offset} differs after memo warm-up`);
99
+ }
100
+ }
101
+ });
79
102
  function verifyLineEnding(code, line, expected) {
80
103
  const parser = new parser_1.Parser();
81
104
  const parseResults = parser.parseSourceFile(code, new parser_1.ParseOptions(), new diagnosticSink_1.DiagnosticSink());
@@ -1 +1 @@
1
- {"version":3,"file":"positionUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/positionUtils.test.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;AAEH,oDAA4B;AAE5B,6DAA0D;AAC1D,2DAKiC;AACjC,6CAAwD;AACxD,mDAAgD;AAEhD,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC1B,MAAM,IAAI,GAAG,OAAO,CAAC;IAErB,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;IAC3D,MAAM,IAAI,GAAG,WAAW,CAAC;IAEzB,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,IAAI,GAAG,gBAAgB,CAAC;IAE9B,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IACxD,MAAM,IAAI,GAAG,SAAS,CAAC;IAEvB,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACjD,MAAM,IAAI,GAAG,cAAc,CAAC;IAE5B,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;IAClD,MAAM,IAAI,GAAG,yBAAyB,CAAC;IAEvC,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACpD,MAAM,IAAI,GAAG,SAAS,CAAC;IAEvB,MAAM,CAAC,GAAG,IAAI,qBAAS,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEjC,MAAM,QAAQ,GAAG,IAAA,uCAAuB,EAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACrE,gBAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAErC,MAAM,MAAM,GAAG,IAAA,uCAAuB,EAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAChE,gBAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kEAAkE,EAAE,GAAG,EAAE;IAC1E,6EAA6E;IAC7E,sEAAsE;IACtE,yEAAyE;IACzE,MAAM,IAAI,GAAG,CAAC,eAAe,EAAE,eAAe,EAAE,EAAE,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAExG,MAAM,CAAC,GAAG,IAAI,qBAAS,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;IAErC,KAAK,IAAI,WAAW,GAAG,CAAC,EAAE,WAAW,IAAI,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC;QAClE,KAAK,IAAI,SAAS,GAAG,WAAW,EAAE,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC;YACtE,MAAM,MAAM,GAAG,IAAA,qCAAqB,EAAC,WAAW,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACpE,MAAM,QAAQ,GAAG;gBACb,KAAK,EAAE,IAAA,uCAAuB,EAAC,WAAW,EAAE,KAAK,CAAC;gBAClD,GAAG,EAAE,IAAA,uCAAuB,EAAC,SAAS,EAAE,KAAK,CAAC;aACjD,CAAC;YACF,gBAAM,CAAC,eAAe,CAClB,MAAM,EACN,QAAQ,EACR,yBAAyB,WAAW,KAAK,SAAS,KAAK;gBACnD,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAClE,CAAC;QACN,CAAC;IACL,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACrD,MAAM,KAAK,GAAG,IAAI,qBAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;IACjD,gBAAM,CAAC,eAAe,CAAC,IAAA,qCAAqB,EAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE;QACvD,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;QAChC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;KACjC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,SAAS,gBAAgB,CAAC,IAAY,EAAE,IAAY,EAAE,QAAgB;IAClE,MAAM,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;IAC5B,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,qBAAY,EAAE,EAAE,IAAI,+BAAc,EAAE,CAAC,CAAC;IAE5F,gBAAM,CAAC,WAAW,CAAC,IAAA,kCAAkB,EAAC,YAAY,CAAC,eAAe,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACtH,CAAC"}
1
+ {"version":3,"file":"positionUtils.test.js","sourceRoot":"","sources":["../../../../../src/tests/positionUtils.test.ts"],"names":[],"mappings":"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"}
@@ -12,12 +12,53 @@ const assert_1 = __importDefault(require("assert"));
12
12
  const pathConsts_1 = require("../common/pathConsts");
13
13
  const pathUtils_1 = require("../common/pathUtils");
14
14
  const pyrightFileSystem_1 = require("../pyrightFileSystem");
15
+ const readonlyAugmentedFileSystem_1 = require("../readonlyAugmentedFileSystem");
15
16
  const filesystem_1 = require("./harness/vfs/filesystem");
16
17
  const uri_1 = require("../common/uri/uri");
17
18
  const uriUtils_1 = require("../common/uri/uriUtils");
18
19
  const partialStubService_1 = require("../partialStubService");
19
20
  const libraryRoot = (0, pathUtils_1.combinePaths)((0, pathUtils_1.normalizeSlashes)('/'), pathConsts_1.lib, pathConsts_1.sitePackages);
20
21
  const libraryRootUri = uriUtils_1.UriEx.file(libraryRoot);
22
+ test('read-only augmented file system preserves prohibited operations', () => {
23
+ const realFs = new filesystem_1.TestFileSystem(/* ignoreCase */ false, { cwd: (0, pathUtils_1.normalizeSlashes)('/') });
24
+ const fs = new readonlyAugmentedFileSystem_1.ReadOnlyAugmentedFileSystem(realFs);
25
+ const source = uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/source'));
26
+ const destination = uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/destination'));
27
+ const operations = [
28
+ () => fs.mkdirSync(source),
29
+ () => fs.chdir(source),
30
+ () => fs.writeFileSync(source, 'content', 'utf8'),
31
+ () => fs.rmdirSync(source),
32
+ () => fs.unlinkSync(source),
33
+ () => fs.createWriteStream(source),
34
+ () => fs.copyFileSync(source, destination),
35
+ ];
36
+ for (const operation of operations) {
37
+ assert_1.default.throws(operation, /^Error: Operation is not allowed\.$/);
38
+ }
39
+ });
40
+ test('read-only augmented file system mapping filter receives its exact backing file system', () => {
41
+ const originalRoot = uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/original'));
42
+ const mappedRoot = uriUtils_1.UriEx.file((0, pathUtils_1.normalizeSlashes)('/mapped'));
43
+ const originalFile = originalRoot.combinePaths('file.py');
44
+ const mappedFile = mappedRoot.combinePaths('file.py');
45
+ const realFs = new filesystem_1.TestFileSystem(/* ignoreCase */ false, {
46
+ cwd: (0, pathUtils_1.normalizeSlashes)('/'),
47
+ files: { [originalFile.getFilePath()]: 'content' },
48
+ });
49
+ const fs = new readonlyAugmentedFileSystem_1.ReadOnlyAugmentedFileSystem(realFs);
50
+ let observedFileSystem;
51
+ fs.mapDirectory(mappedRoot, originalRoot, (_uri, fileSystem) => {
52
+ observedFileSystem = fileSystem;
53
+ return true;
54
+ });
55
+ assert_1.default.strictEqual(fs.readFileSync(mappedFile, 'utf8'), 'content');
56
+ assert_1.default.strictEqual(observedFileSystem, realFs);
57
+ });
58
+ test('read-only augmented file system exposes no reset surface', () => {
59
+ const fs = new readonlyAugmentedFileSystem_1.ReadOnlyAugmentedFileSystem(new filesystem_1.TestFileSystem(/* ignoreCase */ false, { cwd: (0, pathUtils_1.normalizeSlashes)('/') }));
60
+ assert_1.default.strictEqual('clear' in fs, false);
61
+ });
21
62
  test('virtual file exists', () => {
22
63
  const files = [
23
64
  {
@@ -1 +1 @@
1
- {"version":3,"file":"pyrightFileSystem.test.js","sourceRoot":"","sources":["../../../../../src/tests/pyrightFileSystem.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pyrightFileSystem.test.js","sourceRoot":"","sources":["../../../../../src/tests/pyrightFileSystem.test.ts"],"names":[],"mappings":"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"}