-
Notifications
You must be signed in to change notification settings - Fork 322
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
Coordinating with RtD about upcoming changes #795
Comments
Hmm... I think I might need to know the details of how things work on the client-side (readthedocs/addons#59) to make progress here. |
I wasn't able to document the process in a clear way yet, but I did the implementation of what I think is a good pattern to follow using our own theme at readthedocs/sphinx_rtd_theme#1526. I'd appreciate any feedback you may have about it. I did the same for CPython at python/cpython#116966 that you can also take a look. The usage of the data is the same, but it changes how the flyout/selectors are generated. Let me know. I'm happy to help here. |
Hmm... http://docs.devthedocs.org/_/addons/?project-slug=docs&version-slug=latest&client-version=0.12.0&api-version=1 from description of readthedocs/sphinx_rtd_theme#1526 is a 404 for me. Just to make sure my understanding correct:
If that understanding is correct, then I have the following questions:
|
Oh, and thanks for reaching out! It's appreciated! ^>^ |
Ups... That's a development instance URL. The one from production is https://docs.readthedocs.io/_/addons/?project-slug=docs&version-slug=latest&client-version=0.12.0&api-version=1 We've already made the changes for this pattern. Following your table, we are at Now + t1, were the old behavior is still working and the new behavior is deployed as well. Projects using Related blog posts:
I think this answers most of your questions and gives you a way to play around with this. You can see a live example of the implementation from our theme in our own documentation (it uses the PR that I shared previously): https://docs.readthedocs.io/en/stable/
Yes, but I'm leaving now 😄 . I will come to this issue tomorrow's morning. |
Initial PoC approach to talk about pradyunsg#795.
I opened #797 to talk more about this directly in the code, since I think it will be easier to know exactly what we are doing and where. Let me know if this is helpful as a first step.
It wasn't tomorrow, but close enough 😄 |
I just want to check here if you were able to take a look at the PR that I opened that explains a little how to integrate the new Read the Docs Addons. I'm happy to help here with this work, but I would need to understand how do you run the tests so I can experiment with that. Let me know if there is anything else here I can do to help with this. |
I wanted to share an update about our deprecation plan here 1:
I'd appreciate any feedback you may have about this plan. Also, I'm happy to help you with any code modification required on furo or on any other theme you are involved. Let me know 👍🏼 Footnotes |
🗞️ We are about to publish a post in our blog about this plan: readthedocs/website#308 |
This has been on my radar but free time hasn't been coming around often enough to get to this. Pesky things like cutting pip releases keep getting in the way. |
@humitos looks like you already went forward with this for new projects, as a project I created today doesn’t integrate anymore (html_context doesn‘t seem to be manipulated). You say you’re suggesting |
Hi @flying-sheep. New projects are using the new behavior, as you already noticed. We announced this in our blog at https://about.readthedocs.com/blog/2024/07/addons-by-default/ Regarding the Sphinx extension, you can find it at https://github.com/readthedocs/sphinx-build-compatibility/ and installing it directly from GitHub. I'd appreciate any feedback you may have. (from the phone 📱) |
That’s pretty clumsy, I basically have to add this to conf.py from importlib.util import find_spec
_sbc = (
["sphinx_build_compatibility.extension"]
if find_spec("sphinx_build_compatibility")
else []
)
extensions = [..., *_sbc] then add a file
then reference that in .readthedocs.yml: python:
install:
- method: pip
path: .
extra_requirements:
- docs
+ - requirements: docs/requirements-sbc.txt If you publish it on PyPI, @pradyunsg could at least do a hotfix where Furo would depend on that extension until Furo has migrated. And it’s still not clean: |
So, even installing that extension you are not getting the flyout properly integrated? If so, can you please open an issue on that extension that I mentioned in my previous comment so we can track it there, please. Also, mention your read the docs project and the build link. |
Oh, right. I'll try to make time this weekend for this (sorry, dealing with some family stuff that's needed attention so I've been slipping on a few things like this). 😅 |
See https://about.readthedocs.com/blog/2024/07/addons-by-default/ See pradyunsg/furo#795 Signed-off-by: Romain Bezut <[email protected]>
I think by now the changes have rolled out … |
What's happening?
Read the Docs is going to make changes to both how they're building Sphinx projects as well as how they're injecting functionality into the rendered documentation sets.
https://github.com/readthedocs/addons is the upcoming JS client to enable this functionality, which would be injected server-side when serving HTML pages AFAICT.
Reproducer
N/A
Expectation
This issue would be resolved with Furo making changes to all the spots where it depends on some details related to RtD. As of 2024.04.27, these are:
Code of Conduct
The text was updated successfully, but these errors were encountered: