Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.bugs.dist > #1188020 > unrolled thread
| Started by | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> |
|---|---|
| First post | 2024-02-28 17:10 +0100 |
| Last post | 2024-03-01 18:10 +0100 |
| Articles | 5 — 3 participants |
Back to article view | Back to linux.debian.bugs.dist
Bug#1064973: diffoscope fails with struct.error: unpack requires a buffer of 4 bytes Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2024-02-28 17:10 +0100
Bug#1064973: diffoscope fails with struct.error: unpack requires a buffer of 4 bytes "Chris Lamb" <lamby@debian.org> - 2024-02-29 12:40 +0100
Bug#1064973: diffoscope fails with struct.error: unpack requires a buffer of 4 bytes Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2024-02-29 13:30 +0100
Bug#1064973: diffoscope fails with struct.error: unpack requires a buffer of 4 bytes "Chris Lamb" <chris@reproducible-builds.org> - 2024-03-01 15:20 +0100
Bug#1064973: diffoscope fails with struct.error: unpack requires a buffer of 4 bytes "Chris Lamb" <lamby@debian.org> - 2024-03-01 18:10 +0100
| From | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> |
|---|---|
| Date | 2024-02-28 17:10 +0100 |
| Subject | Bug#1064973: diffoscope fails with struct.error: unpack requires a buffer of 4 bytes |
| Message-ID | <IcuFk-deZH-15@gated-at.bofh.it> |
Package: diffoscope
Version: 257
Severity: normal
The package is really diffoscope-257-1.fc40.x86_64.
$ diffoscope cache/rpms/meson-1.3.2-1.fc41/meson-1.3.2-1.fc41.noarch.rpm cache/build/meson-1.3.2-1.fc41/rebuild/meson-1.3.2-1.fc41.noarch.rpm
...
Traceback (most recent call last):
File "/usr/lib/python3.12/site-packages/diffoscope/main.py", line 766, in main
sys.exit(run_diffoscope(parsed_args))
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/main.py", line 717, in run_diffoscope
difference = compare_root_paths(path1, path2)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/compare.py", line 69, in compare_root_paths
difference = compare_files(file1, file2)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/compare.py", line 149, in compare_files
return file1.compare(file2, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/file.py", line 532, in compare
difference = self._compare_using_details(other, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/file.py", line 467, in _compare_using_details
details.extend(
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/container.py", line 197, in compare_pair
difference = compare_files(
^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/compare.py", line 149, in compare_files
return file1.compare(file2, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/file.py", line 532, in compare
difference = self._compare_using_details(other, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/file.py", line 467, in _compare_using_details
details.extend(
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/container.py", line 197, in compare_pair
difference = compare_files(
^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/compare.py", line 149, in compare_files
return file1.compare(file2, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/file.py", line 532, in compare
difference = self._compare_using_details(other, source)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/utils/file.py", line 433, in _compare_using_details
details.extend(self.compare_details(other, source))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/python.py", line 52, in compare_details
describe_pyc(other.path),
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/python.py", line 65, in describe_pyc
return "\n".join(parse_pyc(f))
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/site-packages/diffoscope/comparators/python.py", line 74, in parse_pyc
modtime = time.asctime(time.gmtime(struct.unpack("<L", moddate)[0]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
struct.error: unpack requires a buffer of 4 bytes
The two arguments are available at:
https://fedorapeople.org/~zbyszek/meson-1.3.2-1.fc41.noarch.rpm
https://fedorapeople.org/~zbyszek/meson-1.3.2-1.fc41.noarch.rpm.2
Zbyszek
[toc] | [next] | [standalone]
| From | "Chris Lamb" <lamby@debian.org> |
|---|---|
| Date | 2024-02-29 12:40 +0100 |
| Message-ID | <IcMVC-drAl-83@gated-at.bofh.it> |
| In reply to | #1188020 |
tags 1064973 + pending
thanks
The traceback/error is fixed in Git, pending upload:
https://salsa.debian.org/reproducible-builds/diffoscope/commit/466523ac6fbd1437635f8393fb93c37ff59341b3
We should still fix it so the .pyc is actually parsed though.
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby@debian.org / chris-lamb.co.uk
`-
[toc] | [prev] | [next] | [standalone]
| From | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> |
|---|---|
| Date | 2024-02-29 13:30 +0100 |
| Message-ID | <IcNHY-ds6o-5@gated-at.bofh.it> |
| In reply to | #1188398 |
On Thu, Feb 29, 2024 at 11:19:50AM +0000, Chris Lamb wrote: > The traceback/error is fixed in Git, pending upload: > https://salsa.debian.org/reproducible-builds/diffoscope/commit/466523ac6fbd1437635f8393fb93c37ff59341b3 Thanks!
[toc] | [prev] | [next] | [standalone]
| From | "Chris Lamb" <chris@reproducible-builds.org> |
|---|---|
| Date | 2024-03-01 15:20 +0100 |
| Message-ID | <IdbTX-dHLm-1@gated-at.bofh.it> |
| In reply to | #1188020 |
Zbigniew Jędrzejewski-Szmek wrote:
> File
> "/usr/lib/python3.12/site-packages/diffoscope/comparators/python.py",
> line 74, in parse_pyc
> modtime = time.asctime(time.gmtime(struct.unpack("<L", moddate)[0]))
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> struct.error: unpack requires a buffer of 4 bytes
I'm trying to track this down further so I can fix the underlying
problem. However, I'm having difficulty reproducing locally. In the
first instance, it would be helpful to know exactly which file within
the .rpm is the one (previously) causing the traceback.
Can you run diffoscope --debug so we can see which .pyc file is the
offending one? I think it is "environment.cpython-312.pyc", but it
would be great to get confirmation. Also knowing your exact Python
version (using python3 --version) would be useful withal.
Best wishes,
--
o
⬋ ⬊ Chris Lamb
o o reproducible-builds.org 💠
⬊ ⬋
o
[toc] | [prev] | [next] | [standalone]
| From | "Chris Lamb" <lamby@debian.org> |
|---|---|
| Date | 2024-03-01 18:10 +0100 |
| Message-ID | <Ideyt-dJoh-3@gated-at.bofh.it> |
| In reply to | #1188020 |
tags 1064973 + pending
thanks
Ah, I see the issue now; its to do with empty pyc files. Now
properly fixed in Git, pending upload:
https://salsa.debian.org/reproducible-builds/diffoscope/commit/c885c24ad4807a0ec20c0cca9572b395812c85d9
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby@debian.org / chris-lamb.co.uk
`-
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.bugs.dist
csiph-web