-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
A way to disable installation of default requirements #8208
Comments
We are working in a POC that won't execute any command by default and could be useful for this use case: #9150 |
I've noticed that this feature is now shipped as a beta. It does seem that once the issues such as the non-working flyout menu get resolved and it becomes stable, this would be a viable solution but I do wonder if in the future it's going to be possible to just override the default |
Either way, the new build.commands feature works wonders for my project, simple change to the newer build process and a couple of manual commands and I'm set with 30 seconds improvement in build time pretty much for free, awesome! Can't really merge it until the rough edges (I only can notice the lack of a flyout menu, the search might be slower but I'm unsure because I think might be working somewhat differently on PR builder builds) but it's a great advancement and I can't wait to be able to take advantage of it :) Edit: I've missed the unchanged |
You are correct. Currently, this is not possible. However, we have been discussing internally how to allow this in the future. We do have a plan mostly finished but we want to keep collecting some data about how people are using We think users could define a backend builder and override some particular commands from that backend. An example of what we have talked and what could potentially be a solution: # .readthedocs.yaml
build:
backend: readthedocs-sphinx # may comes from PyPI
jobs:
install: null
build:
- sphinx-build -W -b html docs/ _readthedocs/html To be able to support something like this, we first need to define "The Build Contract ™️". This contract will define what the
Full-Text search is not yet integrated. The results that you are seeing when you search are the default from Sphinx, but they are not using the Read the Docs' search backed yet. We are working on that at #9307
Exactly. There is no integrations at all currently when using |
With the work we are doing on the new addons repository https://github.com/readthedocs/addons/ we are getting closer to be able to support this. |
This is going to be the default on August 7th. Read more about it at https://blog.readthedocs.com/python-core-requirements-changed/ I can enable it on your project before that date if you want. |
Do I understand correctly that adding
That would be appreciated, the project is linked in the issue description and this account is linked up with the mentioned RTD user that has maintainer perms on that project, let me know if you'll need more from me to verify that I have maintainer rights. |
For projects using Sphinx, it will execute:
for projects using MkDocs, it will execute:
If you want to install different versions, you can use a
Enabled. |
Details
Expected Result
I expect to have a way to not have RTD install the default requirements.
Actual Result
In an effort to speed up the project's builds, I looked through RTD's build logs and noticed that a not-insignificant amount of time is taken by RTD installing its "default" requirements. Later, a lot of these dependencies have to be installed again because my project is using different versions (generally newer ones as it seems from #5201 that they are quite outdated) of those libraries causing it to take almost double the time on
pip install
-ing the dependencies.While the default build might need these dependencies, it does not appear that they are needed when I provide a custom
conf.py
. However, even if I need some of them, I could probably just determine and maintain such a list on my own and put any missing requirements as part of the requirements defined in.readthedocs.yml
The text was updated successfully, but these errors were encountered: