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

Adopt the Xanadu Sphinx Theme #73

Merged
merged 10 commits into from
May 2, 2022
Merged

Conversation

Mandrenkov
Copy link
Collaborator

Context:

Currently, all Xanadu OSS projects include their own version of the Xanadu Sphinx theme; however, the Xanadu Sphinx Theme repository is now publicly available and is the preferred way to access the Xanadu CSS theme and Sphinx directives.

Description of the Change:

  • Deleted the docs/xanadu_theme directory.
  • Updated docs/requirements.txt and docs/conf.py to reference and use the (centralized) Xanadu Sphinx Theme.
  • Added a Python 3.10 classifier to setup.py.

Benefits:

  • The size of this repository is smaller, meaning git clone will run faster.
  • Updates to the Xanadu Sphinx theme no longer have to be manually ported to this repository.

Possible Drawbacks:
None.

Related GitHub Issues:
Depends on XanaduAI/xanadu-sphinx-theme#2.

@github-actions
Copy link

github-actions bot commented Apr 11, 2022

Test Report (C++) on Ubuntu

    1 files  ±0      1 suites  ±0   0s ⏱️ ±0s
524 tests ±0  524 ✔️ ±0  0 💤 ±0  0 ±0 
873 runs  ±0  873 ✔️ ±0  0 💤 ±0  0 ±0 

Results for commit 84d75aa. ± Comparison against base commit c74fd61.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Apr 11, 2022

Test Report (Python) on Ubuntu

    1 files  ±0      1 suites  ±0   6s ⏱️ -1s
300 tests ±0  300 ✔️ ±0  0 💤 ±0  0 ±0 

Results for commit 84d75aa. ± Comparison against base commit c74fd61.

♻️ This comment has been updated with latest results.

@Mandrenkov Mandrenkov marked this pull request as ready for review April 11, 2022 21:35
Copy link

@doctorperceptron doctorperceptron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks 🍾. Haven't tested.

Copy link

@thisac thisac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! Attempted to build/test it, but wasn't able to due to the makefile. It seems to be attempting to install requirements.txt (using pip) when simply running make docs. This might not be such a good idea, since, at least in my case, it will break my environment. 🤔

@Mandrenkov
Copy link
Collaborator Author

Thanks for the reviews, @doctorperceptron and @thisac!

Looks good! Attempted to build/test it, but wasn't able to due to the makefile. It seems to be attempting to install requirements.txt (using pip) when simply running make docs. This might not be such a good idea, since, at least in my case, it will break my environment. 🤔

Yeah, it also took a few tries for me to build Jet locally. I think we made a mistake by trying to automate too many things in the Makefile since it introduced some assumptions which don't necessarily hold in each environment. That said, I think we should also acknowledge that make docs is a complicated process:

  1. First, we need to build the Python bindings for the C++ part of Jet.
  2. Then, we need to install the Python part of Jet.
  3. Finally, we need to generate the Sphinx documentation for both the C++ and Python parts of Jet.

We can usually skip steps (1) and (2) for pure-Python projects but that is not the case here.

@josh146
Copy link
Member

josh146 commented Apr 12, 2022

Flyby comment, and I think this is not high priority at all, but you can set up sphinx to mock out the C++ libraries (I think this is what we did with the walrus back when it included C++) to avoid having to build the bindings.

The C++ part is still documented via doxygen/exhale/breathe

@Mandrenkov
Copy link
Collaborator Author

Flyby comment, and I think this is not high priority at all, but you can set up sphinx to mock out the C++ libraries (I think this is what we did with the walrus back when it included C++) to avoid having to build the bindings.

The C++ part is still documented via doxygen/exhale/breathe

Thanks for the comment, @josh146! Does the documented C++ part still include the bindings though? It would be a shame to discard that part of the documentation.

@josh146
Copy link
Member

josh146 commented Apr 12, 2022

Does the documented C++ part still include the bindings though? It would be a shame to discard that part of the documentation.

Ah The Walrus used Cython (not pybind11), so the C++ bindings were read statically by Sphinx... in retrospect not sure if that has implications here.

@Mandrenkov Mandrenkov merged commit 99c55ce into main May 2, 2022
@Mandrenkov Mandrenkov deleted the sc-17451-xanadu-sphinx-theme branch May 2, 2022 13:45
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.

4 participants