From a71356c38f6db1d176fceb90b3069f6e8bc7c518 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 3 Jul 2023 19:56:26 +0000 Subject: [PATCH 1/8] MAINT: update pip constraints and pre-commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/ComPWA/repo-maintenance: 0.0.179 → 0.0.183](https://github.com/ComPWA/repo-maintenance/compare/0.0.179...0.0.183) - [github.com/editorconfig-checker/editorconfig-checker.python: 2.7.1 → 2.7.2](https://github.com/editorconfig-checker/editorconfig-checker.python/compare/2.7.1...2.7.2) - [github.com/igorshubovych/markdownlint-cli: v0.34.0 → v0.35.0](https://github.com/igorshubovych/markdownlint-cli/compare/v0.34.0...v0.35.0) - [github.com/ComPWA/mirrors-pyright: v1.1.308 → v1.1.316](https://github.com/ComPWA/mirrors-pyright/compare/v1.1.308...v1.1.316) - [github.com/asottile/pyupgrade: v3.4.0 → v3.8.0](https://github.com/asottile/pyupgrade/compare/v3.4.0...v3.8.0) --- .pre-commit-config.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 4d2ff1a..7d9f3ad 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -33,7 +33,7 @@ repos: - id: trailing-whitespace - repo: https://github.com/ComPWA/repo-maintenance - rev: 0.0.179 + rev: 0.0.183 hooks: - id: check-dev-files args: @@ -53,7 +53,7 @@ repos: - id: cspell - repo: https://github.com/editorconfig-checker/editorconfig-checker.python - rev: 2.7.1 + rev: 2.7.2 hooks: - id: editorconfig-checker name: editorconfig @@ -78,7 +78,7 @@ repos: - id: isort - repo: https://github.com/igorshubovych/markdownlint-cli - rev: v0.34.0 + rev: v0.35.0 hooks: - id: markdownlint @@ -139,12 +139,12 @@ repos: - python - repo: https://github.com/ComPWA/mirrors-pyright - rev: v1.1.308 + rev: v1.1.316 hooks: - id: pyright - repo: https://github.com/asottile/pyupgrade - rev: v3.4.0 + rev: v3.8.0 hooks: - id: pyupgrade args: From 553b0aef89d2abfaa49db0cb51193327e825c514 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 3 Jul 2023 19:56:47 +0000 Subject: [PATCH 2/8] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .cspell.json | 3 - .flake8 | 42 ----------- .github/workflows/ci.yml | 2 +- .gitpod.yml | 5 +- .mypy.ini | 21 ------ .pre-commit-config.yaml | 35 +++------- .pydocstyle | 11 --- .pylintrc | 32 --------- .vscode/extensions.json | 12 +++- .vscode/settings.json | 8 +-- README.md | 2 +- pyproject.toml | 147 ++++++++++++++++++++++++++++++++++++--- pyrightconfig.json | 27 ------- pytest.ini | 26 ------- tests/.pydocstyle | 4 -- 15 files changed, 163 insertions(+), 214 deletions(-) delete mode 100644 .flake8 delete mode 100644 .mypy.ini delete mode 100644 .pydocstyle delete mode 100644 .pylintrc delete mode 100644 pyrightconfig.json delete mode 100644 pytest.ini delete mode 100644 tests/.pydocstyle diff --git a/.cspell.json b/.cspell.json index a5d3186..3be3de3 100644 --- a/.cspell.json +++ b/.cspell.json @@ -22,14 +22,11 @@ "*particle*.*ml", ".constraints/*.txt", ".editorconfig", - ".flake8*", ".gitignore", ".gitpod.*", ".mypy.ini", ".pre-commit-config.yaml", ".prettierignore", - ".pydocstyle*", - ".pylintrc", ".readthedocs.yml", ".vscode/*", ".vscode/.gitignore", diff --git a/.flake8 b/.flake8 deleted file mode 100644 index edcc5ee..0000000 --- a/.flake8 +++ /dev/null @@ -1,42 +0,0 @@ -[flake8] -application-import-names = - boostcfg - pawian -filename = - ./src/*.py - ./tests/*.py -exclude = - __pycache__ - docs/conf.py -ignore = - # https://github.com/psf/black#slices - E203 - # allowed by black - E231 - # https://github.com/psf/black#line-length - E501 - # block quote ends without a blank line (black formatting) - RST201 - # unexpected indentation (related to google style docstring) - RST301 - # enforce type ignore with mypy error codes (combined --extend-select=TI100) - TI1 - # https://github.com/psf/black#line-breaks--binary-operators - W503 -extend-select = - TI100 -rst-roles = - attr, - class, - doc, - download, - file, - func, - meth, - mod, - ref, -rst-directives = - deprecated, - envvar, - exception, - seealso, diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e28b8b6..603d3eb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,7 +35,7 @@ jobs: uses: ComPWA/actions/.github/workflows/pytest.yml@v1 with: coverage-target: pawian - macos-python-version: "3.7" + macos-python-version: "3.9" specific-pip-packages: ${{ inputs.specific-pip-packages }} style: if: inputs.specific-pip-packages == '' diff --git a/.gitpod.yml b/.gitpod.yml index e7acf15..4957ba9 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -13,17 +13,16 @@ github: vscode: extensions: + - charliermarsh.ruff - christian-kohler.path-intellisense - davidanson.vscode-markdownlint - eamodio.gitlens - editorconfig.editorconfig - esbenp.prettier-vscode - executablebookproject.myst-highlight + - garaioag.garaio-vscode-unwanted-recommendations - github.vscode-github-actions - github.vscode-pull-request-github - - ms-python.flake8 - - ms-python.isort - - ms-python.pylint - ms-python.python - ms-python.vscode-pylance - ms-vscode-remote.remote-ssh diff --git a/.mypy.ini b/.mypy.ini deleted file mode 100644 index 28be418..0000000 --- a/.mypy.ini +++ /dev/null @@ -1,21 +0,0 @@ -[mypy] -disallow_incomplete_defs = True -disallow_untyped_defs = True -exclude = _build -show_error_codes = True -warn_unused_configs = True - -[mypy-tests.*] -check_untyped_defs = True -disallow_incomplete_defs = False -disallow_untyped_defs = False - -; External packages that miss stubs or type hints -[mypy-awkward.*] -ignore_missing_imports = True -[mypy-matplotlib.*] -ignore_missing_imports = True -[mypy-pandas.*] -ignore_missing_imports = True -[mypy-uproot.*] -ignore_missing_imports = True diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 7d9f3ad..ab9afd5 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -63,20 +63,6 @@ repos: .*\.py )$ - - repo: local - hooks: - - id: flake8 - name: flake8 - entry: flake8 - language: system - types: - - python - - - repo: https://github.com/pycqa/isort - rev: 5.12.0 - hooks: - - id: isort - - repo: https://github.com/igorshubovych/markdownlint-cli rev: v0.35.0 hooks: @@ -99,6 +85,7 @@ repos: args: - --extra-keys - | + cell.attachments cell.metadata.code_folding cell.metadata.id cell.metadata.user_expressions @@ -125,19 +112,6 @@ repos: hooks: - id: pydocstyle - - repo: local - hooks: - - id: pylint - name: pylint - entry: pylint - args: - - --rcfile=.pylintrc - - --score=no - language: system - require_serial: true - types: - - python - - repo: https://github.com/ComPWA/mirrors-pyright rev: v1.1.316 hooks: @@ -150,6 +124,13 @@ repos: args: - --py36-plus + - repo: https://github.com/astral-sh/ruff-pre-commit + rev: "" + hooks: + - id: ruff + args: + - --fix + - repo: https://github.com/ComPWA/mirrors-taplo rev: v0.8.0 hooks: diff --git a/.pydocstyle b/.pydocstyle deleted file mode 100644 index 1ffd131..0000000 --- a/.pydocstyle +++ /dev/null @@ -1,11 +0,0 @@ -[pydocstyle] -convention=google -add_ignore = - D101, # class docstring - D102, # method docstring - D103, # function docstring - D105, # magic method docstring - D107, # init docstring - D203, # conflicts with D211 - D213, # multi-line docstring should start at the second line - D407, # missing dashed underline after section diff --git a/.pylintrc b/.pylintrc deleted file mode 100644 index 0e5c52d..0000000 --- a/.pylintrc +++ /dev/null @@ -1,32 +0,0 @@ -# To see other available options: -# pylint --generate-rcfile > .pylintrc_new -# and compare the output - -[BASIC] -good-names-rgxs= - ^[p]$, - -[VARIABLES] -init-import=yes - -[MESSAGES CONTROL] -disable= - C0114, # done by pydocstyle - C0115, # done by pydocstyle - C0116, # done by pydocstyle - line-too-long, # automatically fixed with black - logging-fstring-interpolation, - unspecified-encoding, # http://pylint.pycqa.org/en/latest/whatsnew/2.10.html - unused-import, # https://www.flake8rules.com/rules/F401 - -[MASTER] -ignore=conf.py - -[DESIGN] -# Minimum number of public methods for a class (see R0903). Default is 2. -# We decrease this to 0, since some rules are "empty" but get decorated. -# Note that some interface classes also just have a single method -min-public-methods=0 - -[SIMILARITIES] -ignore-imports=yes # https://stackoverflow.com/a/30007053 diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 0725605..4804440 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,16 +1,15 @@ { "recommendations": [ + "charliermarsh.ruff", "christian-kohler.path-intellisense", "davidanson.vscode-markdownlint", "eamodio.gitlens", "editorconfig.editorconfig", "esbenp.prettier-vscode", "executablebookproject.myst-highlight", + "garaioag.garaio-vscode-unwanted-recommendations", "github.vscode-github-actions", "github.vscode-pull-request-github", - "ms-python.flake8", - "ms-python.isort", - "ms-python.pylint", "ms-python.python", "ms-python.vscode-pylance", "ms-vscode-remote.remote-ssh", @@ -24,5 +23,12 @@ "trentrand.git-commit-helper-vscode", "tyriar.sort-lines", "yzhang.markdown-all-in-one" + ], + "unwantedRecommendations": [ + "bungcip.better-toml", + "ms-python.flake8", + "ms-python.isort", + "ms-python.pylint", + "travisillig.vscode-json-stable-stringify" ] } diff --git a/.vscode/settings.json b/.vscode/settings.json index aad2582..148ed2b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -30,15 +30,11 @@ "coverage-gutters.showLineCoverage": true, "editor.formatOnSave": true, "editor.rulers": [88], - "flake8.importStrategy": "fromEnvironment", "git.rebaseWhenSync": true, "github-actions.workflows.pinned.workflows": [".github/workflows/ci.yml"], "githubPullRequests.telemetry.enabled": false, "gitlens.telemetry.enabled": false, - "isort.check": true, - "isort.importStrategy": "fromEnvironment", "livePreview.defaultPreviewPath": "docs/_build/html", - "pylint.importStrategy": "fromEnvironment", "python.analysis.autoImportCompletions": false, "python.analysis.diagnosticMode": "workspace", "python.analysis.inlayHints.pytestParameters": true, @@ -49,13 +45,15 @@ "python.linting.enabled": true, "python.linting.flake8Enabled": false, "python.linting.mypyEnabled": true, - "python.linting.pydocstyleEnabled": true, + "python.linting.pydocstyleEnabled": false, "python.linting.pylamaEnabled": false, "python.linting.pylintEnabled": false, "python.testing.pytestArgs": ["--color=no", "--no-cov"], "python.testing.pytestEnabled": true, "python.testing.unittestEnabled": false, "rewrap.wrappingColumn": 88, + "ruff.enable": true, + "ruff.organizeImports": true, "search.exclude": { "*/.pydocstyle": true, ".constraints/*.txt": true, diff --git a/README.md b/README.md index 12a73a4..d4b7dbe 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # Python Tools for Pawian +[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) [![GitHub Pages](https://github.com/redeboer/PawianTools/actions/workflows/gh-pages.yml/badge.svg)](https://github.com/redeboer/PawianTools/actions/workflows/gh-pages.yml) [![Binder](https://static.mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/redeboer/PawianTools/stable?filepath=docs/usage) [![Google Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/redeboer/PawianTools/blob/main) @@ -15,7 +16,6 @@ [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen)](https://github.com/pre-commit/pre-commit) [![Prettier](https://camo.githubusercontent.com/687a8ae8d15f9409617d2cc5a30292a884f6813a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f64655f7374796c652d70726574746965722d6666363962342e7376673f7374796c653d666c61742d737175617265)](https://prettier.io/) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) -[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort) Go to [redeboer.github.io/PawianTools](https://redeboer.github.io/PawianTools) to view the documentation! diff --git a/pyproject.toml b/pyproject.toml index 38d4192..05b3bec 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,17 +33,148 @@ target-version = [ "py39", ] -[tool.isort] -profile = "black" -src_paths = [ +[tool.nbqa.addopts] +black = [ + "--line-length=85", +] + +[tool.mypy] +disallow_incomplete_defs = true +disallow_untyped_defs = true +exclude = "_build" +show_error_codes = true +warn_unused_configs = true + +[[tool.mypy.overrides]] +module = ["tests.*"] +check_untyped_defs = true +disallow_incomplete_defs = false +disallow_untyped_defs = false + +[[tool.mypy.overrides]] +module = ["awkward.*"] +ignore_missing_imports = true + +[[tool.mypy.overrides]] +module = ["matplotlib.*"] +ignore_missing_imports = true + +[[tool.mypy.overrides]] +module = ["pandas.*"] +ignore_missing_imports = true + +[[tool.mypy.overrides]] +module = ["uproot.*"] +ignore_missing_imports = true + +[tool.pyright] +exclude = [ + "**/.git", + "**/.ipynb_checkpoints", + "**/.mypy_cache", + "**/.pytest_cache", + "**/.tox", + "**/__pycache__", + "**/_build", +] +reportGeneralTypeIssues = false +reportMissingParameterType = false +reportMissingTypeArgument = false +reportMissingTypeStubs = false +reportUnknownArgumentType = false +reportUnknownLambdaType = false +reportUnknownMemberType = false +reportUnknownParameterType = false +reportUnknownVariableType = false +reportUnnecessaryComparison = true +reportUnnecessaryIsInstance = false +reportUnusedClass = true +reportUnusedFunction = true +reportUnusedImport = true +reportUnusedVariable = true +typeCheckingMode = "strict" + +[tool.coverage.run] +branch = true +source = ["src"] + +[tool.pytest.ini_options] +addopts = ''' +--color=yes +--doctest-continue-on-failure +--doctest-modules +--durations=3 +--ignore=docs/conf.py +-m "not slow"''' +filterwarnings = [ + "error", + "ignore:.*Consider switching from .* to .*:DeprecationWarning", + "ignore:Using the level keyword in DataFrame and Series aggregations is deprecated.*:FutureWarning", + "ignore:the imp module is deprecated in favour of importlib.*:DeprecationWarning", +] +norecursedirs = [ + ".ipynb_checkpoints", + "_build", +] +markers = [ + "serial", + "slow: marks tests as slow (select with '-m slow')", +] +testpaths = [ "src", "tests", ] -[tool.nbqa.addopts] -black = [ - "--line-length=85", +[tool.ruff] +extend-select = [ + "A", + "B", + "BLE", + "C4", + "C90", + "D", + "EM", + "ERA", + "I", + "ICN", + "INP", + "ISC", + "N", + "NPY", + "PGH", + "PIE", + "PL", + "Q", + "RET", + "RSE", + "RUF", + "S", + "SIM", + "T20", + "TCH", + "TID", + "TRY", + "UP", + "YTT", +] +show-fixes = true +target-version = "py37" +task-tags = ["cspell"] +src = [ + "src", + "tests", ] -flake8 = [ - "--extend-ignore=E402,F821", + +[tool.ruff.per-file-ignores] +"setup.py" = ["D100"] +"tests/*" = [ + "D", + "INP001", + "PGH001", + "PLR0913", + "PLR2004", + "S101", ] + +[tool.ruff.pydocstyle] +convention = "google" diff --git a/pyrightconfig.json b/pyrightconfig.json deleted file mode 100644 index e847154..0000000 --- a/pyrightconfig.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "exclude": [ - "**/__pycache__", - "**/_build", - "**/.git", - "**/.ipynb_checkpoints", - "**/.mypy_cache", - "**/.pytest_cache", - "**/.tox" - ], - "reportGeneralTypeIssues": false, - "reportMissingParameterType": false, - "reportMissingTypeArgument": false, - "reportMissingTypeStubs": false, - "reportUnknownArgumentType": false, - "reportUnknownLambdaType": false, - "reportUnknownMemberType": false, - "reportUnknownParameterType": false, - "reportUnknownVariableType": false, - "reportUnnecessaryComparison": true, - "reportUnnecessaryIsInstance": false, - "reportUnusedClass": true, - "reportUnusedFunction": true, - "reportUnusedImport": true, - "reportUnusedVariable": true, - "typeCheckingMode": "strict" -} diff --git a/pytest.ini b/pytest.ini deleted file mode 100644 index 5b4801f..0000000 --- a/pytest.ini +++ /dev/null @@ -1,26 +0,0 @@ -[coverage:run] -branch = True -source = src - -[pytest] -addopts = - --color=yes - --doctest-continue-on-failure - --doctest-modules - --durations=3 - --ignore=docs/conf.py - -m "not slow" -filterwarnings = - error - ignore:.*Consider switching from .* to .*:DeprecationWarning - ignore:Using the level keyword in DataFrame and Series aggregations is deprecated.*:FutureWarning - ignore:the imp module is deprecated in favour of importlib.*:DeprecationWarning -norecursedirs = - .ipynb_checkpoints - _build -markers = - serial - slow: marks tests as slow (select with '-m slow') -testpaths = - src - tests diff --git a/tests/.pydocstyle b/tests/.pydocstyle deleted file mode 100644 index 26d0703..0000000 --- a/tests/.pydocstyle +++ /dev/null @@ -1,4 +0,0 @@ -; ignore all pydocstyle errors in this folder - -[pydocstyle] -add_ignore = D From 845f902d514828777dbf0f273775123ee9e64967 Mon Sep 17 00:00:00 2001 From: GitHub Date: Mon, 3 Jul 2023 19:58:24 +0000 Subject: [PATCH 3/8] MAINT: update pip constraints and pre-commit --- .constraints/py3.10.txt | 115 ++++++++++++++++++++-------------------- .constraints/py3.11.txt | 113 ++++++++++++++++++++------------------- .constraints/py3.6.txt | 14 ++--- .constraints/py3.7.txt | 70 ++++++++++++------------ .constraints/py3.8.txt | 113 ++++++++++++++++++++------------------- .constraints/py3.9.txt | 115 ++++++++++++++++++++-------------------- .pre-commit-config.yaml | 2 +- 7 files changed, 273 insertions(+), 269 deletions(-) diff --git a/.constraints/py3.10.txt b/.constraints/py3.10.txt index 4a43d36..4d88753 100644 --- a/.constraints/py3.10.txt +++ b/.constraints/py3.10.txt @@ -8,22 +8,22 @@ accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.6.2 +anyio==3.7.0 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.4 +astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.0 -awkward-cpp==15 +awkward==2.2.4 +awkward-cpp==17 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 black==23.3.0 bleach==6.0.0 -cachetools==5.3.0 +cachetools==5.3.1 certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 @@ -32,8 +32,8 @@ charset-normalizer==3.1.0 click==8.1.3 colorama==0.4.6 comm==0.1.3 -contourpy==1.0.7 -coverage==7.2.5 +contourpy==1.1.0 +coverage==7.2.7 cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 @@ -41,93 +41,94 @@ defusedxml==0.7.1 dill==0.3.6 distlib==0.3.6 docutils==0.19 -exceptiongroup==1.1.1 +exceptiongroup==1.1.2 execnet==1.9.0 executing==1.2.0 -fastjsonschema==2.16.3 -filelock==3.12.0 +fastjsonschema==2.17.1 +filelock==3.12.2 flake8==6.0.0 ; python_version >= "3.8.0" flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.5.9 ; python_version >= "3.8.0" +flake8-bugbear==23.6.5 ; python_version >= "3.8.0" flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.12.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.2 +flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" +flake8-plugin-utils==1.3.3 flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" flake8-use-fstring==1.4 ; python_version >= "3.8.0" -fonttools==4.39.4 +fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.6.0 +importlib-metadata==6.7.0 iniconfig==2.0.0 -ipykernel==6.23.0 -ipython==8.13.2 +ipykernel==6.24.0 +ipython==8.14.0 ipython-genutils==0.2.0 ipywidgets==8.0.6 isoduration==20.11.0 isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 -json5==0.9.11 -jsonpointer==2.3 +json5==0.9.14 +jsonpointer==2.4 jsonschema==4.17.3 jupyter-cache==0.6.1 -jupyter-client==8.2.0 -jupyter-core==5.3.0 +jupyter-client==8.3.0 +jupyter-core==5.3.1 jupyter-events==0.6.3 -jupyter-server==2.5.0 +jupyter-server==2.7.0 jupyter-server-fileid==0.9.0 jupyter-server-terminals==0.4.4 jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 -jupyterlab==3.6.3 -jupyterlab-code-formatter==2.0.0 -jupyterlab-myst==1.1.3 ; python_version >= "3.7.0" +jupyterlab==3.6.5 +jupyterlab-code-formatter==2.2.1 +jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 -jupyterlab-server==2.22.1 +jupyterlab-server==2.23.0 jupyterlab-widgets==3.0.7 kiwisolver==1.4.4 lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 -markupsafe==2.1.2 +markupsafe==2.1.3 matplotlib==3.7.1 matplotlib-inline==0.1.6 mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 -mistune==2.0.5 -mypy==1.3.0 +mistune==3.0.1 +mypy==1.4.1 mypy-extensions==1.0.0 myst-nb==0.17.2 myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 -nbconvert==7.4.0 -nbformat==5.8.0 +nbconvert==7.6.0 +nbformat==5.9.0 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.24.3 +numpy==1.25.0 +overrides==7.3.1 packaging==23.1 -pandas==2.0.1 +pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 -pillow==9.5.0 -platformdirs==3.5.1 -pluggy==1.0.0 -pre-commit==3.3.1 -prometheus-client==0.16.0 +pillow==10.0.0 +platformdirs==3.8.0 +pluggy==1.2.0 +pre-commit==3.3.3 +prometheus-client==0.17.0 prompt-toolkit==3.0.38 psutil==5.9.5 ptyprocess==0.7.0 @@ -135,24 +136,24 @@ pure-eval==0.2.2 pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 -pydeps==1.12.3 +pydeps==1.12.8 pydocstyle==6.3.0 pyflakes==3.0.1 pygments==2.15.1 pylint==2.17.4 -pyparsing==3.0.9 -pyproject-api==1.5.1 +pyparsing==3.1.0 +pyproject-api==1.5.2 pyrsistent==0.19.3 -pytest==7.3.1 -pytest-cov==4.0.0 +pytest==7.4.0 +pytest-cov==4.1.0 pytest-profiling==1.7.0 -pytest-xdist==3.3.0 +pytest-xdist==3.3.1 python-dateutil==2.8.2 python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 -pyzmq==25.0.2 -requests==2.30.0 +pyzmq==25.1.0 +requests==2.31.0 restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 @@ -174,28 +175,28 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.13 +sqlalchemy==2.0.17 stack-data==0.6.2 -stdlib-list==0.8.0 +stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 tomlkit==0.11.8 -tornado==6.3.1 -tox==4.5.1 +tornado==6.3.2 +tox==4.6.3 traitlets==5.9.0 -types-setuptools==67.7.0.2 -typing-extensions==4.5.0 +types-setuptools==68.0.0.0 +typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.7 -uri-template==1.2.0 -urllib3==2.0.2 -virtualenv==20.23.0 +uproot==5.0.9 +uri-template==1.3.0 +urllib3==2.0.3 +virtualenv==20.23.1 wcwidth==0.2.6 webcolors==1.13 webencodings==0.5.1 -websocket-client==1.5.1 +websocket-client==1.6.1 wheel==0.40.0 widgetsnbextension==4.0.7 wrapt==1.15.0 diff --git a/.constraints/py3.11.txt b/.constraints/py3.11.txt index 7e740f7..5b2582b 100644 --- a/.constraints/py3.11.txt +++ b/.constraints/py3.11.txt @@ -8,22 +8,22 @@ accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.6.2 +anyio==3.7.0 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.4 +astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.0 -awkward-cpp==15 +awkward==2.2.4 +awkward-cpp==17 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 black==23.3.0 bleach==6.0.0 -cachetools==5.3.0 +cachetools==5.3.1 certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 @@ -32,8 +32,8 @@ charset-normalizer==3.1.0 click==8.1.3 colorama==0.4.6 comm==0.1.3 -contourpy==1.0.7 -coverage==7.2.5 +contourpy==1.1.0 +coverage==7.2.7 cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 @@ -43,90 +43,91 @@ distlib==0.3.6 docutils==0.19 execnet==1.9.0 executing==1.2.0 -fastjsonschema==2.16.3 -filelock==3.12.0 +fastjsonschema==2.17.1 +filelock==3.12.2 flake8==6.0.0 ; python_version >= "3.8.0" flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.5.9 ; python_version >= "3.8.0" +flake8-bugbear==23.6.5 ; python_version >= "3.8.0" flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.12.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.2 +flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" +flake8-plugin-utils==1.3.3 flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" flake8-use-fstring==1.4 ; python_version >= "3.8.0" -fonttools==4.39.4 +fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.6.0 +importlib-metadata==6.7.0 iniconfig==2.0.0 -ipykernel==6.23.0 -ipython==8.13.2 +ipykernel==6.24.0 +ipython==8.14.0 ipython-genutils==0.2.0 ipywidgets==8.0.6 isoduration==20.11.0 isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 -json5==0.9.11 -jsonpointer==2.3 +json5==0.9.14 +jsonpointer==2.4 jsonschema==4.17.3 jupyter-cache==0.6.1 -jupyter-client==8.2.0 -jupyter-core==5.3.0 +jupyter-client==8.3.0 +jupyter-core==5.3.1 jupyter-events==0.6.3 -jupyter-server==2.5.0 +jupyter-server==2.7.0 jupyter-server-fileid==0.9.0 jupyter-server-terminals==0.4.4 jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 -jupyterlab==3.6.3 -jupyterlab-code-formatter==2.0.0 -jupyterlab-myst==1.1.3 ; python_version >= "3.7.0" +jupyterlab==3.6.5 +jupyterlab-code-formatter==2.2.1 +jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 -jupyterlab-server==2.22.1 +jupyterlab-server==2.23.0 jupyterlab-widgets==3.0.7 kiwisolver==1.4.4 lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 -markupsafe==2.1.2 +markupsafe==2.1.3 matplotlib==3.7.1 matplotlib-inline==0.1.6 mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 -mistune==2.0.5 -mypy==1.3.0 +mistune==3.0.1 +mypy==1.4.1 mypy-extensions==1.0.0 myst-nb==0.17.2 myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 -nbconvert==7.4.0 -nbformat==5.8.0 +nbconvert==7.6.0 +nbformat==5.9.0 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.24.3 +numpy==1.25.0 +overrides==7.3.1 packaging==23.1 -pandas==2.0.1 +pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 -pillow==9.5.0 -platformdirs==3.5.1 -pluggy==1.0.0 -pre-commit==3.3.1 -prometheus-client==0.16.0 +pillow==10.0.0 +platformdirs==3.8.0 +pluggy==1.2.0 +pre-commit==3.3.3 +prometheus-client==0.17.0 prompt-toolkit==3.0.38 psutil==5.9.5 ptyprocess==0.7.0 @@ -134,24 +135,24 @@ pure-eval==0.2.2 pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 -pydeps==1.12.3 +pydeps==1.12.8 pydocstyle==6.3.0 pyflakes==3.0.1 pygments==2.15.1 pylint==2.17.4 -pyparsing==3.0.9 -pyproject-api==1.5.1 +pyparsing==3.1.0 +pyproject-api==1.5.2 pyrsistent==0.19.3 -pytest==7.3.1 -pytest-cov==4.0.0 +pytest==7.4.0 +pytest-cov==4.1.0 pytest-profiling==1.7.0 -pytest-xdist==3.3.0 +pytest-xdist==3.3.1 python-dateutil==2.8.2 python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 -pyzmq==25.0.2 -requests==2.30.0 +pyzmq==25.1.0 +requests==2.31.0 restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 @@ -173,27 +174,27 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.13 +sqlalchemy==2.0.17 stack-data==0.6.2 -stdlib-list==0.8.0 +stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomlkit==0.11.8 -tornado==6.3.1 -tox==4.5.1 +tornado==6.3.2 +tox==4.6.3 traitlets==5.9.0 -types-setuptools==67.7.0.2 -typing-extensions==4.5.0 +types-setuptools==68.0.0.0 +typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.7 -uri-template==1.2.0 -urllib3==2.0.2 -virtualenv==20.23.0 +uproot==5.0.9 +uri-template==1.3.0 +urllib3==2.0.3 +virtualenv==20.23.1 wcwidth==0.2.6 webcolors==1.13 webencodings==0.5.1 -websocket-client==1.5.1 +websocket-client==1.6.1 wheel==0.40.0 widgetsnbextension==4.0.7 wrapt==1.15.0 diff --git a/.constraints/py3.6.txt b/.constraints/py3.6.txt index fecf9db..31d26e4 100644 --- a/.constraints/py3.6.txt +++ b/.constraints/py3.6.txt @@ -54,7 +54,7 @@ ipywidgets==7.7.5 isort==5.10.1 jedi==0.17.2 jinja2==3.0.3 -json5==0.9.11 +json5==0.9.14 jsonschema==3.2.0 jupyter-cache==0.4.3 jupyter-client==7.1.2 @@ -100,17 +100,17 @@ pillow==8.4.0 platformdirs==2.4.0 pluggy==1.0.0 pre-commit==2.17.0 -prometheus-client==0.16.0 +prometheus-client==0.17.0 prompt-toolkit==3.0.36 ptyprocess==0.7.0 py==1.11.0 pycparser==2.21 pydata-sphinx-theme==0.7.2 -pydeps==1.12.3 +pydeps==1.12.8 pydocstyle==6.3.0 pygments==2.14.0 pylint==2.13.9 -pyparsing==3.0.9 +pyparsing==3.1.0 pyrsistent==0.18.0 pytest==7.0.1 pytest-cov==4.0.0 @@ -119,7 +119,7 @@ pytest-xdist==3.0.2 python-dateutil==2.8.2 pytz==2023.3 pyyaml==6.0 -pyzmq==25.0.2 +pyzmq==25.1.0 requests==2.27.1 send2trash==1.8.2 six==1.16.0 @@ -150,10 +150,10 @@ tornado==6.1 tox==3.28.0 ; python_version < "3.8.0" traitlets==4.3.3 typed-ast==1.5.4 -types-setuptools==67.7.0.2 +types-setuptools==68.0.0.0 typing-extensions==4.1.1 uproot==4.3.7 -urllib3==1.26.15 +urllib3==1.26.16 virtualenv==20.15.1 ; python_version < "3.8.0" wcwidth==0.2.6 webencodings==0.5.1 diff --git a/.constraints/py3.7.txt b/.constraints/py3.7.txt index 0471d28..a3459fd 100644 --- a/.constraints/py3.7.txt +++ b/.constraints/py3.7.txt @@ -8,15 +8,15 @@ accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.6.2 +anyio==3.7.0 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.4 +astroid==2.15.5 attrs==23.1.0 -awkward==2.2.0 -awkward-cpp==15 +awkward==2.2.4 +awkward-cpp==17 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 @@ -29,7 +29,7 @@ cfgv==3.3.1 charset-normalizer==3.1.0 click==8.1.3 colorama==0.4.6 -coverage==7.2.5 +coverage==7.2.7 cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 @@ -38,10 +38,10 @@ dill==0.3.6 distlib==0.3.6 docutils==0.17.1 entrypoints==0.4 -exceptiongroup==1.1.1 +exceptiongroup==1.1.2 execnet==1.9.0 -fastjsonschema==2.16.3 -filelock==3.12.0 +fastjsonschema==2.17.1 +filelock==3.12.2 fonttools==4.38.0 fqdn==1.5.1 gprof2dot==2022.7.29 @@ -60,8 +60,8 @@ isoduration==20.11.0 isort==5.11.5 jedi==0.18.2 jinja2==3.1.2 -json5==0.9.11 -jsonpointer==2.3 +json5==0.9.14 +jsonpointer==2.4 jsonschema==4.17.3 jupyter-cache==0.5.0 jupyter-client==7.4.9 @@ -71,30 +71,30 @@ jupyter-server==1.24.0 jupyter-server-fileid==0.9.0 jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 -jupyterlab==3.6.3 -jupyterlab-code-formatter==2.0.0 -jupyterlab-myst==1.1.3 ; python_version >= "3.7.0" +jupyterlab==3.6.5 +jupyterlab-code-formatter==2.2.1 +jupyterlab-myst==1.2.0 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 -jupyterlab-server==2.22.1 +jupyterlab-server==2.23.0 jupyterlab-widgets==3.0.7 kiwisolver==1.4.4 lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 -markupsafe==2.1.2 +markupsafe==2.1.3 matplotlib==3.5.3 matplotlib-inline==0.1.6 mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 -mistune==2.0.5 -mypy==1.3.0 +mistune==3.0.1 +mypy==1.4.1 mypy-extensions==1.0.0 myst-nb==0.17.2 myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.5.13 -nbconvert==7.4.0 +nbconvert==7.6.0 nbformat==5.8.0 nest-asyncio==1.5.6 nodeenv==1.8.0 @@ -110,32 +110,32 @@ pexpect==4.8.0 pickleshare==0.7.5 pillow==9.5.0 pkgutil-resolve-name==1.3.10 -platformdirs==3.5.1 -pluggy==1.0.0 +platformdirs==3.8.0 +pluggy==1.2.0 pre-commit==2.21.0 -prometheus-client==0.16.0 +prometheus-client==0.17.0 prompt-toolkit==3.0.38 psutil==5.9.5 ptyprocess==0.7.0 py==1.11.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 -pydeps==1.12.3 +pydeps==1.12.8 pydocstyle==6.3.0 pygments==2.15.1 pylint==2.17.4 -pyparsing==3.0.9 +pyparsing==3.1.0 pyrsistent==0.19.3 -pytest==7.3.1 -pytest-cov==4.0.0 +pytest==7.4.0 +pytest-cov==4.1.0 pytest-profiling==1.7.0 -pytest-xdist==3.3.0 +pytest-xdist==3.3.1 python-dateutil==2.8.2 python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 -pyzmq==25.0.2 -requests==2.30.0 +pyzmq==25.1.0 +requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 send2trash==1.8.2 @@ -157,7 +157,7 @@ sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 sqlalchemy==1.4.48 -stdlib-list==0.8.0 +stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 @@ -167,16 +167,16 @@ tornado==6.2 tox==3.28.0 ; python_version < "3.8.0" traitlets==5.9.0 typed-ast==1.5.4 -types-setuptools==67.7.0.2 -typing-extensions==4.5.0 -uproot==5.0.7 -uri-template==1.2.0 -urllib3==2.0.2 +types-setuptools==68.0.0.0 +typing-extensions==4.7.1 +uproot==5.0.9 +uri-template==1.3.0 +urllib3==2.0.3 virtualenv==20.21.1 ; python_version < "3.8.0" wcwidth==0.2.6 webcolors==1.13 webencodings==0.5.1 -websocket-client==1.5.1 +websocket-client==1.6.1 wheel==0.40.0 widgetsnbextension==4.0.7 wrapt==1.15.0 diff --git a/.constraints/py3.8.txt b/.constraints/py3.8.txt index 4e03056..e8ebb20 100644 --- a/.constraints/py3.8.txt +++ b/.constraints/py3.8.txt @@ -8,22 +8,22 @@ accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.6.2 +anyio==3.7.0 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.4 +astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.0 -awkward-cpp==15 +awkward==2.2.4 +awkward-cpp==17 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 black==23.3.0 bleach==6.0.0 -cachetools==5.3.0 +cachetools==5.3.1 certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 @@ -32,8 +32,8 @@ charset-normalizer==3.1.0 click==8.1.3 colorama==0.4.6 comm==0.1.3 -contourpy==1.0.7 -coverage==7.2.5 +contourpy==1.1.0 +coverage==7.2.7 cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 @@ -41,32 +41,32 @@ defusedxml==0.7.1 dill==0.3.6 distlib==0.3.6 docutils==0.19 -exceptiongroup==1.1.1 +exceptiongroup==1.1.2 execnet==1.9.0 executing==1.2.0 -fastjsonschema==2.16.3 -filelock==3.12.0 +fastjsonschema==2.17.1 +filelock==3.12.2 flake8==6.0.0 ; python_version >= "3.8.0" flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.5.9 ; python_version >= "3.8.0" +flake8-bugbear==23.6.5 ; python_version >= "3.8.0" flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.12.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.2 +flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" +flake8-plugin-utils==1.3.3 flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" flake8-use-fstring==1.4 ; python_version >= "3.8.0" -fonttools==4.39.4 +fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.6.0 +importlib-metadata==6.7.0 importlib-resources==5.12.0 iniconfig==2.0.0 -ipykernel==6.23.0 +ipykernel==6.24.0 ipython==8.12.2 ipython-genutils==0.2.0 ipywidgets==8.0.6 @@ -74,62 +74,63 @@ isoduration==20.11.0 isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 -json5==0.9.11 -jsonpointer==2.3 +json5==0.9.14 +jsonpointer==2.4 jsonschema==4.17.3 jupyter-cache==0.6.1 -jupyter-client==8.2.0 -jupyter-core==5.3.0 +jupyter-client==8.3.0 +jupyter-core==5.3.1 jupyter-events==0.6.3 -jupyter-server==2.5.0 +jupyter-server==2.7.0 jupyter-server-fileid==0.9.0 jupyter-server-terminals==0.4.4 jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 -jupyterlab==3.6.3 -jupyterlab-code-formatter==2.0.0 -jupyterlab-myst==1.1.3 ; python_version >= "3.7.0" +jupyterlab==3.6.5 +jupyterlab-code-formatter==2.2.1 +jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 -jupyterlab-server==2.22.1 +jupyterlab-server==2.23.0 jupyterlab-widgets==3.0.7 kiwisolver==1.4.4 lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 -markupsafe==2.1.2 +markupsafe==2.1.3 matplotlib==3.7.1 matplotlib-inline==0.1.6 mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 -mistune==2.0.5 -mypy==1.3.0 +mistune==3.0.1 +mypy==1.4.1 mypy-extensions==1.0.0 myst-nb==0.17.2 myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 -nbconvert==7.4.0 -nbformat==5.8.0 +nbconvert==7.6.0 +nbformat==5.9.0 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.24.3 +numpy==1.24.4 +overrides==7.3.1 packaging==23.1 -pandas==2.0.1 +pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 -pillow==9.5.0 +pillow==10.0.0 pkgutil-resolve-name==1.3.10 -platformdirs==3.5.1 -pluggy==1.0.0 -pre-commit==3.3.1 -prometheus-client==0.16.0 +platformdirs==3.8.0 +pluggy==1.2.0 +pre-commit==3.3.3 +prometheus-client==0.17.0 prompt-toolkit==3.0.38 psutil==5.9.5 ptyprocess==0.7.0 @@ -137,24 +138,24 @@ pure-eval==0.2.2 pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 -pydeps==1.12.3 +pydeps==1.12.8 pydocstyle==6.3.0 pyflakes==3.0.1 pygments==2.15.1 pylint==2.17.4 -pyparsing==3.0.9 -pyproject-api==1.5.1 +pyparsing==3.1.0 +pyproject-api==1.5.2 pyrsistent==0.19.3 -pytest==7.3.1 -pytest-cov==4.0.0 +pytest==7.4.0 +pytest-cov==4.1.0 pytest-profiling==1.7.0 -pytest-xdist==3.3.0 +pytest-xdist==3.3.1 python-dateutil==2.8.2 python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 -pyzmq==25.0.2 -requests==2.30.0 +pyzmq==25.1.0 +requests==2.31.0 restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 @@ -176,28 +177,28 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.13 +sqlalchemy==2.0.17 stack-data==0.6.2 -stdlib-list==0.8.0 +stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 tomlkit==0.11.8 -tornado==6.3.1 -tox==4.5.1 +tornado==6.3.2 +tox==4.6.3 traitlets==5.9.0 -types-setuptools==67.7.0.2 -typing-extensions==4.5.0 +types-setuptools==68.0.0.0 +typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.7 -uri-template==1.2.0 -urllib3==2.0.2 -virtualenv==20.23.0 +uproot==5.0.9 +uri-template==1.3.0 +urllib3==2.0.3 +virtualenv==20.23.1 wcwidth==0.2.6 webcolors==1.13 webencodings==0.5.1 -websocket-client==1.5.1 +websocket-client==1.6.1 wheel==0.40.0 widgetsnbextension==4.0.7 wrapt==1.15.0 diff --git a/.constraints/py3.9.txt b/.constraints/py3.9.txt index ba46169..8f8561b 100644 --- a/.constraints/py3.9.txt +++ b/.constraints/py3.9.txt @@ -8,22 +8,22 @@ accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.6.2 +anyio==3.7.0 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.4 +astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.0 -awkward-cpp==15 +awkward==2.2.4 +awkward-cpp==17 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 black==23.3.0 bleach==6.0.0 -cachetools==5.3.0 +cachetools==5.3.1 certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 @@ -32,8 +32,8 @@ charset-normalizer==3.1.0 click==8.1.3 colorama==0.4.6 comm==0.1.3 -contourpy==1.0.7 -coverage==7.2.5 +contourpy==1.1.0 +coverage==7.2.7 cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 @@ -41,94 +41,95 @@ defusedxml==0.7.1 dill==0.3.6 distlib==0.3.6 docutils==0.19 -exceptiongroup==1.1.1 +exceptiongroup==1.1.2 execnet==1.9.0 executing==1.2.0 -fastjsonschema==2.16.3 -filelock==3.12.0 +fastjsonschema==2.17.1 +filelock==3.12.2 flake8==6.0.0 ; python_version >= "3.8.0" flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.5.9 ; python_version >= "3.8.0" +flake8-bugbear==23.6.5 ; python_version >= "3.8.0" flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.12.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.2 +flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" +flake8-plugin-utils==1.3.3 flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" flake8-use-fstring==1.4 ; python_version >= "3.8.0" -fonttools==4.39.4 +fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.6.0 +importlib-metadata==6.7.0 importlib-resources==5.12.0 iniconfig==2.0.0 -ipykernel==6.23.0 -ipython==8.13.2 +ipykernel==6.24.0 +ipython==8.14.0 ipython-genutils==0.2.0 ipywidgets==8.0.6 isoduration==20.11.0 isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 -json5==0.9.11 -jsonpointer==2.3 +json5==0.9.14 +jsonpointer==2.4 jsonschema==4.17.3 jupyter-cache==0.6.1 -jupyter-client==8.2.0 -jupyter-core==5.3.0 +jupyter-client==8.3.0 +jupyter-core==5.3.1 jupyter-events==0.6.3 -jupyter-server==2.5.0 +jupyter-server==2.7.0 jupyter-server-fileid==0.9.0 jupyter-server-terminals==0.4.4 jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 -jupyterlab==3.6.3 -jupyterlab-code-formatter==2.0.0 -jupyterlab-myst==1.1.3 ; python_version >= "3.7.0" +jupyterlab==3.6.5 +jupyterlab-code-formatter==2.2.1 +jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 -jupyterlab-server==2.22.1 +jupyterlab-server==2.23.0 jupyterlab-widgets==3.0.7 kiwisolver==1.4.4 lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 -markupsafe==2.1.2 +markupsafe==2.1.3 matplotlib==3.7.1 matplotlib-inline==0.1.6 mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 -mistune==2.0.5 -mypy==1.3.0 +mistune==3.0.1 +mypy==1.4.1 mypy-extensions==1.0.0 myst-nb==0.17.2 myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 -nbconvert==7.4.0 -nbformat==5.8.0 +nbconvert==7.6.0 +nbformat==5.9.0 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.24.3 +numpy==1.25.0 +overrides==7.3.1 packaging==23.1 -pandas==2.0.1 +pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 -pillow==9.5.0 -platformdirs==3.5.1 -pluggy==1.0.0 -pre-commit==3.3.1 -prometheus-client==0.16.0 +pillow==10.0.0 +platformdirs==3.8.0 +pluggy==1.2.0 +pre-commit==3.3.3 +prometheus-client==0.17.0 prompt-toolkit==3.0.38 psutil==5.9.5 ptyprocess==0.7.0 @@ -136,24 +137,24 @@ pure-eval==0.2.2 pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 -pydeps==1.12.3 +pydeps==1.12.8 pydocstyle==6.3.0 pyflakes==3.0.1 pygments==2.15.1 pylint==2.17.4 -pyparsing==3.0.9 -pyproject-api==1.5.1 +pyparsing==3.1.0 +pyproject-api==1.5.2 pyrsistent==0.19.3 -pytest==7.3.1 -pytest-cov==4.0.0 +pytest==7.4.0 +pytest-cov==4.1.0 pytest-profiling==1.7.0 -pytest-xdist==3.3.0 +pytest-xdist==3.3.1 python-dateutil==2.8.2 python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 -pyzmq==25.0.2 -requests==2.30.0 +pyzmq==25.1.0 +requests==2.31.0 restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 @@ -175,28 +176,28 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.13 +sqlalchemy==2.0.17 stack-data==0.6.2 -stdlib-list==0.8.0 +stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 tomlkit==0.11.8 -tornado==6.3.1 -tox==4.5.1 +tornado==6.3.2 +tox==4.6.3 traitlets==5.9.0 -types-setuptools==67.7.0.2 -typing-extensions==4.5.0 +types-setuptools==68.0.0.0 +typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.7 -uri-template==1.2.0 -urllib3==2.0.2 -virtualenv==20.23.0 +uproot==5.0.9 +uri-template==1.3.0 +urllib3==2.0.3 +virtualenv==20.23.1 wcwidth==0.2.6 webcolors==1.13 webencodings==0.5.1 -websocket-client==1.5.1 +websocket-client==1.6.1 wheel==0.40.0 widgetsnbextension==4.0.7 wrapt==1.15.0 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index ab9afd5..c70b149 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -125,7 +125,7 @@ repos: - --py36-plus - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "" + rev: "v0.0.276" hooks: - id: ruff args: From a0b332af3b9fa3668db1aa78ce65f0e88e4f2178 Mon Sep 17 00:00:00 2001 From: Remco de Boer <29308176+redeboer@users.noreply.github.com> Date: Sun, 9 Jul 2023 22:01:51 +0200 Subject: [PATCH 4/8] MAINT: autoupdate pre-commit repos --- .pre-commit-config.yaml | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c70b149..bfe6af3 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,9 +2,7 @@ ci: autoupdate_commit_msg: "MAINT: update pip constraints and pre-commit" autoupdate_schedule: quarterly skip: - - flake8 - mypy - - pylint - pyright - taplo @@ -33,7 +31,7 @@ repos: - id: trailing-whitespace - repo: https://github.com/ComPWA/repo-maintenance - rev: 0.0.183 + rev: 0.0.191 hooks: - id: check-dev-files args: @@ -103,29 +101,24 @@ repos: metadata.vscode - repo: https://github.com/pre-commit/mirrors-prettier - rev: v3.0.0-alpha.9-for-vscode + rev: v3.0.0 hooks: - id: prettier - - repo: https://github.com/pycqa/pydocstyle - rev: 6.3.0 - hooks: - - id: pydocstyle - - repo: https://github.com/ComPWA/mirrors-pyright rev: v1.1.316 hooks: - id: pyright - repo: https://github.com/asottile/pyupgrade - rev: v3.8.0 + rev: v3.9.0 hooks: - id: pyupgrade args: - --py36-plus - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "v0.0.276" + rev: v0.0.277 hooks: - id: ruff args: From 37201a4cf96c124f74e2176e29d3c0d91a53724a Mon Sep 17 00:00:00 2001 From: Remco de Boer <29308176+redeboer@users.noreply.github.com> Date: Sun, 9 Jul 2023 22:09:36 +0200 Subject: [PATCH 5/8] MAINT: address linting issues --- .cspell.json | 1 - .gitpod.yml | 1 + .vscode/extensions.json | 1 + .vscode/settings.json | 8 ++-- README.md | 2 +- docs/conf.py | 13 +++-- pyproject.toml | 58 ++++++++++++++++------- setup.cfg | 16 +------ setup.py | 1 - src/boostcfg/lineparser.py | 6 ++- src/pawian/data.py | 42 ++++++++-------- src/pawian/qa.py | 25 ++++++---- tests/pawian/data/test_pandas_accessor.py | 3 +- tests/pawian/test_qa.py | 2 +- 14 files changed, 98 insertions(+), 81 deletions(-) diff --git a/.cspell.json b/.cspell.json index 3be3de3..0fec695 100644 --- a/.cspell.json +++ b/.cspell.json @@ -133,7 +133,6 @@ "numpy", "pawian", "pydocstyle", - "pylint", "pypi", "pytest", "PYTHONHASHSEED", diff --git a/.gitpod.yml b/.gitpod.yml index 4957ba9..ebd2be8 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -23,6 +23,7 @@ vscode: - garaioag.garaio-vscode-unwanted-recommendations - github.vscode-github-actions - github.vscode-pull-request-github + - ms-python.mypy-type-checker - ms-python.python - ms-python.vscode-pylance - ms-vscode-remote.remote-ssh diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 4804440..cd674ed 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -10,6 +10,7 @@ "garaioag.garaio-vscode-unwanted-recommendations", "github.vscode-github-actions", "github.vscode-pull-request-github", + "ms-python.mypy-type-checker", "ms-python.python", "ms-python.vscode-pylance", "ms-vscode-remote.remote-ssh", diff --git a/.vscode/settings.json b/.vscode/settings.json index 148ed2b..b9966bc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -23,20 +23,20 @@ "[yaml]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, - "cSpell.enabled": true, "coverage-gutters.coverageFileNames": ["coverage.xml"], "coverage-gutters.coverageReportFileName": "**/htmlcov/index.html", "coverage-gutters.showGutterCoverage": false, "coverage-gutters.showLineCoverage": true, + "cSpell.enabled": true, "editor.formatOnSave": true, "editor.rulers": [88], "git.rebaseWhenSync": true, "github-actions.workflows.pinned.workflows": [".github/workflows/ci.yml"], - "githubPullRequests.telemetry.enabled": false, "gitlens.telemetry.enabled": false, "livePreview.defaultPreviewPath": "docs/_build/html", + "mypy-type-checker.args": ["--config-file", "pyproject.toml"], + "mypy-type-checker.importStrategy": "fromEnvironment", "python.analysis.autoImportCompletions": false, - "python.analysis.diagnosticMode": "workspace", "python.analysis.inlayHints.pytestParameters": true, "python.analysis.typeCheckingMode": "strict", "python.formatting.provider": "black", @@ -44,7 +44,7 @@ "python.linting.banditEnabled": false, "python.linting.enabled": true, "python.linting.flake8Enabled": false, - "python.linting.mypyEnabled": true, + "python.linting.mypyEnabled": false, "python.linting.pydocstyleEnabled": false, "python.linting.pylamaEnabled": false, "python.linting.pylintEnabled": false, diff --git a/README.md b/README.md index d4b7dbe..ea19100 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ # Python Tools for Pawian -[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) [![GitHub Pages](https://github.com/redeboer/PawianTools/actions/workflows/gh-pages.yml/badge.svg)](https://github.com/redeboer/PawianTools/actions/workflows/gh-pages.yml) [![Binder](https://static.mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/redeboer/PawianTools/stable?filepath=docs/usage) [![Google Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/redeboer/PawianTools/blob/main) @@ -16,6 +15,7 @@ [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen)](https://github.com/pre-commit/pre-commit) [![Prettier](https://camo.githubusercontent.com/687a8ae8d15f9409617d2cc5a30292a884f6813a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f64655f7374796c652d70726574746965722d6666363962342e7376673f7374796c653d666c61742d737175617265)](https://prettier.io/) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) +[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) Go to [redeboer.github.io/PawianTools](https://redeboer.github.io/PawianTools) to view the documentation! diff --git a/docs/conf.py b/docs/conf.py index 07a61df..29c2081 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -37,7 +37,7 @@ " ".join( [ "sphinx-apidoc", - f"../src/", + "../src/", "-o api/", "--force", "--no-toc", @@ -45,7 +45,7 @@ "--separate", ] ), - shell=True, + shell=True, # noqa: S602 ) # -- General configuration --------------------------------------------------- @@ -168,7 +168,7 @@ def get_version(package_name: str) -> str: if not line: continue line_segments = tuple(line.split("==")) - if len(line_segments) != 2: + if len(line_segments) != 2: # noqa: PLR2004 continue _, installed_version, *_ = line_segments installed_version = installed_version.strip() @@ -187,9 +187,8 @@ def get_minor_version(package_name: str) -> str: return installed_version matches = re.match(r"^([0-9]+\.[0-9]+).*$", installed_version) if matches is None: - raise ValueError( - f"Could not find documentation for {package_name} v{installed_version}" - ) + msg = f"Could not find documentation for {package_name} v{installed_version}" + raise ValueError(msg) return matches[1] @@ -263,7 +262,7 @@ def get_nb_execution_mode() -> str: "--noshow", ] ), - shell=True, + shell=True, # noqa: S602 ) if os.path.exists("module_structure.svg"): with open(f"api/{PACKAGE}.rst", "a") as stream: diff --git a/pyproject.toml b/pyproject.toml index 05b3bec..98339c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,10 +33,12 @@ target-version = [ "py39", ] +[tool.coverage.run] +branch = true +source = ["src"] + [tool.nbqa.addopts] -black = [ - "--line-length=85", -] +black = ["--line-length=85"] [tool.mypy] disallow_incomplete_defs = true @@ -46,26 +48,26 @@ show_error_codes = true warn_unused_configs = true [[tool.mypy.overrides]] -module = ["tests.*"] check_untyped_defs = true disallow_incomplete_defs = false disallow_untyped_defs = false +module = ["tests.*"] [[tool.mypy.overrides]] -module = ["awkward.*"] ignore_missing_imports = true +module = ["awkward.*"] [[tool.mypy.overrides]] -module = ["matplotlib.*"] ignore_missing_imports = true +module = ["matplotlib.*"] [[tool.mypy.overrides]] -module = ["pandas.*"] ignore_missing_imports = true +module = ["pandas.*"] [[tool.mypy.overrides]] -module = ["uproot.*"] ignore_missing_imports = true +module = ["uproot.*"] [tool.pyright] exclude = [ @@ -94,10 +96,6 @@ reportUnusedImport = true reportUnusedVariable = true typeCheckingMode = "strict" -[tool.coverage.run] -branch = true -source = ["src"] - [tool.pytest.ini_options] addopts = ''' --color=yes @@ -112,14 +110,14 @@ filterwarnings = [ "ignore:Using the level keyword in DataFrame and Series aggregations is deprecated.*:FutureWarning", "ignore:the imp module is deprecated in favour of importlib.*:DeprecationWarning", ] -norecursedirs = [ - ".ipynb_checkpoints", - "_build", -] markers = [ "serial", "slow: marks tests as slow (select with '-m slow')", ] +norecursedirs = [ + ".ipynb_checkpoints", + "_build", +] testpaths = [ "src", "tests", @@ -157,15 +155,39 @@ extend-select = [ "UP", "YTT", ] +ignore = [ + "D101", + "D102", + "D103", + "D105", + "D107", + "D203", + "D213", + "D407", + "D416", + "E501", + "SIM108", +] show-fixes = true -target-version = "py37" -task-tags = ["cspell"] src = [ "src", "tests", ] +target-version = "py37" +task-tags = ["cspell"] [tool.ruff.per-file-ignores] +"docs/*" = [ + "E402", + "INP001", + "S101", + "S113", + "T201", +] +"docs/conf.py" = [ + "A001", + "PLW2901", +] "setup.py" = ["D100"] "tests/*" = [ "D", diff --git a/setup.cfg b/setup.cfg index 37a2846..71b4e9c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -74,26 +74,12 @@ doc = sphinx-togglebutton format = black - isort -flake8 = - flake8 >=4; python_version >="3.8.0" # extend-select - flake8-blind-except; python_version >="3.8.0" - flake8-bugbear; python_version >="3.8.0" - flake8-builtins; python_version >="3.8.0" - flake8-comprehensions; python_version >="3.8.0" - flake8-pytest-style; python_version >="3.8.0" - flake8-rst-docstrings; python_version >="3.8.0" - flake8-type-ignore; python_version >="3.8.0" - flake8-use-fstring; python_version >="3.8.0" - pep8-naming; python_version >="3.8.0" mypy = mypy >=0.730 # error code support types-setuptools lint = - %(flake8)s %(mypy)s - pydocstyle - pylint >=2.5 # good-names-rgxs + ruff test = pytest pytest-cov diff --git a/setup.py b/setup.py index 2e57703..9329697 100644 --- a/setup.py +++ b/setup.py @@ -1,4 +1,3 @@ -# noqa: D100 from setuptools import setup setup( diff --git a/src/boostcfg/lineparser.py b/src/boostcfg/lineparser.py index a4855e8..2676b99 100644 --- a/src/boostcfg/lineparser.py +++ b/src/boostcfg/lineparser.py @@ -22,7 +22,8 @@ def get_key_value_pair(line: str) -> Tuple[str, str]: new_line = strip_comment(line) matches = re.search(r"^\s*([^\s]+?)\s*=\s*([^\s]+.*?)\s*$", strip_comment(new_line)) if matches is None: - raise SyntaxError(f'Line "{new_line}" is not a key, value pair!') + msg = f'Line "{new_line}" is not a key, value pair!' + raise SyntaxError(msg) return matches[1], matches[2] @@ -40,7 +41,8 @@ def strip_comment(line: str) -> str: """Remove everything before a comment sign (:code:`#`).""" matches = re.search(r"^[^#]*", line) if matches is None: - raise ValueError(f"Line {line} is not valid") + msg = f"Line {line} is not valid" + raise ValueError(msg) return matches[0] diff --git a/src/pawian/data.py b/src/pawian/data.py index 9a4e048..c6a0721 100644 --- a/src/pawian/data.py +++ b/src/pawian/data.py @@ -68,18 +68,19 @@ def _validate(obj: PandasObject) -> None: if isinstance(columns, pd.MultiIndex): # if multicolumn, test if 2 levels columns = columns.levels - if len(obj.columns.levels) != 2: - raise AttributeError( - "Not a Pawian data object!\n" - "pandas.DataFrame must have multi-columns of 2 levels:\n" - " - 1st level are particles\n" - f" - 2nd level are define the 4-momentum: {_MOMENTUM_LABELS}" + if len(obj.columns.levels) != 2: # noqa: PLR2004 + msg = ( + "Not a Pawian data object!\npandas.DataFrame must have" + " multi-columns of 2 levels:\n - 1st level are particles\n - 2nd" + f" level are define the 4-momentum: {_MOMENTUM_LABELS}" ) + raise AttributeError(msg) # then select 2nd columns only columns = columns[1] # Check if (sub)column names are same as momentum labels if not set(_MOMENTUM_LABELS) <= set(columns): - raise AttributeError(f"Columns must be {_MOMENTUM_LABELS}") + msg = f"Columns must be {_MOMENTUM_LABELS}" + raise AttributeError(msg) @property def has_weights(self) -> bool: @@ -95,7 +96,8 @@ def has_particles(self) -> bool: def weights(self) -> pd.Series: """Get list of weights, if available.""" if not self.has_weights: - raise ValueError("Dataframe doesn't contain weights") + msg = "Dataframe doesn't contain weights" + raise ValueError(msg) return self._obj[_WEIGHT_LABEL] @property @@ -107,9 +109,8 @@ def intensities(self) -> pd.Series: def particles(self) -> List[str]: """Get list of particles contained in the data frame.""" if not self.has_particles: - raise ValueError( - "This dataframe is single-level and does not contain particles" - ) + msg = "This dataframe is single-level and does not contain particles" + raise ValueError(msg) particles = self._obj.columns.droplevel(1).unique() if self.has_weights: particles = particles.drop(_WEIGHT_LABEL) @@ -202,7 +203,7 @@ def create_skeleton_frame( return pd.DataFrame(index=index, columns=multi_column) -def read_ascii( +def read_ascii( # noqa: C901 filename: str, particles: Optional[Union[List[str], int]] = None, **kwargs: Any, @@ -231,10 +232,11 @@ def read_ascii( if isinstance(particles, int): particles = [f"Particle {i}" for i in range(1, particles + 1)] elif particles is None or not isinstance(particles, list): - raise DataParserError( - f'Cannot determine number of particles in file"{filename}"\n' - "--> Please provide an array of particles for interpretation" + msg = ( + f'Cannot determine number of particles in file"{filename}"\n--> Please' + " provide an array of particles for interpretation" ) + raise DataParserError(msg) # Try to determine number of particles from file if has_weights: @@ -244,10 +246,11 @@ def read_ascii( if isinstance(particles, int): particles = [str(i) for i in range(1, particles + 1)] if len(particles) != file_n_particles: - raise DataParserError( - f'File "{filename}" contains {file_n_particles}, but you said there ' - f"were {len(particles)} ({particles})" + msg = ( + f'File "{filename}" contains {file_n_particles}, but you said there' + f" were {len(particles)} ({particles})" ) + raise DataParserError(msg) # Prepare splitting into particle columns first_momentum_row = 0 @@ -291,7 +294,8 @@ def read_pawian_hists( elif "fit" in type_name.lower(): type_name = "fitted" else: - raise ValueError('Wrong type_name: should be either "data" or "fitted"') + msg = 'Wrong type_name: should be either "data" or "fitted"' + raise ValueError(msg) tree_name = f"_{type_name}Fourvecs" # Get particle names diff --git a/src/pawian/qa.py b/src/pawian/qa.py index 7cfdb34..31964cc 100644 --- a/src/pawian/qa.py +++ b/src/pawian/qa.py @@ -7,7 +7,7 @@ import logging import re # regex from math import ceil, sqrt -from typing import Any, Dict, List, Optional, Tuple, Union +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union import matplotlib.pyplot as plt import numpy as np @@ -16,15 +16,17 @@ from matplotlib.axes import Axes from matplotlib.container import BarContainer from matplotlib.figure import Figure -from uproot.behaviors.TAxis import TAxis from uproot.behaviors.TH1 import TH1 from uproot.behaviors.TH2 import TH2 from uproot.behaviors.TH3 import TH3 -from uproot.reading import ReadOnlyDirectory from pawian.data import read_pawian_hists from pawian.latex import convert +if TYPE_CHECKING: + from uproot.behaviors.TAxis import TAxis + from uproot.reading import ReadOnlyDirectory + class PawianHists: """Data container for a :file:`pawianHists.root` file. @@ -92,16 +94,18 @@ def draw_histogram( kwargs: See `matplotlib.pyplot.hist` arguments """ if name not in self.histogram_names: - raise KeyError(f'Histogram "{name}" does not exist') + msg = f'Histogram "{name}" does not exist' + raise KeyError(msg) hist_content = self.get_histogram_content(name) if hist_content is None: - raise KeyError(f'Could not get histogram "{name}"') + msg = f'Could not get histogram "{name}"' + raise KeyError(msg) edges, values = hist_content if plot_on is None: plot_on = plt # type: ignore[assignment] return plot_on.hist(edges, weights=values, bins=len(values), **kwargs) # type: ignore[call-arg,return-value,union-attr] - def draw_combined_histogram( # pylint: disable=invalid-name,too-many-arguments,too-many-locals + def draw_combined_histogram( # noqa: PLR0913 self, name: str, plot_on: Optional[Axes] = None, @@ -125,7 +129,8 @@ def draw_combined_histogram( # pylint: disable=invalid-name,too-many-arguments, kwargs: Arguments that are passed to :func:`draw_histogram`. """ if name not in self.unique_histogram_names: - raise KeyError(f'Histogram of type "{name}" does not exist') + msg = f'Histogram of type "{name}" does not exist' + raise KeyError(msg) # Construct regular expression re_match_list = [] if data: @@ -164,7 +169,7 @@ def draw_all_histograms( plot_on = plt.figure() grid = plot_on.add_gridspec(n_x, n_y) # type: ignore[union-attr] for idx, name in enumerate(names): - assert plot_on is not None + assert plot_on is not None # noqa: S101 sub = plot_on.add_subplot(grid[idx % n_x, idx // n_x]) self.draw_combined_histogram(name, sub, **kwargs) sub.set_title(f"${convert(name)}$") @@ -175,7 +180,7 @@ def draw_all_histograms( def histogram_names(self) -> List[str]: """Get a list of all histogram names in a :file:`pawianHists.root` file.""" names = [] - for name in self.__file.keys(): + for name in self.__file: obj = self.__file[name] if isinstance(obj, TH1): names.append(obj.name) @@ -189,7 +194,7 @@ def unique_histogram_names(self) -> List[str]: keywords :code:`Data`, :code:`MC`, or :code:`Fit` have been removed. """ names = [] - for name in self.__file.keys(): + for name in self.__file: obj = self.__file[name] if isinstance(obj, TH1): hist_name = obj.name diff --git a/tests/pawian/data/test_pandas_accessor.py b/tests/pawian/data/test_pandas_accessor.py index 26d502f..d52df11 100644 --- a/tests/pawian/data/test_pandas_accessor.py +++ b/tests/pawian/data/test_pandas_accessor.py @@ -16,7 +16,6 @@ ("particles", "number_of_rows"), [ (["pi+", "D0", "D-"], 100), - # (['gamma', 'pi+', 'pi-'], None), (None, 50), ], ) @@ -61,7 +60,7 @@ def test_raise_validate(columns, names): multi_index = pd.MultiIndex.from_tuples(columns, names=names) frame = pd.DataFrame(columns=multi_index) with pytest.raises(AttributeError): - print(frame.pwa) + print(frame.pwa) # noqa: T201 def test_properties_multicolumn(): diff --git a/tests/pawian/test_qa.py b/tests/pawian/test_qa.py index 589323c..6595257 100644 --- a/tests/pawian/test_qa.py +++ b/tests/pawian/test_qa.py @@ -64,7 +64,7 @@ def test_faulty_import(): ), ], ) -def test_data_model( # pylint: disable=too-many-arguments +def test_data_model( filename, hist_value, particles, n_data, n_fit, hist_names, unique_names ): """Test whether properties are correct.""" From 980745cab46fbcd2ecb7d51ba885430c33dff0d8 Mon Sep 17 00:00:00 2001 From: Remco de Boer <29308176+redeboer@users.noreply.github.com> Date: Mon, 10 Jul 2023 22:10:14 +0200 Subject: [PATCH 6/8] FIX: only install `ruff` on >Python 3.7 --- setup.cfg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.cfg b/setup.cfg index 71b4e9c..0071ef4 100644 --- a/setup.cfg +++ b/setup.cfg @@ -79,7 +79,7 @@ mypy = types-setuptools lint = %(mypy)s - ruff + ruff; python_version >="3.7.0" test = pytest pytest-cov From b914a2b24adc2012977953a5f7580574d887db41 Mon Sep 17 00:00:00 2001 From: GitHub Date: Mon, 10 Jul 2023 20:13:45 +0000 Subject: [PATCH 7/8] MAINT: update pip constraints and pre-commit --- .constraints/py3.10.txt | 78 +++++++++++++++------------------------- .constraints/py3.11.txt | 78 +++++++++++++++------------------------- .constraints/py3.6.txt | 16 +++------ .constraints/py3.7.txt | 40 +++++++++------------ .constraints/py3.8.txt | 78 +++++++++++++++------------------------- .constraints/py3.9.txt | 80 ++++++++++++++++------------------------- .pre-commit-config.yaml | 2 +- 7 files changed, 138 insertions(+), 234 deletions(-) diff --git a/.constraints/py3.10.txt b/.constraints/py3.10.txt index 4d88753..ce11638 100644 --- a/.constraints/py3.10.txt +++ b/.constraints/py3.10.txt @@ -2,22 +2,21 @@ # This file is autogenerated by pip-compile with Python 3.10 # by the following command: # -# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.10.txt --strip-extras setup.py +# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.10.txt --resolver=backtracking --strip-extras # accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.7.0 +anyio==3.7.1 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.4 -awkward-cpp==17 +awkward==2.3.1 +awkward-cpp==21 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 @@ -28,8 +27,8 @@ certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 chardet==5.1.0 -charset-normalizer==3.1.0 -click==8.1.3 +charset-normalizer==3.2.0 +click==8.1.4 colorama==0.4.6 comm==0.1.3 contourpy==1.1.0 @@ -38,24 +37,13 @@ cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 defusedxml==0.7.1 -dill==0.3.6 distlib==0.3.6 docutils==0.19 exceptiongroup==1.1.2 -execnet==1.9.0 +execnet==2.0.2 executing==1.2.0 fastjsonschema==2.17.1 filelock==3.12.2 -flake8==6.0.0 ; python_version >= "3.8.0" -flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.6.5 ; python_version >= "3.8.0" -flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.3 -flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" -flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" -flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" -flake8-use-fstring==1.4 ; python_version >= "3.8.0" fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 @@ -63,19 +51,19 @@ greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.7.0 +importlib-metadata==6.8.0 iniconfig==2.0.0 ipykernel==6.24.0 ipython==8.14.0 ipython-genutils==0.2.0 -ipywidgets==8.0.6 +ipywidgets==8.0.7 isoduration==20.11.0 -isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 json5==0.9.14 jsonpointer==2.4 -jsonschema==4.17.3 +jsonschema==4.18.0 +jsonschema-specifications==2023.6.1 jupyter-cache==0.6.1 jupyter-client==8.3.0 jupyter-core==5.3.1 @@ -87,18 +75,16 @@ jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 jupyterlab==3.6.5 jupyterlab-code-formatter==2.2.1 -jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" +jupyterlab-myst==2.0.1 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 jupyterlab-server==2.23.0 -jupyterlab-widgets==3.0.7 +jupyterlab-widgets==3.0.8 kiwisolver==1.4.4 -lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 markupsafe==2.1.3 -matplotlib==3.7.1 +matplotlib==3.7.2 matplotlib-inline==0.1.6 -mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 mistune==3.0.1 @@ -109,41 +95,35 @@ myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 nbconvert==7.6.0 -nbformat==5.9.0 +nbformat==5.9.1 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.25.0 +numpy==1.25.1 overrides==7.3.1 packaging==23.1 pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 -pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 pillow==10.0.0 -platformdirs==3.8.0 +platformdirs==3.8.1 pluggy==1.2.0 pre-commit==3.3.3 prometheus-client==0.17.0 -prompt-toolkit==3.0.38 +prompt-toolkit==3.0.39 psutil==5.9.5 ptyprocess==0.7.0 pure-eval==0.2.2 -pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 pydeps==1.12.8 -pydocstyle==6.3.0 -pyflakes==3.0.1 pygments==2.15.1 -pylint==2.17.4 -pyparsing==3.1.0 -pyproject-api==1.5.2 -pyrsistent==0.19.3 +pyparsing==3.0.9 +pyproject-api==1.5.3 pytest==7.4.0 pytest-cov==4.1.0 pytest-profiling==1.7.0 @@ -153,10 +133,12 @@ python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 pyzmq==25.1.0 +referencing==0.29.1 requests==2.31.0 -restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 +rpds-py==0.8.10 +ruff==0.0.277 ; python_version >= "3.7.0" send2trash==1.8.2 six==1.16.0 sniffio==1.3.0 @@ -175,21 +157,20 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.17 +sqlalchemy==2.0.18 stack-data==0.6.2 stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 -tomlkit==0.11.8 tornado==6.3.2 -tox==4.6.3 +tox==4.6.4 traitlets==5.9.0 -types-setuptools==68.0.0.0 +types-setuptools==68.0.0.1 typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.9 +uproot==5.0.10 uri-template==1.3.0 urllib3==2.0.3 virtualenv==20.23.1 @@ -198,11 +179,10 @@ webcolors==1.13 webencodings==0.5.1 websocket-client==1.6.1 wheel==0.40.0 -widgetsnbextension==4.0.7 -wrapt==1.15.0 +widgetsnbextension==4.0.8 y-py==0.5.9 ypy-websocket==0.8.2 ; python_version >= "3.7.0" -zipp==3.15.0 +zipp==3.16.0 # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/.constraints/py3.11.txt b/.constraints/py3.11.txt index 5b2582b..ddd1cd4 100644 --- a/.constraints/py3.11.txt +++ b/.constraints/py3.11.txt @@ -2,22 +2,21 @@ # This file is autogenerated by pip-compile with Python 3.11 # by the following command: # -# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.11.txt --strip-extras setup.py +# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.11.txt --resolver=backtracking --strip-extras # accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.7.0 +anyio==3.7.1 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.4 -awkward-cpp==17 +awkward==2.3.1 +awkward-cpp==21 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 @@ -28,8 +27,8 @@ certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 chardet==5.1.0 -charset-normalizer==3.1.0 -click==8.1.3 +charset-normalizer==3.2.0 +click==8.1.4 colorama==0.4.6 comm==0.1.3 contourpy==1.1.0 @@ -38,23 +37,12 @@ cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 defusedxml==0.7.1 -dill==0.3.6 distlib==0.3.6 docutils==0.19 -execnet==1.9.0 +execnet==2.0.2 executing==1.2.0 fastjsonschema==2.17.1 filelock==3.12.2 -flake8==6.0.0 ; python_version >= "3.8.0" -flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.6.5 ; python_version >= "3.8.0" -flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.3 -flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" -flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" -flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" -flake8-use-fstring==1.4 ; python_version >= "3.8.0" fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 @@ -62,19 +50,19 @@ greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.7.0 +importlib-metadata==6.8.0 iniconfig==2.0.0 ipykernel==6.24.0 ipython==8.14.0 ipython-genutils==0.2.0 -ipywidgets==8.0.6 +ipywidgets==8.0.7 isoduration==20.11.0 -isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 json5==0.9.14 jsonpointer==2.4 -jsonschema==4.17.3 +jsonschema==4.18.0 +jsonschema-specifications==2023.6.1 jupyter-cache==0.6.1 jupyter-client==8.3.0 jupyter-core==5.3.1 @@ -86,18 +74,16 @@ jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 jupyterlab==3.6.5 jupyterlab-code-formatter==2.2.1 -jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" +jupyterlab-myst==2.0.1 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 jupyterlab-server==2.23.0 -jupyterlab-widgets==3.0.7 +jupyterlab-widgets==3.0.8 kiwisolver==1.4.4 -lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 markupsafe==2.1.3 -matplotlib==3.7.1 +matplotlib==3.7.2 matplotlib-inline==0.1.6 -mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 mistune==3.0.1 @@ -108,41 +94,35 @@ myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 nbconvert==7.6.0 -nbformat==5.9.0 +nbformat==5.9.1 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.25.0 +numpy==1.25.1 overrides==7.3.1 packaging==23.1 pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 -pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 pillow==10.0.0 -platformdirs==3.8.0 +platformdirs==3.8.1 pluggy==1.2.0 pre-commit==3.3.3 prometheus-client==0.17.0 -prompt-toolkit==3.0.38 +prompt-toolkit==3.0.39 psutil==5.9.5 ptyprocess==0.7.0 pure-eval==0.2.2 -pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 pydeps==1.12.8 -pydocstyle==6.3.0 -pyflakes==3.0.1 pygments==2.15.1 -pylint==2.17.4 -pyparsing==3.1.0 -pyproject-api==1.5.2 -pyrsistent==0.19.3 +pyparsing==3.0.9 +pyproject-api==1.5.3 pytest==7.4.0 pytest-cov==4.1.0 pytest-profiling==1.7.0 @@ -152,10 +132,12 @@ python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 pyzmq==25.1.0 +referencing==0.29.1 requests==2.31.0 -restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 +rpds-py==0.8.10 +ruff==0.0.277 ; python_version >= "3.7.0" send2trash==1.8.2 six==1.16.0 sniffio==1.3.0 @@ -174,20 +156,19 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.17 +sqlalchemy==2.0.18 stack-data==0.6.2 stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 -tomlkit==0.11.8 tornado==6.3.2 -tox==4.6.3 +tox==4.6.4 traitlets==5.9.0 -types-setuptools==68.0.0.0 +types-setuptools==68.0.0.1 typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.9 +uproot==5.0.10 uri-template==1.3.0 urllib3==2.0.3 virtualenv==20.23.1 @@ -196,11 +177,10 @@ webcolors==1.13 webencodings==0.5.1 websocket-client==1.6.1 wheel==0.40.0 -widgetsnbextension==4.0.7 -wrapt==1.15.0 +widgetsnbextension==4.0.8 y-py==0.5.9 ypy-websocket==0.8.2 ; python_version >= "3.7.0" -zipp==3.15.0 +zipp==3.16.0 # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/.constraints/py3.6.txt b/.constraints/py3.6.txt index 31d26e4..e974c4e 100644 --- a/.constraints/py3.6.txt +++ b/.constraints/py3.6.txt @@ -2,14 +2,13 @@ # This file is autogenerated by pip-compile with python 3.6 # To update, run: # -# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.6.txt --strip-extras setup.py +# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.6.txt --strip-extras # alabaster==0.7.13 anyio==3.6.2 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 -astroid==2.11.7 async-generator==1.10 attrs==21.4.0 awkward==1.9.0 @@ -30,7 +29,6 @@ cycler==0.11.0 dataclasses==0.8 decorator==5.1.1 defusedxml==0.7.1 -dill==0.3.4 distlib==0.3.6 docutils==0.16 entrypoints==0.4 @@ -51,7 +49,6 @@ ipykernel==5.5.6 ipython==7.16.3 ipython-genutils==0.2.0 ipywidgets==7.7.5 -isort==5.10.1 jedi==0.17.2 jinja2==3.0.3 json5==0.9.14 @@ -68,12 +65,10 @@ jupyterlab-pygments==0.1.2 jupyterlab-server==2.10.3 jupyterlab-widgets==1.1.4 kiwisolver==1.3.1 -lazy-object-proxy==1.7.1 livereload==2.6.3 markdown-it-py==1.1.0 markupsafe==2.0.1 matplotlib==3.3.4 -mccabe==0.7.0 mdit-py-plugins==0.2.8 mistune==0.8.4 mypy==0.971 @@ -107,9 +102,7 @@ py==1.11.0 pycparser==2.21 pydata-sphinx-theme==0.7.2 pydeps==1.12.8 -pydocstyle==6.3.0 pygments==2.14.0 -pylint==2.13.9 pyparsing==3.1.0 pyrsistent==0.18.0 pytest==7.0.1 @@ -140,7 +133,7 @@ sphinxcontrib-htmlhelp==2.0.0 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==1.4.48 +sqlalchemy==1.4.49 stdlib-list==0.8.0 terminado==0.12.1 testpath==0.6.0 @@ -149,8 +142,8 @@ tomli==1.2.3 tornado==6.1 tox==3.28.0 ; python_version < "3.8.0" traitlets==4.3.3 -typed-ast==1.5.4 -types-setuptools==68.0.0.0 +typed-ast==1.5.5 +types-setuptools==68.0.0.1 typing-extensions==4.1.1 uproot==4.3.7 urllib3==1.26.16 @@ -160,7 +153,6 @@ webencodings==0.5.1 websocket-client==1.3.1 wheel==0.37.1 widgetsnbextension==3.6.4 -wrapt==1.15.0 zipp==3.6.0 # The following packages are considered to be unsafe in a requirements file: diff --git a/.constraints/py3.7.txt b/.constraints/py3.7.txt index a3459fd..d36346b 100644 --- a/.constraints/py3.7.txt +++ b/.constraints/py3.7.txt @@ -2,18 +2,17 @@ # This file is autogenerated by pip-compile with Python 3.7 # by the following command: # -# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.7.txt --strip-extras setup.py +# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.7.txt --resolver=backtracking --strip-extras # accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.7.0 +anyio==3.7.1 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.5 attrs==23.1.0 awkward==2.2.4 awkward-cpp==17 @@ -26,20 +25,19 @@ cached-property==1.5.2 certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 -charset-normalizer==3.1.0 -click==8.1.3 +charset-normalizer==3.2.0 +click==8.1.4 colorama==0.4.6 coverage==7.2.7 cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 defusedxml==0.7.1 -dill==0.3.6 distlib==0.3.6 docutils==0.17.1 entrypoints==0.4 exceptiongroup==1.1.2 -execnet==1.9.0 +execnet==2.0.2 fastjsonschema==2.17.1 filelock==3.12.2 fonttools==4.38.0 @@ -49,15 +47,14 @@ greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==4.13.0 ; python_version < "3.8.0" +importlib-metadata==6.7.0 ; python_version < "3.8.0" importlib-resources==5.12.0 iniconfig==2.0.0 ipykernel==6.16.2 ipython==7.34.0 ipython-genutils==0.2.0 -ipywidgets==8.0.6 +ipywidgets==8.0.7 isoduration==20.11.0 -isort==5.11.5 jedi==0.18.2 jinja2==3.1.2 json5==0.9.14 @@ -76,15 +73,13 @@ jupyterlab-code-formatter==2.2.1 jupyterlab-myst==1.2.0 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 jupyterlab-server==2.23.0 -jupyterlab-widgets==3.0.7 +jupyterlab-widgets==3.0.8 kiwisolver==1.4.4 -lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 markupsafe==2.1.3 matplotlib==3.5.3 matplotlib-inline==0.1.6 -mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 mistune==3.0.1 @@ -110,20 +105,18 @@ pexpect==4.8.0 pickleshare==0.7.5 pillow==9.5.0 pkgutil-resolve-name==1.3.10 -platformdirs==3.8.0 +platformdirs==3.8.1 pluggy==1.2.0 pre-commit==2.21.0 prometheus-client==0.17.0 -prompt-toolkit==3.0.38 +prompt-toolkit==3.0.39 psutil==5.9.5 ptyprocess==0.7.0 py==1.11.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 pydeps==1.12.8 -pydocstyle==6.3.0 pygments==2.15.1 -pylint==2.17.4 pyparsing==3.1.0 pyrsistent==0.19.3 pytest==7.4.0 @@ -138,6 +131,7 @@ pyzmq==25.1.0 requests==2.31.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 +ruff==0.0.277 ; python_version >= "3.7.0" send2trash==1.8.2 six==1.16.0 sniffio==1.3.0 @@ -156,20 +150,19 @@ sphinxcontrib-htmlhelp==2.0.0 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==1.4.48 +sqlalchemy==1.4.49 stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 -tomlkit==0.11.8 tornado==6.2 tox==3.28.0 ; python_version < "3.8.0" traitlets==5.9.0 -typed-ast==1.5.4 -types-setuptools==68.0.0.0 +typed-ast==1.5.5 +types-setuptools==68.0.0.1 typing-extensions==4.7.1 -uproot==5.0.9 +uproot==5.0.10 uri-template==1.3.0 urllib3==2.0.3 virtualenv==20.21.1 ; python_version < "3.8.0" @@ -178,8 +171,7 @@ webcolors==1.13 webencodings==0.5.1 websocket-client==1.6.1 wheel==0.40.0 -widgetsnbextension==4.0.7 -wrapt==1.15.0 +widgetsnbextension==4.0.8 y-py==0.5.9 ypy-websocket==0.8.2 ; python_version >= "3.7.0" zipp==3.15.0 diff --git a/.constraints/py3.8.txt b/.constraints/py3.8.txt index e8ebb20..262ec7d 100644 --- a/.constraints/py3.8.txt +++ b/.constraints/py3.8.txt @@ -2,22 +2,21 @@ # This file is autogenerated by pip-compile with Python 3.8 # by the following command: # -# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.8.txt --strip-extras setup.py +# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.8.txt --resolver=backtracking --strip-extras # accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.7.0 +anyio==3.7.1 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.4 -awkward-cpp==17 +awkward==2.3.1 +awkward-cpp==21 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 @@ -28,8 +27,8 @@ certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 chardet==5.1.0 -charset-normalizer==3.1.0 -click==8.1.3 +charset-normalizer==3.2.0 +click==8.1.4 colorama==0.4.6 comm==0.1.3 contourpy==1.1.0 @@ -38,24 +37,13 @@ cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 defusedxml==0.7.1 -dill==0.3.6 distlib==0.3.6 docutils==0.19 exceptiongroup==1.1.2 -execnet==1.9.0 +execnet==2.0.2 executing==1.2.0 fastjsonschema==2.17.1 filelock==3.12.2 -flake8==6.0.0 ; python_version >= "3.8.0" -flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.6.5 ; python_version >= "3.8.0" -flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.3 -flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" -flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" -flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" -flake8-use-fstring==1.4 ; python_version >= "3.8.0" fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 @@ -63,20 +51,20 @@ greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.7.0 -importlib-resources==5.12.0 +importlib-metadata==6.8.0 +importlib-resources==6.0.0 iniconfig==2.0.0 ipykernel==6.24.0 ipython==8.12.2 ipython-genutils==0.2.0 -ipywidgets==8.0.6 +ipywidgets==8.0.7 isoduration==20.11.0 -isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 json5==0.9.14 jsonpointer==2.4 -jsonschema==4.17.3 +jsonschema==4.18.0 +jsonschema-specifications==2023.6.1 jupyter-cache==0.6.1 jupyter-client==8.3.0 jupyter-core==5.3.1 @@ -88,18 +76,16 @@ jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 jupyterlab==3.6.5 jupyterlab-code-formatter==2.2.1 -jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" +jupyterlab-myst==2.0.1 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 jupyterlab-server==2.23.0 -jupyterlab-widgets==3.0.7 +jupyterlab-widgets==3.0.8 kiwisolver==1.4.4 -lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 markupsafe==2.1.3 -matplotlib==3.7.1 +matplotlib==3.7.2 matplotlib-inline==0.1.6 -mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 mistune==3.0.1 @@ -110,7 +96,7 @@ myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 nbconvert==7.6.0 -nbformat==5.9.0 +nbformat==5.9.1 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 @@ -122,30 +108,24 @@ pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 -pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 pillow==10.0.0 pkgutil-resolve-name==1.3.10 -platformdirs==3.8.0 +platformdirs==3.8.1 pluggy==1.2.0 pre-commit==3.3.3 prometheus-client==0.17.0 -prompt-toolkit==3.0.38 +prompt-toolkit==3.0.39 psutil==5.9.5 ptyprocess==0.7.0 pure-eval==0.2.2 -pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 pydeps==1.12.8 -pydocstyle==6.3.0 -pyflakes==3.0.1 pygments==2.15.1 -pylint==2.17.4 -pyparsing==3.1.0 -pyproject-api==1.5.2 -pyrsistent==0.19.3 +pyparsing==3.0.9 +pyproject-api==1.5.3 pytest==7.4.0 pytest-cov==4.1.0 pytest-profiling==1.7.0 @@ -155,10 +135,12 @@ python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 pyzmq==25.1.0 +referencing==0.29.1 requests==2.31.0 -restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 +rpds-py==0.8.10 +ruff==0.0.277 ; python_version >= "3.7.0" send2trash==1.8.2 six==1.16.0 sniffio==1.3.0 @@ -177,21 +159,20 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.17 +sqlalchemy==2.0.18 stack-data==0.6.2 stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 -tomlkit==0.11.8 tornado==6.3.2 -tox==4.6.3 +tox==4.6.4 traitlets==5.9.0 -types-setuptools==68.0.0.0 +types-setuptools==68.0.0.1 typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.9 +uproot==5.0.10 uri-template==1.3.0 urllib3==2.0.3 virtualenv==20.23.1 @@ -200,11 +181,10 @@ webcolors==1.13 webencodings==0.5.1 websocket-client==1.6.1 wheel==0.40.0 -widgetsnbextension==4.0.7 -wrapt==1.15.0 +widgetsnbextension==4.0.8 y-py==0.5.9 ypy-websocket==0.8.2 ; python_version >= "3.7.0" -zipp==3.15.0 +zipp==3.16.0 # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/.constraints/py3.9.txt b/.constraints/py3.9.txt index 8f8561b..90d75ac 100644 --- a/.constraints/py3.9.txt +++ b/.constraints/py3.9.txt @@ -2,22 +2,21 @@ # This file is autogenerated by pip-compile with Python 3.9 # by the following command: # -# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.9.txt --strip-extras setup.py +# pip-compile --extra=dev --no-annotate --output-file=.constraints/py3.9.txt --resolver=backtracking --strip-extras # accessible-pygments==0.0.4 aiofiles==22.1.0 aiosqlite==0.19.0 alabaster==0.7.13 -anyio==3.7.0 +anyio==3.7.1 aquirdturtle-collapsible-headings==3.1.0 argon2-cffi==21.3.0 argon2-cffi-bindings==21.2.0 arrow==1.2.3 -astroid==2.15.5 asttokens==2.2.1 attrs==23.1.0 -awkward==2.2.4 -awkward-cpp==17 +awkward==2.3.1 +awkward-cpp==21 babel==2.12.1 backcall==0.2.0 beautifulsoup4==4.12.2 @@ -28,8 +27,8 @@ certifi==2023.5.7 cffi==1.15.1 cfgv==3.3.1 chardet==5.1.0 -charset-normalizer==3.1.0 -click==8.1.3 +charset-normalizer==3.2.0 +click==8.1.4 colorama==0.4.6 comm==0.1.3 contourpy==1.1.0 @@ -38,24 +37,13 @@ cycler==0.11.0 debugpy==1.6.7 decorator==5.1.1 defusedxml==0.7.1 -dill==0.3.6 distlib==0.3.6 docutils==0.19 exceptiongroup==1.1.2 -execnet==1.9.0 +execnet==2.0.2 executing==1.2.0 fastjsonschema==2.17.1 filelock==3.12.2 -flake8==6.0.0 ; python_version >= "3.8.0" -flake8-blind-except==0.2.1 ; python_version >= "3.8.0" -flake8-bugbear==23.6.5 ; python_version >= "3.8.0" -flake8-builtins==2.1.0 ; python_version >= "3.8.0" -flake8-comprehensions==3.13.0 ; python_version >= "3.8.0" -flake8-plugin-utils==1.3.3 -flake8-pytest-style==1.7.2 ; python_version >= "3.8.0" -flake8-rst-docstrings==0.3.0 ; python_version >= "3.8.0" -flake8-type-ignore==0.1.0.post2 ; python_version >= "3.8.0" -flake8-use-fstring==1.4 ; python_version >= "3.8.0" fonttools==4.40.0 fqdn==1.5.1 gprof2dot==2022.7.29 @@ -63,20 +51,20 @@ greenlet==2.0.2 identify==2.5.24 idna==3.4 imagesize==1.4.1 -importlib-metadata==6.7.0 -importlib-resources==5.12.0 +importlib-metadata==6.8.0 +importlib-resources==6.0.0 iniconfig==2.0.0 ipykernel==6.24.0 ipython==8.14.0 ipython-genutils==0.2.0 -ipywidgets==8.0.6 +ipywidgets==8.0.7 isoduration==20.11.0 -isort==5.12.0 jedi==0.18.2 jinja2==3.1.2 json5==0.9.14 jsonpointer==2.4 -jsonschema==4.17.3 +jsonschema==4.18.0 +jsonschema-specifications==2023.6.1 jupyter-cache==0.6.1 jupyter-client==8.3.0 jupyter-core==5.3.1 @@ -88,18 +76,16 @@ jupyter-server-ydoc==0.8.0 jupyter-ydoc==0.2.4 jupyterlab==3.6.5 jupyterlab-code-formatter==2.2.1 -jupyterlab-myst==2.0.0 ; python_version >= "3.7.0" +jupyterlab-myst==2.0.1 ; python_version >= "3.7.0" jupyterlab-pygments==0.2.2 jupyterlab-server==2.23.0 -jupyterlab-widgets==3.0.7 +jupyterlab-widgets==3.0.8 kiwisolver==1.4.4 -lazy-object-proxy==1.9.0 livereload==2.6.3 markdown-it-py==2.2.0 markupsafe==2.1.3 -matplotlib==3.7.1 +matplotlib==3.7.2 matplotlib-inline==0.1.6 -mccabe==0.7.0 mdit-py-plugins==0.3.5 mdurl==0.1.2 mistune==3.0.1 @@ -110,41 +96,35 @@ myst-parser==0.18.1 nbclassic==1.0.0 nbclient==0.7.4 nbconvert==7.6.0 -nbformat==5.9.0 +nbformat==5.9.1 nest-asyncio==1.5.6 nodeenv==1.8.0 notebook==6.5.4 notebook-shim==0.2.3 -numpy==1.25.0 +numpy==1.25.1 overrides==7.3.1 packaging==23.1 pandas==2.0.3 pandocfilters==1.5.0 parso==0.8.3 pathspec==0.11.1 -pep8-naming==0.13.3 ; python_version >= "3.8.0" pexpect==4.8.0 pickleshare==0.7.5 pillow==10.0.0 -platformdirs==3.8.0 +platformdirs==3.8.1 pluggy==1.2.0 pre-commit==3.3.3 prometheus-client==0.17.0 -prompt-toolkit==3.0.38 +prompt-toolkit==3.0.39 psutil==5.9.5 ptyprocess==0.7.0 pure-eval==0.2.2 -pycodestyle==2.10.0 pycparser==2.21 pydata-sphinx-theme==0.13.3 pydeps==1.12.8 -pydocstyle==6.3.0 -pyflakes==3.0.1 pygments==2.15.1 -pylint==2.17.4 -pyparsing==3.1.0 -pyproject-api==1.5.2 -pyrsistent==0.19.3 +pyparsing==3.0.9 +pyproject-api==1.5.3 pytest==7.4.0 pytest-cov==4.1.0 pytest-profiling==1.7.0 @@ -154,10 +134,12 @@ python-json-logger==2.0.7 pytz==2023.3 pyyaml==6.0 pyzmq==25.1.0 +referencing==0.29.1 requests==2.31.0 -restructuredtext-lint==1.4.0 rfc3339-validator==0.1.4 rfc3986-validator==0.1.1 +rpds-py==0.8.10 +ruff==0.0.277 ; python_version >= "3.7.0" send2trash==1.8.2 six==1.16.0 sniffio==1.3.0 @@ -176,21 +158,20 @@ sphinxcontrib-htmlhelp==2.0.1 sphinxcontrib-jsmath==1.0.1 sphinxcontrib-qthelp==1.0.3 sphinxcontrib-serializinghtml==1.1.5 -sqlalchemy==2.0.17 +sqlalchemy==2.0.18 stack-data==0.6.2 stdlib-list==0.9.0 tabulate==0.9.0 terminado==0.17.1 tinycss2==1.2.1 tomli==2.0.1 -tomlkit==0.11.8 tornado==6.3.2 -tox==4.6.3 +tox==4.6.4 traitlets==5.9.0 -types-setuptools==68.0.0.0 +types-setuptools==68.0.0.1 typing-extensions==4.7.1 tzdata==2023.3 -uproot==5.0.9 +uproot==5.0.10 uri-template==1.3.0 urllib3==2.0.3 virtualenv==20.23.1 @@ -199,11 +180,10 @@ webcolors==1.13 webencodings==0.5.1 websocket-client==1.6.1 wheel==0.40.0 -widgetsnbextension==4.0.7 -wrapt==1.15.0 +widgetsnbextension==4.0.8 y-py==0.5.9 ypy-websocket==0.8.2 ; python_version >= "3.7.0" -zipp==3.15.0 +zipp==3.16.0 # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index bfe6af3..30a6141 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -31,7 +31,7 @@ repos: - id: trailing-whitespace - repo: https://github.com/ComPWA/repo-maintenance - rev: 0.0.191 + rev: 0.0.192 hooks: - id: check-dev-files args: From a0bbba265f95f4d283f0054886cfe887e0bd8b64 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 10 Jul 2023 20:14:02 +0000 Subject: [PATCH 8/8] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 603d3eb..24fea69 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,6 +28,9 @@ on: jobs: doc: uses: ComPWA/actions/.github/workflows/ci-docs.yml@v1 + permissions: + pages: write + id-token: write with: gh-pages: true specific-pip-packages: ${{ inputs.specific-pip-packages }}