executablebooks / sphinx-book-theme

A clean book theme for scientific explanations and documentation with Sphinx
https://sphinx-book-theme.readthedocs.io
BSD 3-Clause "New" or "Revised" License
441 stars 201 forks source link

Sphinx 7 support #744

Closed LecrisUT closed 1 year ago

LecrisUT commented 1 year ago

Cannot install testing suite because of dependency hell. Any advice on this? See my fork PR https://github.com/LecrisUT/sphinx-book-theme/pull/1. Any ways to drop myst-nb and sphinx_thebe testing requirement? It is hell to try and detangle their testing requirements.

welcome[bot] commented 1 year ago

Thanks for submitting your first pull request! You are awesome! :hugs:
If you haven't done so already, check out EBP's Code of Conduct and our Contributing Guide, as this will greatly help the review process.
Welcome to the EBP community! :tada:

PhilipVinc commented 1 year ago

myst-nb actually supports sphinx 7, we simply need the maintainers to tag a new release...

LecrisUT commented 1 year ago

Indeed, you can see the author there :D https://github.com/executablebooks/MyST-NB/pull/524. Right now Sphinx-thebe is the hold-up https://github.com/executablebooks/sphinx-thebe/pull/67. I don't know how to make a good testing suite there to decouple it from sphinx-book-theme which otherwise creates a cyclic dependency issue.

Eutropios commented 1 year ago

Is there any word on this being resolved?

LecrisUT commented 1 year ago

If we can yolo both this and sphinx-thebe to get rid of the silly cyclic dependency the CIs will then be back running properly and we can pick up from there. @choldgraf any thoughts?

choldgraf commented 1 year ago

I've just made a release of sphinx-thebe to unblock this on the version pinning issue:

https://github.com/executablebooks/sphinx-thebe/releases/tag/v0.3.0

Myst NB also has a release candidate out (1.0.0rc0) that removes the sphinx pinning issue there too

Sorry for the slowness - I or @agoose77 can try to help provide review to get this over the finish line if @LecrisUT has cycles to get the tests passing

LecrisUT commented 1 year ago

Ok, I'll get the CIs back and running, and mark some of them as experimental if needed, then we can open new PRs to de-mark the experimental. Sounds good?

Btw, what are your thoughts on making some of the CIs more templetize (or even importable) to ve consistent across each other. I can write a mock-up over here and then have them moved to a new repo maintained more regularly under executablebooks?

choldgraf commented 1 year ago

For now I'd recommend just taking the minimal actions and complexity needed to support the latest Sphinx and be reasonably certain we aren't introducing obvious regressions. Improving broader infrastructure sounds good but like it might add a lot of extra work to getting this unblocked. Right now we are extremely heavily limited in maintainer capacity...

LecrisUT commented 1 year ago

@choldgraf Ok, for now here is some minimal updates, with a few fixed pytests. The currently failing ones seem trivial, just need to update the regression test files for different versions.

The windows CI does not work in how I wrote it. Can you help with that? I will mark it experimental for the time-being

Sorry a bit slow to push commits because pre-commit is having trouble updating on my side

LecrisUT commented 1 year ago

All ready on this PR, might add some CI improvements in another PR. The only one I don't understand is the windows one :(. Should be fine for at least a pre-release tag, since myst-nb is also gated as pre-release?

welcome[bot] commented 1 year ago

Congrats on your first merged pull request in this project! :tada: congrats
Thank you for contributing, we are very proud of you! :heart:

Eutropios commented 1 year ago

Thank you both for the hard work! @LecrisUT @choldgraf