Skip to content

[Question] Clarify what resolution data is available to source download #1384

Open

Description

@smoparth

Problem: Resolution keeps the selected URL and version, then sources.download_source() creates a new Candidate to call source_resolver.download(). Fields such as is_sdist, remote tag, and remote commit are lost. Today’s built-in downloaders use only name, version, and URL, so this is a contract concern, not a demonstrated failure.

Expected outcome: The download contract clearly reflects the data it receives, and future downloaders cannot silently depend on fields that were discarded.

Activity

  1. smoparth commented on Oct 19, 2026

    @smoparth
    ContributorAuthor

    The resolver returns only (url, version).

    Later, sources.download_source() creates a new Candidate from the requirement, version, and URL. The object passed to source_resolver.download() is therefore not the selected candidate from the resolver and its other fields have default values.
    All source config downloaders today use only name, version, and URL. The concern is that the Candidate parameter appears to offer data this path cannot supply.

    Can we clarify whether name/version/URL are the complete download contract, or whether downloaders should receive the selected candidate?

  2. changed the title [-]Clarify what resolution data is available to source download[/-] [+][Question] Clarify what resolution data is available to source download[/+] on Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions