From fcaf792e04743455ccc570f4d595e59702b3c5fd Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Sat, 6 Apr 2024 11:45:13 +0200 Subject: [PATCH] MAINT: update pip constraints and pre-commit (#411) * FIX: fix pytest skip reason typo * FIX: remove `PytestRemovedIn8Warning` ignore * MAINT: address linting issues * MAINT: implement updates from pre-commit hooks --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: GitHub Co-authored-by: Remco de Boer <29308176+redeboer@users.noreply.github.com> --- .constraints/py3.10.txt | 90 +++++++++++++++++------------------ .constraints/py3.11.txt | 90 +++++++++++++++++------------------ .constraints/py3.12.txt | 90 +++++++++++++++++------------------ .constraints/py3.7.txt | 8 ++-- .constraints/py3.8.txt | 82 +++++++++++++++---------------- .constraints/py3.9.txt | 90 +++++++++++++++++------------------ .cspell.json | 2 + .github/workflows/cd.yml | 16 ++++++- .pre-commit-config.yaml | 10 ++-- .readthedocs.yml | 4 +- .vscode/settings.json | 6 +-- pyproject.toml | 2 - src/ampform/helicity/decay.py | 13 ++--- src/symplot/__init__.py | 8 +--- tests/symplot/test_symplot.py | 4 +- 15 files changed, 260 insertions(+), 255 deletions(-) diff --git a/.constraints/py3.10.txt b/.constraints/py3.10.txt index bc4ad4c2b..3a7cde5a3 100644 --- a/.constraints/py3.10.txt +++ b/.constraints/py3.10.txt @@ -11,7 +11,7 @@ async-lru==2.0.4 attrs==23.2.0 babel==2.14.0 beautifulsoup4==4.12.3 -black==24.2.0 +black==24.3.0 bleach==6.1.0 cachetools==5.3.3 cattrs==23.2.3 @@ -22,9 +22,9 @@ chardet==5.2.0 charset-normalizer==3.3.2 click==8.1.7 colorama==0.4.6 -comm==0.2.1 -contourpy==1.2.0 -coverage==7.4.3 +comm==0.2.2 +contourpy==1.2.1 +coverage==7.4.4 cycler==0.12.1 debugpy==1.8.1 decorator==5.1.1 @@ -33,54 +33,54 @@ distlib==0.3.8 docstring-to-markdown==0.15 docutils==0.20.1 exceptiongroup==1.2.0 -execnet==2.0.2 +execnet==2.1.0 executing==2.0.1 fastjsonschema==2.19.1 -filelock==3.13.1 -fonttools==4.49.0 +filelock==3.13.3 +fonttools==4.51.0 fqdn==1.5.1 gitdb==4.0.11 -gitpython==3.1.42 +gitpython==3.1.43 gprof2dot==2022.7.29 -graphviz==0.20.1 +graphviz==0.20.3 greenlet==3.0.3 h11==0.14.0 hepunits==2.3.3 -httpcore==1.0.4 +httpcore==1.0.5 httpx==0.27.0 identify==2.5.35 idna==3.6 imagesize==1.4.1 -importlib-metadata==7.0.2 +importlib-metadata==7.1.0 iniconfig==2.0.0 -ipykernel==6.29.3 +ipykernel==6.29.4 ipympl==0.9.3 -ipython==8.22.2 +ipython==8.23.0 ipython-genutils==0.2.0 ipywidgets==8.1.2 isoduration==20.11.0 isort==5.13.2 jedi==0.19.1 jinja2==3.1.3 -json5==0.9.22 +json5==0.9.24 jsonpointer==2.4 jsonschema==4.21.1 jsonschema-specifications==2023.12.1 jupyter-cache==1.0.0 -jupyter-client==8.6.0 -jupyter-core==5.7.1 -jupyter-events==0.9.0 +jupyter-client==8.6.1 +jupyter-core==5.7.2 +jupyter-events==0.10.0 jupyter-lsp==2.2.4 jupyter-server==2.13.0 jupyter-server-mathjax==0.2.6 -jupyter-server-terminals==0.5.2 -jupyterlab==4.1.4 +jupyter-server-terminals==0.5.3 +jupyterlab==4.1.5 jupyterlab-code-formatter==2.2.1 jupyterlab-git==0.50.0 jupyterlab-lsp==5.1.0 -jupyterlab-myst==2.3.1 +jupyterlab-myst==2.3.2 jupyterlab-pygments==0.3.0 -jupyterlab-server==2.25.3 +jupyterlab-server==2.25.4 jupyterlab-widgets==3.0.10 kiwisolver==1.4.5 latexcodec==3.0.0 @@ -88,37 +88,37 @@ livereload==2.6.3 lsprotocol==2023.0.1 markdown-it-py==3.0.0 markupsafe==2.1.5 -matplotlib==3.8.3 +matplotlib==3.8.4 matplotlib-inline==0.1.6 mdit-py-plugins==0.4.0 mdurl==0.1.2 mistune==3.0.2 mpl-interactions==0.24.1 mpmath==1.3.0 -mypy==1.8.0 +mypy==1.9.0 mypy-extensions==1.0.0 myst-nb==1.0.0 myst-parser==2.0.0 nbclient==0.6.8 -nbconvert==7.16.2 +nbconvert==7.16.3 nbdime==4.0.1 -nbformat==5.9.2 +nbformat==5.10.4 nbmake==1.5.3 nest-asyncio==1.6.0 nodeenv==1.8.0 notebook-shim==0.2.4 numpy==1.26.4 overrides==7.7.0 -packaging==23.2 +packaging==24.0 pandocfilters==1.5.1 -parso==0.8.3 +parso==0.8.4 particle==0.23.1 pathspec==0.12.1 pexpect==4.9.0 -pillow==10.2.0 +pillow==10.3.0 platformdirs==4.2.0 pluggy==1.4.0 -pre-commit==3.6.2 +pre-commit==3.7.0 prometheus-client==0.20.0 prompt-toolkit==3.0.43 psutil==5.9.8 @@ -126,13 +126,13 @@ ptyprocess==0.7.0 pure-eval==0.2.2 pybtex==0.24.0 pybtex-docutils==1.0.3 -pycparser==2.21 +pycparser==2.22 pydata-sphinx-theme==0.15.2 pygments==2.17.2 pyparsing==3.1.2 pyproject-api==1.6.1 -pytest==8.0.2 -pytest-cov==4.1.0 +pytest==8.1.1 +pytest-cov==5.0.0 pytest-profiling==1.7.0 pytest-xdist==3.5.0 python-constraint==1.3.1 @@ -140,20 +140,20 @@ python-dateutil==2.9.0.post0 python-json-logger==2.0.7 python-lsp-jsonrpc==1.1.2 python-lsp-ruff==2.2.0 -python-lsp-server==1.10.0 +python-lsp-server==1.11.0 pytoolconfig==1.3.1 pyyaml==6.0.1 pyzmq==25.1.2 qrules==0.10.1 -referencing==0.33.0 +referencing==0.34.0 requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 rich==13.7.1 -rope==1.12.0 +rope==1.13.0 rpds-py==0.18.0 -ruff==0.3.1 -scipy==1.12.0 +ruff==0.3.5 +scipy==1.13.0 send2trash==1.8.2 six==1.16.0 smmap==5.0.1 @@ -179,19 +179,19 @@ sphinxcontrib-htmlhelp==2.0.5 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 -sqlalchemy==2.0.28 +sqlalchemy==2.0.29 stack-data==0.6.3 sympy==1.12 tabulate==0.9.0 -terminado==0.18.0 +terminado==0.18.1 tinycss2==1.2.1 tomli==2.0.1 tornado==6.4 -tox==4.14.1 +tox==4.14.2 tqdm==4.66.2 -traitlets==5.14.1 -types-python-dateutil==2.8.19.20240106 -typing-extensions==4.10.0 +traitlets==5.14.2 +types-python-dateutil==2.9.0.20240316 +typing-extensions==4.11.0 ujson==5.9.0 uri-template==1.3.0 urllib3==2.2.1 @@ -200,9 +200,9 @@ wcwidth==0.2.13 webcolors==1.13 webencodings==0.5.1 websocket-client==1.7.0 -wheel==0.42.0 +wheel==0.43.0 widgetsnbextension==4.0.10 -zipp==3.17.0 +zipp==3.18.1 # The following packages were excluded from the output: # setuptools diff --git a/.constraints/py3.11.txt b/.constraints/py3.11.txt index 1d24262b6..27144961d 100644 --- a/.constraints/py3.11.txt +++ b/.constraints/py3.11.txt @@ -11,7 +11,7 @@ async-lru==2.0.4 attrs==23.2.0 babel==2.14.0 beautifulsoup4==4.12.3 -black==24.2.0 +black==24.3.0 bleach==6.1.0 cachetools==5.3.3 cattrs==23.2.3 @@ -22,9 +22,9 @@ chardet==5.2.0 charset-normalizer==3.3.2 click==8.1.7 colorama==0.4.6 -comm==0.2.1 -contourpy==1.2.0 -coverage==7.4.3 +comm==0.2.2 +contourpy==1.2.1 +coverage==7.4.4 cycler==0.12.1 debugpy==1.8.1 decorator==5.1.1 @@ -32,54 +32,54 @@ defusedxml==0.7.1 distlib==0.3.8 docstring-to-markdown==0.15 docutils==0.20.1 -execnet==2.0.2 +execnet==2.1.0 executing==2.0.1 fastjsonschema==2.19.1 -filelock==3.13.1 -fonttools==4.49.0 +filelock==3.13.3 +fonttools==4.51.0 fqdn==1.5.1 gitdb==4.0.11 -gitpython==3.1.42 +gitpython==3.1.43 gprof2dot==2022.7.29 -graphviz==0.20.1 +graphviz==0.20.3 greenlet==3.0.3 h11==0.14.0 hepunits==2.3.3 -httpcore==1.0.4 +httpcore==1.0.5 httpx==0.27.0 identify==2.5.35 idna==3.6 imagesize==1.4.1 -importlib-metadata==7.0.2 +importlib-metadata==7.1.0 iniconfig==2.0.0 -ipykernel==6.29.3 +ipykernel==6.29.4 ipympl==0.9.3 -ipython==8.22.2 +ipython==8.23.0 ipython-genutils==0.2.0 ipywidgets==8.1.2 isoduration==20.11.0 isort==5.13.2 jedi==0.19.1 jinja2==3.1.3 -json5==0.9.22 +json5==0.9.24 jsonpointer==2.4 jsonschema==4.21.1 jsonschema-specifications==2023.12.1 jupyter-cache==1.0.0 -jupyter-client==8.6.0 -jupyter-core==5.7.1 -jupyter-events==0.9.0 +jupyter-client==8.6.1 +jupyter-core==5.7.2 +jupyter-events==0.10.0 jupyter-lsp==2.2.4 jupyter-server==2.13.0 jupyter-server-mathjax==0.2.6 -jupyter-server-terminals==0.5.2 -jupyterlab==4.1.4 +jupyter-server-terminals==0.5.3 +jupyterlab==4.1.5 jupyterlab-code-formatter==2.2.1 jupyterlab-git==0.50.0 jupyterlab-lsp==5.1.0 -jupyterlab-myst==2.3.1 +jupyterlab-myst==2.3.2 jupyterlab-pygments==0.3.0 -jupyterlab-server==2.25.3 +jupyterlab-server==2.25.4 jupyterlab-widgets==3.0.10 kiwisolver==1.4.5 latexcodec==3.0.0 @@ -87,37 +87,37 @@ livereload==2.6.3 lsprotocol==2023.0.1 markdown-it-py==3.0.0 markupsafe==2.1.5 -matplotlib==3.8.3 +matplotlib==3.8.4 matplotlib-inline==0.1.6 mdit-py-plugins==0.4.0 mdurl==0.1.2 mistune==3.0.2 mpl-interactions==0.24.1 mpmath==1.3.0 -mypy==1.8.0 +mypy==1.9.0 mypy-extensions==1.0.0 myst-nb==1.0.0 myst-parser==2.0.0 nbclient==0.6.8 -nbconvert==7.16.2 +nbconvert==7.16.3 nbdime==4.0.1 -nbformat==5.9.2 +nbformat==5.10.4 nbmake==1.5.3 nest-asyncio==1.6.0 nodeenv==1.8.0 notebook-shim==0.2.4 numpy==1.26.4 overrides==7.7.0 -packaging==23.2 +packaging==24.0 pandocfilters==1.5.1 -parso==0.8.3 +parso==0.8.4 particle==0.23.1 pathspec==0.12.1 pexpect==4.9.0 -pillow==10.2.0 +pillow==10.3.0 platformdirs==4.2.0 pluggy==1.4.0 -pre-commit==3.6.2 +pre-commit==3.7.0 prometheus-client==0.20.0 prompt-toolkit==3.0.43 psutil==5.9.8 @@ -125,13 +125,13 @@ ptyprocess==0.7.0 pure-eval==0.2.2 pybtex==0.24.0 pybtex-docutils==1.0.3 -pycparser==2.21 +pycparser==2.22 pydata-sphinx-theme==0.15.2 pygments==2.17.2 pyparsing==3.1.2 pyproject-api==1.6.1 -pytest==8.0.2 -pytest-cov==4.1.0 +pytest==8.1.1 +pytest-cov==5.0.0 pytest-profiling==1.7.0 pytest-xdist==3.5.0 python-constraint==1.3.1 @@ -139,20 +139,20 @@ python-dateutil==2.9.0.post0 python-json-logger==2.0.7 python-lsp-jsonrpc==1.1.2 python-lsp-ruff==2.2.0 -python-lsp-server==1.10.0 +python-lsp-server==1.11.0 pytoolconfig==1.3.1 pyyaml==6.0.1 pyzmq==25.1.2 qrules==0.10.1 -referencing==0.33.0 +referencing==0.34.0 requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 rich==13.7.1 -rope==1.12.0 +rope==1.13.0 rpds-py==0.18.0 -ruff==0.3.1 -scipy==1.12.0 +ruff==0.3.5 +scipy==1.13.0 send2trash==1.8.2 six==1.16.0 smmap==5.0.1 @@ -178,18 +178,18 @@ sphinxcontrib-htmlhelp==2.0.5 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 -sqlalchemy==2.0.28 +sqlalchemy==2.0.29 stack-data==0.6.3 sympy==1.12 tabulate==0.9.0 -terminado==0.18.0 +terminado==0.18.1 tinycss2==1.2.1 tornado==6.4 -tox==4.14.1 +tox==4.14.2 tqdm==4.66.2 -traitlets==5.14.1 -types-python-dateutil==2.8.19.20240106 -typing-extensions==4.10.0 +traitlets==5.14.2 +types-python-dateutil==2.9.0.20240316 +typing-extensions==4.11.0 ujson==5.9.0 uri-template==1.3.0 urllib3==2.2.1 @@ -198,9 +198,9 @@ wcwidth==0.2.13 webcolors==1.13 webencodings==0.5.1 websocket-client==1.7.0 -wheel==0.42.0 +wheel==0.43.0 widgetsnbextension==4.0.10 -zipp==3.17.0 +zipp==3.18.1 # The following packages were excluded from the output: # setuptools diff --git a/.constraints/py3.12.txt b/.constraints/py3.12.txt index 0466f1d05..f977a5c3b 100644 --- a/.constraints/py3.12.txt +++ b/.constraints/py3.12.txt @@ -11,7 +11,7 @@ async-lru==2.0.4 attrs==23.2.0 babel==2.14.0 beautifulsoup4==4.12.3 -black==24.2.0 +black==24.3.0 bleach==6.1.0 cachetools==5.3.3 cattrs==23.2.3 @@ -22,9 +22,9 @@ chardet==5.2.0 charset-normalizer==3.3.2 click==8.1.7 colorama==0.4.6 -comm==0.2.1 -contourpy==1.2.0 -coverage==7.4.3 +comm==0.2.2 +contourpy==1.2.1 +coverage==7.4.4 cycler==0.12.1 debugpy==1.8.1 decorator==5.1.1 @@ -32,54 +32,54 @@ defusedxml==0.7.1 distlib==0.3.8 docstring-to-markdown==0.15 docutils==0.20.1 -execnet==2.0.2 +execnet==2.1.0 executing==2.0.1 fastjsonschema==2.19.1 -filelock==3.13.1 -fonttools==4.49.0 +filelock==3.13.3 +fonttools==4.51.0 fqdn==1.5.1 gitdb==4.0.11 -gitpython==3.1.42 +gitpython==3.1.43 gprof2dot==2022.7.29 -graphviz==0.20.1 +graphviz==0.20.3 greenlet==3.0.3 h11==0.14.0 hepunits==2.3.3 -httpcore==1.0.4 +httpcore==1.0.5 httpx==0.27.0 identify==2.5.35 idna==3.6 imagesize==1.4.1 -importlib-metadata==7.0.2 +importlib-metadata==7.1.0 iniconfig==2.0.0 -ipykernel==6.29.3 +ipykernel==6.29.4 ipympl==0.9.3 -ipython==8.22.2 +ipython==8.23.0 ipython-genutils==0.2.0 ipywidgets==8.1.2 isoduration==20.11.0 isort==5.13.2 jedi==0.19.1 jinja2==3.1.3 -json5==0.9.22 +json5==0.9.24 jsonpointer==2.4 jsonschema==4.21.1 jsonschema-specifications==2023.12.1 jupyter-cache==1.0.0 -jupyter-client==8.6.0 -jupyter-core==5.7.1 -jupyter-events==0.9.0 +jupyter-client==8.6.1 +jupyter-core==5.7.2 +jupyter-events==0.10.0 jupyter-lsp==2.2.4 jupyter-server==2.13.0 jupyter-server-mathjax==0.2.6 -jupyter-server-terminals==0.5.2 -jupyterlab==4.1.4 +jupyter-server-terminals==0.5.3 +jupyterlab==4.1.5 jupyterlab-code-formatter==2.2.1 jupyterlab-git==0.50.0 jupyterlab-lsp==5.1.0 -jupyterlab-myst==2.3.1 +jupyterlab-myst==2.3.2 jupyterlab-pygments==0.3.0 -jupyterlab-server==2.25.3 +jupyterlab-server==2.25.4 jupyterlab-widgets==3.0.10 kiwisolver==1.4.5 latexcodec==3.0.0 @@ -87,37 +87,37 @@ livereload==2.6.3 lsprotocol==2023.0.1 markdown-it-py==3.0.0 markupsafe==2.1.5 -matplotlib==3.8.3 +matplotlib==3.8.4 matplotlib-inline==0.1.6 mdit-py-plugins==0.4.0 mdurl==0.1.2 mistune==3.0.2 mpl-interactions==0.24.1 mpmath==1.3.0 -mypy==1.8.0 +mypy==1.9.0 mypy-extensions==1.0.0 myst-nb==1.0.0 myst-parser==2.0.0 nbclient==0.6.8 -nbconvert==7.16.2 +nbconvert==7.16.3 nbdime==4.0.1 -nbformat==5.9.2 +nbformat==5.10.4 nbmake==1.5.3 nest-asyncio==1.6.0 nodeenv==1.8.0 notebook-shim==0.2.4 numpy==1.26.4 overrides==7.7.0 -packaging==23.2 +packaging==24.0 pandocfilters==1.5.1 -parso==0.8.3 +parso==0.8.4 particle==0.23.1 pathspec==0.12.1 pexpect==4.9.0 -pillow==10.2.0 +pillow==10.3.0 platformdirs==4.2.0 pluggy==1.4.0 -pre-commit==3.6.2 +pre-commit==3.7.0 prometheus-client==0.20.0 prompt-toolkit==3.0.43 psutil==5.9.8 @@ -125,13 +125,13 @@ ptyprocess==0.7.0 pure-eval==0.2.2 pybtex==0.24.0 pybtex-docutils==1.0.3 -pycparser==2.21 +pycparser==2.22 pydata-sphinx-theme==0.15.2 pygments==2.17.2 pyparsing==3.1.2 pyproject-api==1.6.1 -pytest==8.0.2 -pytest-cov==4.1.0 +pytest==8.1.1 +pytest-cov==5.0.0 pytest-profiling==1.7.0 pytest-xdist==3.5.0 python-constraint==1.3.1 @@ -139,20 +139,20 @@ python-dateutil==2.9.0.post0 python-json-logger==2.0.7 python-lsp-jsonrpc==1.1.2 python-lsp-ruff==2.2.0 -python-lsp-server==1.10.0 +python-lsp-server==1.11.0 pytoolconfig==1.3.1 pyyaml==6.0.1 pyzmq==25.1.2 qrules==0.10.1 -referencing==0.33.0 +referencing==0.34.0 requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 rich==13.7.1 -rope==1.12.0 +rope==1.13.0 rpds-py==0.18.0 -ruff==0.3.1 -scipy==1.12.0 +ruff==0.3.5 +scipy==1.13.0 send2trash==1.8.2 six==1.16.0 smmap==5.0.1 @@ -178,18 +178,18 @@ sphinxcontrib-htmlhelp==2.0.5 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 -sqlalchemy==2.0.28 +sqlalchemy==2.0.29 stack-data==0.6.3 sympy==1.12 tabulate==0.9.0 -terminado==0.18.0 +terminado==0.18.1 tinycss2==1.2.1 tornado==6.4 -tox==4.14.1 +tox==4.14.2 tqdm==4.66.2 -traitlets==5.14.1 -types-python-dateutil==2.8.19.20240106 -typing-extensions==4.10.0 +traitlets==5.14.2 +types-python-dateutil==2.9.0.20240316 +typing-extensions==4.11.0 ujson==5.9.0 uri-template==1.3.0 urllib3==2.2.1 @@ -198,9 +198,9 @@ wcwidth==0.2.13 webcolors==1.13 webencodings==0.5.1 websocket-client==1.7.0 -wheel==0.42.0 +wheel==0.43.0 widgetsnbextension==4.0.10 -zipp==3.17.0 +zipp==3.18.1 # The following packages were excluded from the output: # setuptools diff --git a/.constraints/py3.7.txt b/.constraints/py3.7.txt index 6e9f40a5e..6ee3ad95b 100644 --- a/.constraints/py3.7.txt +++ b/.constraints/py3.7.txt @@ -41,7 +41,7 @@ filelock==3.12.2 fonttools==4.38.0 fqdn==1.5.1 gitdb==4.0.11 -gitpython==3.1.42 +gitpython==3.1.43 gprof2dot==2022.7.29 graphviz==0.20.1 greenlet==3.0.3 @@ -110,9 +110,9 @@ nodeenv==1.8.0 notebook==6.5.6 notebook-shim==0.2.4 numpy==1.21.6 -packaging==23.2 +packaging==24.0 pandocfilters==1.5.1 -parso==0.8.3 +parso==0.8.4 particle==0.23.1 pathspec==0.11.2 pexpect==4.9.0 @@ -129,7 +129,7 @@ ptyprocess==0.7.0 pybtex==0.24.0 pybtex-docutils==1.0.3 pycparser==2.21 -pydantic==1.10.14 +pydantic==1.10.15 pydata-sphinx-theme==0.13.3 pygments==2.17.2 pyparsing==3.1.2 diff --git a/.constraints/py3.8.txt b/.constraints/py3.8.txt index ab0c6206f..b60d5c704 100644 --- a/.constraints/py3.8.txt +++ b/.constraints/py3.8.txt @@ -12,7 +12,7 @@ attrs==23.2.0 babel==2.14.0 backcall==0.2.0 beautifulsoup4==4.12.3 -black==24.2.0 +black==24.3.0 bleach==6.1.0 cachetools==5.3.3 cattrs==23.2.3 @@ -23,9 +23,9 @@ chardet==5.2.0 charset-normalizer==3.3.2 click==8.1.7 colorama==0.4.6 -comm==0.2.1 +comm==0.2.2 contourpy==1.1.1 -coverage==7.4.3 +coverage==7.4.4 cycler==0.12.1 debugpy==1.8.1 decorator==5.1.1 @@ -34,28 +34,28 @@ distlib==0.3.8 docstring-to-markdown==0.15 docutils==0.17.1 exceptiongroup==1.2.0 -execnet==2.0.2 +execnet==2.1.0 executing==2.0.1 fastjsonschema==2.19.1 -filelock==3.13.1 -fonttools==4.49.0 +filelock==3.13.3 +fonttools==4.51.0 fqdn==1.5.1 gitdb==4.0.11 -gitpython==3.1.42 +gitpython==3.1.43 gprof2dot==2022.7.29 -graphviz==0.20.1 +graphviz==0.20.3 greenlet==3.0.3 h11==0.14.0 hepunits==2.3.3 -httpcore==1.0.4 +httpcore==1.0.5 httpx==0.27.0 identify==2.5.35 idna==3.6 imagesize==1.4.1 -importlib-metadata==7.0.2 -importlib-resources==6.1.3 +importlib-metadata==7.1.0 +importlib-resources==6.4.0 iniconfig==2.0.0 -ipykernel==6.29.3 +ipykernel==6.29.4 ipympl==0.9.3 ipython==8.12.3 ipython-genutils==0.2.0 @@ -64,25 +64,25 @@ isoduration==20.11.0 isort==5.13.2 jedi==0.19.1 jinja2==3.1.3 -json5==0.9.22 +json5==0.9.24 jsonpointer==2.4 jsonschema==4.21.1 jsonschema-specifications==2023.12.1 jupyter-cache==0.6.1 -jupyter-client==8.6.0 -jupyter-core==5.7.1 -jupyter-events==0.9.0 +jupyter-client==8.6.1 +jupyter-core==5.7.2 +jupyter-events==0.10.0 jupyter-lsp==2.2.4 jupyter-server==2.13.0 jupyter-server-mathjax==0.2.6 -jupyter-server-terminals==0.5.2 -jupyterlab==4.1.4 +jupyter-server-terminals==0.5.3 +jupyterlab==4.1.5 jupyterlab-code-formatter==2.2.1 jupyterlab-git==0.50.0 jupyterlab-lsp==5.1.0 -jupyterlab-myst==2.3.1 +jupyterlab-myst==2.3.2 jupyterlab-pygments==0.3.0 -jupyterlab-server==2.25.3 +jupyterlab-server==2.25.4 jupyterlab-widgets==3.0.10 kiwisolver==1.4.5 latexcodec==3.0.0 @@ -97,28 +97,28 @@ mdurl==0.1.2 mistune==3.0.2 mpl-interactions==0.24.1 mpmath==1.3.0 -mypy==1.8.0 +mypy==1.9.0 mypy-extensions==1.0.0 myst-nb==0.17.2 myst-parser==0.18.1 nbclient==0.6.8 -nbconvert==7.16.2 +nbconvert==7.16.3 nbdime==4.0.1 -nbformat==5.9.2 +nbformat==5.10.4 nbmake==1.5.3 nest-asyncio==1.6.0 nodeenv==1.8.0 notebook-shim==0.2.4 numpy==1.24.4 overrides==7.7.0 -packaging==23.2 +packaging==24.0 pandocfilters==1.5.1 -parso==0.8.3 +parso==0.8.4 particle==0.23.1 pathspec==0.12.1 pexpect==4.9.0 pickleshare==0.7.5 -pillow==10.2.0 +pillow==10.3.0 pkgutil-resolve-name==1.3.10 platformdirs==4.2.0 pluggy==1.4.0 @@ -130,13 +130,13 @@ ptyprocess==0.7.0 pure-eval==0.2.2 pybtex==0.24.0 pybtex-docutils==1.0.3 -pycparser==2.21 +pycparser==2.22 pydata-sphinx-theme==0.14.4 pygments==2.17.2 pyparsing==3.1.2 pyproject-api==1.6.1 -pytest==8.0.2 -pytest-cov==4.1.0 +pytest==8.1.1 +pytest-cov==5.0.0 pytest-profiling==1.7.0 pytest-xdist==3.5.0 python-constraint==1.3.1 @@ -144,20 +144,20 @@ python-dateutil==2.9.0.post0 python-json-logger==2.0.7 python-lsp-jsonrpc==1.1.2 python-lsp-ruff==2.2.0 -python-lsp-server==1.10.0 +python-lsp-server==1.11.0 pytoolconfig==1.3.1 pytz==2024.1 pyyaml==6.0.1 pyzmq==25.1.2 qrules==0.10.1 -referencing==0.33.0 +referencing==0.34.0 requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 rich==13.7.1 -rope==1.12.0 +rope==1.13.0 rpds-py==0.18.0 -ruff==0.3.1 +ruff==0.3.5 scipy==1.10.1 send2trash==1.8.2 six==1.16.0 @@ -184,19 +184,19 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.28 +sqlalchemy==2.0.29 stack-data==0.6.3 sympy==1.12 tabulate==0.9.0 -terminado==0.18.0 +terminado==0.18.1 tinycss2==1.2.1 tomli==2.0.1 tornado==6.4 -tox==4.14.1 +tox==4.14.2 tqdm==4.66.2 -traitlets==5.14.1 -types-python-dateutil==2.8.19.20240106 -typing-extensions==4.10.0 +traitlets==5.14.2 +types-python-dateutil==2.9.0.20240316 +typing-extensions==4.11.0 ujson==5.9.0 uri-template==1.3.0 urllib3==2.2.1 @@ -205,9 +205,9 @@ wcwidth==0.2.13 webcolors==1.13 webencodings==0.5.1 websocket-client==1.7.0 -wheel==0.42.0 +wheel==0.43.0 widgetsnbextension==4.0.10 -zipp==3.17.0 +zipp==3.18.1 # The following packages were excluded from the output: # setuptools diff --git a/.constraints/py3.9.txt b/.constraints/py3.9.txt index 8b5cb151f..9ff47c2dd 100644 --- a/.constraints/py3.9.txt +++ b/.constraints/py3.9.txt @@ -11,7 +11,7 @@ async-lru==2.0.4 attrs==23.2.0 babel==2.14.0 beautifulsoup4==4.12.3 -black==24.2.0 +black==24.3.0 bleach==6.1.0 cachetools==5.3.3 cattrs==23.2.3 @@ -22,9 +22,9 @@ chardet==5.2.0 charset-normalizer==3.3.2 click==8.1.7 colorama==0.4.6 -comm==0.2.1 -contourpy==1.2.0 -coverage==7.4.3 +comm==0.2.2 +contourpy==1.2.1 +coverage==7.4.4 cycler==0.12.1 debugpy==1.8.1 decorator==5.1.1 @@ -33,28 +33,28 @@ distlib==0.3.8 docstring-to-markdown==0.15 docutils==0.20.1 exceptiongroup==1.2.0 -execnet==2.0.2 +execnet==2.1.0 executing==2.0.1 fastjsonschema==2.19.1 -filelock==3.13.1 -fonttools==4.49.0 +filelock==3.13.3 +fonttools==4.51.0 fqdn==1.5.1 gitdb==4.0.11 -gitpython==3.1.42 +gitpython==3.1.43 gprof2dot==2022.7.29 -graphviz==0.20.1 +graphviz==0.20.3 greenlet==3.0.3 h11==0.14.0 hepunits==2.3.3 -httpcore==1.0.4 +httpcore==1.0.5 httpx==0.27.0 identify==2.5.35 idna==3.6 imagesize==1.4.1 -importlib-metadata==7.0.2 -importlib-resources==6.1.3 +importlib-metadata==7.1.0 +importlib-resources==6.4.0 iniconfig==2.0.0 -ipykernel==6.29.3 +ipykernel==6.29.4 ipympl==0.9.3 ipython==8.18.1 ipython-genutils==0.2.0 @@ -63,25 +63,25 @@ isoduration==20.11.0 isort==5.13.2 jedi==0.19.1 jinja2==3.1.3 -json5==0.9.22 +json5==0.9.24 jsonpointer==2.4 jsonschema==4.21.1 jsonschema-specifications==2023.12.1 jupyter-cache==1.0.0 -jupyter-client==8.6.0 -jupyter-core==5.7.1 -jupyter-events==0.9.0 +jupyter-client==8.6.1 +jupyter-core==5.7.2 +jupyter-events==0.10.0 jupyter-lsp==2.2.4 jupyter-server==2.13.0 jupyter-server-mathjax==0.2.6 -jupyter-server-terminals==0.5.2 -jupyterlab==4.1.4 +jupyter-server-terminals==0.5.3 +jupyterlab==4.1.5 jupyterlab-code-formatter==2.2.1 jupyterlab-git==0.50.0 jupyterlab-lsp==5.1.0 -jupyterlab-myst==2.3.1 +jupyterlab-myst==2.3.2 jupyterlab-pygments==0.3.0 -jupyterlab-server==2.25.3 +jupyterlab-server==2.25.4 jupyterlab-widgets==3.0.10 kiwisolver==1.4.5 latexcodec==3.0.0 @@ -89,37 +89,37 @@ livereload==2.6.3 lsprotocol==2023.0.1 markdown-it-py==3.0.0 markupsafe==2.1.5 -matplotlib==3.8.3 +matplotlib==3.8.4 matplotlib-inline==0.1.6 mdit-py-plugins==0.4.0 mdurl==0.1.2 mistune==3.0.2 mpl-interactions==0.24.1 mpmath==1.3.0 -mypy==1.8.0 +mypy==1.9.0 mypy-extensions==1.0.0 myst-nb==1.0.0 myst-parser==2.0.0 nbclient==0.6.8 -nbconvert==7.16.2 +nbconvert==7.16.3 nbdime==4.0.1 -nbformat==5.9.2 +nbformat==5.10.4 nbmake==1.5.3 nest-asyncio==1.6.0 nodeenv==1.8.0 notebook-shim==0.2.4 numpy==1.26.4 overrides==7.7.0 -packaging==23.2 +packaging==24.0 pandocfilters==1.5.1 -parso==0.8.3 +parso==0.8.4 particle==0.23.1 pathspec==0.12.1 pexpect==4.9.0 -pillow==10.2.0 +pillow==10.3.0 platformdirs==4.2.0 pluggy==1.4.0 -pre-commit==3.6.2 +pre-commit==3.7.0 prometheus-client==0.20.0 prompt-toolkit==3.0.43 psutil==5.9.8 @@ -127,13 +127,13 @@ ptyprocess==0.7.0 pure-eval==0.2.2 pybtex==0.24.0 pybtex-docutils==1.0.3 -pycparser==2.21 +pycparser==2.22 pydata-sphinx-theme==0.15.2 pygments==2.17.2 pyparsing==3.1.2 pyproject-api==1.6.1 -pytest==8.0.2 -pytest-cov==4.1.0 +pytest==8.1.1 +pytest-cov==5.0.0 pytest-profiling==1.7.0 pytest-xdist==3.5.0 python-constraint==1.3.1 @@ -141,20 +141,20 @@ python-dateutil==2.9.0.post0 python-json-logger==2.0.7 python-lsp-jsonrpc==1.1.2 python-lsp-ruff==2.2.0 -python-lsp-server==1.10.0 +python-lsp-server==1.11.0 pytoolconfig==1.3.1 pyyaml==6.0.1 pyzmq==25.1.2 qrules==0.10.1 -referencing==0.33.0 +referencing==0.34.0 requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 rich==13.7.1 -rope==1.12.0 +rope==1.13.0 rpds-py==0.18.0 -ruff==0.3.1 -scipy==1.12.0 +ruff==0.3.5 +scipy==1.13.0 send2trash==1.8.2 six==1.16.0 smmap==5.0.1 @@ -180,19 +180,19 @@ sphinxcontrib-htmlhelp==2.0.5 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 -sqlalchemy==2.0.28 +sqlalchemy==2.0.29 stack-data==0.6.3 sympy==1.12 tabulate==0.9.0 -terminado==0.18.0 +terminado==0.18.1 tinycss2==1.2.1 tomli==2.0.1 tornado==6.4 -tox==4.14.1 +tox==4.14.2 tqdm==4.66.2 -traitlets==5.14.1 -types-python-dateutil==2.8.19.20240106 -typing-extensions==4.10.0 +traitlets==5.14.2 +types-python-dateutil==2.9.0.20240316 +typing-extensions==4.11.0 ujson==5.9.0 uri-template==1.3.0 urllib3==2.2.1 @@ -201,9 +201,9 @@ wcwidth==0.2.13 webcolors==1.13 webencodings==0.5.1 websocket-client==1.7.0 -wheel==0.42.0 +wheel==0.43.0 widgetsnbextension==4.0.10 -zipp==3.17.0 +zipp==3.18.1 # The following packages were excluded from the output: # setuptools diff --git a/.cspell.json b/.cspell.json index 53c4c1fac..a49073f36 100644 --- a/.cspell.json +++ b/.cspell.json @@ -22,6 +22,7 @@ "ignorePaths": [ "**/*.bib", "**/.cspell.json", + "*.ico", ".constraints/*.txt", ".editorconfig", ".gitignore", @@ -266,6 +267,7 @@ "parametrizations", "permutate", "pydocstyle", + "PyPA", "pyplot", "pytest", "qrules", diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 925b84d66..54ae3bc8d 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -10,10 +10,22 @@ jobs: milestone: if: startsWith(github.ref, 'refs/tags') uses: ComPWA/actions/.github/workflows/close-milestone.yml@v1 + package-name: + uses: ComPWA/actions/.github/workflows/get-pypi-name.yml@v1 pypi: + environment: + name: PyPI + url: https://pypi.org/p/${{ needs.package-name.outputs.name }} if: startsWith(github.ref, 'refs/tags') - secrets: inherit - uses: ComPWA/actions/.github/workflows/publish-to-pypi.yml@v1 + name: Publish to PyPI + needs: + - package-name + permissions: + id-token: write + runs-on: ubuntu-22.04 + steps: + - uses: ComPWA/actions/build-pypi-distribution@v1 + - uses: pypa/gh-action-pypi-publish@release/v1 push: if: startsWith(github.ref, 'refs/tags') && !github.event.release.prerelease secrets: inherit diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 2540e25eb..0514de537 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -40,7 +40,7 @@ repos: metadata.vscode - repo: https://github.com/ComPWA/policy - rev: 0.3.0 + rev: 0.3.4 hooks: - id: check-dev-files args: @@ -59,7 +59,7 @@ repos: - --extras-require=doc,viz - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.3.1 + rev: v0.3.5 hooks: - id: ruff args: [--fix] @@ -109,7 +109,7 @@ repos: - --in-place - repo: https://github.com/python-jsonschema/check-jsonschema - rev: 0.28.0 + rev: 0.28.1 hooks: - id: check-jsonschema name: Check CITATION.cff @@ -122,7 +122,7 @@ repos: pass_filenames: false - repo: https://github.com/streetsidesoftware/cspell-cli - rev: v8.6.0 + rev: v8.6.1 hooks: - id: cspell @@ -148,6 +148,6 @@ repos: - python - repo: https://github.com/ComPWA/mirrors-pyright - rev: v1.1.352 + rev: v1.1.357 hooks: - id: pyright diff --git a/.readthedocs.yml b/.readthedocs.yml index 7a3d348d5..218c2b3a7 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -16,4 +16,6 @@ build: - graphviz jobs: post_install: - - pip install -c .constraints/py3.11.txt -e .[doc] + - curl -LsSf https://astral.sh/uv/install.sh | sh + - |- + /home/docs/.cargo/bin/uv pip install --system -c .constraints/py3.11.txt -e .[doc] diff --git a/.vscode/settings.json b/.vscode/settings.json index a9137ba34..b15050939 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -10,7 +10,8 @@ "rewrap.wrappingColumn": 72 }, "[json]": { - "editor.defaultFormatter": "esbenp.prettier-vscode" + "editor.defaultFormatter": "esbenp.prettier-vscode", + "editor.wordWrap": "on" }, "[jsonc]": { "editor.defaultFormatter": "esbenp.prettier-vscode" @@ -79,7 +80,6 @@ "telemetry.telemetryLevel": "off", "yaml.schemas": { "https://citation-file-format.github.io/1.2.0/schema.json": "CITATION.cff", - "https://json.schemastore.org/github-workflow.json": "./.github/workflows/requirements.yml", - "https://raw.githubusercontent.com/readthedocs/readthedocs.org/master/readthedocs/rtd_tests/fixtures/spec/v2/schema.yml": ".readthedocs.yml" + "https://json.schemastore.org/github-workflow.json": "./.github/workflows/requirements.yml" } } diff --git a/pyproject.toml b/pyproject.toml index 0a275ce3e..1bef3a57b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -153,7 +153,6 @@ branch = true source = ["src"] [tool.mypy] -enable_incomplete_feature = "Unpack" exclude = "_build" show_error_codes = true warn_unused_configs = true @@ -240,7 +239,6 @@ filterwarnings = [ "ignore:.*is deprecated and slated for removal in Python 3.14:DeprecationWarning", "ignore:.*the @ampform.sympy.unevaluated_expression decorator instead( with commutative=True)?:DeprecationWarning", "ignore:Passing a schema to Validator.iter_errors is deprecated.*:DeprecationWarning", - "ignore:The .* argument to NotebookFile is deprecated.*:pytest.PytestRemovedIn8Warning", "ignore:The distutils package is deprecated.*:DeprecationWarning", "ignore:The distutils.* module is deprecated.*:DeprecationWarning", "ignore:datetime.datetime.utcfromtimestamp\\(\\) is deprecated and scheduled for removal in a future version.*:DeprecationWarning", diff --git a/src/ampform/helicity/decay.py b/src/ampform/helicity/decay.py index f65e8cfdc..11c76cd7c 100644 --- a/src/ampform/helicity/decay.py +++ b/src/ampform/helicity/decay.py @@ -123,15 +123,10 @@ def _is_qrules_state_transition(obj) -> TypeGuard[StateTransition]: if isinstance(obj, FrozenTransition): if any(not isinstance(s, State) for s in obj.states.values()): return False - if any( - not isinstance(i, InteractionProperties) - for i in obj.interactions.values() - ): - return False - return True - if get_qrules_version() < (0, 10) and isinstance(obj, StateTransition): # type: ignore[misc] - return True - return False + return all( + isinstance(i, InteractionProperties) for i in obj.interactions.values() + ) + return get_qrules_version() < (0, 10) and isinstance(obj, StateTransition) # type: ignore[misc] @lru_cache(maxsize=None) diff --git a/src/symplot/__init__.py b/src/symplot/__init__.py index 9a775819e..9b7409200 100644 --- a/src/symplot/__init__.py +++ b/src/symplot/__init__.py @@ -214,17 +214,13 @@ def set_ranges( def _is_min_max( range_def: RangeDefinition, ) -> TypeGuard[tuple[float, float]]: - if len(range_def) == 2: # noqa: PLR2004 - return True - return False + return len(range_def) == 2 # noqa: PLR2004 def _is_min_max_step( range_def: RangeDefinition, ) -> TypeGuard[tuple[float, float, float | int]]: - if len(range_def) == 3: # noqa: PLR2004 - return True - return False + return len(range_def) == 3 # noqa: PLR2004 ValueType = TypeVar("ValueType") diff --git a/tests/symplot/test_symplot.py b/tests/symplot/test_symplot.py index 530328345..e20765c28 100644 --- a/tests/symplot/test_symplot.py +++ b/tests/symplot/test_symplot.py @@ -87,7 +87,7 @@ def test_repr( assert slider.max == slider_from_repr.max assert slider.value == slider_from_repr.value - @pytest.mark.skip(reason="ipywidgets cannot be compied anymore") + @pytest.mark.skip(reason="ipywidgets cannot be copied anymore") @pytest.mark.parametrize( ("slider_name", "min_", "max_", "n_steps", "step_size"), [ @@ -134,7 +134,7 @@ def test_set_ranges_exceptions(self, slider_kwargs: SliderKwargs) -> None: with pytest.raises(ValueError, match=r"Number of steps has to be positive"): slider_kwargs.set_ranges({"n": (0, 10, -1)}) - @pytest.mark.skip(reason="ipywidgets cannot be compied anymore") + @pytest.mark.skip(reason="ipywidgets cannot be copied anymore") def test_set_values( self, slider_kwargs: SliderKwargs, caplog: pytest.LogCaptureFixture ) -> None: