Files
Viper_VSCode/architecture/generated/features/feat-import-resolution-and-packaging.md
TermiNexus e9e4693333
Some checks failed
Run mypy_primer on push / Run mypy_primer on push (push) Has been cancelled
Validation / Typecheck (push) Has been cancelled
Validation / Style (push) Has been cancelled
Validation / Test macos-latest (push) Has been cancelled
Validation / Test ubuntu-latest (push) Has been cancelled
Validation / Test windows-latest (push) Has been cancelled
Validation / Build (push) Has been cancelled
Validation / Required (push) Has been cancelled
初始化上传
2026-07-24 17:08:39 +08:00

23 KiB

Import Resolution and Packaging

Feature path: Import Resolution and Packaging

Implementation summary

  • Files: 16
  • Symbols: 267

Primary files

These are the main implementation files attached to this semantic node.

File Summary
packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts Provides a simple logger for collecting and retrieving import resolution messages
packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts Resolves Python imports to filesystem modules, packages, typeshed and stub sources for static type analysis
packages/pyright/packages/pyright-internal/src/analyzer/importResolverFileSystem.ts Cached file-system adapter for import resolution, exposing directory/file queries and resolvable name lookups
packages/pyright/packages/pyright-internal/src/analyzer/importResolverTypes.ts Type declarations for import resolver helpers including typeshed info provider and a minimal cached filesystem facade
packages/pyright/packages/pyright-internal/src/analyzer/importResult.ts Represents Python import resolution results with metadata, resolved URIs, and implicit import info
packages/pyright/packages/pyright-internal/src/analyzer/importStatementUtils.ts Summarizes and manipulates Python import statements and generates edits for auto-imports and formatting
packages/pyright/packages/pyright-internal/src/analyzer/packageTypeReport.ts Defines types and a factory for package type verification reports, symbols, modules, and diagnostics
packages/pyright/packages/pyright-internal/src/analyzer/packageTypeVerifier.ts Validates public exports of a package to ensure exported types are complete and reports problems
packages/pyright/packages/pyright-internal/src/analyzer/pyTypedUtils.ts Determines whether a py.typed file exists and if it marks the package as partially typed
packages/pyright/packages/pyright-internal/src/analyzer/pythonPathUtils.ts Resolves Python interpreter and typeshed search paths, site-packages locations, and .pth-derived paths
packages/pyright/packages/pyright-internal/src/analyzer/sourceEnumerator.ts Enumerates Python source files with include/exclude rules, tracking symlinked directories and auto-excluding virtualenvs
packages/pyright/packages/pyright-internal/src/analyzer/sourceMapper.ts Maps .pyi stub files to corresponding .py implementation files and provides binding utilities
packages/pyright/packages/pyright-internal/src/analyzer/sourceMapperUtils.ts Finds an import chain between two Uri nodes and returns the sequence of Uris
packages/pyright/packages/pyright-internal/src/analyzer/typeStubWriter.ts Emit Python .pyi type stub files from parsed and analyzed Python source files
packages/pyright/packages/pyright-internal/src/analyzer/typeshedInfoProvider.ts Provides typeshed root/subdirectory lookup, third-party package mapping, and stdlib version info
packages/pyright/packages/pyright-internal/src/partialStubService.ts Maps partially typed stub packages into corresponding installed library directories and provides a no-op alternative

Symbol preview (40 of 267)

Symbol Kind Source
ImportLogger class packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts
ImportLogger.log method packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts
ImportLogger.getLogs method packages/pyright/packages/pyright-internal/src/analyzer/importLogger.ts
createImportedModuleDescriptor function packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver class packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.isSupportedImportSourceFile method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.isSupportedImportFile method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.invalidateCache method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.resolveImport method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getCompletionSuggestions method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getConfigOptions method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.setConfigOptions method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getSourceFilesFromStub method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getModuleNameForImport method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getTypeshedStdLibPath method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getTypeshedThirdPartyPath method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.isStdlibModule method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getImportRoots method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.ensurePartialStubPackages method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getPythonSearchPaths method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getTypeshedStdlibExcludeList method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getTypeshedPathEx method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.resolveImportInternal method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.fileExistsCached method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.dirExistsCached method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.addResultsToCache method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.resolveAbsoluteImport method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.resolveImportEx method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.resolveNativeImportEx method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.getNativeModuleName method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.filterImplicitImports method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver.findImplicitImports method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._isPossibleImportDir method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._resolveImportStrict method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._getCompletionSuggestionsStrict method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._getModuleNameForImport method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._invalidateFileSystemCache method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._resolveAbsoluteImport method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._getImportCacheKey method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
ImportResolver._lookUpResultsInCache method packages/pyright/packages/pyright-internal/src/analyzer/importResolver.ts
227 additional symbols omitted

Dependencies

Imported by:

  • packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/backgroundAnalysisProgram.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/binder.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/checker.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/program.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/service.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/typeDocStringUtils.ts
  • packages/pyright/packages/pyright-internal/src/backgroundAnalysis.ts
  • packages/pyright/packages/pyright-internal/src/backgroundAnalysisBase.ts
  • packages/pyright/packages/pyright-internal/src/common/configOptions.ts
  • packages/pyright/packages/pyright-internal/src/common/extensibility.ts
  • packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts
  • packages/pyright/packages/pyright-internal/src/common/host.ts
  • packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts
  • packages/pyright/packages/pyright-internal/src/common/serviceProviderExtensions.ts
  • packages/pyright/packages/pyright-internal/src/common/textEditTracker.ts
  • packages/pyright/packages/pyright-internal/src/languageServerBase.ts
  • packages/pyright/packages/pyright-internal/src/languageService/analyzerServiceExecutor.ts
  • packages/pyright/packages/pyright-internal/src/languageService/autoImporter.ts
  • packages/pyright/packages/pyright-internal/src/languageService/completionProvider.ts
  • packages/pyright/packages/pyright-internal/src/languageService/definitionProvider.ts
  • packages/pyright/packages/pyright-internal/src/languageService/documentSymbolCollector.ts
  • packages/pyright/packages/pyright-internal/src/languageService/hoverProvider.ts
  • packages/pyright/packages/pyright-internal/src/languageService/importSorter.ts
  • packages/pyright/packages/pyright-internal/src/languageService/signatureHelpProvider.ts
  • packages/pyright/packages/pyright-internal/src/languageService/tooltipUtils.ts
  • packages/pyright/packages/pyright-internal/src/pyright.ts
  • packages/pyright/packages/pyright-internal/src/server.ts

Imports:

  • packages/pyright/packages/pyright-internal/src/analyzer/analyzerFileInfo.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/analyzerNodeInfo.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/declaration.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/parentDirectoryCache.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/parseTreeUtils.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/parseTreeWalker.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/program.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/scope.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/scopeUtils.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/sourceFile.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfo.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/sourceFileInfoUtils.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/symbol.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/symbolNameUtils.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/typeEvaluatorTypes.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/typeUtils.ts
  • packages/pyright/packages/pyright-internal/src/analyzer/types.ts
  • packages/pyright/packages/pyright-internal/src/common/cancellationUtils.ts
  • packages/pyright/packages/pyright-internal/src/common/collectionUtils.ts
  • packages/pyright/packages/pyright-internal/src/common/commandLineOptions.ts
  • packages/pyright/packages/pyright-internal/src/common/configOptions.ts
  • packages/pyright/packages/pyright-internal/src/common/console.ts
  • packages/pyright/packages/pyright-internal/src/common/core.ts
  • packages/pyright/packages/pyright-internal/src/common/debug.ts
  • packages/pyright/packages/pyright-internal/src/common/diagnostic.ts
  • packages/pyright/packages/pyright-internal/src/common/editAction.ts
  • packages/pyright/packages/pyright-internal/src/common/extensibility.ts
  • packages/pyright/packages/pyright-internal/src/common/fileSystem.ts
  • packages/pyright/packages/pyright-internal/src/common/fullAccessHost.ts
  • packages/pyright/packages/pyright-internal/src/common/host.ts
  • packages/pyright/packages/pyright-internal/src/common/pathConsts.ts
  • packages/pyright/packages/pyright-internal/src/common/pathUtils.ts
  • packages/pyright/packages/pyright-internal/src/common/positionUtils.ts
  • packages/pyright/packages/pyright-internal/src/common/pythonVersion.ts
  • packages/pyright/packages/pyright-internal/src/common/serviceKeys.ts
  • packages/pyright/packages/pyright-internal/src/common/serviceProvider.ts
  • packages/pyright/packages/pyright-internal/src/common/stringUtils.ts
  • packages/pyright/packages/pyright-internal/src/common/textRange.ts
  • packages/pyright/packages/pyright-internal/src/common/uri/uri.ts
  • packages/pyright/packages/pyright-internal/src/common/uri/uriUtils.ts
  • packages/pyright/packages/pyright-internal/src/parser/parseNodes.ts
  • packages/pyright/packages/pyright-internal/src/parser/parser.ts
  • packages/pyright/packages/pyright-internal/src/parser/tokenizer.ts
  • packages/pyright/packages/pyright-internal/src/parser/tokenizerTypes.ts