[x] Based your PR on the latest version of the correct branch (master or 4.x)
[x] Checked your writing carefully for correct English spelling, grammar, etc
[x] Described your changes and the motivation for them below
[x] Noted what issue(s) this pull request resolves, creating one if needed
Description of Changes
As has long been planned, this (currently) WiP PR migrates the Spyder Docs site from our very outdated, heavily customized PyData Sphinx Theme fork to the modern upstream versions, as well as migrating our other obsolete dependencies blocked on the same (Sphinx 3, Sphinx-Panels and Sphinx-Multiversion to Sphinx 7, Sphinx-Design and PST's version switcher, respectively).
Currently quite WiP, but publishing this as a PR for visibility and so we have a public preview. The plan is to work on this over the next two weeks, and have it ready to merge before I leave for PyCon.
Migration elements:
From a very outdated heavily customized fork of the PyData Sphinx Theme to the latest upstream version (0.15.2)
From the ancient Sphinx 3 to the latest Sphinx 7
From the obsolete, unsupported Sphinx-Panels to its successor Sphinx-Design
From the unmaintained, no longer properly functional Sphinx-Multiversion to the built-in multiversion support of PST
As a result, this:
Substantially improves the site's layout, responsiveness and functionality,
Allows us to take advantage of current and future improvements in the theme,
Adds critical support for multi-versions and translations that we need,
Eliminates a large amount of complexity and maintenance on our site,
Gets rid of obsolete dependencies in favor of modern, supported equivalents
Overall, pays off a large amount of accumulated techdebt
Work plan for initial PR
[x] Commit initial baseline
[x] Update requirements* files
[x] Update contributing guide
[x] Fix build things
[x] Image permissions issue
[x] Language tag
[x] Theme settings warning
[x] Panel directive on main page
[x] Dropdown ids
[x] Fix CSS and JS
[x] Div to section: CSS placement and color of fa icons
[x] Check others (videos, etc)
[x] Sphinx-Panels to Sphinx-Design CSS classes/structure (panels, dropdown)
[x] Dropdown (FAQ)
[x] Card Header (Videos)
[x] Check others
[x] Fix copyright at bottom
[x] Fix image bottom margin (at least on main page)
[x] Use logo SVG with light background
~Fix Javascript so FAQs drop down and have clickable links~ Followup
[x] Configure theme
[x] Appropriate number of top links + external
[x] Hide sidebar with empty toctree
[x] Check other config settings
[x] Set up for multiversion support
[x] Make sure to show version warning banner
[x] Make sure quickstart works
[x] Update deployment infra accordingly
[x] Remove unnecessary stuff
[x] Templates
[x] conf.py settings & customization
[x] Quickstart assets
[x] CSS and Javascript
[x] version selector stuff
[x] Temp fix for invisible heading
~Makefiles~ Followup
Followup PRs plan to:
Add back automatic FAQ uncollapse on URL fragment id
Port our current makefile-based system to Nox
Add full translation support and tooling
Refine various other aspects of the design and layout
Issue(s) Resolved
Fixes #170 (incidentally, since images are now left-aligned rather than centered)
Pull Request
Pull Request Checklist
Description of Changes
As has long been planned, this (currently) WiP PR migrates the Spyder Docs site from our very outdated, heavily customized PyData Sphinx Theme fork to the modern upstream versions, as well as migrating our other obsolete dependencies blocked on the same (Sphinx 3, Sphinx-Panels and Sphinx-Multiversion to Sphinx 7, Sphinx-Design and PST's version switcher, respectively).
Currently quite WiP, but publishing this as a PR for visibility and so we have a public preview. The plan is to work on this over the next two weeks, and have it ready to merge before I leave for PyCon.
Migration elements:
As a result, this:
Work plan for initial PR
Followup PRs plan to:
Issue(s) Resolved
Fixes #170 (incidentally, since images are now left-aligned rather than centered)