Page MenuHomeSoftware Heritage

Pubdev: Ensure we correctly parse and sort release versions
ClosedPublic

Authored by franckbret on Sep 13 2022, 10:04 AM.

Details

Summary

Make use of packaging.versions instead of distutils versions classes
that are deprecated

Resolves T4528

Related to T4465

Diff Detail

Repository
rDLDBASE Generic VCS/Package Loader
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Build is green

Patch application report for D8455 (id=30474)

Rebasing onto 4a2fe2f861...

Current branch diff-target is up to date.
Changes applied before test
commit 6c97ec689e6b042d8a0a2285299a96ee679f1478
Author: Franck Bret <franck.bret@octobus.net>
Date:   Tue Sep 13 09:58:36 2022 +0200

    Pubdev: Ensure we correctly parse and sort release versions
    
    Make use of packaging.versions instead of distutils versions classes
    that are deprecated
    
    Related T4528, T4465

See https://jenkins.softwareheritage.org/job/DLDBASE/job/tests-on-diff/868/ for more details.

anlambert added a subscriber: anlambert.

Thanks, before I can accept this, one inline comment to handle and the packaging dependency needs to be added in the requirements.txt file.

swh/loader/package/pubdev/loader.py
105–106

You can still use previous code here and replace the sort key by parse_version.

This revision now requires changes to proceed.Sep 13 2022, 11:08 AM
vlorentz added tasks: Restricted Maniphest Task, T4465: Ingest pub.dev (Dart, Flutter).

please don't undo the pretty-printing of data files.

Also, remove the large echos from fake_pubdev.sh, that only needs to build tarballs, not the other JSON files that simulate the API

Add packaging to requirements + some cleanup

Simplier usage of parse_version
Add 'packaging' to requirements
Prettify json test data files and stop generating those files through fake_pudev.sh

Build is green

Patch application report for D8455 (id=30508)

Rebasing onto 4a2fe2f861...

Current branch diff-target is up to date.
Changes applied before test
commit 134087342b421eeb66a37ad7d8d9750a9750cc96
Author: Franck Bret <franck.bret@octobus.net>
Date:   Tue Sep 13 09:58:36 2022 +0200

    Pubdev: Ensure we correctly parse and sort release versions
    
    Make use of packaging.versions instead of distutils versions classes
    that are deprecated
    
    Resolves T4528
    Related T4465

See https://jenkins.softwareheritage.org/job/DLDBASE/job/tests-on-diff/869/ for more details.

Looks good to me, thanks !

This revision is now accepted and ready to land.Sep 13 2022, 5:13 PM