Opened 7 weeks ago

Last modified 7 weeks ago

#31907 new defect

sage_bootstrap.download fails to download from pypi.io

Reported by: mkoeppe Owned by:
Priority: major Milestone: sage-9.4
Component: build Keywords:
Cc: dimpase, vbraun Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description

On ubuntu-trusty (https://github.com/mkoeppe/sage/runs/2741662485?check_suite_focus=true)

  [numpy-1.20.3]   ERROR [transfer|run:135]: [Errno 403] [[[!!! BREAKING CHANGE !!!]]] Support for clients that do not support Server Name Indication is temporarily disabled and will be permanently deprecated soon. See https://status.python.org/incidents/hzmjhqsdjqgb and https://github.com/pypa/pypi-support/issues/978 [[[!!! END BREAKING CHANGE !!!]]]: '//pypi.io/packages/source/n/numpy/numpy-1.20.3.zip'
  [numpy-1.20.3]   ************************************************************************
  [numpy-1.20.3]   Traceback (most recent call last):
  [numpy-1.20.3]     File "/sage/build/bin/../sage_bootstrap/download/cmdline.py", line 126, in run_safe
  [numpy-1.20.3]       run()
  [numpy-1.20.3]     File "/sage/build/bin/../sage_bootstrap/download/cmdline.py", line 108, in run
  [numpy-1.20.3]       app.download_tarball(args.url_or_tarball, args.destination, args.allow_upstream)
  [numpy-1.20.3]     File "/sage/build/bin/../sage_bootstrap/download/app.py", line 41, in download_tarball
  [numpy-1.20.3]       tarball.download(allow_upstream=allow_upstream)
  [numpy-1.20.3]     File "/sage/build/bin/../sage_bootstrap/tarball.py", line 178, in download
  [numpy-1.20.3]       raise FileNotMirroredError('tarball does not exist on mirror network and neither at the upstream URL')
  [numpy-1.20.3]   FileNotMirroredError: tarball does not exist on mirror network and neither at 

Change History (1)

comment:1 Changed 7 weeks ago by slelievre

The error message includes these two urls:

where explanations involve a bunch of acronyms including:

  • CDN (content delivery network)
  • PSF (Python Software Foundation)
  • SNI (server name indication)
  • TLS (Transport Layer Security)
  • VCL (Varnish conguration language)

and the general idea is that Fastly, a company that sponsors the Python Software Foundation by providing hosting and a content delivery network, in particular for files at pypi.org and at pythonhosted.org, dropped support for "non-SNI clients".

The hints in the discussion include:

  • check if your Python and OpenSSL version supports SNI with
    python2 -c "import ssl; print(ssl.HAS_SNI)"
    
  • append --trusted-host pypi.org --trusted-host files.pythonhosted.org to pip install commands

Related:

Not sure that helps at all but just in case.

Note: See TracTickets for help on using tickets.