diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7963e2b..76d6a76 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,11 +35,8 @@ jobs: pixi-version: v0.39.0 cache: true environments: lint - - name: Run Pylint, Mypy & Pyright - run: | - pixi run -e lint pylint - pixi run -e lint mypy - pixi run -e lint pyright + - name: Run Mypy + run: pixi run -e lint mypy checks: name: Check ${{ matrix.environment }} diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 41beb38..2f33e32 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -12,7 +12,7 @@ repos: additional_dependencies: [black==24.*] - repo: https://github.com/pre-commit/pre-commit-hooks - rev: "v4.6.0" + rev: "v5.0.0" hooks: - id: check-added-large-files - id: check-case-conflict @@ -35,14 +35,14 @@ repos: - id: rst-inline-touching-normal - repo: https://github.com/rbubley/mirrors-prettier - rev: "v3.3.3" + rev: "v3.4.2" hooks: - id: prettier types_or: [yaml, markdown, html, css, scss, javascript, json] args: [--prose-wrap=always] - repo: https://github.com/astral-sh/ruff-pre-commit - rev: "v0.6.1" + rev: "v0.8.2" hooks: - id: ruff args: ["--fix", "--show-fixes"] @@ -68,13 +68,13 @@ repos: exclude: .pre-commit-config.yaml - repo: https://github.com/abravalheri/validate-pyproject - rev: "v0.19" + rev: "v0.23" hooks: - id: validate-pyproject additional_dependencies: ["validate-pyproject-schema-store[all]"] - repo: https://github.com/python-jsonschema/check-jsonschema - rev: "0.29.1" + rev: "0.30.0" hooks: - id: check-dependabot - id: check-github-workflows diff --git a/docs/conf.py b/docs/conf.py index 5b2fdf0..f6ea508 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -38,7 +38,7 @@ - """, + """, # noqa: E501 "class": "", }, ], diff --git a/docs/contributing.md b/docs/contributing.md index b1f8b90..f46980c 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -77,9 +77,7 @@ pixi run ipython ``` pixi run pre-commit -pixi run pylint pixi run mypy -pixi run pyright ``` Alternative environments are available with a subset of the dependencies and diff --git a/pixi.lock b/pixi.lock index 7161216..dc94d68 100644 --- a/pixi.lock +++ b/pixi.lock @@ -103,7 +103,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - conda: https://prefix.dev/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda - conda: https://prefix.dev/conda-forge/win-64/libxml2-2.13.5-he286e8c_1.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda @@ -233,7 +233,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda - conda: https://prefix.dev/conda-forge/win-64/libxml2-2.13.5-he286e8c_1.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda @@ -313,7 +313,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - conda: https://prefix.dev/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda - conda: https://prefix.dev/conda-forge/win-64/python-3.13.1-h071d269_102_cp313.conda @@ -337,12 +337,8 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-compat-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/astroid-3.3.6-py313h78bf25f_0.conda - conda: https://prefix.dev/conda-forge/noarch/asttokens-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/linux-64/brotli-python-1.1.0-py313h46c70d0_2.conda - conda: https://prefix.dev/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda @@ -354,7 +350,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.9-py313h8060acc_0.conda - conda: https://prefix.dev/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda @@ -364,13 +359,11 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/hpack-4.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/ipython-8.30.0-pyh707e725_0.conda - - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/jedi-0.19.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda @@ -391,20 +384,17 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/libuv-1.49.2-hb9d3cd8_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - conda: https://prefix.dev/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/linux-64/markupsafe-3.0.2-py313h8060acc_1.conda - conda: https://prefix.dev/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda + - conda: https://prefix.dev/conda-forge/linux-64/mypy-1.13.0-py313h536fd9c_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/nodejs-22.11.0-hf235a45_0.conda - - conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/numpy-2.2.0-py313hb30382a_0.conda - conda: https://prefix.dev/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda - conda: https://prefix.dev/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda @@ -415,11 +405,11 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-4.0.1-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_1.conda + - conda: https://prefix.dev/conda-forge/linux-64/psutil-6.1.0-py313h536fd9c_0.conda - conda: https://prefix.dev/conda-forge/noarch/ptyprocess-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-cov-6.0.0-pyhd8ed1ab_1.conda @@ -446,9 +436,7 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://prefix.dev/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ukkonen-1.0.1-py313h33d0bda_5.conda @@ -456,7 +444,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 - - conda: https://prefix.dev/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda - conda: https://prefix.dev/conda-forge/linux-64/zstandard-0.23.0-py313h80202fe_1.conda - conda: https://prefix.dev/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda - pypi: . @@ -464,12 +451,8 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-compat-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/astroid-3.3.6-py313h8f79df9_0.conda - conda: https://prefix.dev/conda-forge/noarch/asttokens-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/brotli-python-1.1.0-py313h3579c5c_2.conda - conda: https://prefix.dev/conda-forge/osx-arm64/bzip2-1.0.8-h99b78c6_7.conda @@ -481,7 +464,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.9-py313ha9b7d5b_0.conda - conda: https://prefix.dev/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda @@ -491,13 +473,11 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/hpack-4.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/idna-3.10-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/ipython-8.30.0-pyh707e725_0.conda - - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/jedi-0.19.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libblas-3.9.0-25_osxarm64_openblas.conda @@ -512,21 +492,18 @@ environments: - conda: https://prefix.dev/conda-forge/osx-arm64/libmpdec-4.0.0-h99b78c6_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libopenblas-0.3.28-openmp_hf332438_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libsqlite-3.47.2-h3f77e49_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/libuv-1.49.2-h7ab814d_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.5-hdb05f8b_0.conda - conda: https://prefix.dev/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/markupsafe-3.0.2-py313ha9b7d5b_1.conda - conda: https://prefix.dev/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/mypy-1.13.0-py313h63a2874_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ncurses-6.5-h7bae524_1.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/nodejs-22.11.0-haa7c7e9_0.conda - - conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/numpy-2.2.0-py313ha4a2180_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/openssl-3.4.0-h39f12f2_0.conda - conda: https://prefix.dev/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda @@ -537,11 +514,11 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-4.0.1-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_1.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/psutil-6.1.0-py313h63a2874_0.conda - conda: https://prefix.dev/conda-forge/noarch/ptyprocess-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pysocks-1.7.1-pyha55dd90_7.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-cov-6.0.0-pyhd8ed1ab_1.conda @@ -568,9 +545,7 @@ environments: - conda: https://prefix.dev/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://prefix.dev/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ukkonen-1.0.1-py313hf9c7212_5.conda @@ -578,7 +553,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 - - conda: https://prefix.dev/conda-forge/osx-arm64/zlib-1.3.1-h8359307_2.conda - conda: https://prefix.dev/conda-forge/osx-arm64/zstandard-0.23.0-py313hf2da073_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/zstd-1.5.6-hb46c0d2_0.conda - pypi: . @@ -586,12 +560,8 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-compat-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/win-64/astroid-3.3.6-py313hfa70ccb_0.conda - conda: https://prefix.dev/conda-forge/noarch/asttokens-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/win-64/brotli-python-1.1.0-py313h5813708_2.conda - conda: https://prefix.dev/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda @@ -603,7 +573,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.9-py313hb4c8b1a_0.conda - conda: https://prefix.dev/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda @@ -619,7 +588,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda - conda: https://prefix.dev/conda-forge/noarch/ipython-8.30.0-pyh7428d3b_0.conda - - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/jedi-0.19.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda @@ -631,22 +599,20 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda - conda: https://prefix.dev/conda-forge/win-64/libxml2-2.13.5-he286e8c_1.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - conda: https://prefix.dev/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/markupsafe-3.0.2-py313hb4c8b1a_1.conda - conda: https://prefix.dev/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda + - conda: https://prefix.dev/conda-forge/win-64/mypy-1.13.0-py313ha7868ed_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/win-64/nodejs-22.11.0-h57928b3_0.conda - - conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/numpy-2.2.0-py313hd65a2fa_0.conda - conda: https://prefix.dev/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda - conda: https://prefix.dev/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda @@ -656,10 +622,10 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-4.0.1-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_1.conda + - conda: https://prefix.dev/conda-forge/win-64/psutil-6.1.0-py313ha7868ed_0.conda - conda: https://prefix.dev/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - conda: https://prefix.dev/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pysocks-1.7.1-pyh09c184e_7.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-cov-6.0.0-pyhd8ed1ab_1.conda @@ -686,9 +652,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://prefix.dev/conda-forge/noarch/toml-0.10.2-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://prefix.dev/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_1.conda @@ -872,7 +836,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - conda: https://prefix.dev/conda-forge/noarch/markdown-it-py-3.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/markupsafe-3.0.2-py313hb4c8b1a_1.conda @@ -926,23 +890,16 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/array-api-compat-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/astroid-3.3.6-py313h78bf25f_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda - conda: https://prefix.dev/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda - conda: https://prefix.dev/conda-forge/linux-64/cffi-1.17.1-py313hfab6e84_0.conda - conda: https://prefix.dev/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/filelock-3.16.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda - conda: https://prefix.dev/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda - conda: https://prefix.dev/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda @@ -959,24 +916,20 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libsqlite-3.47.2-hee588c1_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda - - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda - conda: https://prefix.dev/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/libuv-1.49.2-hb9d3cd8_0.conda - conda: https://prefix.dev/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda - - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda + - conda: https://prefix.dev/conda-forge/linux-64/mypy-1.13.0-py313h536fd9c_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/linux-64/nodejs-22.11.0-hf235a45_0.conda - - conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/numpy-2.2.0-py313hb30382a_0.conda - conda: https://prefix.dev/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda - conda: https://prefix.dev/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-4.0.1-pyha770c72_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/psutil-6.1.0-py313h536fd9c_0.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/linux-64/python-3.13.1-ha99a958_102_cp313.conda - conda: https://prefix.dev/conda-forge/linux-64/python_abi-3.13-5_cp313.conda @@ -985,35 +938,25 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_1.conda - conda: https://prefix.dev/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ukkonen-1.0.1-py313h33d0bda_5.conda - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 - - conda: https://prefix.dev/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda - pypi: . osx-arm64: - conda: https://prefix.dev/conda-forge/noarch/array-api-compat-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/astroid-3.3.6-py313h8f79df9_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/bzip2-1.0.8-h99b78c6_7.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ca-certificates-2024.8.30-hf0a4a13_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/cffi-1.17.1-py313hc845a76_0.conda - conda: https://prefix.dev/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/filelock-3.16.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libblas-3.9.0-25_osxarm64_openblas.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libcblas-3.9.0-25_osxarm64_openblas.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libcxx-19.1.5-ha82da77_0.conda @@ -1026,23 +969,20 @@ environments: - conda: https://prefix.dev/conda-forge/osx-arm64/libmpdec-4.0.0-h99b78c6_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libopenblas-0.3.28-openmp_hf332438_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libsqlite-3.47.2-h3f77e49_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/libuv-1.49.2-h7ab814d_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libzlib-1.3.1-h8359307_2.conda - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.5-hdb05f8b_0.conda - - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/mypy-1.13.0-py313h63a2874_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ncurses-6.5-h7bae524_1.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/osx-arm64/nodejs-22.11.0-haa7c7e9_0.conda - - conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/numpy-2.2.0-py313ha4a2180_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/openssl-3.4.0-h39f12f2_0.conda - conda: https://prefix.dev/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-4.0.1-pyha770c72_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/psutil-6.1.0-py313h63a2874_0.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/python-3.13.1-h4f43103_102_cp313.conda - conda: https://prefix.dev/conda-forge/osx-arm64/python_abi-3.13-5_cp313.conda @@ -1051,35 +991,26 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/tk-8.6.13-h5083fa2_1.conda - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ukkonen-1.0.1-py313hf9c7212_5.conda - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 - - conda: https://prefix.dev/conda-forge/osx-arm64/zlib-1.3.1-h8359307_2.conda - pypi: . win-64: - conda: https://prefix.dev/conda-forge/noarch/array-api-compat-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/win-64/astroid-3.3.6-py313hfa70ccb_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda - conda: https://prefix.dev/conda-forge/win-64/ca-certificates-2024.8.30-h56e8100_0.conda - conda: https://prefix.dev/conda-forge/win-64/cffi-1.17.1-py313ha7868ed_0.conda - conda: https://prefix.dev/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/filelock-3.16.1-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda - - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/libcblas-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/libexpat-2.6.4-he0c23c2_0.conda @@ -1089,24 +1020,22 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda - conda: https://prefix.dev/conda-forge/win-64/libxml2-2.13.5-he286e8c_1.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda + - conda: https://prefix.dev/conda-forge/win-64/mypy-1.13.0-py313ha7868ed_0.conda - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/win-64/nodejs-22.11.0-h57928b3_0.conda - - conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/numpy-2.2.0-py313hd65a2fa_0.conda - conda: https://prefix.dev/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda - conda: https://prefix.dev/conda-forge/noarch/packaging-24.2-pyhd8ed1ab_2.conda - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pre-commit-4.0.1-pyha770c72_0.conda + - conda: https://prefix.dev/conda-forge/win-64/psutil-6.1.0-py313ha7868ed_0.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyh29332c3_1.conda - - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.4-pyhd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/win-64/python-3.13.1-h071d269_102_cp313.conda - conda: https://prefix.dev/conda-forge/win-64/python_abi-3.13-5_cp313.conda @@ -1115,8 +1044,6 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/tbb-2021.13.0-h62715c5_1.conda - conda: https://prefix.dev/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - conda: https://prefix.dev/conda-forge/noarch/tomli-2.2.1-pyhd8ed1ab_1.conda - - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - - conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda - conda: https://prefix.dev/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://prefix.dev/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_1.conda @@ -1234,7 +1161,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - conda: https://prefix.dev/conda-forge/win-64/liblzma-5.6.3-h2466b09_1.conda - conda: https://prefix.dev/conda-forge/win-64/libmpdec-4.0.0-h2466b09_0.conda - - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda - conda: https://prefix.dev/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda - conda: https://prefix.dev/conda-forge/win-64/libxml2-2.13.5-he286e8c_1.conda - conda: https://prefix.dev/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda @@ -1285,6 +1212,7 @@ packages: depends: - python >=3.10 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/alabaster?source=hash-mapping size: 18684 @@ -1303,7 +1231,7 @@ packages: - pypi: . name: array-api-extra version: 0.3.3.dev0 - sha256: 43892c8bc9d9e1a1a1ff0e3911c62f86de23f9087e71ed66c2c89c4704246ec9 + sha256: b33c6513a476694477ad2ff6b0b22f04fec16d08b5261a7ac05d2e1830fa7695 requires_dist: - array-api-compat>=1.1.1 - furo>=2023.8.17 ; extra == 'docs' @@ -1329,43 +1257,6 @@ packages: - pkg:pypi/array-api-strict?source=hash-mapping size: 53538 timestamp: 1731523628496 -- conda: https://prefix.dev/conda-forge/linux-64/astroid-3.3.6-py313h78bf25f_0.conda - sha256: 81108516d02ba076fc3c180a95f120f9718f0550997e8b10395149f2460b2543 - md5: 3347a6c8504883a216d914e476b46d4e - depends: - - python >=3.13,<3.14.0a0 - - python_abi 3.13.* *_cp313 - license: LGPL-2.1-or-later - license_family: LGPL - purls: - - pkg:pypi/astroid?source=hash-mapping - size: 511782 - timestamp: 1733711268475 -- conda: https://prefix.dev/conda-forge/osx-arm64/astroid-3.3.6-py313h8f79df9_0.conda - sha256: 63dd45fef478b75ecf413204c99b8402f876347e821185b86d01a25d3f17f3fc - md5: 84953237a4ecc6822a5b5a31498e7b3c - depends: - - python >=3.13,<3.14.0a0 - - python >=3.13,<3.14.0a0 *_cp313 - - python_abi 3.13.* *_cp313 - license: LGPL-2.1-or-later - license_family: LGPL - purls: - - pkg:pypi/astroid?source=hash-mapping - size: 516228 - timestamp: 1733711366522 -- conda: https://prefix.dev/conda-forge/win-64/astroid-3.3.6-py313hfa70ccb_0.conda - sha256: f2a87b33a35a844385ec57fdf8e91498527c008cc0af6888e442b0ad8e84159f - md5: 8dbb544eac21f18517c9ee7c6aad500b - depends: - - python >=3.13,<3.14.0a0 - - python_abi 3.13.* *_cp313 - license: LGPL-2.1-or-later - license_family: LGPL - purls: - - pkg:pypi/astroid?source=hash-mapping - size: 514678 - timestamp: 1733711304682 - conda: https://prefix.dev/conda-forge/noarch/asttokens-3.0.0-pyhd8ed1ab_1.conda sha256: 93b14414b3b3ed91e286e1cbe4e7a60c4e1b1c730b0814d1e452a8ac4b9af593 md5: 8f587de4bcf981e26228f268df374a9b @@ -1391,45 +1282,6 @@ packages: - pkg:pypi/babel?source=hash-mapping size: 6551057 timestamp: 1733236466015 -- conda: https://prefix.dev/conda-forge/noarch/basedmypy-2.8.0-pyhd8ed1ab_0.conda - sha256: 93b133c63a0d481cbcb4889d51609f49463f0e6616c31d9d192b05c326d144a7 - md5: 44943e03024688d21dfc7b834a9166d3 - depends: - - basedtyping >=0.0.3 - - mypy_extensions >=1.0.0 - - python >=3.9 - - tomli >=1.1.0 - - typing-extensions >=4.1.0 - license: BSD-3-Clause AND Apache-2.0 - purls: - - pkg:pypi/basedmypy?source=hash-mapping - size: 1809575 - timestamp: 1733313480796 -- conda: https://prefix.dev/conda-forge/noarch/basedpyright-1.22.1-pyhd8ed1ab_0.conda - sha256: 80d181486d26014322fd37e9b04b2b311146ba5b8e6c63497db9e8be7630a591 - md5: 3fb76bc061f393d00507308938939251 - depends: - - nodejs-wheel >=20.13.1 - - python >=3.9 - license: MIT AND Apache-2.0 - purls: - - pkg:pypi/basedpyright?source=hash-mapping - size: 7218099 - timestamp: 1733386204601 -- conda: https://prefix.dev/conda-forge/noarch/basedtyping-0.1.10-pyhd8ed1ab_0.conda - sha256: 39c731bfbc0532be66bea6a5e25be13a65d1c067f871637753da60173496e5b7 - md5: 866ccb80106142a6484db78da4bfe345 - depends: - - mypy_extensions >=1.0.0 - - python >=3.8,<4.0.0 - - tomli >=1.1.0 - - typing-extensions >=4.1.0 - license: MIT - license_family: MIT - purls: - - pkg:pypi/basedtyping?source=hash-mapping - size: 22514 - timestamp: 1732167819924 - conda: https://prefix.dev/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_1.conda sha256: fca842ab7be052eea1037ebee17ac25cc79c626382dd2187b5c6e007b9d9f65f md5: d48f7e9fdec44baf6d1da416fe402b04 @@ -1648,6 +1500,7 @@ packages: - python_abi 3.10.* *_cp310 - tomli license: Apache-2.0 + license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping size: 294010 @@ -1662,6 +1515,7 @@ packages: - python_abi 3.13.* *_cp313 - tomli license: Apache-2.0 + license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping size: 371846 @@ -1676,6 +1530,7 @@ packages: - python_abi 3.10.* *_cp310 - tomli license: Apache-2.0 + license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping size: 292961 @@ -1690,6 +1545,7 @@ packages: - python_abi 3.13.* *_cp313 - tomli license: Apache-2.0 + license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping size: 370606 @@ -1705,6 +1561,7 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 + license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping size: 320987 @@ -1720,6 +1577,7 @@ packages: - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Apache-2.0 + license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping size: 396811 @@ -1735,17 +1593,6 @@ packages: - pkg:pypi/decorator?source=hash-mapping size: 14068 timestamp: 1733236549190 -- conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_1.conda - sha256: 499be2f8e4397a46249e8e500535795704af27e56360ae0c964904140b41454a - md5: 5e11310fca410e9f31381157079dee55 - depends: - - python >=3.9 - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/dill?source=hash-mapping - size: 89973 - timestamp: 1733249646688 - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_1.conda sha256: 0e160c21776bd881b79ce70053e59736f51036784fa43a50da10a04f0c1b9c45 md5: 8d88f4a2242e6b96f9ecff9a6a05b2f1 @@ -1848,28 +1695,6 @@ packages: - pkg:pypi/hyperframe?source=hash-mapping size: 17239 timestamp: 1733298862681 -- conda: https://prefix.dev/conda-forge/linux-64/icu-75.1-he02047a_0.conda - sha256: 71e750d509f5fa3421087ba88ef9a7b9be11c53174af3aa4d06aff4c18b38e8e - md5: 8b189310083baabfb622af68fd9d3ae3 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc-ng >=12 - - libstdcxx-ng >=12 - license: MIT - license_family: MIT - purls: [] - size: 12129203 - timestamp: 1720853576813 -- conda: https://prefix.dev/conda-forge/osx-arm64/icu-75.1-hfee45f7_0.conda - sha256: 9ba12c93406f3df5ab0a43db8a4b4ef67a5871dfd401010fbe29b218b2cbe620 - md5: 5eb22c1d7b3fc4abb50d92d621583137 - depends: - - __osx >=11.0 - license: MIT - license_family: MIT - purls: [] - size: 11857802 - timestamp: 1720853997952 - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda sha256: 2350107285349caad1a5c5c5296a1335b8649d6b1b0e8f2bde18127c404471c5 md5: dd3acd023fc358afab730866a0e5e3f5 @@ -1969,18 +1794,6 @@ packages: - pkg:pypi/ipython?source=hash-mapping size: 600466 timestamp: 1732897444811 -- conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_1.conda - sha256: 6ebf6e83c2d449760ad5c5cc344711d6404f9e3cf6952811b8678aca5a4ab01f - md5: ef7dc847f19fe4859d5aaa33385bf509 - depends: - - python >=3.9,<4.0 - - setuptools - license: MIT - license_family: MIT - purls: - - pkg:pypi/isort?source=hash-mapping - size: 73545 - timestamp: 1733236278052 - conda: https://prefix.dev/conda-forge/noarch/jedi-0.19.2-pyhd8ed1ab_1.conda sha256: 92c4d217e2dc68983f724aa983cca5464dcb929c566627b26a2511159667dba8 md5: a4f4c5dc9b80bc50e0d3dc4e6e8f1bd9 @@ -2463,17 +2276,17 @@ packages: purls: [] size: 850553 timestamp: 1733762057506 -- conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda - sha256: 3342d6fe787f5830f7e8466d9c65c914bfd8d67220fb5673041b338cbba47afe - md5: 5b1f36012cc3d09c4eb9f24ad0e2c379 +- conda: https://prefix.dev/conda-forge/win-64/libsqlite-3.47.2-h67fdade_0.conda + sha256: ecfc0182c3b2e63c870581be1fa0e4dbdfec70d2011cb4f5bde416ece26c41df + md5: ff00095330e0d35a16bd3bdbd1a2d3e7 depends: - ucrt >=10.0.20348.0 - vc >=14.2,<15 - vc14_runtime >=14.29.30139 license: Unlicense purls: [] - size: 892175 - timestamp: 1730208431651 + size: 891292 + timestamp: 1733762116902 - conda: https://prefix.dev/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda sha256: 4661af0eb9bdcbb5fb33e5d0023b001ad4be828fccdcc56500059d56f9869462 md5: 234a5554c53625688d51062645337328 @@ -2504,27 +2317,6 @@ packages: purls: [] size: 33601 timestamp: 1680112270483 -- conda: https://prefix.dev/conda-forge/linux-64/libuv-1.49.2-hb9d3cd8_0.conda - sha256: a35cd81cd1a9add11024097da83cc06b0aae83186fe4124b77710876f37d8f31 - md5: 070e3c9ddab77e38799d5c30b109c633 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=13 - license: MIT - license_family: MIT - purls: [] - size: 884647 - timestamp: 1729322566955 -- conda: https://prefix.dev/conda-forge/osx-arm64/libuv-1.49.2-h7ab814d_0.conda - sha256: 0e5176af1e788ad5006cf261c4ea5a288a935fda48993b0240ddd2e562dc3d02 - md5: 4bc348e3a1a74d20a3f9beb866d75e0a - depends: - - __osx >=11.0 - license: MIT - license_family: MIT - purls: [] - size: 410500 - timestamp: 1729322654121 - conda: https://prefix.dev/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda sha256: 6d5e158813ab8d553fbb0fedd0abe7bf92970b0be3a9ddf12da0f6cbad78f506 md5: 03cccbba200ee0523bde1f3dad60b1f3 @@ -2684,17 +2476,6 @@ packages: - pkg:pypi/matplotlib-inline?source=hash-mapping size: 14467 timestamp: 1733417051523 -- conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_1.conda - sha256: 9b0037171dad0100f0296699a11ae7d355237b55f42f9094aebc0f41512d96a1 - md5: 827064ddfe0de2917fb29f1da4f8f533 - depends: - - python >=3.9 - license: MIT - license_family: MIT - purls: - - pkg:pypi/mccabe?source=hash-mapping - size: 12934 - timestamp: 1733216573915 - conda: https://prefix.dev/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda sha256: 5cedc99412278b37e9596f1f991d49f5a1663fe79767cf814a288134a1400ba9 md5: 5387f2cfa28f8a3afa3368bb4ba201e8 @@ -2729,6 +2510,58 @@ packages: purls: [] size: 103019089 timestamp: 1727378392081 +- conda: https://prefix.dev/conda-forge/linux-64/mypy-1.13.0-py313h536fd9c_0.conda + sha256: d0b2935b66ca59b33efe7400a429367d7644781ca6e5c9c1ba434695b7de63d8 + md5: 4a6462b2bd12d09e0ce32565f59e9605 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - mypy_extensions >=1.0.0 + - psutil >=4.0 + - python >=3.13,<3.14.0a0 + - python_abi 3.13.* *_cp313 + - typing_extensions >=4.1.0 + license: MIT + license_family: MIT + purls: + - pkg:pypi/mypy?source=hash-mapping + size: 17256607 + timestamp: 1729644645953 +- conda: https://prefix.dev/conda-forge/osx-arm64/mypy-1.13.0-py313h63a2874_0.conda + sha256: 47219e7f385cc93eb07f491b6c1b8bc1f52a14f272fb71a09bd5ace369e85953 + md5: f68edfe045fc7832a1ca15ec89d8182c + depends: + - __osx >=11.0 + - mypy_extensions >=1.0.0 + - psutil >=4.0 + - python >=3.13,<3.14.0a0 + - python >=3.13,<3.14.0a0 *_cp313 + - python_abi 3.13.* *_cp313 + - typing_extensions >=4.1.0 + license: MIT + license_family: MIT + purls: + - pkg:pypi/mypy?source=hash-mapping + size: 9929683 + timestamp: 1729644322804 +- conda: https://prefix.dev/conda-forge/win-64/mypy-1.13.0-py313ha7868ed_0.conda + sha256: d6cfe5e927940da760312d16305e4a0013e5be318da2bb893a0f62004db298de + md5: e432bc642eaf6e36b5e4a3f615e2e91f + depends: + - mypy_extensions >=1.0.0 + - psutil >=4.0 + - python >=3.13,<3.14.0a0 + - python_abi 3.13.* *_cp313 + - typing_extensions >=4.1.0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MIT + license_family: MIT + purls: + - pkg:pypi/mypy?source=hash-mapping + size: 8608743 + timestamp: 1729644175962 - conda: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_1.conda sha256: 1895f47b7d68581a6facde5cb13ab8c2764c2e53a76bd746f8f98910dc4e08fe md5: 29097e7ea634a45cc5386b95cac6568f @@ -2788,59 +2621,6 @@ packages: - pkg:pypi/nodeenv?source=hash-mapping size: 34489 timestamp: 1717585382642 -- conda: https://prefix.dev/conda-forge/linux-64/nodejs-22.11.0-hf235a45_0.conda - sha256: b90c26267d12d5dd97ef09b4393235be3a3cbe5eef07c5a2ada4230623f0b0b1 - md5: 64cd0bde7dffac5baa4d9fb0ac3ae713 - depends: - - __glibc >=2.28,<3.0.a0 - - icu >=75.1,<76.0a0 - - libgcc >=13 - - libstdcxx >=13 - - libuv >=1.49.2,<2.0a0 - - libzlib >=1.3.1,<2.0a0 - - openssl >=3.4.0,<4.0a0 - - zlib - license: MIT - license_family: MIT - purls: [] - size: 21336234 - timestamp: 1731921762943 -- conda: https://prefix.dev/conda-forge/osx-arm64/nodejs-22.11.0-haa7c7e9_0.conda - sha256: 304a2bf558f262a8e29f6b6abcc5fabde3b31d903bc699381b1b57f41e7c34d0 - md5: 34da600f0addaef949d28953e23482b4 - depends: - - __osx >=11.0 - - icu >=75.1,<76.0a0 - - libcxx >=18 - - libuv >=1.49.2,<2.0a0 - - libzlib >=1.3.1,<2.0a0 - - openssl >=3.4.0,<4.0a0 - - zlib - license: MIT - license_family: MIT - purls: [] - size: 14965601 - timestamp: 1731936621771 -- conda: https://prefix.dev/conda-forge/win-64/nodejs-22.11.0-h57928b3_0.conda - sha256: b182be51b98ee410d9065c2e202dfb86bb7cb6f1db958790e34836bb99e9ad4b - md5: 902548b1eaf4fec280a98c13c3d8cf3e - license: MIT - license_family: MIT - purls: [] - size: 25685624 - timestamp: 1731917625548 -- conda: https://prefix.dev/conda-forge/noarch/nodejs-wheel-22.11.0-pyhd8ed1ab_0.conda - sha256: 7a1fdbb9617f712b14189d44257eb42634e1c47050dc93d4cc4ea9d124def92b - md5: 31ebf648339310a0a4db3314595c3521 - depends: - - nodejs - - python >=3.9 - license: MIT - license_family: MIT - purls: - - pkg:pypi/nodejs-wheel-binaries?source=hash-mapping - size: 11699 - timestamp: 1732885085867 - conda: https://prefix.dev/conda-forge/linux-64/numpy-2.2.0-py310h5851e9f_0.conda sha256: 001e9fe76e325115d76049ae918866ac32050cfd7de8c096fdb88801df97405d md5: b36342af1ea0eb44bb6ccdefcb9d80d7 @@ -2856,6 +2636,7 @@ packages: constrains: - numpy-base <0a0 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/numpy?source=hash-mapping size: 7818907 @@ -2875,6 +2656,7 @@ packages: constrains: - numpy-base <0a0 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/numpy?source=hash-mapping size: 8530595 @@ -2894,6 +2676,7 @@ packages: constrains: - numpy-base <0a0 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/numpy?source=hash-mapping size: 5890950 @@ -2913,6 +2696,7 @@ packages: constrains: - numpy-base <0a0 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/numpy?source=hash-mapping size: 6550853 @@ -2932,6 +2716,7 @@ packages: constrains: - numpy-base <0a0 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/numpy?source=hash-mapping size: 6484276 @@ -2951,6 +2736,7 @@ packages: constrains: - numpy-base <0a0 license: BSD-3-Clause + license_family: BSD purls: - pkg:pypi/numpy?source=hash-mapping size: 7039077 @@ -3087,6 +2873,49 @@ packages: - pkg:pypi/prompt-toolkit?source=hash-mapping size: 269848 timestamp: 1733302634979 +- conda: https://prefix.dev/conda-forge/linux-64/psutil-6.1.0-py313h536fd9c_0.conda + sha256: 4afc1ebb9325389df1ff3260fcef8078c8552aba26d0fbefd3aa2b3f04a407b8 + md5: b50a00ebd2fda55306b8a095363ce27f + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - python >=3.13,<3.14.0a0 + - python_abi 3.13.* *_cp313 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/psutil?source=hash-mapping + size: 494158 + timestamp: 1729847232458 +- conda: https://prefix.dev/conda-forge/osx-arm64/psutil-6.1.0-py313h63a2874_0.conda + sha256: 06bc9b6eda080fea24e7948ace631b358a9994a6a84394a6c1cd14f1615ebbf4 + md5: 6f4dae78857fd194485497ed0a6762ab + depends: + - __osx >=11.0 + - python >=3.13,<3.14.0a0 + - python >=3.13,<3.14.0a0 *_cp313 + - python_abi 3.13.* *_cp313 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/psutil?source=hash-mapping + size: 501427 + timestamp: 1729847280285 +- conda: https://prefix.dev/conda-forge/win-64/psutil-6.1.0-py313ha7868ed_0.conda + sha256: d58defe84d46da1a7e80283e165d6a9d09378fd830b48917751a318ab5a5d4ce + md5: d13841485f9159f317a4e8bb974e9c8e + depends: + - python >=3.13,<3.14.0a0 + - python_abi 3.13.* *_cp313 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/psutil?source=hash-mapping + size: 508489 + timestamp: 1729847497486 - conda: https://prefix.dev/conda-forge/noarch/ptyprocess-0.7.0-pyhd8ed1ab_1.conda sha256: a7713dfe30faf17508ec359e0bc7e0983f5d94682492469bd462cdaae9c64d83 md5: 7d9daffbb8d8e0af0f769dbbcd173a54 @@ -3130,26 +2959,6 @@ packages: - pkg:pypi/pygments?source=hash-mapping size: 876700 timestamp: 1733221731178 -- conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.2-pyhd8ed1ab_1.conda - sha256: 6f8e58920a5358bebbb7e7bb5658e16cdff1398986eb0d4b94e7877e204b2323 - md5: 2d8d45003973eb746f9465ca6b02c050 - depends: - - astroid >=3.3.5,<3.4.0-dev0 - - colorama >=0.4.5 - - dill >=0.3.7 - - isort >=4.2.5,<6,!=5.13.0 - - mccabe >=0.6,<0.8 - - platformdirs >=2.2.0 - - python >=3.9 - - tomli >=1.1.0 - - tomlkit >=0.10.1 - - typing_extensions >=3.10.0 - license: GPL-2.0-or-later - license_family: GPL - purls: - - pkg:pypi/pylint?source=hash-mapping - size: 352977 - timestamp: 1733243102188 - conda: https://prefix.dev/conda-forge/noarch/pysocks-1.7.1-pyh09c184e_7.conda sha256: d016e04b0e12063fbee4a2d5fbb9b39a8d191b5a0042f0b8459188aedeabb0ca md5: e2fd202833c4a981ce8a65974fe4abd1 @@ -3568,6 +3377,7 @@ packages: - sphinxcontrib-serializinghtml >=1.1.9 - tomli >=2.0 license: BSD-2-Clause + license_family: BSD purls: - pkg:pypi/sphinx?source=hash-mapping size: 1387076 @@ -3761,17 +3571,6 @@ packages: - pkg:pypi/tomli?source=hash-mapping size: 19167 timestamp: 1733256819729 -- conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_1.conda - sha256: 986fae65f5568e95dbf858d08d77a0f9cca031345a98550f1d4b51d36d8811e2 - md5: 1d9ab4fc875c52db83f9c9b40af4e2c8 - depends: - - python >=3.9 - license: MIT - license_family: MIT - purls: - - pkg:pypi/tomlkit?source=hash-mapping - size: 37372 - timestamp: 1733230836889 - conda: https://prefix.dev/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_1.conda sha256: f39a5620c6e8e9e98357507262a7869de2ae8cc07da8b7f84e517c9fd6c2b959 md5: 019a7385be9af33791c989871317e1ed @@ -3783,17 +3582,6 @@ packages: - pkg:pypi/traitlets?source=hash-mapping size: 110051 timestamp: 1733367480074 -- conda: https://prefix.dev/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_1.conda - noarch: python - sha256: c8e9c1c467b5f960b627d7adc1c65fece8e929a3de89967e91ef0f726422fd32 - md5: b6a408c64b78ec7b779a3e5c7a902433 - depends: - - typing_extensions 4.12.2 pyha770c72_1 - license: PSF-2.0 - license_family: PSF - purls: [] - size: 10075 - timestamp: 1733188758872 - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_1.conda sha256: 337be7af5af8b2817f115b3b68870208b30c31d3439bec07bfb2d8f4823e3568 md5: d17f13df8b65464ca316cbc000a3cb64 @@ -3983,29 +3771,6 @@ packages: purls: [] size: 63274 timestamp: 1641347623319 -- conda: https://prefix.dev/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda - sha256: 5d7c0e5f0005f74112a34a7425179f4eb6e73c92f5d109e6af4ddeca407c92ab - md5: c9f075ab2f33b3bbee9e62d4ad0a6cd8 - depends: - - __glibc >=2.17,<3.0.a0 - - libgcc >=13 - - libzlib 1.3.1 hb9d3cd8_2 - license: Zlib - license_family: Other - purls: [] - size: 92286 - timestamp: 1727963153079 -- conda: https://prefix.dev/conda-forge/osx-arm64/zlib-1.3.1-h8359307_2.conda - sha256: 58f8860756680a4831c1bf4f294e2354d187f2e999791d53b1941834c4b37430 - md5: e3170d898ca6cb48f1bb567afb92f775 - depends: - - __osx >=11.0 - - libzlib 1.3.1 h8359307_2 - license: Zlib - license_family: Other - purls: [] - size: 77606 - timestamp: 1727963209370 - conda: https://prefix.dev/conda-forge/linux-64/zstandard-0.23.0-py313h80202fe_1.conda sha256: ea82f2b8964150a3aa7373b4697e48e64f2200fe68ae554ee85c641c692d1c97 md5: c178558ff516cd507763ffee230c20b2 diff --git a/pyproject.toml b/pyproject.toml index 94293f7..9c25155 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -70,9 +70,7 @@ array-api-extra = { path = ".", editable = true } [tool.pixi.feature.lint.dependencies] pre-commit = "*" -pylint = "*" -basedmypy = "*" -basedpyright = "*" +mypy = "*" typing_extensions = ">=4.12.2,<4.13" # import dependencies for mypy: array-api-strict = "*" @@ -81,11 +79,9 @@ pytest = "*" [tool.pixi.feature.lint.tasks] pre-commit-install = { cmd = "pre-commit install" } -pre-commit = { cmd = "pre-commit run -v --all-files --show-diff-on-failure" } +pre-commit = { cmd = "pre-commit run --all-files" } mypy = { cmd = "mypy", cwd = "." } -pylint = { cmd = ["pylint", "array_api_extra"], cwd = "src" } -pyright = { cmd = "basedpyright", cwd = "." } -lint = { depends-on = ["pre-commit", "pylint", "mypy", "pyright"] } +lint = { depends-on = ["pre-commit", "mypy"] } [tool.pixi.feature.tests.dependencies] pytest = ">=6" @@ -154,42 +150,34 @@ run.source = ["array_api_extra"] report.exclude_also = [ '\.\.\.', 'if typing.TYPE_CHECKING:', + 'if TYPE_CHECKING:', ] # mypy [tool.mypy] -files = ["src", "tests"] +files = ["src", "tests", "vendor_tests"] python_version = "3.10" -warn_unused_configs = true strict = true -enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"] -warn_unreachable = true -disallow_untyped_defs = false -disallow_incomplete_defs = false # data-apis/array-api#589 disallow_any_expr = false +disallow_incomplete_defs = false +disallow_untyped_defs = false +disallow_untyped_decorators = true +ignore_missing_imports = true +no_implicit_optional = true +show_error_codes = true +warn_redundant_casts = true +warn_unused_configs = true +warn_unused_ignores = true +warn_unreachable = true + [[tool.mypy.overrides]] module = "array_api_extra.*" -disallow_untyped_defs = true disallow_incomplete_defs = true - - -# pyright - -[tool.basedpyright] -include = ["src", "tests"] -pythonVersion = "3.10" -pythonPlatform = "All" -typeCheckingMode = "all" - -# data-apis/array-api#589 -reportAny = false -reportExplicitAny = false -# data-apis/array-api-strict#6 -reportUnknownMemberType = false +disallow_untyped_defs = true # Ruff @@ -200,11 +188,16 @@ target-version = "py310" [tool.ruff.lint] extend-select = [ "B", # flake8-bugbear + "F", # Pyflakes "I", # isort + "E", # Pycodestyle + "W", # Pycodestyle + "N", # pep8-naming "ARG", # flake8-unused-arguments "C4", # flake8-comprehensions "EM", # flake8-errmsg "ICN", # flake8-import-conventions + "ISC", # flake8-implicit-str-concat "G", # flake8-logging-format "PGH", # pygrep-hooks "PIE", # flake8-pie @@ -220,29 +213,15 @@ extend-select = [ "EXE", # flake8-executable "NPY", # NumPy specific rules "PD", # pandas-vet + "UP", # Pyupgrade ] ignore = [ "PLR09", # Too many <...> "PLR2004", # Magic value used in comparison "ISC001", # Conflicts with formatter + "N802", # Function name should be lowercase + "N806", # Variable in function should be lowercase ] [tool.ruff.lint.per-file-ignores] "tests/**" = ["T20"] - - -# Pylint - -[tool.pylint] -py-version = "3.10" -ignore-paths = [".*/_version.py"] -reports.output-format = "colorized" -similarities.ignore-imports = "yes" -messages_control.disable = [ - "design", - "fixme", - "line-too-long", - "missing-module-docstring", - "missing-function-docstring", - "wrong-import-position", -] diff --git a/src/array_api_extra/__init__.py b/src/array_api_extra/__init__.py index d1107b1..09a603b 100644 --- a/src/array_api_extra/__init__.py +++ b/src/array_api_extra/__init__.py @@ -1,10 +1,9 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 +from __future__ import annotations from ._funcs import atleast_nd, cov, create_diagonal, expand_dims, kron, setdiff1d, sinc __version__ = "0.3.3.dev0" -# pylint: disable=duplicate-code __all__ = [ "__version__", "atleast_nd", diff --git a/src/array_api_extra/_funcs.py b/src/array_api_extra/_funcs.py index 3d961e2..e4bbdc4 100644 --- a/src/array_api_extra/_funcs.py +++ b/src/array_api_extra/_funcs.py @@ -1,13 +1,10 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 +from __future__ import annotations -import typing import warnings -if typing.TYPE_CHECKING: - from ._lib._typing import Array, ModuleType - from ._lib import _utils from ._lib._compat import array_namespace +from ._lib._typing import Array, ModuleType __all__ = [ "atleast_nd", diff --git a/src/array_api_extra/_lib/_compat.py b/src/array_api_extra/_lib/_compat.py index 03e47d1..6edcd5a 100644 --- a/src/array_api_extra/_lib/_compat.py +++ b/src/array_api_extra/_lib/_compat.py @@ -3,13 +3,13 @@ from __future__ import annotations try: - from ..._array_api_compat_vendor import ( # pyright: ignore[reportMissingImports] - array_namespace, # pyright: ignore[reportUnknownVariableType] - device, # pyright: ignore[reportUnknownVariableType] + from ..._array_api_compat_vendor import ( + array_namespace, + device, ) except ImportError: - from array_api_compat import ( # pyright: ignore[reportMissingTypeStubs] - array_namespace, # pyright: ignore[reportUnknownVariableType] + from array_api_compat import ( + array_namespace, device, ) diff --git a/src/array_api_extra/_lib/_typing.py b/src/array_api_extra/_lib/_typing.py index f84b1d2..0a403be 100644 --- a/src/array_api_extra/_lib/_typing.py +++ b/src/array_api_extra/_lib/_typing.py @@ -1,22 +1,10 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 +from __future__ import annotations -import typing from types import ModuleType from typing import Any -if typing.TYPE_CHECKING: - from typing_extensions import override +# To be changed to a Protocol later (see data-apis/array-api#589) +Array = Any +Device = Any - # To be changed to a Protocol later (see data-apis/array-api#589) - Array = Any # type: ignore[no-any-explicit] - Device = Any # type: ignore[no-any-explicit] -else: - - def no_op_decorator(f): # pyright: ignore[reportUnreachable] - return f - - override = no_op_decorator - -__all__ = ["ModuleType", "override"] -if typing.TYPE_CHECKING: - __all__ += ["Array", "Device"] +__all__ = ["Array", "Device", "ModuleType"] diff --git a/src/array_api_extra/_lib/_utils.py b/src/array_api_extra/_lib/_utils.py index 15e33d6..51d2e14 100644 --- a/src/array_api_extra/_lib/_utils.py +++ b/src/array_api_extra/_lib/_utils.py @@ -1,11 +1,7 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 - -import typing - -if typing.TYPE_CHECKING: - from ._typing import Array, ModuleType +from __future__ import annotations from . import _compat +from ._typing import Array, ModuleType __all__ = ["in1d", "mean"] diff --git a/tests/test_funcs.py b/tests/test_funcs.py index 488636e..797a131 100644 --- a/tests/test_funcs.py +++ b/tests/test_funcs.py @@ -1,11 +1,10 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 +from __future__ import annotations import contextlib -import typing import warnings # data-apis/array-api-strict#6 -import array_api_strict as xp # type: ignore[import-untyped] # pyright: ignore[reportMissingTypeStubs] +import array_api_strict as xp import numpy as np import pytest from numpy.testing import assert_allclose, assert_array_equal, assert_equal @@ -19,9 +18,7 @@ setdiff1d, sinc, ) - -if typing.TYPE_CHECKING: - from array_api_extra._lib._typing import Array +from array_api_extra._lib._typing import Array class TestAtLeastND: diff --git a/tests/test_utils.py b/tests/test_utils.py index fbab9c4..7533ac7 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -1,17 +1,13 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 - -import typing +from __future__ import annotations # data-apis/array-api-strict#6 -import array_api_strict as xp # type: ignore[import-untyped] # pyright: ignore[reportMissingTypeStubs] +import array_api_strict as xp import pytest from numpy.testing import assert_array_equal +from array_api_extra._lib._typing import Array from array_api_extra._lib._utils import in1d -if typing.TYPE_CHECKING: - from array_api_extra._lib._typing import Array - # some test coverage already provided by TestSetDiff1D class TestIn1D: diff --git a/tests/test_version.py b/tests/test_version.py index 1b20232..21d43d1 100644 --- a/tests/test_version.py +++ b/tests/test_version.py @@ -1,4 +1,4 @@ -from __future__ import annotations # https://github.com/pylint-dev/pylint/pull/9990 +from __future__ import annotations import importlib.metadata diff --git a/vendor_tests/test_vendor.py b/vendor_tests/test_vendor.py index 8b00a37..9686a1a 100644 --- a/vendor_tests/test_vendor.py +++ b/vendor_tests/test_vendor.py @@ -8,7 +8,7 @@ def test_vendor_compat(): from ._array_api_compat_vendor import array_namespace x = xp.asarray([1, 2, 3]) - assert array_namespace(x) is xp + assert array_namespace(x) is xp # type: ignore[no-untyped-call] def test_vendor_extra():