Read the Docs build information Build id: 3753038 Project: canonical-checkbox Version: stable Commit: fec2b5c9559e84b91a99caaeab53b5921ff322c3 Date: 2026-02-16T07:39:42.283866Z State: finished Success: True [rtd-command-info] start-time: 2026-02-16T07:39:43.421829Z, end-time: 2026-02-16T07:39:45.134466Z, duration: 1, exit-code: 0 git clone --depth 1 https://github.com/canonical/checkbox.git . Cloning into '.'... [rtd-command-info] start-time: 2026-02-16T07:39:45.259508Z, end-time: 2026-02-16T07:39:45.943025Z, duration: 0, exit-code: 0 git fetch origin --force --prune --prune-tags --depth 50 fec2b5c9559e84b91a99caaeab53b5921ff322c3 From https://github.com/canonical/checkbox * branch fec2b5c9559e84b91a99caaeab53b5921ff322c3 -> FETCH_HEAD [rtd-command-info] start-time: 2026-02-16T07:39:46.709132Z, end-time: 2026-02-16T07:39:46.910945Z, duration: 0, exit-code: 0 git checkout --force fec2b5c9559e84b91a99caaeab53b5921ff322c3 Note: switching to 'fec2b5c9559e84b91a99caaeab53b5921ff322c3'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at fec2b5c increased camera quality threshold (BugFix) (#2060) [rtd-command-info] start-time: 2026-02-16T07:39:47.004367Z, end-time: 2026-02-16T07:39:47.048450Z, duration: 0, exit-code: 0 cat .readthedocs.yaml # .readthedocs.yaml # Read the Docs configuration file # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details # Required version: 2 # Set the version of Python and other tools you might need build: os: ubuntu-22.04 tools: python: "3.11" jobs: post_checkout: - git fetch --unshallow || true post_create_environment: - pip install --upgrade pip - pip install checkbox-ng/ # Build documentation in the docs/ directory with Sphinx sphinx: configuration: docs/conf.py fail_on_warning: true # Fail on all warnings to avoid broken references # Optionally declare the Python requirements required to build your docs python: install: - requirements: docs/.sphinx/requirements.txt [rtd-command-info] start-time: 2026-02-16T07:39:47.145503Z, end-time: 2026-02-16T07:39:51.405078Z, duration: 4, exit-code: 0 git fetch --unshallow || true From https://github.com/canonical/checkbox * [new tag] v5.0.0 -> v5.0.0 * [new tag] v7.0.0 -> v7.0.0 * [new tag] checkbox-core-snap-v1.30 -> checkbox-core-snap-v1.30 * [new tag] checkbox-core-snap-v1.31 -> checkbox-core-snap-v1.31 * [new tag] checkbox-core-snap-v2.1 -> checkbox-core-snap-v2.1 * [new tag] checkbox-core-snap-v2.2 -> checkbox-core-snap-v2.2 * [new tag] checkbox-core-snap-v2.3 -> checkbox-core-snap-v2.3 * [new tag] checkbox-ng-v1.19.0 -> checkbox-ng-v1.19.0 * [new tag] checkbox-ng-v2.0.0 -> checkbox-ng-v2.0.0 * [new tag] checkbox-ng-v2.0.0rc1 -> checkbox-ng-v2.0.0rc1 * [new tag] checkbox-ng-v2.1.0 -> checkbox-ng-v2.1.0 * [new tag] checkbox-ng-v2.1.0rc1 -> checkbox-ng-v2.1.0rc1 * [new tag] checkbox-ng-v2.2.0 -> checkbox-ng-v2.2.0 * [new tag] checkbox-ng-v2.2.0rc1 -> checkbox-ng-v2.2.0rc1 * [new tag] checkbox-snap-v2.2 -> checkbox-snap-v2.2 * [new tag] checkbox-snap-v2.3 -> checkbox-snap-v2.3 * [new tag] checkbox-snap-v2.4 -> checkbox-snap-v2.4 * [new tag] checkbox-support-v0.55.0 -> checkbox-support-v0.55.0 * [new tag] checkbox-support-v2.0.0 -> checkbox-support-v2.0.0 * [new tag] checkbox-support-v2.0.0rc1 -> checkbox-support-v2.0.0rc1 * [new tag] checkbox-support-v2.1.0 -> checkbox-support-v2.1.0 * [new tag] checkbox-support-v2.1.0rc1 -> checkbox-support-v2.1.0rc1 * [new tag] checkbox-support-v2.2.0 -> checkbox-support-v2.2.0 * [new tag] checkbox-support-v2.2.0rc1 -> checkbox-support-v2.2.0rc1 * [new tag] list -> list * [new tag] provider-base-v0.65.0 -> provider-base-v0.65.0 * [new tag] provider-base-v2.0.0 -> provider-base-v2.0.0 * [new tag] provider-base-v2.0.0rc1 -> provider-base-v2.0.0rc1 * [new tag] provider-base-v2.0.0rc2 -> provider-base-v2.0.0rc2 * [new tag] provider-base-v2.0.0rc3 -> provider-base-v2.0.0rc3 * [new tag] provider-base-v2.1.0 -> provider-base-v2.1.0 * [new tag] provider-base-v2.1.0rc1 -> provider-base-v2.1.0rc1 * [new tag] provider-base-v2.2.0 -> provider-base-v2.2.0 * [new tag] provider-base-v2.2.0rc1 -> provider-base-v2.2.0rc1 * [new tag] provider-base-v2.3.0 -> provider-base-v2.3.0 * [new tag] provider-base-v2.3.0rc1 -> provider-base-v2.3.0rc1 * [new tag] provider-certification-client-v0.50.0 -> provider-certification-client-v0.50.0 * [new tag] provider-certification-client-v2.0.0 -> provider-certification-client-v2.0.0 * [new tag] provider-certification-client-v2.0.0rc1 -> provider-certification-client-v2.0.0rc1 * [new tag] provider-certification-client-v2.1.0 -> provider-certification-client-v2.1.0 * [new tag] provider-certification-client-v2.1.0rc1 -> provider-certification-client-v2.1.0rc1 * [new tag] provider-certification-client-v2.2.0 -> provider-certification-client-v2.2.0 * [new tag] provider-certification-client-v2.2.0rc1 -> provider-certification-client-v2.2.0rc1 * [new tag] provider-certification-client-v2.3.0 -> provider-certification-client-v2.3.0 * [new tag] provider-certification-client-v2.3.0rc1 -> provider-certification-client-v2.3.0rc1 * [new tag] provider-certification-server-v0.58.0 -> provider-certification-server-v0.58.0 * [new tag] provider-certification-server-v2.0.0 -> provider-certification-server-v2.0.0 * [new tag] provider-certification-server-v2.0.0rc1 -> provider-certification-server-v2.0.0rc1 * [new tag] provider-certification-server-v2.1.0 -> provider-certification-server-v2.1.0 * [new tag] provider-certification-server-v2.1.0rc1 -> provider-certification-server-v2.1.0rc1 * [new tag] provider-gpgpu-v0.3.0 -> provider-gpgpu-v0.3.0 * [new tag] provider-gpgpu-v2.0.0 -> provider-gpgpu-v2.0.0 * [new tag] provider-gpgpu-v2.0.0rc1 -> provider-gpgpu-v2.0.0rc1 * [new tag] provider-gpgpu-v2.1.0 -> provider-gpgpu-v2.1.0 * [new tag] provider-gpgpu-v2.1.0rc1 -> provider-gpgpu-v2.1.0rc1 * [new tag] provider-ipdt-v2.0.0 -> provider-ipdt-v2.0.0 * [new tag] provider-ipdt-v2.0.0rc1 -> provider-ipdt-v2.0.0rc1 * [new tag] provider-ipdt-v2.1.0 -> provider-ipdt-v2.1.0 * [new tag] provider-ipdt-v2.1.0rc1 -> provider-ipdt-v2.1.0rc1 * [new tag] provider-phoronix-v2.0.0 -> provider-phoronix-v2.0.0 * [new tag] provider-phoronix-v2.0.0rc1 -> provider-phoronix-v2.0.0rc1 * [new tag] provider-phoronix-v2.1.0 -> provider-phoronix-v2.1.0 * [new tag] provider-phoronix-v2.1.0rc1 -> provider-phoronix-v2.1.0rc1 * [new tag] provider-resource-v0.51.0 -> provider-resource-v0.51.0 * [new tag] provider-resource-v2.0.0 -> provider-resource-v2.0.0 * [new tag] provider-resource-v2.0.0rc1 -> provider-resource-v2.0.0rc1 * [new tag] provider-resource-v2.1.0 -> provider-resource-v2.1.0 * [new tag] provider-resource-v2.1.0rc1 -> provider-resource-v2.1.0rc1 * [new tag] provider-sru-v1.23.0 -> provider-sru-v1.23.0 * [new tag] provider-sru-v2.0.0 -> provider-sru-v2.0.0 * [new tag] provider-sru-v2.0.0rc1 -> provider-sru-v2.0.0rc1 * [new tag] provider-sru-v2.1.0 -> provider-sru-v2.1.0 * [new tag] provider-sru-v2.1.0rc1 -> provider-sru-v2.1.0rc1 * [new tag] provider-tpm2-v1.19.0 -> provider-tpm2-v1.19.0 * [new tag] provider-tpm2-v2.0.0 -> provider-tpm2-v2.0.0 * [new tag] provider-tpm2-v2.0.0rc1 -> provider-tpm2-v2.0.0rc1 * [new tag] provider-tpm2-v2.1.0 -> provider-tpm2-v2.1.0 * [new tag] provider-tpm2-v2.1.0rc1 -> provider-tpm2-v2.1.0rc1 * [new tag] v2.10.0 -> v2.10.0 * [new tag] v2.10.1 -> v2.10.1 * [new tag] v2.3 -> v2.3 * [new tag] v2.4 -> v2.4 * [new tag] v2.5 -> v2.5 * [new tag] v2.6 -> v2.6 * [new tag] v2.7 -> v2.7 * [new tag] v2.8 -> v2.8 * [new tag] v2.9.0 -> v2.9.0 * [new tag] v2.9.1 -> v2.9.1 * [new tag] v3.0.0 -> v3.0.0 * [new tag] v3.1.0 -> v3.1.0 * [new tag] v3.2.0 -> v3.2.0 * [new tag] v3.3.0 -> v3.3.0 * [new tag] v4.0.0 -> v4.0.0 * [new tag] v4.1.0 -> v4.1.0 * [new tag] v4.2.0 -> v4.2.0 * [new tag] v4.3.0 -> v4.3.0 * [new tag] v4.4.0 -> v4.4.0 * [new tag] v4.5.0 -> v4.5.0 * [new tag] v4.6.0 -> v4.6.0 * [new tag] v6.0.0 -> v6.0.0 [rtd-command-info] start-time: 2026-02-16T07:39:57.736608Z, end-time: 2026-02-16T07:39:57.798919Z, duration: 0, exit-code: 0 asdf global python 3.11.12 [rtd-command-info] start-time: 2026-02-16T07:39:58.237294Z, end-time: 2026-02-16T07:39:59.389136Z, duration: 1, exit-code: 0 python -mvirtualenv $READTHEDOCS_VIRTUALENV_PATH created virtual environment CPython3.11.12.final.0-64 in 814ms creator CPython3Posix(dest=/home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/docs/.local/share/virtualenv) added seed packages: pip==23.1, setuptools==67.6.1, wheel==0.40.0 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator [rtd-command-info] start-time: 2026-02-16T07:39:59.474959Z, end-time: 2026-02-16T07:40:07.653358Z, duration: 8, exit-code: 0 pip install --upgrade pip Requirement already satisfied: pip in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (23.1) Collecting pip Downloading pip-26.0.1-py3-none-any.whl (1.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 9.2 MB/s eta 0:00:00 Installing collected packages: pip Attempting uninstall: pip Found existing installation: pip 23.1 Uninstalling pip-23.1: Successfully uninstalled pip-23.1 Successfully installed pip-26.0.1 [rtd-command-info] start-time: 2026-02-16T07:40:07.756186Z, end-time: 2026-02-16T07:40:21.611858Z, duration: 13, exit-code: 0 pip install checkbox-ng/ Processing ./checkbox-ng Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting packaging (from checkbox-ng==7.0.0) Using cached packaging-26.0-py3-none-any.whl.metadata (3.3 kB) Collecting psutil (from checkbox-ng==7.0.0) Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl.metadata (22 kB) Collecting requests>=1.0 (from checkbox-ng==7.0.0) Downloading requests-2.32.5-py3-none-any.whl.metadata (4.9 kB) Collecting urwid>=1.1.1 (from checkbox-ng==7.0.0) Downloading urwid-3.0.5-py3-none-any.whl.metadata (11 kB) Collecting Jinja2>=2.7 (from checkbox-ng==7.0.0) Downloading jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB) Collecting xlsxwriter (from checkbox-ng==7.0.0) Downloading xlsxwriter-3.2.9-py3-none-any.whl.metadata (2.7 kB) Collecting tqdm (from checkbox-ng==7.0.0) Downloading tqdm-4.67.3-py3-none-any.whl.metadata (57 kB) Collecting pyyaml (from checkbox-ng==7.0.0) Downloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB) Collecting MarkupSafe>=2.0 (from Jinja2>=2.7->checkbox-ng==7.0.0) Downloading markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB) Collecting charset_normalizer<4,>=2 (from requests>=1.0->checkbox-ng==7.0.0) Downloading charset_normalizer-3.4.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (37 kB) Collecting idna<4,>=2.5 (from requests>=1.0->checkbox-ng==7.0.0) Downloading idna-3.11-py3-none-any.whl.metadata (8.4 kB) Collecting urllib3<3,>=1.21.1 (from requests>=1.0->checkbox-ng==7.0.0) Downloading urllib3-2.6.3-py3-none-any.whl.metadata (6.9 kB) Collecting certifi>=2017.4.17 (from requests>=1.0->checkbox-ng==7.0.0) Downloading certifi-2026.1.4-py3-none-any.whl.metadata (2.5 kB) Collecting wcwidth>=0.4 (from urwid>=1.1.1->checkbox-ng==7.0.0) Downloading wcwidth-0.6.0-py3-none-any.whl.metadata (30 kB) Downloading jinja2-3.1.6-py3-none-any.whl (134 kB) Downloading markupsafe-3.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (22 kB) Downloading requests-2.32.5-py3-none-any.whl (64 kB) Downloading charset_normalizer-3.4.4-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (151 kB) Downloading idna-3.11-py3-none-any.whl (71 kB) Downloading urllib3-2.6.3-py3-none-any.whl (131 kB) Downloading certifi-2026.1.4-py3-none-any.whl (152 kB) Downloading urwid-3.0.5-py3-none-any.whl (296 kB) Downloading wcwidth-0.6.0-py3-none-any.whl (94 kB) Using cached packaging-26.0-py3-none-any.whl (74 kB) Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl (155 kB) Downloading pyyaml-6.0.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (806 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 806.6/806.6 kB 30.9 MB/s 0:00:00 Downloading tqdm-4.67.3-py3-none-any.whl (78 kB) Downloading xlsxwriter-3.2.9-py3-none-any.whl (175 kB) Building wheels for collected packages: checkbox-ng Building wheel for checkbox-ng (pyproject.toml): started Building wheel for checkbox-ng (pyproject.toml): finished with status 'done' Created wheel for checkbox-ng: filename=checkbox_ng-7.0.0-py3-none-any.whl size=2399344 sha256=826934d0a96994a6e7682272f88e3409875451e913368aaf0aa1896f95de45d9 Stored in directory: /home/docs/.cache/pip/wheels/35/41/82/7672261e5b0e2e6c2cbf28a2a7c5b7e77e7d4af5fcc1343286 Successfully built checkbox-ng Installing collected packages: xlsxwriter, wcwidth, urllib3, tqdm, pyyaml, psutil, packaging, MarkupSafe, idna, charset_normalizer, certifi, urwid, requests, Jinja2, checkbox-ng Successfully installed Jinja2-3.1.6 MarkupSafe-3.0.3 certifi-2026.1.4 charset_normalizer-3.4.4 checkbox-ng-7.0.0 idna-3.11 packaging-26.0 psutil-7.2.2 pyyaml-6.0.3 requests-2.32.5 tqdm-4.67.3 urllib3-2.6.3 urwid-3.0.5 wcwidth-0.6.0 xlsxwriter-3.2.9 [rtd-command-info] start-time: 2026-02-16T07:40:21.745106Z, end-time: 2026-02-16T07:40:23.929806Z, duration: 2, exit-code: 0 python -m pip install --upgrade --no-cache-dir pip setuptools Requirement already satisfied: pip in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (26.0.1) Requirement already satisfied: setuptools in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (67.6.1) Collecting setuptools Downloading setuptools-82.0.0-py3-none-any.whl.metadata (6.6 kB) Downloading setuptools-82.0.0-py3-none-any.whl (1.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 18.9 MB/s 0:00:00 Installing collected packages: setuptools Attempting uninstall: setuptools Found existing installation: setuptools 67.6.1 Uninstalling setuptools-67.6.1: Successfully uninstalled setuptools-67.6.1 Successfully installed setuptools-82.0.0 [rtd-command-info] start-time: 2026-02-16T07:40:24.068422Z, end-time: 2026-02-16T07:40:27.799691Z, duration: 3, exit-code: 0 python -m pip install --upgrade --no-cache-dir sphinx Collecting sphinx Downloading sphinx-9.0.4-py3-none-any.whl.metadata (5.8 kB) Collecting sphinxcontrib-applehelp>=1.0.7 (from sphinx) Downloading sphinxcontrib_applehelp-2.0.0-py3-none-any.whl.metadata (2.3 kB) Collecting sphinxcontrib-devhelp>=1.0.6 (from sphinx) Downloading sphinxcontrib_devhelp-2.0.0-py3-none-any.whl.metadata (2.3 kB) Collecting sphinxcontrib-htmlhelp>=2.0.6 (from sphinx) Downloading sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl.metadata (2.3 kB) Collecting sphinxcontrib-jsmath>=1.0.1 (from sphinx) Downloading sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl.metadata (1.4 kB) Collecting sphinxcontrib-qthelp>=1.0.6 (from sphinx) Downloading sphinxcontrib_qthelp-2.0.0-py3-none-any.whl.metadata (2.3 kB) Collecting sphinxcontrib-serializinghtml>=1.1.9 (from sphinx) Downloading sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl.metadata (2.4 kB) Requirement already satisfied: Jinja2>=3.1 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx) (3.1.6) Collecting Pygments>=2.17 (from sphinx) Downloading pygments-2.19.2-py3-none-any.whl.metadata (2.5 kB) Collecting docutils<0.23,>=0.20 (from sphinx) Downloading docutils-0.22.4-py3-none-any.whl.metadata (15 kB) Collecting snowballstemmer>=2.2 (from sphinx) Downloading snowballstemmer-3.0.1-py3-none-any.whl.metadata (7.9 kB) Collecting babel>=2.13 (from sphinx) Downloading babel-2.18.0-py3-none-any.whl.metadata (2.2 kB) Collecting alabaster>=0.7.14 (from sphinx) Downloading alabaster-1.0.0-py3-none-any.whl.metadata (2.8 kB) Collecting imagesize>=1.3 (from sphinx) Downloading imagesize-1.4.1-py2.py3-none-any.whl.metadata (1.5 kB) Requirement already satisfied: requests>=2.30.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx) (2.32.5) Collecting roman-numerals>=1.0.0 (from sphinx) Downloading roman_numerals-4.1.0-py3-none-any.whl.metadata (3.3 kB) Requirement already satisfied: packaging>=23.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx) (26.0) Requirement already satisfied: MarkupSafe>=2.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from Jinja2>=3.1->sphinx) (3.0.3) Requirement already satisfied: charset_normalizer<4,>=2 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx) (3.4.4) Requirement already satisfied: idna<4,>=2.5 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx) (3.11) Requirement already satisfied: urllib3<3,>=1.21.1 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx) (2.6.3) Requirement already satisfied: certifi>=2017.4.17 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx) (2026.1.4) Downloading sphinx-9.0.4-py3-none-any.whl (3.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.9/3.9 MB 145.3 MB/s 0:00:00 Downloading docutils-0.22.4-py3-none-any.whl (633 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 633.2/633.2 kB 397.9 MB/s 0:00:00 Downloading alabaster-1.0.0-py3-none-any.whl (13 kB) Downloading babel-2.18.0-py3-none-any.whl (10.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.2/10.2 MB 337.2 MB/s 0:00:00 Downloading imagesize-1.4.1-py2.py3-none-any.whl (8.8 kB) Downloading pygments-2.19.2-py3-none-any.whl (1.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 665.1 MB/s 0:00:00 Downloading roman_numerals-4.1.0-py3-none-any.whl (7.7 kB) Downloading snowballstemmer-3.0.1-py3-none-any.whl (103 kB) Downloading sphinxcontrib_applehelp-2.0.0-py3-none-any.whl (119 kB) Downloading sphinxcontrib_devhelp-2.0.0-py3-none-any.whl (82 kB) Downloading sphinxcontrib_htmlhelp-2.1.0-py3-none-any.whl (98 kB) Downloading sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl (5.1 kB) Downloading sphinxcontrib_qthelp-2.0.0-py3-none-any.whl (88 kB) Downloading sphinxcontrib_serializinghtml-2.0.0-py3-none-any.whl (92 kB) Installing collected packages: sphinxcontrib-serializinghtml, sphinxcontrib-qthelp, sphinxcontrib-jsmath, sphinxcontrib-htmlhelp, sphinxcontrib-devhelp, sphinxcontrib-applehelp, snowballstemmer, roman-numerals, Pygments, imagesize, docutils, babel, alabaster, sphinx Successfully installed Pygments-2.19.2 alabaster-1.0.0 babel-2.18.0 docutils-0.22.4 imagesize-1.4.1 roman-numerals-4.1.0 snowballstemmer-3.0.1 sphinx-9.0.4 sphinxcontrib-applehelp-2.0.0 sphinxcontrib-devhelp-2.0.0 sphinxcontrib-htmlhelp-2.1.0 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-2.0.0 sphinxcontrib-serializinghtml-2.0.0 [rtd-command-info] start-time: 2026-02-16T07:40:27.983380Z, end-time: 2026-02-16T07:40:34.096912Z, duration: 6, exit-code: 0 python -m pip install --exists-action=w --no-cache-dir -r docs/.sphinx/requirements.txt Collecting furo (from -r docs/.sphinx/requirements.txt (line 1)) Downloading furo-2025.12.19-py3-none-any.whl.metadata (4.9 kB) Collecting lxd-sphinx-extensions (from -r docs/.sphinx/requirements.txt (line 2)) Downloading lxd_sphinx_extensions-0.0.16-py3-none-any.whl.metadata (544 bytes) Collecting myst-parser (from -r docs/.sphinx/requirements.txt (line 3)) Downloading myst_parser-5.0.0-py3-none-any.whl.metadata (5.6 kB) Requirement already satisfied: psutil in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from -r docs/.sphinx/requirements.txt (line 4)) (7.2.2) Collecting pyspelling (from -r docs/.sphinx/requirements.txt (line 5)) Downloading pyspelling-2.12.1-py3-none-any.whl.metadata (3.7 kB) Collecting setuptools-scm (from -r docs/.sphinx/requirements.txt (line 6)) Downloading setuptools_scm-9.2.2-py3-none-any.whl.metadata (7.7 kB) Requirement already satisfied: sphinx in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from -r docs/.sphinx/requirements.txt (line 7)) (9.0.4) Collecting sphinx-autobuild (from -r docs/.sphinx/requirements.txt (line 8)) Downloading sphinx_autobuild-2025.8.25-py3-none-any.whl.metadata (8.5 kB) Collecting sphinx-copybutton (from -r docs/.sphinx/requirements.txt (line 9)) Downloading sphinx_copybutton-0.5.2-py3-none-any.whl.metadata (3.2 kB) Collecting sphinx-design (from -r docs/.sphinx/requirements.txt (line 10)) Downloading sphinx_design-0.7.0-py3-none-any.whl.metadata (5.5 kB) Collecting sphinx-jsonschema (from -r docs/.sphinx/requirements.txt (line 11)) Downloading sphinx_jsonschema-1.19.2.tar.gz (30 kB) Installing build dependencies: started Installing build dependencies: finished with status 'done' Getting requirements to build wheel: started Getting requirements to build wheel: finished with status 'done' Preparing metadata (pyproject.toml): started Preparing metadata (pyproject.toml): finished with status 'done' Collecting sphinx-reredirects (from -r docs/.sphinx/requirements.txt (line 12)) Downloading sphinx_reredirects-1.1.0-py3-none-any.whl.metadata (4.7 kB) Collecting sphinx-tabs (from -r docs/.sphinx/requirements.txt (line 13)) Downloading sphinx_tabs-3.4.7-py3-none-any.whl.metadata (6.3 kB) Collecting sphinxcontrib-mermaid (from -r docs/.sphinx/requirements.txt (line 14)) Downloading sphinxcontrib_mermaid-2.0.0-py3-none-any.whl.metadata (2.4 kB) Collecting sphinxext-opengraph (from -r docs/.sphinx/requirements.txt (line 15)) Downloading sphinxext_opengraph-0.13.0-py3-none-any.whl.metadata (2.7 kB) Requirement already satisfied: tqdm in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from -r docs/.sphinx/requirements.txt (line 16)) (4.67.3) Requirement already satisfied: urwid in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from -r docs/.sphinx/requirements.txt (line 17)) (3.0.5) Collecting beautifulsoup4 (from furo->-r docs/.sphinx/requirements.txt (line 1)) Downloading beautifulsoup4-4.14.3-py3-none-any.whl.metadata (3.8 kB) Collecting sphinx-basic-ng>=1.0.0.beta2 (from furo->-r docs/.sphinx/requirements.txt (line 1)) Downloading sphinx_basic_ng-1.0.0b2-py3-none-any.whl.metadata (1.5 kB) Requirement already satisfied: pygments>=2.7 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from furo->-r docs/.sphinx/requirements.txt (line 1)) (2.19.2) Collecting accessible-pygments>=0.0.5 (from furo->-r docs/.sphinx/requirements.txt (line 1)) Downloading accessible_pygments-0.0.5-py3-none-any.whl.metadata (10 kB) Requirement already satisfied: sphinxcontrib-applehelp>=1.0.7 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.0.0) Requirement already satisfied: sphinxcontrib-devhelp>=1.0.6 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.0.0) Requirement already satisfied: sphinxcontrib-htmlhelp>=2.0.6 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.1.0) Requirement already satisfied: sphinxcontrib-jsmath>=1.0.1 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (1.0.1) Requirement already satisfied: sphinxcontrib-qthelp>=1.0.6 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.0.0) Requirement already satisfied: sphinxcontrib-serializinghtml>=1.1.9 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.0.0) Requirement already satisfied: Jinja2>=3.1 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (3.1.6) Requirement already satisfied: docutils<0.23,>=0.20 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (0.22.4) Requirement already satisfied: snowballstemmer>=2.2 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (3.0.1) Requirement already satisfied: babel>=2.13 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.18.0) Requirement already satisfied: alabaster>=0.7.14 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (1.0.0) Requirement already satisfied: imagesize>=1.3 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (1.4.1) Requirement already satisfied: requests>=2.30.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.32.5) Requirement already satisfied: roman-numerals>=1.0.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (4.1.0) Requirement already satisfied: packaging>=23.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from sphinx->-r docs/.sphinx/requirements.txt (line 7)) (26.0) Collecting canonical-sphinx-extensions (from lxd-sphinx-extensions->-r docs/.sphinx/requirements.txt (line 2)) Downloading canonical_sphinx_extensions-0.0.34-py3-none-any.whl.metadata (16 kB) Collecting markdown-it-py~=4.0 (from myst-parser->-r docs/.sphinx/requirements.txt (line 3)) Downloading markdown_it_py-4.0.0-py3-none-any.whl.metadata (7.3 kB) Collecting mdit-py-plugins~=0.5 (from myst-parser->-r docs/.sphinx/requirements.txt (line 3)) Downloading mdit_py_plugins-0.5.0-py3-none-any.whl.metadata (2.8 kB) Requirement already satisfied: pyyaml in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from myst-parser->-r docs/.sphinx/requirements.txt (line 3)) (6.0.3) Collecting mdurl~=0.1 (from markdown-it-py~=4.0->myst-parser->-r docs/.sphinx/requirements.txt (line 3)) Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB) Collecting html5lib (from pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading html5lib-1.1-py2.py3-none-any.whl.metadata (16 kB) Collecting lxml (from pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading lxml-6.0.2-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl.metadata (3.6 kB) Collecting markdown (from pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading markdown-3.10.2-py3-none-any.whl.metadata (5.1 kB) Collecting soupsieve>=1.8 (from pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading soupsieve-2.8.3-py3-none-any.whl.metadata (4.6 kB) Collecting wcmatch>=8.5 (from pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading wcmatch-10.1-py3-none-any.whl.metadata (5.1 kB) Requirement already satisfied: setuptools in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from setuptools-scm->-r docs/.sphinx/requirements.txt (line 6)) (82.0.0) Collecting colorama>=0.4.6 (from sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading colorama-0.4.6-py2.py3-none-any.whl.metadata (17 kB) Collecting starlette>=0.35 (from sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading starlette-0.52.1-py3-none-any.whl.metadata (6.3 kB) Collecting uvicorn>=0.25 (from sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading uvicorn-0.40.0-py3-none-any.whl.metadata (6.7 kB) Collecting watchfiles>=0.20 (from sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading watchfiles-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.9 kB) Collecting websockets>=11 (from sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading websockets-16.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (6.8 kB) Collecting jsonpointer (from sphinx-jsonschema->-r docs/.sphinx/requirements.txt (line 11)) Downloading jsonpointer-3.0.0-py2.py3-none-any.whl.metadata (2.3 kB) Requirement already satisfied: wcwidth>=0.4 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from urwid->-r docs/.sphinx/requirements.txt (line 17)) (0.6.0) Requirement already satisfied: MarkupSafe>=2.0 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from Jinja2>=3.1->sphinx->-r docs/.sphinx/requirements.txt (line 7)) (3.0.3) Requirement already satisfied: charset_normalizer<4,>=2 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx->-r docs/.sphinx/requirements.txt (line 7)) (3.4.4) Requirement already satisfied: idna<4,>=2.5 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx->-r docs/.sphinx/requirements.txt (line 7)) (3.11) Requirement already satisfied: urllib3<3,>=1.21.1 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2.6.3) Requirement already satisfied: certifi>=2017.4.17 in /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/envs/stable/lib/python3.11/site-packages (from requests>=2.30.0->sphinx->-r docs/.sphinx/requirements.txt (line 7)) (2026.1.4) Collecting anyio<5,>=3.6.2 (from starlette>=0.35->sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading anyio-4.12.1-py3-none-any.whl.metadata (4.3 kB) Collecting typing-extensions>=4.10.0 (from starlette>=0.35->sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB) Collecting click>=7.0 (from uvicorn>=0.25->sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading click-8.3.1-py3-none-any.whl.metadata (2.6 kB) Collecting h11>=0.8 (from uvicorn>=0.25->sphinx-autobuild->-r docs/.sphinx/requirements.txt (line 8)) Downloading h11-0.16.0-py3-none-any.whl.metadata (8.3 kB) Collecting bracex>=2.1.1 (from wcmatch>=8.5->pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading bracex-2.6-py3-none-any.whl.metadata (3.6 kB) Collecting gitpython (from canonical-sphinx-extensions->lxd-sphinx-extensions->-r docs/.sphinx/requirements.txt (line 2)) Downloading gitpython-3.1.46-py3-none-any.whl.metadata (13 kB) Collecting gitdb<5,>=4.0.1 (from gitpython->canonical-sphinx-extensions->lxd-sphinx-extensions->-r docs/.sphinx/requirements.txt (line 2)) Downloading gitdb-4.0.12-py3-none-any.whl.metadata (1.2 kB) Collecting smmap<6,>=3.0.1 (from gitdb<5,>=4.0.1->gitpython->canonical-sphinx-extensions->lxd-sphinx-extensions->-r docs/.sphinx/requirements.txt (line 2)) Downloading smmap-5.0.2-py3-none-any.whl.metadata (4.3 kB) Collecting six>=1.9 (from html5lib->pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB) Collecting webencodings (from html5lib->pyspelling->-r docs/.sphinx/requirements.txt (line 5)) Downloading webencodings-0.5.1-py2.py3-none-any.whl.metadata (2.1 kB) Downloading furo-2025.12.19-py3-none-any.whl (339 kB) Downloading lxd_sphinx_extensions-0.0.16-py3-none-any.whl (1.3 kB) Downloading myst_parser-5.0.0-py3-none-any.whl (84 kB) Downloading markdown_it_py-4.0.0-py3-none-any.whl (87 kB) Downloading mdit_py_plugins-0.5.0-py3-none-any.whl (57 kB) Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB) Downloading pyspelling-2.12.1-py3-none-any.whl (45 kB) Downloading setuptools_scm-9.2.2-py3-none-any.whl (62 kB) Downloading sphinx_autobuild-2025.8.25-py3-none-any.whl (12 kB) Downloading sphinx_copybutton-0.5.2-py3-none-any.whl (13 kB) Downloading sphinx_design-0.7.0-py3-none-any.whl (2.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 148.0 MB/s 0:00:00 Downloading sphinx_reredirects-1.1.0-py3-none-any.whl (6.4 kB) Downloading sphinx_tabs-3.4.7-py3-none-any.whl (9.7 kB) Downloading sphinxcontrib_mermaid-2.0.0-py3-none-any.whl (14 kB) Downloading sphinxext_opengraph-0.13.0-py3-none-any.whl (1.0 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 422.3 MB/s 0:00:00 Downloading accessible_pygments-0.0.5-py3-none-any.whl (1.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 640.1 MB/s 0:00:00 Downloading colorama-0.4.6-py2.py3-none-any.whl (25 kB) Downloading soupsieve-2.8.3-py3-none-any.whl (37 kB) Downloading sphinx_basic_ng-1.0.0b2-py3-none-any.whl (22 kB) Downloading starlette-0.52.1-py3-none-any.whl (74 kB) Downloading anyio-4.12.1-py3-none-any.whl (113 kB) Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB) Downloading uvicorn-0.40.0-py3-none-any.whl (68 kB) Downloading click-8.3.1-py3-none-any.whl (108 kB) Downloading h11-0.16.0-py3-none-any.whl (37 kB) Downloading watchfiles-1.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (456 kB) Downloading wcmatch-10.1-py3-none-any.whl (39 kB) Downloading bracex-2.6-py3-none-any.whl (11 kB) Downloading websockets-16.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (184 kB) Downloading beautifulsoup4-4.14.3-py3-none-any.whl (107 kB) Downloading canonical_sphinx_extensions-0.0.34-py3-none-any.whl (67 kB) Downloading gitpython-3.1.46-py3-none-any.whl (208 kB) Downloading gitdb-4.0.12-py3-none-any.whl (62 kB) Downloading smmap-5.0.2-py3-none-any.whl (24 kB) Downloading html5lib-1.1-py2.py3-none-any.whl (112 kB) Downloading six-1.17.0-py2.py3-none-any.whl (11 kB) Downloading jsonpointer-3.0.0-py2.py3-none-any.whl (7.6 kB) Downloading lxml-6.0.2-cp311-cp311-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl (5.2 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.2/5.2 MB 353.9 MB/s 0:00:00 Downloading markdown-3.10.2-py3-none-any.whl (108 kB) Downloading webencodings-0.5.1-py2.py3-none-any.whl (11 kB) Building wheels for collected packages: sphinx-jsonschema Building wheel for sphinx-jsonschema (pyproject.toml): started Building wheel for sphinx-jsonschema (pyproject.toml): finished with status 'done' Created wheel for sphinx-jsonschema: filename=sphinx_jsonschema-1.19.2-py3-none-any.whl size=27879 sha256=f5f01a5c7e70d39a91fe98f60335088b6f46d651371b3b40d83bd23a5dec832e Stored in directory: /tmp/pip-ephem-wheel-cache-ppavj4e4/wheels/ba/c0/f7/4c4fe0e65cd03c0887c1d7bef4c7ed0036c8e102ed6f757a18 Successfully built sphinx-jsonschema Installing collected packages: webencodings, websockets, typing-extensions, soupsieve, smmap, six, setuptools-scm, mdurl, markdown, lxml, jsonpointer, h11, colorama, click, bracex, accessible-pygments, wcmatch, uvicorn, sphinx-jsonschema, markdown-it-py, html5lib, gitdb, beautifulsoup4, anyio, watchfiles, starlette, sphinxext-opengraph, sphinxcontrib-mermaid, sphinx-tabs, sphinx-reredirects, sphinx-design, sphinx-copybutton, sphinx-basic-ng, pyspelling, mdit-py-plugins, gitpython, sphinx-autobuild, myst-parser, furo, canonical-sphinx-extensions, lxd-sphinx-extensions Successfully installed accessible-pygments-0.0.5 anyio-4.12.1 beautifulsoup4-4.14.3 bracex-2.6 canonical-sphinx-extensions-0.0.34 click-8.3.1 colorama-0.4.6 furo-2025.12.19 gitdb-4.0.12 gitpython-3.1.46 h11-0.16.0 html5lib-1.1 jsonpointer-3.0.0 lxd-sphinx-extensions-0.0.16 lxml-6.0.2 markdown-3.10.2 markdown-it-py-4.0.0 mdit-py-plugins-0.5.0 mdurl-0.1.2 myst-parser-5.0.0 pyspelling-2.12.1 setuptools-scm-9.2.2 six-1.17.0 smmap-5.0.2 soupsieve-2.8.3 sphinx-autobuild-2025.8.25 sphinx-basic-ng-1.0.0b2 sphinx-copybutton-0.5.2 sphinx-design-0.7.0 sphinx-jsonschema-1.19.2 sphinx-reredirects-1.1.0 sphinx-tabs-3.4.7 sphinxcontrib-mermaid-2.0.0 sphinxext-opengraph-0.13.0 starlette-0.52.1 typing-extensions-4.15.0 uvicorn-0.40.0 watchfiles-1.1.1 wcmatch-10.1 webencodings-0.5.1 websockets-16.0 [rtd-command-info] start-time: 2026-02-16T07:40:34.465289Z, end-time: 2026-02-16T07:40:34.510287Z, duration: 0, exit-code: 0 cat docs/conf.py import datetime import os import sys import re import checkbox_ng # Configuration file for the Sphinx documentation builder. # # For the full list of built-in configuration values, see the documentation: # https://www.sphinx-doc.org/en/master/usage/configuration.html # -- Project information ----------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information project = "Checkbox" author = "Canonical Group Ltd" copyright = "%s, %s" % (datetime.date.today().year, author) # Here we just keep the version number and not any .devhash because that would # make the CI/CD spellcheck fail mistaking any .devhash occurence for an # unknown word release = ( re.match(r"(\d+\.{0,1})+", checkbox_ng.__version__).group(0).rstrip(".") ) # Open Graph configuration - defines what is displayed in the website preview ogp_site_url = "https://checkbox.readthedocs-hosted.com/" ogp_site_name = project ogp_image = ( "https://assets.ubuntu.com/v1/253da317-image-document-ubuntudocs.svg" ) html_context = { # Change to the discourse instance you want to be able to link to # "discourse": "https://discourse.ubuntu.com", # Change to the GitHub info for your project "github_url": "https://github.com/canonical/checkbox", "github_version": "main", "github_folder": "docs", "github_filetype": "rst", } # Used for related links - no need to change if "discourse" in html_context: html_context["discourse_prefix"] = html_context["discourse"] + "/t/" # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration extensions = [ "custom-rst-roles", "myst_parser", "related-links", "sphinx_copybutton", "sphinx_design", "sphinx_reredirects", "sphinx_tabs.tabs", "sphinx-jsonschema", "sphinxcontrib.mermaid", "sphinxext.opengraph", "terminal-output", "youtube-links", ] myst_enable_extensions = ["substitution", "deflist"] myst_enable_extensions = ["substitution", "deflist"] exclude_patterns = ["_build", "Thumbs.db", ".DS_Store", ".sphinx"] rst_epilog = """ .. include:: /reuse/links.txt """ source_suffix = { ".rst": "restructuredtext", ".md": "markdown", } # Links to ignore when checking links linkcheck_ignore = [ "http://127.0.0.1:8000", "https://github.com/canonical/hwcert-jenkins-jobs", "https://www.gnu.org/licenses", ] # -- Options for HTML output ------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output # Find the current builder builder = "dirhtml" if "-b" in sys.argv: builder = sys.argv[sys.argv.index("-b") + 1] # Setting templates_path for epub makes the build fail if builder == "dirhtml" or builder == "html": templates_path = [".sphinx/_templates"] html_theme = "furo" html_last_updated_fmt = "" html_permalinks_icon = "¶" html_theme_options = { "light_css_variables": { "color-sidebar-background-border": "none", "font-stack": "Ubuntu, -apple-system, Segoe UI, Roboto, Oxygen, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif", "font-stack--monospace": "Ubuntu Mono, Consolas, Monaco, Courier, monospace", "color-foreground-primary": "#111", "color-foreground-secondary": "var(--color-foreground-primary)", "color-foreground-muted": "#333", "color-background-secondary": "#FFF", "color-background-hover": "#f2f2f2", "color-brand-primary": "#111", "color-brand-content": "#06C", "color-api-background": "#cdcdcd", "color-inline-code-background": "rgba(0,0,0,.03)", "color-sidebar-link-text": "#111", "color-sidebar-item-background--current": "#ebebeb", "color-sidebar-item-background--hover": "#f2f2f2", "toc-font-size": "var(--font-size--small)", "color-admonition-title-background--note": "var(--color-background-primary)", "color-admonition-title-background--tip": "var(--color-background-primary)", "color-admonition-title-background--important": "var(--color-background-primary)", "color-admonition-title-background--caution": "var(--color-background-primary)", "color-admonition-title--note": "#24598F", "color-admonition-title--tip": "#24598F", "color-admonition-title--important": "#C7162B", "color-admonition-title--caution": "#F99B11", "color-highlighted-background": "#EbEbEb", "color-link-underline": "var(--color-background-primary)", "color-link-underline--hover": "var(--color-background-primary)", "color-version-popup": "#772953", }, "dark_css_variables": { "color-foreground-secondary": "var(--color-foreground-primary)", "color-foreground-muted": "#CDCDCD", "color-background-secondary": "var(--color-background-primary)", "color-background-hover": "#666", "color-brand-primary": "#fff", "color-brand-content": "#06C", "color-sidebar-link-text": "#f7f7f7", "color-sidebar-item-background--current": "#666", "color-sidebar-item-background--hover": "#333", "color-admonition-background": "transparent", "color-admonition-title-background--note": "var(--color-background-primary)", "color-admonition-title-background--tip": "var(--color-background-primary)", "color-admonition-title-background--important": "var(--color-background-primary)", "color-admonition-title-background--caution": "var(--color-background-primary)", "color-admonition-title--note": "#24598F", "color-admonition-title--tip": "#24598F", "color-admonition-title--important": "#C7162B", "color-admonition-title--caution": "#F99B11", "color-highlighted-background": "#666", "color-link-underline": "var(--color-background-primary)", "color-link-underline--hover": "var(--color-background-primary)", "color-version-popup": "#F29879", }, } html_static_path = [".sphinx/_static"] html_css_files = [ "checkbox-doc.css", "custom.css", "github_issue_links.css", ] html_js_files = [ "github_issue_links.js", ] # Set up redirects (https://documatt.gitlab.io/sphinx-reredirects/usage.html) # For example: "explanation/old-name.html": "../how-to/prettify.html", redirects = {} [rtd-command-info] start-time: 2026-02-16T07:40:34.683865Z, end-time: 2026-02-16T07:40:39.140166Z, duration: 4, exit-code: 0 python -m sphinx -T -W --keep-going -b html -d _build/doctrees -D language=en . $READTHEDOCS_OUTPUT/html Running Sphinx v9.0.4 loading translations [en]... done matplotlib is not installed, social cards will not be generated making output directory... done myst v5.0.0: MdParserConfig(commonmark_only=False, gfm_only=False, enable_extensions={'deflist', 'substitution'}, disable_syntax=[], all_links_external=False, links_external_new_tab=False, url_schemes=('http', 'https', 'mailto', 'ftp'), ref_domains=None, fence_as_directive=set(), number_code_blocks=[], title_to_header=False, heading_anchors=0, heading_slug_func=None, html_meta={}, footnote_sort=True, footnote_transition=True, words_per_minute=200, substitutions={}, linkify_fuzzy_links=True, dmath_allow_labels=True, dmath_allow_space=True, dmath_allow_digits=True, dmath_double_inline=False, update_mathjax=True, mathjax_classes='tex2jax_process|mathjax_process|math|output_area', enable_checkboxes=False, suppress_warnings=[], highlight_code_blocks=True) building [mo]: targets for 0 po files that are out of date writing output... building [html]: targets for 51 source files that are out of date updating environment: [new config] 51 added, 0 changed, 0 removed reading sources... [ 2%] community/bugs reading sources... [ 4%] community/contributing reading sources... [ 6%] community/support reading sources... [ 8%] explanation/configs reading sources... [ 10%] explanation/index reading sources... [ 12%] explanation/release_process/canary reading sources... [ 14%] explanation/release_process/canary_pipeline reading sources... [ 16%] explanation/release_process/validation_job_example reading sources... [ 18%] explanation/release_process/validation_pipeline_execution reading sources... [ 20%] explanation/remote reading sources... [ 22%] explanation/understanding reading sources... [ 24%] how-to/agent-service reading sources... [ 25%] how-to/ancient-python reading sources... [ 27%] how-to/custom-app reading sources... [ 29%] how-to/freeze-checkbox-version reading sources... [ 31%] how-to/index reading sources... [ 33%] how-to/launcher/auto-retry reading sources... [ 35%] how-to/launcher/output-verbosity reading sources... [ 37%] how-to/nested-test-plan reading sources... [ 39%] how-to/side-loading reading sources... [ 41%] how-to/using-match reading sources... [ 43%] index reading sources... [ 45%] reference/changelog reading sources... [ 47%] reference/glossary reading sources... [ 49%] reference/index reading sources... [ 51%] reference/job-status reading sources... [ 53%] reference/launcher reading sources... [ 55%] reference/snaps reading sources... [ 57%] reference/stack reading sources... [ 59%] reference/submission-schema reading sources... [ 61%] reference/units/category reading sources... [ 63%] reference/units/exporter reading sources... [ 65%] reference/units/index reading sources... [ 67%] reference/units/job reading sources... [ 69%] reference/units/manifest-entry reading sources... [ 71%] reference/units/packaging-meta-data reading sources... [ 73%] reference/units/resource reading sources... [ 75%] reference/units/rfc822 reading sources... [ 76%] reference/units/template reading sources... [ 78%] reference/units/test-plan reading sources... [ 80%] tutorial/index reading sources... [ 82%] tutorial/using-checkbox/advanced-commands reading sources... [ 84%] tutorial/using-checkbox/generate-report reading sources... [ 86%] tutorial/using-checkbox/installing-checkbox reading sources... [ 88%] tutorial/using-checkbox/launcher reading sources... [ 90%] tutorial/using-checkbox/manifest reading sources... [ 92%] tutorial/using-checkbox/remote reading sources... [ 94%] tutorial/using-checkbox/running-checkbox reading sources... [ 96%] tutorial/using-checkbox/test-report reading sources... [ 98%] tutorial/writing-tests/test-case reading sources... [100%] tutorial/writing-tests/test-plan looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done copying assets... copying static files... Writing evaluated template result to /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/checkouts/stable/_readthedocs/html/_static/language_data.js Writing evaluated template result to /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/checkouts/stable/_readthedocs/html/_static/basic.css Writing evaluated template result to /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/checkouts/stable/_readthedocs/html/_static/documentation_options.js Writing evaluated template result to /home/docs/checkouts/readthedocs.org/user_builds/canonical-checkbox/checkouts/stable/_readthedocs/html/_static/copybutton.js copying static files: done copying extra files... copying extra files: done copying assets: done writing output... [ 2%] community/bugs writing output... [ 4%] community/contributing writing output... [ 6%] community/support writing output... [ 8%] explanation/configs writing output... [ 10%] explanation/index writing output... [ 12%] explanation/release_process/canary writing output... [ 14%] explanation/release_process/canary_pipeline writing output... [ 16%] explanation/release_process/validation_job_example writing output... [ 18%] explanation/release_process/validation_pipeline_execution writing output... [ 20%] explanation/remote writing output... [ 22%] explanation/understanding writing output... [ 24%] how-to/agent-service writing output... [ 25%] how-to/ancient-python writing output... [ 27%] how-to/custom-app writing output... [ 29%] how-to/freeze-checkbox-version writing output... [ 31%] how-to/index writing output... [ 33%] how-to/launcher/auto-retry writing output... [ 35%] how-to/launcher/output-verbosity writing output... [ 37%] how-to/nested-test-plan writing output... [ 39%] how-to/side-loading writing output... [ 41%] how-to/using-match writing output... [ 43%] index writing output... [ 45%] reference/changelog writing output... [ 47%] reference/glossary writing output... [ 49%] reference/index writing output... [ 51%] reference/job-status writing output... [ 53%] reference/launcher writing output... [ 55%] reference/snaps writing output... [ 57%] reference/stack writing output... [ 59%] reference/submission-schema writing output... [ 61%] reference/units/category writing output... [ 63%] reference/units/exporter writing output... [ 65%] reference/units/index writing output... [ 67%] reference/units/job writing output... [ 69%] reference/units/manifest-entry writing output... [ 71%] reference/units/packaging-meta-data writing output... [ 73%] reference/units/resource writing output... [ 75%] reference/units/rfc822 writing output... [ 76%] reference/units/template writing output... [ 78%] reference/units/test-plan writing output... [ 80%] tutorial/index writing output... [ 82%] tutorial/using-checkbox/advanced-commands writing output... [ 84%] tutorial/using-checkbox/generate-report writing output... [ 86%] tutorial/using-checkbox/installing-checkbox writing output... [ 88%] tutorial/using-checkbox/launcher writing output... [ 90%] tutorial/using-checkbox/manifest writing output... [ 92%] tutorial/using-checkbox/remote writing output... [ 94%] tutorial/using-checkbox/running-checkbox writing output... [ 96%] tutorial/using-checkbox/test-report writing output... [ 98%] tutorial/writing-tests/test-case writing output... [100%] tutorial/writing-tests/test-plan generating indices... genindex done writing additional pages... search done copying images... [ 50%] _images/checkbox-tutorial-test-report.png copying images... [100%] _images/checkbox-test-report.png dumping search index in English (code: en)... done dumping object inventory... done build succeeded. The HTML pages are in ../_readthedocs/html.