Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PyPI - Fedora missing packages #253

Closed
abitrolly opened this issue Aug 22, 2019 · 12 comments
Closed

PyPI - Fedora missing packages #253

abitrolly opened this issue Aug 22, 2019 · 12 comments

Comments

@abitrolly
Copy link

I found that there are Python packets on PyPI that are not linked to corresponding Fedora packages.

  1. https://repology.org/project/python:datetime/versions

image

https://apps.fedoraproject.org/packages/python-dateutil

  1. https://pypi.org/project/straight.plugin/

There are two Repology entries for that package:
https://repology.org/project/python:straight.plugin/versions
https://repology.org/project/python:straight-plugin/versions

Fedora is only found in python:straight-plugin page, while the canonical name on PyPI is still straight.plugin which is used for lookup.

@AMDmi3 AMDmi3 transferred this issue from repology/repology-updater Aug 22, 2019
AMDmi3 added a commit that referenced this issue Aug 22, 2019
AMDmi3 added a commit that referenced this issue Aug 22, 2019
@AMDmi3
Copy link
Member

AMDmi3 commented Aug 22, 2019

Created rules for these. Note that the cause of this problem is Fedora (which doesn't use correct PyPI names) and partly upstream for using odd naming.

@AMDmi3 AMDmi3 closed this as completed Aug 22, 2019
@abitrolly
Copy link
Author

I got distracted and pasted page python:datetime instead of python:dateutil.

Why a rule is necessary for python:straight.plugin? PyPI uses it as a canonical name.

@AMDmi3
Copy link
Member

AMDmi3 commented Aug 23, 2019

I got distracted and pasted page python:datetime instead of python:dateutil

It's OK, I've figured it out.

Why a rule is necessary for python:straight.plugin ? PyPI uses it as a canonical name.

The rule was necessary because Fedora uses straight-plugin instead of straight.plugin, to merge the former into the latter.

@AMDmi3
Copy link
Member

AMDmi3 commented Aug 23, 2019

There's nothing like that in Fedora repodata.

@abitrolly
Copy link
Author

You mean that this information is only available in .rpm itself and not in repository indexes?

➜  ~ rpm -q --provides -p python3-straight-plugin-1.5.0-6.fc30.noarch.rpm 
python3-straight-plugin = 1.5.0-6.fc30
python3.7dist(straight.plugin) = 1.5.0
python3dist(straight.plugin) = 1.5.0

If that's the case then the only way it to find out if https://apps.fedoraproject.org/packages/python-straight-plugin/ parses .rpm to expose that metadata somehow.

@AMDmi3
Copy link
Member

AMDmi3 commented Aug 23, 2019

Well, Repology won't download and process individual RPMs anyway.

@abitrolly
Copy link
Author

I left the wish here - fedora-infra/fedora-packages#420 (comment)

@abitrolly
Copy link
Author

There's nothing like that in Fedora repodata.

@AMDmi3 there is.

...
  <location href="Packages/p/python3-straight-plugin-1.5.0-5.fc29.noarch.rpm"/>
  <format>
    <rpm:license>BSD</rpm:license>
    <rpm:vendor>Fedora Project</rpm:vendor>
    <rpm:group>Unspecified</rpm:group>
    <rpm:buildhost>buildvm-ppc64le-07.ppc.fedoraproject.org</rpm:buildhost>
    <rpm:sourcerpm>python-straight-plugin-1.5.0-5.fc29.src.rpm</rpm:sourcerpm>
    <rpm:header-range start="4504" end="11400"/>
    <rpm:provides>
      <rpm:entry name="python3-straight-plugin" flags="EQ" epoch="0" ver="1.5.0" rel=
"5.fc29"/>
      <rpm:entry name="python3.7dist(straight.plugin)" flags="EQ" epoch="0" ver="1.5.
0"/>
      <rpm:entry name="python3dist(straight.plugin)" flags="EQ" epoch="0" ver="1.5.0"/>
    </rpm:provides>
    <rpm:requires>
      <rpm:entry name="python(abi)" flags="EQ" epoch="0" ver="3.7"/>
    </rpm:requires>
  </format>
...

https://github.com/repology/repology/blob/master/repology/parsers/parsers/repodata.py doesn't parse rpm:provides. Then I don't see where to store the link to PyPI.

@AMDmi3
Copy link
Member

AMDmi3 commented Aug 26, 2019

There is not.

wget -qO- https://mirror.yandex.ru/fedora/linux/releases/30/Everything/source/tree/repodata/e9c7a12f6bef422f16a609ec05552f770017a755a08a64edabf90774f2342d78-primary.xml.gz | gunzip | grep rpm:provides | wc -l
       0

@abitrolly
Copy link
Author

There is some problem with your command line or mirror.

➜ curl -s https://mirror.datacenter.by/pub/fedoraproject.org/fedora/linux/releases/30/Everything/x86_64/os/repodata/54ed9948b74b314b877fa90468e7c5309a0f9428c35b938b82fa7b356a799c94-primary.xml.gz | gunzip | grep rpm:provides | wc -l
113394

image

@AMDmi3
Copy link
Member

AMDmi3 commented Aug 26, 2019

Everything/source

vs.

Everything/x86_64

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants