Skip to content

Wire source_resolver into resolver and download pipelines #1048

@LalatenduMohanty

Description

@LalatenduMohanty

PR #938 defines a model layer for declarative source configuration with provider classes, a RetrieveMethod enum, and discriminated union dispatch. This issue tracks wiring that model layer into the runtime so YAML-configured providers are used by the resolver and download pipelines.

Work items:

  1. Modify default_resolver_provider() in resolver.py to check pbi.source_resolver before returning PyPIProvider
  2. Modify default_download_source() in sources.py to detect git+https:// / git+ssh:// URLs and route to the git clone path
  3. Add remove_dot_git field to GitOptions
  4. Connect git_options (submodules, submodule_paths, remove_dot_git) to the git clone download path

Plugin precedence is preserved — overrides.find_and_invoke() calls the plugin hook first. The source_resolver check only runs when no plugin exists.

See: #937, #938, #936

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions