-
Notifications
You must be signed in to change notification settings - Fork 325
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
create additional test without respecting restrictions on sphinx version of dependant packages #1099
Comments
What about this for pyproject.toml changes:
I think this would allow our test installs to grab sphinx 6.0 immediately (without needing to set up new github workflows). Then you can run the tests and see what fails. In
Then if necessary we can add any additional tests (though I think once we're running sphinx 6, at least one of the above four will fail on main and pass on #1097). It would probably be good to still add a separate GitHub workflow (or matrix) so that we expressly test against sphinx 5.3 and 6.0, but I'd wait to do that until the above steps are done. |
sounds good, I'll start on providing a PR on this. Thanks for hinting me on the adjustments necessary in the testsuite. |
Hey, looked into it and can't determine what needs to be changed with the tests - could you elaborate? It seems that the tests are running through anyways with old sphinx and failing with newest without those adjustments. |
I created a new environment like this: $ mamba create -n pst_sphinx6 accessible-pygments numpydoc linkify-it-py pytest pytest-regressions rich sphinxext-rediraffe sphinx-sitemap ablog jupyter_sphinx pandas plotly matplotlib numpy xarray sphinx-copybutton sphinx-togglebutton ipyleaflet nbsphinx pytest pytest-cov codecov colorama pyyaml pre-commit nox sphinx==6
$ conda activate pst_sphinx6
$ pip install -e . # assuming already in root of cloned repo
$ nox -s test --no-venv # lots of failures then I updated and |
I think they don't have to be changed, compare #1097 (comment) . Update, now that I had a coffee I can write a more detailed and focused response: This issue and the associated PR is about allowing tests to use the newest sphinx version. It will obviously fail, but that is intended - as you suggested here, this would introduce failing tests on main where #1097 would then have passing tests on that branch. Therefore, no fixing of any logo issues should happen here. Side-Note: we would need a pre-release to have the |
closing, superseded by #1136 |
The error in #1094 wasn't catched by the tests as they are relying on myst-nb (executablebooks/MyST-NB#466) and sphinx-design (executablebooks/sphinx-design#118), which are both restricting
sphinx<6
.Happy to hear your opinion on which of the below options would be preferred (or is there a third?).
Option 1
Add new optional dependency sections in
pyproject.toml
(doc_newest_sphinx
andtest_newest_sphinx
) and add additional nox routine for testing without installing the above mentioned packages, therefore using the latest version.In addition, add a second testing to
.github/workflows/tests.yml
using this optional dependency section (would currently fail on main).Optional: somehow doublecheck that no restriction pins sphinx - maybe directly use sphinx from github upstream?
Option 2
add another test routine directly to
test.yml
that simply doespip install --upgrade sphinx
( maybe--pre
?) before running the tests to ignore the constrained imposed by the packages. Easier but hackier, I'd prefer the first one.The text was updated successfully, but these errors were encountered: