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

Test multiple Sphinx and OS versions #70

Merged
merged 17 commits into from Oct 21, 2022
Merged

Conversation

hugovk
Copy link
Contributor

@hugovk hugovk commented Oct 17, 2022

Fixes #36.

Includes PR #67 to avoid conflicts.


#36 (comment) says:

We should test on all platforms.

The workflow should be:

  1. ubuntu python3.6 builds the wheel and uploads it as an artifact
  2. [win, mac, ubuntu] x [py 3.6, 3.7, 3.8, 3.9] download and test the wheel
  3. ubuntu uploads the wheel

So let's do this, except using Python 3.7 instead of removed EOL 3.6, and testing the wheel on 3.7-3.11.

  • Was there a particular reason 3.6 was suggested for building the wheel? Should we use a newer one like 3.10?

Further, #36 (comment) says:

We should also test on major supported sphinx versions

So let's also test on Sphinx 4, 5 and 6 beta.

  • I did try Sphinx 2 and 3 as well but they failed due to incompatibilities of Sphinx dependencies, and it's probably not worth supporting such old versions. It would make the matrix even bigger than the current 51(!) jobs and be more complex as they don't support 3.10+ either.

  • The matrix could be reduced by only testing oldest and newest Python stable versions, plus RC + PyPy (i.e. 3.7, 3.10, 3.11-dev, pypy3.8)


image

https://github.com/hugovk/sphinxext-opengraph/actions/runs/3263561876

@hugovk hugovk mentioned this pull request Oct 17, 2022
@hugovk
Copy link
Contributor Author

hugovk commented Oct 21, 2022

These required checks will need updating:

image

Because it can be tedious work removing and adding these in the settings when Python versions change, one option is to have a final no-op job that depends on the others. And then just mark that final as required.

For example:

https://github.com/hugovk/norwegianblue/blob/8cb61db6dd8a7f5d4e19c389eb91a70c820354d7/.github/workflows/test.yml#L49-L55

image

https://github.com/hugovk/norwegianblue/actions/runs/3177642324

Would you like something similar here?

@Daltz333
Copy link
Member

Merging, and an issue can be opened for continue discussion. Gotta update the CI checks. Thanks!

@Daltz333 Daltz333 merged commit cba0938 into wpilibsuite:main Oct 21, 2022
@hugovk hugovk deleted the update-ci2 branch October 21, 2022 18:54
@hugovk hugovk mentioned this pull request Nov 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Test multiple Sphinx/OS
3 participants