You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Have been using your module for checking for updates in RHEL and epel repos and have found it really useful
But today I got this when run against an epel 8 mirror, below an example to reproduce issue
>>> import repomd
>>> this_repo_path="https://d2lzkl7pfhq30w.cloudfront.net/pub/epel/8/Everything/x86_64/"
>>> repo = repomd.load(this_repo_path)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/nexor/release/virtualenvs/conan-rhel8/lib64/python3.6/site-packages/repomd.py", line 39, in load
metadata = defusedxml.lxml.fromstring(uncompressed.read())
File "/usr/lib64/python3.6/gzip.py", line 276, in read
return self._buffer.read(size)
File "/usr/lib64/python3.6/gzip.py", line 463, in read
if not self._read_gzip_header():
File "/usr/lib64/python3.6/gzip.py", line 411, in _read_gzip_header
raise OSError('Not a gzipped file (%r)' % magic)
OSError: Not a gzipped file (b'\xfd7')
It had just successfully read the rhel 8 AppStreams and BaseOS repos but gets that failure on epel 8
Has there been some update to the way they package repodata thats breaking your module?
Just noticed that the epel8 repo has .xz files in its repodata rather than .gz that the rhel repos use which is why your module is having problems
Just checked the epel 7 and epel 9 repos and they both use .gz for the repodata, its only the epel 8 repo that seems to be using .xz
Root cause discovered here https://pagure.io/releng/issue/12097 they broke it 2 months back by moving to .zst format from .gz, then rather than revert back to .gz they decided to change to using .xz
The text was updated successfully, but these errors were encountered:
You're spot on regarding the cause of the issue. When I originally wrote this library, gz repodata was the dominate standard and so that was the only compression format I wrote code to handle. I knew that wouldn't be the case forever, but never got around to adding code to handle other compression formats. At some point I'll add code to handle xz and probably even zst. I don't know when that will be, I'm long overdue to improve this library and respond to open pull requests here, I just haven't made time for it yet.
carlwgeorge
changed the title
problems reading Fedora epel8 yum repo
add support for xz compressed repodata
Jul 5, 2024
Have been using your module for checking for updates in RHEL and epel repos and have found it really useful
But today I got this when run against an epel 8 mirror, below an example to reproduce issue
It had just successfully read the rhel 8 AppStreams and BaseOS repos but gets that failure on epel 8
Has there been some update to the way they package repodata thats breaking your module?
Just noticed that the epel8 repo has .xz files in its repodata rather than .gz that the rhel repos use which is why your module is having problems
Just checked the epel 7 and epel 9 repos and they both use .gz for the repodata, its only the epel 8 repo that seems to be using .xz
Root cause discovered here https://pagure.io/releng/issue/12097 they broke it 2 months back by moving to .zst format from .gz, then rather than revert back to .gz they decided to change to using .xz
The text was updated successfully, but these errors were encountered: