-
Notifications
You must be signed in to change notification settings - Fork 20
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 docs on PR; deploy docs on push to default branch #255
Test docs on PR; deploy docs on push to default branch #255
Conversation
9e8c3e8
to
5fcb5ef
Compare
4fbba0d
to
d9fbdfa
Compare
83eb437
to
d9fbdfa
Compare
d9fbdfa
to
10d1063
Compare
This will be replaced by CI with deshaw#255.
10d1063
to
a336059
Compare
Sphinx has an annoying behavior where it tries to create links for type hints. If you can't get it to work, you can probably get it to work with some combination of |
This looks fine. The only way to really know is to merge it. I would just make sure to check that whatever commit is made to the |
Thanks - I'll spend a few more minutes trying to get type hints to work before merging. I should also mention that we'll change the docs deployment mechanism after this merge: instead of committing the static site to the |
I'm not so sure about that. gh-pages is how GitHub pages works. Also the benchmarks are also hosted there too. |
I know |
a336059
to
907d172
Compare
907d172
to
f7a6f79
Compare
@asmeurer Thanks for the sphinx advice above. I actually got this working just perfectly by
Now in our docs python or h5py types now point to the python or h5py documentation directly for the functions that have type annotations that use these types. 🎉 |
This PR handles automatic building and deploying of the docs.
master
branch. This workflow makes use of the new github pages action-based deployment mechanism.delete_versions
. I think this has something to do withh5py.File
being a dependency, but I couldn't get sphinx to build if I did anything else. Here's all the things I tried that failed to build:sphinx.ext.intersphinx
and settingintersphinx_mapping
to theh5py
docs. I verified that the correct object file was being pulled bysphinx
during the build process, and that the object file contained theFile
class as expectedautodoc_mock_modules
to mock out the external dependency; stillsphinx
complained about not being able to find the class definitionimport h5py
insidereplay.py
the build fails with the string annotationimport h5py
insidereplay.py
and convert the string annotation to an actual reference to theFile
class, the build failsrever.xsh
So while it would be nice to have an intersphinx connection, I'm not sure it's worth it at this time to continue fighting with sphinx. If anyone knows how to do this correctly, a PR against the branch would be welcome.
Closes #199.
Testing
I tested these workflows in a separate repository and was able to deploy the docs successfully.