Skip to content

Missing info.requires_dist metadata in PyPI JSON API #1128

Closed
@KSmanis

Description

@KSmanis
$ curl -s https://pypi.org/pypi/pygit2/json | jq '.info.requires_dist'
null

The info.requires_dist field in the PyPI JSON API is null, leading Poetry, which depends on the JSON API, to resolve wrong dependencies [*]. Supposedly this field should have been properly populated by recent versions of twine, but I haven't been able to pinpoint the source of this nuisance. Apparently the upload order seems to affect the contents of the field. My guess is that the sdist is to blame, because it seems to be always uploaded first according to PyPI timestamps.

[*] Specifically, when the field is null, Poetry downloads the first available wheel (instead of the most suitable one) in order to extract the relevant metadata. This happens to be a non-3.7 Python wheel, thus missing the cached-property dependency, causing, in turn, import pygit2 to fail. This behavior is a known issue in Poetry.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions