Skip to content

Implements repodata downloading for localize#241

Merged
lubomir merged 10 commits into
release-engineering:developmentfrom
guillermodotn:feature/localize-repodata
Mar 31, 2026
Merged

Implements repodata downloading for localize#241
lubomir merged 10 commits into
release-engineering:developmentfrom
guillermodotn:feature/localize-repodata

Conversation

@guillermodotn
Copy link
Copy Markdown
Contributor

Summary

The command now fetches repodata/repomd.xml from each repository variant path, parses it to discover referenced files, and downloads them alongside RPMs and images.

Closes #238

Implementation

  1. LocationEntry gains a field_name attribute to identify repository variant paths
  2. _collect_download_tasks() collects repository URLs instead of skipping them
  3. _discover_repodata_tasks() fetches repomd.xml from each unique repository, parses it, and generates download tasks for every referenced file
  4. The generated tasks feed into the existing parallel download pipeline

Key decisions

  • defusedxml: for XML parsing, pinned <0.8 for Python 3.6 compat
  • Dedup by URL: source repos shared across arches are fetched once
  • Graceful degradation: failed repomd.xml fetches log a warning and skip the repo

Python 3.6 compatibility

defusedxml is pinned to <0.8 because the 0.8 release candidates may drop Python 3.6 support. The current stable version (0.7.1) does not list Python 3.6 as supported in its metadata, but works correctly.

Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
@guillermodotn guillermodotn requested a review from lubomir March 27, 2026 13:11
@guillermodotn guillermodotn self-assigned this Mar 27, 2026
Comment thread productmd/localize.py Outdated
Comment thread productmd/localize.py Outdated
Comment thread productmd/localize.py
Comment thread productmd/localize.py
Comment thread productmd/localize.py
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
Assisted-by: Claude Opus <noreply@anthropic.com>
@guillermodotn guillermodotn requested a review from lubomir March 30, 2026 10:52
@lubomir lubomir merged commit d9cb1ad into release-engineering:development Mar 31, 2026
11 checks passed
@guillermodotn guillermodotn deleted the feature/localize-repodata branch March 31, 2026 16:55
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

Successfully merging this pull request may close these issues.

2 participants