Skip to content

diffoscope fails to build from source and fails to run in debian sid/unstable

As seen on buildd.debian.org!

Generating the debian/tests/control file...
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/diffoscope/main.py", line 760, in main
    parsed_args = parser.parse_args(args)
              ^^^^^^^^^^^^^^^^^^^^^^^
...
  File "/usr/lib/python3/dist-packages/cryptography/exceptions.py", line 9, in <module>
    from cryptography.hazmat.bindings._rust import exceptions as rust_exceptions
RuntimeError: OpenSSL 3.0's legacy provider failed to load. This is a fatal error by default, but cryptography supports running without legacy algorithms by setting the environment variable CRYPTOGRAPHY_OPENSSL_NO_LEGACY. If you did not expect this error, you have likely made a mistake with your OpenSSL configuration.
Files debian/tests/control and debian/tests/control.tmp differ

Full log:

https://buildd.debian.org/status/fetch.php?pkg=diffoscope&arch=all&ver=275&stamp=1723804441&raw=0

I was able to reproduce the issue when building against sid/unstable, although currently building against trixie/testing still works, so presumably it was a recent change in some build-dependency in sid/unstable.

This also notably breaks building and running diffoscope 274 with a similar error ... so all of tests.reproducible-builds.org debian tests appear to be generating a lot of false results because diffoscope is failing:

https://tests.reproducible-builds.org/debian/rbuild/unstable/amd64/vtwm_5.4.7-8.rbuild.log.gz

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information