Can't run offline due to setup_requires - calls home

Ben Finney ben+python at
Mon Feb 11 10:57:30 EST 2019

Chris Narkiewicz via Python-list <python-list at> writes:

> debian/rules calls this pip to install all requirements from local
> package collection:
> pip3 install --log=... --no-cache --no-index --find-links=pypi
> --no-binary=":all:" -r requirements.txt

As you have observed, this fails because Setuptools does not correctly
handle the ‘setup_requires’ option

> Directory pypi contains ALL dependencies required for build.

All of the build dependencies, *including* the ones specified in

> This works ok when build server has connection to network, but fails for
> offline builds. I pinpointed the problem to package Automat, that
> specifies some dependencies via setup_requires=[...]:
> setup(
>     ...,
>     setup_requires=[
>         'setuptools-scm',
>         'm2r',
>     ],
>     ...
> )

To avoid the Setuptools bug, the PyPA recommends dropping the
‘setup_requires’ option and instead specifying build dependencies in a
PEP 518 formatted metadata file

You could create such a specification (by adding a metadata file),
ensure those dependencies are also present locally, and meanwhile
present the maintainers of this project with your merge request to add
that metadata file.

 \       “What do religious fundamentalists and big media corporations |
  `\   have in common? They believe that they own culture, they are so |
_o__)                     self-righteous about it …” —Nina Paley, 2011 |
Ben Finney

More information about the Python-list mailing list