diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index 03e692de..3c7eea04 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -33,25 +33,24 @@ jobs: name: Test documentation build runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v4 + - uses: actions/checkout@v4 + with: + submodules: true - name: Install Qermit run: pip install -e .[docs] -v - name: Build Docs run: | - cd docs_src - ./build_docs.sh - cd ../manual - ./build_manual.sh + cd docs + ./build-docs.sh - name: Save documentation uses: actions/upload-artifact@v4 with: name: docs_html - path: docs/ + path: docs/build - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: - path: 'docs/' + path: 'docs/build' formatting-checks: name: Check typing and formatting diff --git a/.github/workflows/deploy_docs.yml b/.github/workflows/deploy_docs.yml index b1a4a2d6..5b42f6c1 100644 --- a/.github/workflows/deploy_docs.yml +++ b/.github/workflows/deploy_docs.yml @@ -21,27 +21,26 @@ jobs: url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v4 + - uses: actions/checkout@v4 + with: + submodules: true - name: Install Qermit run: pip install .[docs] - name: Setup Pages uses: actions/configure-pages@v3 - name: Build Docs run: | - cd docs_src - ./build_docs.sh - cd ../manual - ./build_manual.sh + cd docs + ./build-docs.sh - name: Save documentation uses: actions/upload-artifact@v4 with: name: docs_html - path: docs/ + path: docs/build - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: - path: 'docs/' + path: 'docs/build' - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore index 8869b613..90a6d184 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,4 @@ .DS_Store .venv build -docs/ +docs/build diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 00000000..cce7cbd1 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "docs/quantinuum-sphinx"] + path = docs/quantinuum-sphinx + url = https://github.com/CQCL/quantinuum-sphinx.git + branch = dist diff --git a/README.md b/README.md index 808b36be..96b8adef 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,9 @@ [![PyPI version](https://badge.fury.io/py/qermit.svg)](https://badge.fury.io/py/qermit) -`qermit` is a python module for running error-mitigation protocols on quantum processors using [`pytket`](https://github.com/CQCL/pytket), the Cambridge Quantum python module for interfacing with [CQC](https://cambridgequantum.com/) TKET, a set of quantum programming tools. +`qermit` is a python module for running error-mitigation protocols on quantum processors using the [pytket](https://docs.quantinuum.com/tket) quantum computing toolkit. -This repo containts API documentation, a user manual for getting started with `qermit` and source code. +This repo contains API documentation, a user manual for getting started with `qermit` and source code. ## Getting Started diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 00000000..397392c3 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,30 @@ +# Building the docs + +1. Clone repo checking out submodules + +```shell +git clone git@github.com:CQCL/Qermit.git --recurse-submodules +``` + +2. Install Qermit and docs dependencies + +```shell +pip install -e .[docs] +``` + +Here an editable wheel is installed with pip. It is also possible to use poetry. + +3. Run the `build-docs.sh` script inside `docs`. + +```shell +cd docs +bash ./build-docs.sh +``` + +4. Serve html locally (optional) + +```shell +npx serve build +``` + +Alternatively, just look at the built html pages in `docs/build`. Serving the html locally allows you to see the navbar. \ No newline at end of file diff --git a/docs/_static/nav-config.js b/docs/_static/nav-config.js new file mode 100644 index 00000000..fb43109f --- /dev/null +++ b/docs/_static/nav-config.js @@ -0,0 +1,20 @@ +const navConfig = { + "navTextLinks": [ + { + "title": "API docs", + "href": "index.html", + }, + { + "title": "Manual", + "href": "manual/manual_index.html", + }, + ], + "navProductName": "Qermit", + "navIconLinks": [ + { + "title": "Qermit Github", + "href": "https://github.com/CQCL/qermit", + "iconImageURL": "_static/assets/github.svg", + }, + ], +} \ No newline at end of file diff --git a/docs/build-docs.sh b/docs/build-docs.sh new file mode 100755 index 00000000..8700409b --- /dev/null +++ b/docs/build-docs.sh @@ -0,0 +1,2 @@ +rm -rf build +sphinx-build -b html . build -W diff --git a/docs_src/clifford_noise_characterisation.rst b/docs/clifford_noise_characterisation.rst similarity index 100% rename from docs_src/clifford_noise_characterisation.rst rename to docs/clifford_noise_characterisation.rst diff --git a/docs_src/conf.py b/docs/conf.py similarity index 84% rename from docs_src/conf.py rename to docs/conf.py index 42dc5027..5098701c 100644 --- a/docs_src/conf.py +++ b/docs/conf.py @@ -44,9 +44,6 @@ "sphinx.ext.viewcode", ] -# Add any paths that contain templates here, relative to this directory. -templates_path = ["_templates"] - # The suffix(es) of source filenames. # You can specify multiple suffix as a list of string: # @@ -73,20 +70,12 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = "sphinx_book_theme" - -html_theme_options = { - "repository_url": "https://github.com/CQCL/qermit", - "use_repository_button": True, - "use_issues_button": True, - "logo": { - "image_light": "_static/Quantinuum_logo_black.png", - "image_dark": "_static/Quantinuum_logo_white.png", - }, -} - -html_static_path = ["_static"] -html_css_files = ["custom.css"] +html_theme = "furo" +templates_path = ["quantinuum-sphinx/_templates"] +html_static_path = ["quantinuum-sphinx/_static", "_static"] +html_favicon = "quantinuum-sphinx/_static/assets/quantinuum_favicon.svg" + +html_theme_options = {} # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, diff --git a/docs_src/frame_randomisation.rst b/docs/frame_randomisation.rst similarity index 100% rename from docs_src/frame_randomisation.rst rename to docs/frame_randomisation.rst diff --git a/docs_src/index.rst b/docs/index.rst similarity index 94% rename from docs_src/index.rst rename to docs/index.rst index 7cceefbd..436cd55f 100644 --- a/docs_src/index.rst +++ b/docs/index.rst @@ -119,7 +119,14 @@ User Support If you have problems with the use of Qermit or you think you have found a bug, there are several ways to contact us: - Write an email to tket-support@cambridgequantum.com and ask for help with your problem. -- You can write a bug report on the `CQC github `_ with details of the problem and we will pick that up. You can also have a look on that page so see if your problem has already been reported by someone else. +- You can write a bug report on the `github repository `_ with details of the problem and we will pick that up. You can also have a look on that page so see if your problem has already been reported by someone else. + + +.. toctree:: + :hidden: + + manual/manual_index.rst + .. toctree:: :caption: API Reference: diff --git a/docs_src/leakage_detection.rst b/docs/leakage_detection.rst similarity index 100% rename from docs_src/leakage_detection.rst rename to docs/leakage_detection.rst diff --git a/manual/PEC_taskgraph.png b/docs/manual/PEC_taskgraph.png similarity index 100% rename from manual/PEC_taskgraph.png rename to docs/manual/PEC_taskgraph.png diff --git a/manual/addnwiresdiagram.png b/docs/manual/addnwiresdiagram.png similarity index 100% rename from manual/addnwiresdiagram.png rename to docs/manual/addnwiresdiagram.png diff --git a/manual/ancilla_mitex_taskgraph.png b/docs/manual/ancilla_mitex_taskgraph.png similarity index 100% rename from manual/ancilla_mitex_taskgraph.png rename to docs/manual/ancilla_mitex_taskgraph.png diff --git a/manual/appendtaskgraphimage.png b/docs/manual/appendtaskgraphimage.png similarity index 100% rename from manual/appendtaskgraphimage.png rename to docs/manual/appendtaskgraphimage.png diff --git a/manual/basic_uc_spam_taskgraph.png b/docs/manual/basic_uc_spam_taskgraph.png similarity index 100% rename from manual/basic_uc_spam_taskgraph.png rename to docs/manual/basic_uc_spam_taskgraph.png diff --git a/manual/cdr_taskgraph.png b/docs/manual/cdr_taskgraph.png similarity index 100% rename from manual/cdr_taskgraph.png rename to docs/manual/cdr_taskgraph.png diff --git a/manual/combined_mitex_final_taskgraph.png b/docs/manual/combined_mitex_final_taskgraph.png similarity index 100% rename from manual/combined_mitex_final_taskgraph.png rename to docs/manual/combined_mitex_final_taskgraph.png diff --git a/manual/combined_mitex_taskgraph.png b/docs/manual/combined_mitex_taskgraph.png similarity index 100% rename from manual/combined_mitex_taskgraph.png rename to docs/manual/combined_mitex_taskgraph.png diff --git a/manual/compile_mitres_gen.png b/docs/manual/compile_mitres_gen.png similarity index 100% rename from manual/compile_mitres_gen.png rename to docs/manual/compile_mitres_gen.png diff --git a/manual/dfsc_taskgraph.png b/docs/manual/dfsc_taskgraph.png similarity index 100% rename from manual/dfsc_taskgraph.png rename to docs/manual/dfsc_taskgraph.png diff --git a/manual/discard_mitres_taskgraph.png b/docs/manual/discard_mitres_taskgraph.png similarity index 100% rename from manual/discard_mitres_taskgraph.png rename to docs/manual/discard_mitres_taskgraph.png diff --git a/manual/frame_randomisation_taskgraph.png b/docs/manual/frame_randomisation_taskgraph.png similarity index 100% rename from manual/frame_randomisation_taskgraph.png rename to docs/manual/frame_randomisation_taskgraph.png diff --git a/manual/index-rst-template b/docs/manual/manual_index.rst similarity index 70% rename from manual/index-rst-template rename to docs/manual/manual_index.rst index 15eb5a4d..d7b40051 100644 --- a/manual/index-rst-template +++ b/docs/manual/manual_index.rst @@ -1,4 +1,4 @@ -qermit User Manual +Qermit User Manual ================== .. toctree:: @@ -6,4 +6,4 @@ qermit User Manual manual_intro.rst manual_mitres.rst - manual_mitex.rst + manual_mitex.rst \ No newline at end of file diff --git a/manual/manual_intro.rst b/docs/manual/manual_intro.rst similarity index 100% rename from manual/manual_intro.rst rename to docs/manual/manual_intro.rst diff --git a/manual/manual_mitex.rst b/docs/manual/manual_mitex.rst similarity index 100% rename from manual/manual_mitex.rst rename to docs/manual/manual_mitex.rst diff --git a/manual/manual_mitres.rst b/docs/manual/manual_mitres.rst similarity index 100% rename from manual/manual_mitres.rst rename to docs/manual/manual_mitres.rst diff --git a/docs_src/mitex_taskgraph.png b/docs/manual/mitex_taskgraph.png similarity index 100% rename from docs_src/mitex_taskgraph.png rename to docs/manual/mitex_taskgraph.png diff --git a/manual/mitres_compile_circs.png b/docs/manual/mitres_compile_circs.png similarity index 100% rename from manual/mitres_compile_circs.png rename to docs/manual/mitres_compile_circs.png diff --git a/docs_src/mitresgraph.png b/docs/manual/mitresgraph.png similarity index 100% rename from docs_src/mitresgraph.png rename to docs/manual/mitresgraph.png diff --git a/manual/prependtaskgraphimage.png b/docs/manual/prependtaskgraphimage.png similarity index 100% rename from manual/prependtaskgraphimage.png rename to docs/manual/prependtaskgraphimage.png diff --git a/manual/spam_mitres_decompose_taskgraph.png b/docs/manual/spam_mitres_decompose_taskgraph.png similarity index 100% rename from manual/spam_mitres_decompose_taskgraph.png rename to docs/manual/spam_mitres_decompose_taskgraph.png diff --git a/manual/taskgraphdecomposenodes.png b/docs/manual/taskgraphdecomposenodes.png similarity index 100% rename from manual/taskgraphdecomposenodes.png rename to docs/manual/taskgraphdecomposenodes.png diff --git a/manual/taskgraphparallel.png b/docs/manual/taskgraphparallel.png similarity index 100% rename from manual/taskgraphparallel.png rename to docs/manual/taskgraphparallel.png diff --git a/manual/taskgraphtomitresimage.png b/docs/manual/taskgraphtomitresimage.png similarity index 100% rename from manual/taskgraphtomitresimage.png rename to docs/manual/taskgraphtomitresimage.png diff --git a/manual/ufr_spam_taskgraph.png b/docs/manual/ufr_spam_taskgraph.png similarity index 100% rename from manual/ufr_spam_taskgraph.png rename to docs/manual/ufr_spam_taskgraph.png diff --git a/manual/zne_taskgraph.png b/docs/manual/zne_taskgraph.png similarity index 100% rename from manual/zne_taskgraph.png rename to docs/manual/zne_taskgraph.png diff --git a/docs_src/measurement_reduction.rst b/docs/measurement_reduction.rst similarity index 100% rename from docs_src/measurement_reduction.rst rename to docs/measurement_reduction.rst diff --git a/docs_src/mitex.rst b/docs/mitex.rst similarity index 100% rename from docs_src/mitex.rst rename to docs/mitex.rst diff --git a/manual/mitex_taskgraph.png b/docs/mitex_taskgraph.png similarity index 100% rename from manual/mitex_taskgraph.png rename to docs/mitex_taskgraph.png diff --git a/docs_src/mitres.rst b/docs/mitres.rst similarity index 100% rename from docs_src/mitres.rst rename to docs/mitres.rst diff --git a/manual/mitresgraph.png b/docs/mitresgraph.png similarity index 100% rename from manual/mitresgraph.png rename to docs/mitresgraph.png diff --git a/docs_src/mittask.rst b/docs/mittask.rst similarity index 100% rename from docs_src/mittask.rst rename to docs/mittask.rst diff --git a/docs_src/postselection.rst b/docs/postselection.rst similarity index 100% rename from docs_src/postselection.rst rename to docs/postselection.rst diff --git a/docs_src/probabilistic_error_cancellation.rst b/docs/probabilistic_error_cancellation.rst similarity index 100% rename from docs_src/probabilistic_error_cancellation.rst rename to docs/probabilistic_error_cancellation.rst diff --git a/docs/quantinuum-sphinx b/docs/quantinuum-sphinx new file mode 160000 index 00000000..a8ac27e0 --- /dev/null +++ b/docs/quantinuum-sphinx @@ -0,0 +1 @@ +Subproject commit a8ac27e089824099708da2cea9cef262e4df3ad2 diff --git a/docs_src/spam.rst b/docs/spam.rst similarity index 100% rename from docs_src/spam.rst rename to docs/spam.rst diff --git a/docs_src/spectral_filtering.rst b/docs/spectral_filtering.rst similarity index 100% rename from docs_src/spectral_filtering.rst rename to docs/spectral_filtering.rst diff --git a/docs_src/taskgraph.rst b/docs/taskgraph.rst similarity index 100% rename from docs_src/taskgraph.rst rename to docs/taskgraph.rst diff --git a/docs_src/utils.rst b/docs/utils.rst similarity index 100% rename from docs_src/utils.rst rename to docs/utils.rst diff --git a/docs_src/zero_noise_extrapolation.rst b/docs/zero_noise_extrapolation.rst similarity index 100% rename from docs_src/zero_noise_extrapolation.rst rename to docs/zero_noise_extrapolation.rst diff --git a/docs_src/Makefile b/docs_src/Makefile deleted file mode 100644 index d4bb2cbb..00000000 --- a/docs_src/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# Minimal makefile for Sphinx documentation -# - -# You can set these variables from the command line, and also -# from the environment for the first two. -SPHINXOPTS ?= -SPHINXBUILD ?= sphinx-build -SOURCEDIR = . -BUILDDIR = _build - -# Put it first so that "make" without argument is like "make help". -help: - @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) - -.PHONY: help Makefile - -# Catch-all target: route all unknown targets to Sphinx using the new -# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). -%: Makefile - @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) diff --git a/docs_src/_static/Quantinuum_logo_black.png b/docs_src/_static/Quantinuum_logo_black.png deleted file mode 100644 index 5569581b..00000000 Binary files a/docs_src/_static/Quantinuum_logo_black.png and /dev/null differ diff --git a/docs_src/_static/Quantinuum_logo_white.png b/docs_src/_static/Quantinuum_logo_white.png deleted file mode 100644 index e896db91..00000000 Binary files a/docs_src/_static/Quantinuum_logo_white.png and /dev/null differ diff --git a/docs_src/_static/custom.css b/docs_src/_static/custom.css deleted file mode 100644 index 618fe1b1..00000000 --- a/docs_src/_static/custom.css +++ /dev/null @@ -1,37 +0,0 @@ -.wy-side-nav-search, -.wy-nav-top { - background: #5A46BE; -} - -.wy-grid-for-nav, -.wy-body-for-nav, -.wy-nav-side, -.wy-side-scroll, -.wy-menu, -.wy-menu-vertical { - background-color: #FFFFFF; -} - -.wy-menu-vertical a:hover { - background-color: #d9d9d9; -} - -.btn-link:visited, -.btn-link, -a:visited, -.a.reference.external, -.a.reference.internal, -.wy-menu-vertical a, -.wy-menu-vertical li, -.wy-menu-vertical ul, -.span.pre, -.sig-param, -.std.std-ref, - -html[data-theme=light] { - --pst-color-inline-code: rgb(199, 37, 78) !important; -} - -.sig-name { - font-size: 1.25rem; -} \ No newline at end of file diff --git a/docs_src/build_docs.sh b/docs_src/build_docs.sh deleted file mode 100755 index f9946517..00000000 --- a/docs_src/build_docs.sh +++ /dev/null @@ -1,3 +0,0 @@ -rm -rf ../docs -sphinx-build -b html ./ ../docs -touch ../docs/.nojekyll diff --git a/manual/_static/Quantinuum_logo_black.png b/manual/_static/Quantinuum_logo_black.png deleted file mode 100644 index 5569581b..00000000 Binary files a/manual/_static/Quantinuum_logo_black.png and /dev/null differ diff --git a/manual/_static/Quantinuum_logo_white.png b/manual/_static/Quantinuum_logo_white.png deleted file mode 100644 index e896db91..00000000 Binary files a/manual/_static/Quantinuum_logo_white.png and /dev/null differ diff --git a/manual/_static/custom.css b/manual/_static/custom.css deleted file mode 100644 index 618fe1b1..00000000 --- a/manual/_static/custom.css +++ /dev/null @@ -1,37 +0,0 @@ -.wy-side-nav-search, -.wy-nav-top { - background: #5A46BE; -} - -.wy-grid-for-nav, -.wy-body-for-nav, -.wy-nav-side, -.wy-side-scroll, -.wy-menu, -.wy-menu-vertical { - background-color: #FFFFFF; -} - -.wy-menu-vertical a:hover { - background-color: #d9d9d9; -} - -.btn-link:visited, -.btn-link, -a:visited, -.a.reference.external, -.a.reference.internal, -.wy-menu-vertical a, -.wy-menu-vertical li, -.wy-menu-vertical ul, -.span.pre, -.sig-param, -.std.std-ref, - -html[data-theme=light] { - --pst-color-inline-code: rgb(199, 37, 78) !important; -} - -.sig-name { - font-size: 1.25rem; -} \ No newline at end of file diff --git a/manual/build_manual.sh b/manual/build_manual.sh deleted file mode 100755 index 0a6ddfed..00000000 --- a/manual/build_manual.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -sed "s/REQUIREMENTS/$(sed -e 's/[\&/]/\\&/g' -e 's/$/\\n/' ../requirements.txt | tr -d '\n')/" index-rst-template > index.rst -rm -rf ../docs/manual -sphinx-build -b html ./ ../docs/manual -rm index.rst diff --git a/manual/conf.py b/manual/conf.py deleted file mode 100644 index dde62ca6..00000000 --- a/manual/conf.py +++ /dev/null @@ -1,30 +0,0 @@ -# -*- coding: utf-8 -*- - -# Configuration file for the Sphinx documentation builder. -# See https://www.sphinx-doc.org/en/master/usage/configuration.html - -project = "qermit-manual" -copyright = "2023 Quantinuum" -author = "Quantinuum" - -extensions = [ - "sphinx.ext.autodoc", - "sphinx.ext.autosummary", - "sphinx.ext.mathjax", - "jupyter_sphinx", -] - -html_theme = "sphinx_book_theme" - -html_theme_options = { - "repository_url": "https://github.com/CQCL/qermit", - "use_repository_button": True, - "use_issues_button": True, - "logo": { - "image_light": "_static/Quantinuum_logo_black.png", - "image_dark": "_static/Quantinuum_logo_white.png", - }, -} - -html_static_path = ["_static"] -html_css_files = ["custom.css"] diff --git a/poetry.lock b/poetry.lock index 7f3fa281..0edd89fe 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,22 +1,4 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. - -[[package]] -name = "accessible-pygments" -version = "0.0.5" -description = "A collection of accessible pygments styles" -optional = true -python-versions = ">=3.9" -files = [ - {file = "accessible_pygments-0.0.5-py3-none-any.whl", hash = "sha256:88ae3211e68a1d0b011504b2ffc1691feafce124b845bd072ab6f9f66f34d4b7"}, - {file = "accessible_pygments-0.0.5.tar.gz", hash = "sha256:40918d3e6a2b619ad424cb91e556bd3bd8865443d9f22f1dcdf79e33c8046872"}, -] - -[package.dependencies] -pygments = ">=1.5" - -[package.extras] -dev = ["pillow", "pkginfo (>=1.10)", "playwright", "pre-commit", "setuptools", "twine (>=5.0)"] -tests = ["hypothesis", "pytest"] +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "alabaster" @@ -617,6 +599,23 @@ ufo = ["fs (>=2.2.0,<3)"] unicode = ["unicodedata2 (>=15.1.0)"] woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] +[[package]] +name = "furo" +version = "2024.8.6" +description = "A clean customisable Sphinx documentation theme." +optional = true +python-versions = ">=3.8" +files = [ + {file = "furo-2024.8.6-py3-none-any.whl", hash = "sha256:6cd97c58b47813d3619e63e9081169880fbe331f0ca883c871ff1f3f11814f5c"}, + {file = "furo-2024.8.6.tar.gz", hash = "sha256:b63e4cee8abfc3136d3bc03a3d45a76a850bada4d6374d24c1716b0e01394a01"}, +] + +[package.dependencies] +beautifulsoup4 = "*" +pygments = ">=2.7" +sphinx = ">=6.0,<9.0" +sphinx-basic-ng = ">=1.0.0.beta2" + [[package]] name = "graphviz" version = "0.20.3" @@ -1019,7 +1018,7 @@ tests = ["pytest (>=4.6)"] name = "msal" version = "1.31.1" description = "The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of users with Microsoft Azure Active Directory accounts (AAD) and Microsoft Accounts (MSA) using industry standard OAuth2 and OpenID Connect." -optional = false +optional = true python-versions = ">=3.7" files = [ {file = "msal-1.31.1-py3-none-any.whl", hash = "sha256:29d9882de247e96db01386496d59f29035e5e841bcac892e6d7bf4390bf6bd17"}, @@ -1102,7 +1101,7 @@ files = [ name = "nest-asyncio" version = "1.6.0" description = "Patch asyncio to allow nested event loops" -optional = false +optional = true python-versions = ">=3.5" files = [ {file = "nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c"}, @@ -1494,33 +1493,6 @@ files = [ [package.dependencies] typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0" -[[package]] -name = "pydata-sphinx-theme" -version = "0.16.0" -description = "Bootstrap-based Sphinx theme from the PyData community" -optional = true -python-versions = ">=3.9" -files = [ - {file = "pydata_sphinx_theme-0.16.0-py3-none-any.whl", hash = "sha256:18c810ee4e67e05281e371e156c1fb5bb0fa1f2747240461b225272f7d8d57d8"}, - {file = "pydata_sphinx_theme-0.16.0.tar.gz", hash = "sha256:721dd26e05fa8b992d66ef545536e6cbe0110afb9865820a08894af1ad6f7707"}, -] - -[package.dependencies] -accessible-pygments = "*" -Babel = "*" -beautifulsoup4 = "*" -docutils = "!=0.17.0" -pygments = ">=2.7" -sphinx = ">=6.1" -typing-extensions = "*" - -[package.extras] -a11y = ["pytest-playwright"] -dev = ["pandoc", "pre-commit", "pydata-sphinx-theme[doc,test]", "pyyaml", "sphinx-theme-builder[cli]", "tox"] -doc = ["ablog (>=0.11.8)", "colorama", "graphviz", "ipykernel", "ipyleaflet", "ipywidgets", "jupyter_sphinx", "jupyterlite-sphinx", "linkify-it-py", "matplotlib", "myst-parser", "nbsphinx", "numpy", "numpydoc", "pandas", "plotly", "rich", "sphinx-autoapi (>=3.0.0)", "sphinx-copybutton", "sphinx-design", "sphinx-favicon (>=1.0.1)", "sphinx-sitemap", "sphinx-togglebutton", "sphinxcontrib-youtube (>=1.4.1)", "sphinxext-rediraffe", "xarray"] -i18n = ["Babel", "jinja2"] -test = ["pytest", "pytest-cov", "pytest-regressions", "sphinx[test]"] - [[package]] name = "pygments" version = "2.18.0" @@ -1573,7 +1545,7 @@ diagrams = ["jinja2", "railroad-diagrams"] name = "pyqir" version = "0.10.6" description = "PyQIR parses, generates and evaluates the Quantum Intermediate Representation." -optional = false +optional = true python-versions = ">=3.8" files = [ {file = "pyqir-0.10.6-cp38-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:6a0221de2f0134fc4c4a3b55e957d48225221f582fd05a640bd9cebd4c70d5e0"}, @@ -1704,7 +1676,7 @@ zx = ["autoray (>=0.6.12)", "numba (>=0.60.0)", "quimb (>=1.8.2)"] name = "pytket-qir" version = "0.17.0" description = "Extension for pytket, providing functions for conversion into to qir" -optional = false +optional = true python-versions = ">=3.10" files = [ {file = "pytket_qir-0.17.0-py3-none-any.whl", hash = "sha256:f17338ad61dbf360caca108767463b926d2af1aefe97820a1cab51e0e1273fcd"}, @@ -1737,7 +1709,7 @@ qiskit-ibm-runtime = ">=0.21.0,<0.22.0" name = "pytket-quantinuum" version = "0.40.0" description = "Extension for pytket, providing access to Quantinuum backends" -optional = false +optional = true python-versions = ">=3.10" files = [ {file = "pytket_quantinuum-0.40.0-py3-none-any.whl", hash = "sha256:367e01bcb265e139979c4ec3a02a0a734bab5a1a5398eae9e42398a8ca6db1f1"}, @@ -1978,7 +1950,7 @@ requests = ">=2.0.0" name = "ruff" version = "0.7.4" description = "An extremely fast Python linter and code formatter, written in Rust." -optional = false +optional = true python-versions = ">=3.7" files = [ {file = "ruff-0.7.4-py3-none-linux_armv6l.whl", hash = "sha256:a4919925e7684a3f18e18243cd6bea7cfb8e968a6eaa8437971f681b7ec51478"}, @@ -2169,24 +2141,21 @@ lint = ["flake8 (>=6.0)", "importlib-metadata (>=6.0)", "mypy (==1.10.1)", "pyte test = ["cython (>=3.0)", "defusedxml (>=0.7.1)", "pytest (>=8.0)", "setuptools (>=70.0)", "typing_extensions (>=4.9)"] [[package]] -name = "sphinx-book-theme" -version = "1.1.3" -description = "A clean book theme for scientific explanations and documentation with Sphinx" +name = "sphinx-basic-ng" +version = "1.0.0b2" +description = "A modern skeleton for Sphinx themes." optional = true -python-versions = ">=3.9" +python-versions = ">=3.7" files = [ - {file = "sphinx_book_theme-1.1.3-py3-none-any.whl", hash = "sha256:a554a9a7ac3881979a87a2b10f633aa2a5706e72218a10f71be38b3c9e831ae9"}, - {file = "sphinx_book_theme-1.1.3.tar.gz", hash = "sha256:1f25483b1846cb3d353a6bc61b3b45b031f4acf845665d7da90e01ae0aef5b4d"}, + {file = "sphinx_basic_ng-1.0.0b2-py3-none-any.whl", hash = "sha256:eb09aedbabfb650607e9b4b68c9d240b90b1e1be221d6ad71d61c52e29f7932b"}, + {file = "sphinx_basic_ng-1.0.0b2.tar.gz", hash = "sha256:9ec55a47c90c8c002b5960c57492ec3021f5193cb26cebc2dc4ea226848651c9"}, ] [package.dependencies] -pydata-sphinx-theme = ">=0.15.2" -sphinx = ">=5" +sphinx = ">=4.0" [package.extras] -code-style = ["pre-commit"] -doc = ["ablog", "folium", "ipywidgets", "matplotlib", "myst-nb", "nbclient", "numpy", "numpydoc", "pandas", "plotly", "sphinx-copybutton", "sphinx-design", "sphinx-examples", "sphinx-tabs", "sphinx-thebe", "sphinx-togglebutton", "sphinxcontrib-bibtex", "sphinxcontrib-youtube", "sphinxext-opengraph"] -test = ["beautifulsoup4", "coverage", "defusedxml", "myst-nb", "pytest", "pytest-cov", "pytest-regressions", "sphinx_thebe"] +docs = ["furo", "ipython", "myst-parser", "sphinx-copybutton", "sphinx-inline-tabs"] [[package]] name = "sphinxcontrib-applehelp" @@ -2424,7 +2393,7 @@ files = [ name = "types-requests" version = "2.32.0.20241016" description = "Typing stubs for requests" -optional = false +optional = true python-versions = ">=3.8" files = [ {file = "types-requests-2.32.0.20241016.tar.gz", hash = "sha256:0d9cad2f27515d0e3e3da7134a1b6f28fb97129d86b867f24d9c726452634d95"}, @@ -2558,9 +2527,9 @@ files = [ [extras] docs = ["pytket-quantinuum", "sphinx", "sphinx-book-theme"] -tests = ["mypy", "pytest", "pytest-cov", "pytket-quantinuum", "qiskit-ibm-provider"] +tests = ["mypy", "pytest", "pytest-cov", "pytket-quantinuum", "qiskit-ibm-provider", "ruff"] [metadata] lock-version = "2.0" python-versions = ">=3.10, <3.13" -content-hash = "27ba41d71405c48ca2aac7d19891003bb538549d89e48ef758c65c82bc5a860d" +content-hash = "f5a69909be60c58b4edb4d351715f22b87af20d0a67f55c93190fbab299c7f5d" diff --git a/pyproject.toml b/pyproject.toml index 5251f323..9d163656 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,7 +9,7 @@ description = "Python package for quantum error mitigation." authors = [ "Daniel Mills ", "Silas Dilkes ", - "Cristina Circsoiu " + "Cristina Cirstoiu ", ] readme = "README.md" @@ -18,18 +18,25 @@ python = ">=3.10, <3.13" pytket-qiskit = "^0.50.0" matplotlib = "^3.8.3" -pytest = {version="^8.1.1", optional=true} -mypy = {version="^1.9.0", optional=true} -sphinx = {version="^7.2.6", optional=true} -pytest-cov = {version="^4.1.0", optional=true} -sphinx-book-theme = {version="^1.1.2", optional=true} -qiskit-ibm-provider = {version="^0.10.0", optional=true} -pytket-quantinuum = {version="0.40.0", optional=true} -ruff = {version="^0.7.4", optional=true} +pytest = { version = "^8.1.1", optional = true } +mypy = { version = "^1.9.0", optional = true } +sphinx = { version = "^7.2.6", optional = true } +pytest-cov = { version = "^4.1.0", optional = true } +qiskit-ibm-provider = { version = "^0.10.0", optional = true } +pytket-quantinuum = { version = "0.40.0", optional = true } +ruff = { version = "^0.7.4", optional = true } +furo = { version = "^2024.8.6", optional = true } [tool.poetry.extras] -tests = ["pytest", "mypy", "ruff", "pytest-cov", "qiskit-ibm-provider", "pytket-quantinuum"] -docs = ["sphinx", "sphinx-book-theme", "pytket-quantinuum"] +tests = [ + "pytest", + "mypy", + "ruff", + "pytest-cov", + "qiskit-ibm-provider", + "pytket-quantinuum", +] +docs = ["sphinx", "furo", "pytket-quantinuum"] [tool.ruff.lint] select = ["I001"]