Skip to content
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

Prepare for 3.0 release #1576

Merged
merged 23 commits into from
Aug 20, 2024
Merged

Prepare for 3.0 release #1576

merged 23 commits into from
Aug 20, 2024

Conversation

humitos
Copy link
Member

@humitos humitos commented Jul 24, 2024

It seems we had a bug in the name and it wasn't installing Sphinx from `master`.
I expect this test to fail now because we pin `Sphinx<8`, but that's fine for now.
- Drop Python <3.8
- Drop docutils <=0.18
- Add support for docutils 0.21
- Add support for Python 3.12

This follows the plan we wrote in
https://sphinx-rtd-theme.readthedocs.io/en/stable/development.html#roadmap-release-3-0-0

The main idea here is to move forward with newer versions and drop support for
old stuffs so we reduce the maintanence burden.
@humitos humitos requested a review from a team as a code owner July 24, 2024 09:37
@humitos humitos changed the title Tests: sphinxdev tox environment installs Sphinx from master Prepare for 3.0 release Jul 25, 2024
@humitos humitos self-assigned this Jul 25, 2024
@alex
Copy link

alex commented Jul 30, 2024

Sphinx 8 was just released, it probably makes sense to try to include support for that here (assuming it's not an unreasonable amount of work).

@zaufi
Copy link

zaufi commented Jul 31, 2024

Sphinx 8 was just released…

And 2.0.0 version has a problem w/ it: #1571

@humitos
Copy link
Member Author

humitos commented Aug 1, 2024

Remove 'extra_css_files' #450

We should include a deprecation warning in 3.0, so we can remove it in 4.0 (from #450 (comment)). I agree with that 👍🏼

@humitos
Copy link
Member Author

humitos commented Aug 12, 2024

I did some QA here using master branch and this PR.

  1. Build from master
    tox -e "py310-sphinx{62,72,latest,dev}"
    
  2. Build from this PR
    tox -e "py310-sphinx{62,72,latest,dev}-qa"
    
  3. Open firefox and check for differences
    firefox .tox/py310-sphinx72/tmp/html/demo/demo.html
    firefox .tox/py310-sphinx72-qa/tmp/html/demo/demo.html
    
  4. Take a look at directory diff
    diff -u .tox/py310-sphinx72/tmp/html/ .tox/py310-sphinx72-qa/tmp/html/
    

I haven't find any difference here, so I think we are good to go 👍🏼

After that, I switch to this PR in particular and run tox -e "py310-sphinx{62,74,80,latest,dev}" to find out differences between these versions but I found nothing. I'd say we are ready to move forward with a 3.0rc1 release after doing 2.1.0rc2 (see #1580)

@humitos humitos requested a review from agjohnson August 12, 2024 14:24
@humitos
Copy link
Member Author

humitos commented Aug 12, 2024

I added a few extra commits to update the docs and add some deprecation warnings 👍🏼

@agjohnson
Copy link
Collaborator

Also, you don't mention this above, but if you aren't already you should also test multiple browsers and also test for tablet/mobile viewport. Chromium is fairly compatible with Firefox these days, Webkit usually gives the most unexpected results. Mobile and tablet viewport sizes mostly affect elements that require positioning, like footnotes, sidebar, and tables.

@humitos
Copy link
Member Author

humitos commented Aug 19, 2024

test multiple browsers and also test for tablet/mobile viewport

I did this and there are some differences. Depending on the "Dimensions" and "Rotation" it renders better in the old or new versions --but also it seems they are fixed in Sphinx 8.x (or even in the development branch) because I'm not able to reproduce them there. I think we can make a more extensive QA here as we go and open specific issues. I haven't found anything completely broken, tho, so I don't want to block moving forward with a release that supports Sphinx 8.x because of this.

I will merge this PR and release a 3.0.0rc1 so users can start using/testing it and report specific issues we can work on.

Currently, Sphinx 8.x users are getting 0.5.x version of the theme which is worse than that the current one -- even with this small issues on tablet/mobile issues.

@alex
Copy link

alex commented Aug 19, 2024

Great to hear @humitos , thanks!

@agjohnson
Copy link
Collaborator

@humitos Could you note the differences in an issue? We should follow up on these after an RC is out.

Styling does not frequently break completely, normally differences in docutils releases (and sometimes Sphinx) causes either changes in spacing, sizing, or positioning. Sometimes entire structures have changed (footnotes) and rendering is completely different.

@humitos humitos merged commit 6b587d1 into master Aug 20, 2024
7 checks passed
@humitos humitos deleted the humitos/plan-3.0 branch August 20, 2024 11:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

Support Sphinx 8 Outdated docutils dependendancy Support for docutils 0.21
4 participants