diff --git a/CHANGES b/CHANGES index 0deea5ca486..059bdc9d20c 100644 --- a/CHANGES +++ b/CHANGES @@ -19,6 +19,17 @@ $ pipx install --suffix=@next 'tmuxp' --pip-args '\--pre' --force - _Insert changes/features/fixes for next release here_ +### Documentation + +- Render changelog in [`linkify_issues`] (#812) +- Fix Table of contents rendering with sphinx autodoc with [`sphinx_toctree_autodoc_fix`] (#812) +- Test doctests in our docs via [`pytest_doctest_docutils`] (built on [`doctest_docutils`]) (#812) + +[`linkify_issues`]: https://gp-libs.git-pull.com/linkify_issues/ +[`sphinx_toctree_autodoc_fix`]: https://gp-libs.git-pull.com/sphinx_toctree_autodoc_fix/ +[`pytest_doctest_docutils`]: https://gp-libs.git-pull.com/doctest/pytest.html +[`doctest_docutils`]: https://gp-libs.git-pull.com/doctest + ## tmuxp 1.13.3 (2022-09-10) - Revert v1.13.1's #793 change for now, the behavior behind launching workspace diff --git a/docs/cli/convert.md b/docs/cli/convert.md index 545e2ad2d13..cb1ff2c72b5 100644 --- a/docs/cli/convert.md +++ b/docs/cli/convert.md @@ -1,4 +1,4 @@ -(convert-config)= +(cli-convert)= # tmuxp convert diff --git a/docs/cli/load.md b/docs/cli/load.md index 59b48440dc9..86c62630803 100644 --- a/docs/cli/load.md +++ b/docs/cli/load.md @@ -8,7 +8,7 @@ You can load your tmuxp file and attach the vim session via a few shorthands: 1. The directory with a `.tmuxp.{yaml,yml,json}` file in it -2. The name of the project file in your {}`$HOME/.tmuxp` folder +2. The name of the project file in your `$HOME/.tmuxp` folder 3. The direct path of the tmuxp file you want to load Path to folder with `.tmuxp.yaml`, `.tmuxp.yml`, `.tmuxp.json`: diff --git a/docs/conf.py b/docs/conf.py index 7515bb03fbe..a3e583a02e0 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -27,16 +27,22 @@ "sphinx.ext.napoleon", "sphinx.ext.linkcode", "aafig", - "sphinx_autoissues", "sphinx_click.ext", # sphinx-click "sphinx_inline_tabs", "sphinx_copybutton", "sphinxext.opengraph", "sphinxext.rediraffe", "myst_parser", + "sphinx_toctree_autodoc_fix", + "linkify_issues", ] -myst_enable_extensions = ["colon_fence", "substitution", "replacements"] +myst_enable_extensions = [ + "colon_fence", + "substitution", + "replacements", + "strikethrough", +] templates_path = ["_templates"] @@ -88,9 +94,8 @@ ] } -# sphinx-autoissues -issuetracker = "github" -issuetracker_project = about["__github__"].replace("https://github.com/", "") +# linkify_issues +issue_url_tpl = "https://github.com/tmux-python/tmuxp/issues/{issue_id}" # sphinxext.opengraph ogp_site_url = about["__docs__"] diff --git a/poetry.lock b/poetry.lock index a1adcd36b40..ba5a1101de8 100644 --- a/poetry.lock +++ b/poetry.lock @@ -205,6 +205,18 @@ pygments = "*" sphinx = ">=4.0,<6.0" sphinx-basic-ng = "*" +[[package]] +name = "gp-libs" +version = "0.0.1a10" +description = "Internal utilities for projects following git-pull python package spec" +category = "dev" +optional = false +python-versions = ">=3.7,<4.0" + +[package.dependencies] +docutils = ">=0.18.0,<0.19.0" +myst_parser = "*" + [[package]] name = "idna" version = "3.3" @@ -287,7 +299,7 @@ PyYAML = ">=3.13,<6" [[package]] name = "libtmux" -version = "0.15.0" +version = "0.15.0.post0" description = "Typed scripting library / ORM / API wrapper for tmux" category = "main" optional = false @@ -714,14 +726,6 @@ Sphinx = ">=5.1.1" testing = ["covdefaults (>=2.2)", "coverage (>=6.4.2)", "diff-cover (>=6.5.1)", "nptyping (>=2.2)", "pytest (>=7.1.2)", "pytest-cov (>=3)", "sphobjinv (>=2.2.2)", "typing-extensions (>=4.3)"] type_comments = ["typed-ast (>=1.5.4)"] -[[package]] -name = "sphinx-autoissues" -version = "0.0.1" -description = "Sphinx integration with different issuetrackers" -category = "dev" -optional = false -python-versions = ">=3.7,<4.0" - [[package]] name = "sphinx-basic-ng" version = "0.0.1a12" @@ -966,7 +970,7 @@ test = [] [metadata] lock-version = "1.1" python-versions = "^3.7" -content-hash = "4964d7494c27a54beb1312e28c7527e5cb112fe0a2255f20d11fd9e8cbb31b43" +content-hash = "85f2393ab1f8a399bd2f81c9d54bb7abc22257e9ee1914920cb22f600030ff7a" [metadata.files] aafigure = [ @@ -1107,6 +1111,10 @@ furo = [ {file = "furo-2022.6.21-py3-none-any.whl", hash = "sha256:061b68e323345e27fcba024cf33a1e77f3dfd8d9987410be822749a706e2add6"}, {file = "furo-2022.6.21.tar.gz", hash = "sha256:9aa983b7488a4601d13113884bfb7254502c8729942e073a0acb87a5512af223"}, ] +gp-libs = [ + {file = "gp-libs-0.0.1a10.tar.gz", hash = "sha256:54fbe07f42628b114f0b1472bb03ce75be2928090ec26d8d6f675f3bd9f58c2e"}, + {file = "gp_libs-0.0.1a10-py3-none-any.whl", hash = "sha256:701b190ffd468ca4d776b196707344748dd550aea03db9aaa1ffdecdd0c32506"}, +] idna = [ {file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"}, {file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"}, @@ -1135,8 +1143,8 @@ kaptan = [ {file = "kaptan-0.5.12.tar.gz", hash = "sha256:1abd1f56731422fce5af1acc28801677a51e56f5d3c3e8636db761ed143c3dd2"}, ] libtmux = [ - {file = "libtmux-0.15.0-py3-none-any.whl", hash = "sha256:2f53d97ebfd2f4ddc703dc8b187749c6dd76fa00c7070b53f81fdabf49163ce5"}, - {file = "libtmux-0.15.0.tar.gz", hash = "sha256:77a9e88d7a9e348746feddda1bf41d70aec6ebf309d2a639cdd000f48f6a159e"}, + {file = "libtmux-0.15.0.post0-py3-none-any.whl", hash = "sha256:c60659a79c641e6403e590113472d5f385b877b45c50a2c8959f987aa3687a30"}, + {file = "libtmux-0.15.0.post0.tar.gz", hash = "sha256:3ea0d2dcc9d259efd4a7278bd8d403923bf1717de688e183fc6c1d003201f118"}, ] livereload = [ {file = "livereload-2.6.3.tar.gz", hash = "sha256:776f2f865e59fde56490a56bcc6773b6917366bce0c267c60ee8aaf1a0959869"}, @@ -1251,8 +1259,8 @@ pillow = [ {file = "Pillow-9.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:37ff6b522a26d0538b753f0b4e8e164fdada12db6c6f00f62145d732d8a3152e"}, {file = "Pillow-9.2.0-cp310-cp310-win32.whl", hash = "sha256:c79698d4cd9318d9481d89a77e2d3fcaeff5486be641e60a4b49f3d2ecca4e28"}, {file = "Pillow-9.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:254164c57bab4b459f14c64e93df11eff5ded575192c294a0c49270f22c5d93d"}, - {file = "Pillow-9.2.0-cp311-cp311-macosx_10_10_universal2.whl", hash = "sha256:408673ed75594933714482501fe97e055a42996087eeca7e5d06e33218d05aa8"}, - {file = "Pillow-9.2.0-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:727dd1389bc5cb9827cbd1f9d40d2c2a1a0c9b32dd2261db522d22a604a6eec9"}, + {file = "Pillow-9.2.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:adabc0bce035467fb537ef3e5e74f2847c8af217ee0be0455d4fec8adc0462fc"}, + {file = "Pillow-9.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:336b9036127eab855beec9662ac3ea13a4544a523ae273cbf108b228ecac8437"}, {file = "Pillow-9.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50dff9cc21826d2977ef2d2a205504034e3a4563ca6f5db739b0d1026658e004"}, {file = "Pillow-9.2.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cb6259196a589123d755380b65127ddc60f4c64b21fc3bb46ce3a6ea663659b0"}, {file = "Pillow-9.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b0554af24df2bf96618dac71ddada02420f946be943b181108cac55a7a2dcd4"}, @@ -1352,37 +1360,7 @@ pytz = [ {file = "pytz-2022.2.1-py2.py3-none-any.whl", hash = "sha256:220f481bdafa09c3955dfbdddb7b57780e9a94f5127e35456a48589b9e0c0197"}, {file = "pytz-2022.2.1.tar.gz", hash = "sha256:cea221417204f2d1a2aa03ddae3e867921971d0d76f14d87abb4414415bbdcf5"}, ] -pyyaml = [ - {file = "PyYAML-5.4.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922"}, - {file = "PyYAML-5.4.1-cp27-cp27m-win32.whl", hash = "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393"}, - {file = "PyYAML-5.4.1-cp27-cp27m-win_amd64.whl", hash = "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8"}, - {file = "PyYAML-5.4.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185"}, - {file = "PyYAML-5.4.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:72a01f726a9c7851ca9bfad6fd09ca4e090a023c00945ea05ba1638c09dc3347"}, - {file = "PyYAML-5.4.1-cp36-cp36m-manylinux2014_s390x.whl", hash = "sha256:895f61ef02e8fed38159bb70f7e100e00f471eae2bc838cd0f4ebb21e28f8541"}, - {file = "PyYAML-5.4.1-cp36-cp36m-win32.whl", hash = "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5"}, - {file = "PyYAML-5.4.1-cp36-cp36m-win_amd64.whl", hash = "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df"}, - {file = "PyYAML-5.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:cb333c16912324fd5f769fff6bc5de372e9e7a202247b48870bc251ed40239aa"}, - {file = "PyYAML-5.4.1-cp37-cp37m-manylinux2014_s390x.whl", hash = "sha256:fe69978f3f768926cfa37b867e3843918e012cf83f680806599ddce33c2c68b0"}, - {file = "PyYAML-5.4.1-cp37-cp37m-win32.whl", hash = "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b"}, - {file = "PyYAML-5.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf"}, - {file = "PyYAML-5.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:fd7f6999a8070df521b6384004ef42833b9bd62cfee11a09bda1079b4b704247"}, - {file = "PyYAML-5.4.1-cp38-cp38-manylinux2014_s390x.whl", hash = "sha256:bfb51918d4ff3d77c1c856a9699f8492c612cde32fd3bcd344af9be34999bfdc"}, - {file = "PyYAML-5.4.1-cp38-cp38-win32.whl", hash = "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc"}, - {file = "PyYAML-5.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696"}, - {file = "PyYAML-5.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:d483ad4e639292c90170eb6f7783ad19490e7a8defb3e46f97dfe4bacae89122"}, - {file = "PyYAML-5.4.1-cp39-cp39-manylinux2014_s390x.whl", hash = "sha256:fdc842473cd33f45ff6bce46aea678a54e3d21f1b61a7750ce3c498eedfe25d6"}, - {file = "PyYAML-5.4.1-cp39-cp39-win32.whl", hash = "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10"}, - {file = "PyYAML-5.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db"}, - {file = "PyYAML-5.4.1.tar.gz", hash = "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"}, -] +pyyaml = [] requests = [ {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, @@ -1411,10 +1389,6 @@ sphinx-autodoc-typehints = [ {file = "sphinx_autodoc_typehints-1.19.2-py3-none-any.whl", hash = "sha256:3d761de928d5a86901331133d6d4a2552afa2e798ebcfc0886791792aeb4dd9a"}, {file = "sphinx_autodoc_typehints-1.19.2.tar.gz", hash = "sha256:872fb2d7b3d794826c28e36edf6739e93549491447dcabeb07c58855e9f914de"}, ] -sphinx-autoissues = [ - {file = "sphinx-autoissues-0.0.1.tar.gz", hash = "sha256:a308fd914d700ff2aa2b4584c29975a030ede7171898130ec816eca7ec2c8ce8"}, - {file = "sphinx_autoissues-0.0.1-py3-none-any.whl", hash = "sha256:07503b774c3a64b97d2614fa409410316fbfeb87ba4553dbe3a7d2131b7453a0"}, -] sphinx-basic-ng = [ {file = "sphinx_basic_ng-0.0.1a12-py3-none-any.whl", hash = "sha256:e8b6efd2c5ece014156de76065eda01ddfca0fee465aa020b1e3c12f84570bbe"}, {file = "sphinx_basic_ng-0.0.1a12.tar.gz", hash = "sha256:cffffb14914ddd26c94b1330df1d72dab5a42e220aaeb5953076a40b9c50e801"}, diff --git a/pyproject.toml b/pyproject.toml index 9471eb4bdd6..1d8a28c2ae5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -57,6 +57,7 @@ sphinx = "*" aafigure = ">=0.6" pillow = "*" furo = "*" +gp-libs = "0.0.1a10" sphinx-autobuild = "*" sphinx-autodoc-typehints = "*" sphinx-click = "*" @@ -64,7 +65,6 @@ sphinx-inline-tabs = "*" sphinxext-opengraph = "*" sphinx-copybutton = "*" sphinxext-rediraffe = "*" -sphinx-autoissues = "*" myst_parser = "*" docutils = "~0.18.0" @@ -102,9 +102,9 @@ docs = [ "sphinxext-opengraph", "sphinx-inline-tabs", "sphinxext-rediraffe", - "sphinx-autoissues", "myst_parser", "furo", + "gp-libs", "aafigure", "pillow", ]