diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5335a51..0d7043d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: strategy: matrix: - python-version: ['3.12', '3.13'] + python-version: ['3.12', '3.13', '3.14'] platform: [ubuntu-latest, windows-latest] lint-stage: [pre-commit, pre-push, manual] diff --git a/pyproject.toml b/pyproject.toml index 6982bd1..298d365 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,6 +26,7 @@ classifiers = [ "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", ] dynamic = [ "version", @@ -122,6 +123,10 @@ universal = true # Code to match this is in ``conf.py``. version_scheme = "post-release" +[tool.uv.sources] +# See https://github.com/PyCQA/docformatter/pull/325. +docformatter = { "git" = "https://github.com/tdenewiler/docformatter.git", branch = "untokenize-std-lib" } + [tool.ruff] line-length = 79 @@ -333,7 +338,7 @@ pep621_dev_dependency_groups = [ [tool.pyproject-fmt] indent = 4 keep_full_version = true -max_supported_python = "3.13" +max_supported_python = "3.14" [tool.pytest.ini_options] diff --git a/src/sphinx_notion/__init__.py b/src/sphinx_notion/__init__.py index b19657a..42e6ec5 100644 --- a/src/sphinx_notion/__init__.py +++ b/src/sphinx_notion/__init__.py @@ -213,8 +213,8 @@ class _TableStructure: def _process_rich_text_node(node: nodes.Node) -> Text: """Create Notion rich text from a single ``docutils`` node. - This is the base function for ``singledispatch``. Specific node types - are handled by registered functions. + This is the base function for ``singledispatch``. Specific node + types are handled by registered functions. """ unsupported_child_type_msg = ( f"Unsupported node type within text: {type(node).__name__} on line " @@ -268,8 +268,8 @@ def _(node: nodes.target) -> Text: def _(node: nodes.title_reference) -> Text: """Process title reference nodes by creating italic text. - We match the behavior of the HTML builder here. - If you render ``A `B``` in HTML, it will render as ``A B``. + We match the behavior of the HTML builder here. If you render ``A + `B``` in HTML, it will render as ``A B``. """ return text(text=node.astext(), italic=True) diff --git a/tests/test_upload.py b/tests/test_upload.py index afdbe35..7650253 100644 --- a/tests/test_upload.py +++ b/tests/test_upload.py @@ -11,8 +11,8 @@ def test_help(file_regression: FileRegressionFixture) -> None: """Expected help text is shown. - This help text is defined in files. - To update these files, run ``pytest`` with the ``--regen-all`` flag. + This help text is defined in files. To update these files, run + ``pytest`` with the ``--regen-all`` flag. """ runner = CliRunner() arguments = ["--help"]