New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Failed to build docs due to missing package, but package listed in setup_requires #1323
Comments
The project is Lucidity The thing is that So my guess is that the environment that the actual sphinx build takes place in on readthedocs is different to the one that install was run in leading to missing dependencies. See the commented workaround in the setup.py: https://github.com/4degrees/lucidity/blob/master/setup.py#L48 If you fork and remove those lines you should be able to reproduce the issue. |
Ok I see. That is an issue on readthedocs end. But a minor IMO. Readthedocs has also the ability to install requirements from a We are currently implementing a new doc build system so it's unlikely that we get around to fix this issue before we have the new system in place. |
I had another look at this and read the documentation for
So I think putting the requirements for the sphinx build there is not appropriate as building the docs is not some part of the setup process of a project. I know that you are currently using a RTD is building the docs by calling the |
My perspective differs - I don't see why you would want to 'install' Sphinx et al when they are never used at runtime (this also pollutes the target environment). setup_requires seems the appropriate place for these build time dependencies and I don't see a disconnect with the docs you refer to in typical usage. Of course the readthedocs case is different where this is exactly what you want to do. Having said that, I don't think this stuff is particularly well defined in the Python world at present so am fine with your conclusion. I'll keep the workaround in Thanks for looking into it! |
I have a package listed in
setup_requires
in my project'ssetup.py
that is required to build the docs.Running locally works fine (
python setup.py build_sphinx
).Running on readthedocs give the following error:
I suspect this is because
setup_requires
dependencies do not end up in the virtualenv, but is there any way to fix this without doing special logic insetup.py
for readthedocs (ie. duplicatingsetup_requires
dependencies intoinstall_requires
) or adding anrtd_requirements
file to the project?The text was updated successfully, but these errors were encountered: