intersphinx mapping - https errors causing reproducibility failures

Neil Williams codehelp at debian.org
Fri Nov 19 08:49:33 GMT 2021


I'm not sure if this has already been logged:

https://tests.reproducible-builds.org/debian/rb-pkg/bookworm/i386/diffoscope-results/python-jira.html

https://salsa.debian.org/python-team/packages/python-jira/-/jobs/2067547

First build:

PYTHONPATH=. http_proxy='127.0.0.1:9' python3 -m sphinx -N -bhtml docs/ build/html # HTML generator
Running Sphinx v4.2.0
making output directory... done
loading intersphinx inventory from https://docs.python.org/3.7/objects.inv...
loading intersphinx inventory from https://requests.kennethreitz.org/en/master/objects.inv...
loading intersphinx inventory from https://requests-oauthlib.readthedocs.io/en/latest/objects.inv...
loading intersphinx inventory from https://ipython.readthedocs.io/en/stable/objects.inv...
loading intersphinx inventory from https://pip.readthedocs.io/en/stable/objects.inv...
intersphinx inventory has moved: https://pip.readthedocs.io/en/stable/objects.inv -> https://pip.pypa.io/en/stable/objects.inv

Comparative build:

PYTHONPATH=. http_proxy='127.0.0.1:9' python3 -m sphinx -N -bhtml docs/ build/html # HTML generator
Running Sphinx v4.2.0
making output directory... done
loading intersphinx inventory from https://docs.python.org/3.7/objects.inv...
loading intersphinx inventory from https://requests.kennethreitz.org/en/master/objects.inv...
loading intersphinx inventory from https://requests-oauthlib.readthedocs.io/en/latest/objects.inv...
loading intersphinx inventory from https://ipython.readthedocs.io/en/stable/objects.inv...
loading intersphinx inventory from https://pip.readthedocs.io/en/stable/objects.inv...
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://requests.kennethreitz.org/en/master/objects.inv' not fetchable due to <class 'requests.exceptions.SSLError'>: HTTPSConnectionPool(host='requests.kennethreitz.org', port=443): Max retries exceeded with url: /en/master/objects.inv (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://ipython.readthedocs.io/en/stable/objects.inv' not fetchable due to <class 'requests.exceptions.SSLError'>: HTTPSConnectionPool(host='ipython.readthedocs.io', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://requests-oauthlib.readthedocs.io/en/latest/objects.inv' not fetchable due to <class 'requests.exceptions.SSLError'>: HTTPSConnectionPool(host='requests-oauthlib.readthedocs.io', port=443): Max retries exceeded with url: /en/latest/objects.inv (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://pip.readthedocs.io/en/stable/objects.inv' not fetchable due to <class 'requests.exceptions.SSLError'>: HTTPSConnectionPool(host='pip.readthedocs.io', port=443): Max retries exceeded with url: /en/stable/objects.inv (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))
WARNING: failed to reach any of the inventories with the following issues:
intersphinx inventory 'https://docs.python.org/3.7/objects.inv' not fetchable due to <class 'requests.exceptions.SSLError'>: HTTPSConnectionPool(host='docs.python.org', port=443): Max retries exceeded with url: /3.7/objects.inv (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)')))


The first run retrieves the inventories just fine, the second run
always fails. This then leads to sphinx generating different output,
causing the reproducibility failure.

One build generates:

<li><p><strong>sprint_id</strong>·(<a·class="reference·external"·href="https://docs.python.org/3.7/library/functions.html#int"·title="(in·Python·v3.7)"><em>int</em></a>)·–·the·sprint·to·add·issues·to</p></li>

The comparison build only gets:

<li><p><strong>sprint_id</strong>·(<em>int</em>)·–·the·sprint·to·add·issues·to</p></li>
 

Is this a failure in the Salsa pipeline, the reproducible-build scripts or in Sphinx?



-- 
Neil Williams
=============
https://linux.codehelp.co.uk/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/reproducible-builds/attachments/20211119/a68549a2/attachment.sig>


More information about the Reproducible-builds mailing list