From f02e52923628af6f1c8c3fc45fb736b0fd014055 Mon Sep 17 00:00:00 2001 From: Lucas Colley Date: Tue, 26 Nov 2024 12:08:49 +0000 Subject: [PATCH] TYP: adopt based{mypy, pyright} --- codecov.yml | 2 + pixi.lock | 503 +++++++++++++++------------------ pyproject.toml | 24 +- src/array_api_extra/_typing.py | 3 +- tests/test_funcs.py | 15 +- 5 files changed, 255 insertions(+), 292 deletions(-) diff --git a/codecov.yml b/codecov.yml index 69cb760..f76a2bc 100644 --- a/codecov.yml +++ b/codecov.yml @@ -1 +1,3 @@ comment: false +ignore: + - "src/array_api_extra/_typing" diff --git a/pixi.lock b/pixi.lock index 42bf41b..29d13c4 100644 --- a/pixi.lock +++ b/pixi.lock @@ -13,7 +13,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.7-py310h89163eb_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.8-py310h89163eb_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda @@ -54,7 +54,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.7-py310hc74094e_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.8-py310hc74094e_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libblas-3.9.0-25_osxarm64_openblas.conda @@ -67,7 +67,7 @@ environments: - 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.0-hbaaea75_1.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.3-hb52a8e5_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.4-hdb05f8b_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ncurses-6.5-h7bae524_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/numpy-2.1.3-py310h530be0a_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/openssl-3.4.0-h39f12f2_0.conda @@ -89,7 +89,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.7-py310h38315fa_0.conda + - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.8-py310h38315fa_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda @@ -136,7 +136,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.7-py313h8060acc_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.8-py313h8060acc_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda @@ -177,7 +177,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.7-py313ha9b7d5b_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.8-py313ha9b7d5b_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libblas-3.9.0-25_osxarm64_openblas.conda @@ -192,7 +192,7 @@ environments: - 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.0-hbaaea75_1.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.3-hb52a8e5_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.4-hdb05f8b_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ncurses-6.5-h7bae524_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/numpy-2.1.3-py313hca4752e_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/openssl-3.4.0-h39f12f2_0.conda @@ -214,7 +214,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.7-py313hb4c8b1a_0.conda + - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.8-py313hb4c8b1a_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda @@ -339,7 +339,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.7-py313h8060acc_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.8-py313h8060acc_0.conda - conda: https://prefix.dev/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_0.conda @@ -351,7 +351,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_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_0.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_0.conda @@ -380,8 +380,6 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/markupsafe-3.0.2-py313h8060acc_0.conda - conda: https://prefix.dev/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_0.tar.bz2 - - 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_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/numpy-2.1.3-py313h4bf6692_0.conda @@ -394,7 +392,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.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_0.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-pyhd3deb0d_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda @@ -409,7 +406,7 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/pyyaml-6.0.2-py313h536fd9c_1.conda - conda: https://prefix.dev/conda-forge/linux-64/readline-8.2-h8228510_1.conda - conda: https://prefix.dev/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda + - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.conda - conda: https://prefix.dev/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda @@ -431,16 +428,21 @@ environments: - 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/urllib3-2.2.3-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.27.1-pyhd8ed1ab_0.conda + - 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_0.conda - conda: https://prefix.dev/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 - 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: https://files.pythonhosted.org/packages/4a/c0/57dd357faee7ef5172a3434565c823b84e6ec6625c7e80d9813e4e7b5e15/basedmypy-2.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ca/b4/b036f8fdb667587bb37df29dc6644681dd78b7a2a6321a34684b79412b28/myst_parser-4.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d8/16/e34cf573096e7b25c85829e99f7e47d6cda0a6cdc4bd078d6bcdcb4dc979/nodejs_wheel_binaries-22.11.0-py2.py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: https://files.pythonhosted.org/packages/fa/ae/322d05bec884977b89eced3af811c228652a9e25f9646ee6236890987214/sphinx_autodoc_typehints-2.5.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/9e/48/1ea60e74949eecb12cdd6ac43987f9fd331156388dcc2319b45e2ebb81bf/sphinx_copybutton-0.5.2-py3-none-any.whl - pypi: . @@ -459,7 +461,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.7-py313ha9b7d5b_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.8-py313ha9b7d5b_0.conda - conda: https://prefix.dev/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_0.conda @@ -471,7 +473,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_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_0.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_0.conda @@ -491,12 +493,10 @@ environments: - 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.0-hbaaea75_1.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.3-hb52a8e5_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.4-hdb05f8b_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/markupsafe-3.0.2-py313heb2b014_0.conda - conda: https://prefix.dev/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_0.tar.bz2 - - 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_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/numpy-2.1.3-py313hca4752e_0.conda @@ -509,7 +509,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.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_0.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-pyhd3deb0d_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda @@ -524,7 +523,7 @@ environments: - conda: https://prefix.dev/conda-forge/osx-arm64/pyyaml-6.0.2-py313h20a7fcf_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - conda: https://prefix.dev/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda + - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.conda - conda: https://prefix.dev/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda @@ -546,16 +545,21 @@ environments: - 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/urllib3-2.2.3-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.27.1-pyhd8ed1ab_0.conda + - 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_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2 - conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 - 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: https://files.pythonhosted.org/packages/d6/ff/c9a0be388eb2399e10955d50e8ee79ddd67686155c1d2b6f0c588fbfb5a8/basedmypy-2.7.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ca/b4/b036f8fdb667587bb37df29dc6644681dd78b7a2a6321a34684b79412b28/myst_parser-4.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a5/16/4cd2c0791567ee7b0203c3c6b59341854f0aeecb7315159d634c2b54b6d4/nodejs_wheel_binaries-22.11.0-py2.py3-none-macosx_11_0_arm64.whl - pypi: https://files.pythonhosted.org/packages/fa/ae/322d05bec884977b89eced3af811c228652a9e25f9646ee6236890987214/sphinx_autodoc_typehints-2.5.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/9e/48/1ea60e74949eecb12cdd6ac43987f9fd331156388dcc2319b45e2ebb81bf/sphinx_copybutton-0.5.2-py3-none-any.whl - pypi: . @@ -574,7 +578,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/cfgv-3.3.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.7-py313hb4c8b1a_0.conda + - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.8-py313hb4c8b1a_0.conda - conda: https://prefix.dev/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/dill-0.3.9-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_0.conda @@ -586,7 +590,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_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_0.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_0.conda @@ -610,8 +614,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/matplotlib-inline-0.1.7-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_0.tar.bz2 - 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_0.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/numpy-2.1.3-py313hee8cc43_0.conda - conda: https://prefix.dev/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda @@ -622,7 +624,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.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_0.conda - - conda: https://prefix.dev/conda-forge/win-64/psutil-6.1.0-py313ha7868ed_0.conda - conda: https://prefix.dev/conda-forge/win-64/pthreads-win32-2.9.1-h2466b09_4.conda - conda: https://prefix.dev/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda @@ -636,7 +637,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/pytz-2024.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/pyyaml-6.0.2-py313ha7868ed_1.conda - conda: https://prefix.dev/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda + - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.conda - conda: https://prefix.dev/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 - conda: https://prefix.dev/conda-forge/noarch/soupsieve-2.5-pyhd8ed1ab_1.conda @@ -662,7 +663,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/urllib3-2.2.3-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/vc-14.3-ha32ba9b_23.conda - conda: https://prefix.dev/conda-forge/win-64/vc14_runtime-14.42.34433-he29a5d6_23.conda - - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.27.1-pyhd8ed1ab_0.conda + - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/vs2015_runtime-14.42.34433-hdffcdeb_23.conda - conda: https://prefix.dev/conda-forge/noarch/wcwidth-0.2.13-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_7.conda @@ -670,10 +671,15 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 - conda: https://prefix.dev/conda-forge/win-64/zstandard-0.23.0-py313h574b89f_1.conda - conda: https://prefix.dev/conda-forge/win-64/zstd-1.5.6-h0ea2cb4_0.conda + - pypi: https://files.pythonhosted.org/packages/e9/3c/c6243926f5710becd95abd6af4d496e04f03fe43d76d1ef50937399ec2ed/basedmypy-2.7.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/42/d7/1ec15b46af6af88f19b8e5ffea08fa375d433c998b8a7639e76935c14f1f/markdown_it_py-3.0.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/a7/f7/7782a043553ee469c1ff49cfa1cdace2d6bf99a1f333cf38676b3ddf30da/mdit_py_plugins-0.4.2-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/ca/b4/b036f8fdb667587bb37df29dc6644681dd78b7a2a6321a34684b79412b28/myst_parser-4.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/68/69/f0dbbf72c8bdd9149ee00427c282d392da7fad9c53bd96f4844c2ab9021c/nodejs_wheel_binaries-22.11.0-py2.py3-none-win_amd64.whl - pypi: https://files.pythonhosted.org/packages/fa/ae/322d05bec884977b89eced3af811c228652a9e25f9646ee6236890987214/sphinx_autodoc_typehints-2.5.0-py3-none-any.whl - pypi: https://files.pythonhosted.org/packages/9e/48/1ea60e74949eecb12cdd6ac43987f9fd331156388dcc2319b45e2ebb81bf/sphinx_copybutton-0.5.2-py3-none-any.whl - pypi: . @@ -902,7 +908,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/filelock-3.16.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_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_0.conda - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda @@ -923,8 +929,6 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_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_0.tar.bz2 - - 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_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/numpy-2.1.3-py313h4bf6692_0.conda @@ -933,7 +937,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.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-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.3-pyhd8ed1ab_0.conda @@ -941,16 +944,21 @@ environments: - conda: https://prefix.dev/conda-forge/linux-64/python_abi-3.13-5_cp313.conda - conda: https://prefix.dev/conda-forge/linux-64/pyyaml-6.0.2-py313h536fd9c_1.conda - conda: https://prefix.dev/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda + - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.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.1.0-pyhff2d567_0.conda - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_0.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.27.1-pyhd8ed1ab_0.conda + - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://prefix.dev/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 + - pypi: https://files.pythonhosted.org/packages/4a/c0/57dd357faee7ef5172a3434565c823b84e6ec6625c7e80d9813e4e7b5e15/basedmypy-2.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl + - pypi: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/d8/16/e34cf573096e7b25c85829e99f7e47d6cda0a6cdc4bd078d6bcdcb4dc979/nodejs_wheel_binaries-22.11.0-py2.py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl - pypi: . osx-arm64: - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda @@ -964,7 +972,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/filelock-3.16.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_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_0.conda - conda: https://prefix.dev/conda-forge/noarch/isort-5.13.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libblas-3.9.0-25_osxarm64_openblas.conda @@ -979,10 +987,8 @@ environments: - 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.0-hbaaea75_1.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.3-hb52a8e5_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.4-hdb05f8b_0.conda - conda: https://prefix.dev/conda-forge/noarch/mccabe-0.7.0-pyhd8ed1ab_0.tar.bz2 - - 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_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/numpy-2.1.3-py313hca4752e_0.conda @@ -991,7 +997,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.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-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pytest-8.3.3-pyhd8ed1ab_0.conda @@ -999,16 +1004,21 @@ environments: - conda: https://prefix.dev/conda-forge/osx-arm64/python_abi-3.13-5_cp313.conda - conda: https://prefix.dev/conda-forge/osx-arm64/pyyaml-6.0.2-py313h20a7fcf_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/readline-8.2-h92ec313_1.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda + - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.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.1.0-pyhff2d567_0.conda - conda: https://prefix.dev/conda-forge/noarch/tomlkit-0.13.2-pyha770c72_0.conda - conda: https://prefix.dev/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_0.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.27.1-pyhd8ed1ab_0.conda + - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/xz-5.2.6-h57fd34a_0.tar.bz2 - conda: https://prefix.dev/conda-forge/osx-arm64/yaml-0.2.5-h3422bc3_2.tar.bz2 + - pypi: https://files.pythonhosted.org/packages/d6/ff/c9a0be388eb2399e10955d50e8ee79ddd67686155c1d2b6f0c588fbfb5a8/basedmypy-2.7.0-cp313-cp313-macosx_11_0_arm64.whl + - pypi: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/a5/16/4cd2c0791567ee7b0203c3c6b59341854f0aeecb7315159d634c2b54b6d4/nodejs_wheel_binaries-22.11.0-py2.py3-none-macosx_11_0_arm64.whl - pypi: . win-64: - conda: https://prefix.dev/conda-forge/noarch/array-api-strict-2.2-pyhd8ed1ab_0.conda @@ -1022,7 +1032,7 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/distlib-0.3.9-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/filelock-3.16.1-pyhd8ed1ab_0.conda - - conda: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_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_0.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_0.conda @@ -1039,8 +1049,6 @@ environments: - 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_0.tar.bz2 - 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_0.conda - conda: https://prefix.dev/conda-forge/noarch/nodeenv-1.9.1-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/numpy-2.1.3-py313hee8cc43_0.conda - conda: https://prefix.dev/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda @@ -1048,7 +1056,6 @@ environments: - conda: https://prefix.dev/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.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/win-64/pthreads-win32-2.9.1-h2466b09_4.conda - conda: https://prefix.dev/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/pylint-3.3.1-pyhd8ed1ab_0.conda @@ -1056,7 +1063,7 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/python-3.13.0-hf5aa216_100_cp313.conda - conda: https://prefix.dev/conda-forge/win-64/python_abi-3.13-5_cp313.conda - conda: https://prefix.dev/conda-forge/win-64/pyyaml-6.0.2-py313ha7868ed_1.conda - - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda + - conda: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.conda - conda: https://prefix.dev/conda-forge/win-64/tbb-2021.13.0-hc790b64_0.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.1.0-pyhff2d567_0.conda @@ -1067,10 +1074,15 @@ environments: - conda: https://prefix.dev/conda-forge/win-64/ukkonen-1.0.1-py313h1ec8472_5.conda - conda: https://prefix.dev/conda-forge/win-64/vc-14.3-ha32ba9b_23.conda - conda: https://prefix.dev/conda-forge/win-64/vc14_runtime-14.42.34433-he29a5d6_23.conda - - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.27.1-pyhd8ed1ab_0.conda + - conda: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/vs2015_runtime-14.42.34433-hdffcdeb_23.conda - conda: https://prefix.dev/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://prefix.dev/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 + - pypi: https://files.pythonhosted.org/packages/e9/3c/c6243926f5710becd95abd6af4d496e04f03fe43d76d1ef50937399ec2ed/basedmypy-2.7.0-cp313-cp313-win_amd64.whl + - pypi: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl + - pypi: https://files.pythonhosted.org/packages/68/69/f0dbbf72c8bdd9149ee00427c282d392da7fad9c53bd96f4844c2ab9021c/nodejs_wheel_binaries-22.11.0-py2.py3-none-win_amd64.whl - pypi: . tests: channels: @@ -1085,7 +1097,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.7-py313h8060acc_0.conda + - conda: https://prefix.dev/conda-forge/linux-64/coverage-7.6.8-py313h8060acc_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda @@ -1126,7 +1138,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.7-py313ha9b7d5b_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.8-py313ha9b7d5b_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/libblas-3.9.0-25_osxarm64_openblas.conda @@ -1141,7 +1153,7 @@ environments: - 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.0-hbaaea75_1.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.3-hb52a8e5_0.conda + - conda: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.4-hdb05f8b_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/ncurses-6.5-h7bae524_1.conda - conda: https://prefix.dev/conda-forge/osx-arm64/numpy-2.1.3-py313hca4752e_0.conda - conda: https://prefix.dev/conda-forge/osx-arm64/openssl-3.4.0-h39f12f2_0.conda @@ -1163,7 +1175,7 @@ environments: - 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/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.7-py313hb4c8b1a_0.conda + - conda: https://prefix.dev/conda-forge/win-64/coverage-7.6.8-py313hb4c8b1a_0.conda - conda: https://prefix.dev/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://prefix.dev/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda @@ -1254,9 +1266,9 @@ packages: timestamp: 1722035895436 - kind: pypi name: array-api-extra - version: 0.2.0 + version: 0.2.1.dev0 path: . - sha256: b314891741fd669772e62d8b471a54cb1fe9a9a19fedcbb0b02719094c2a0013 + sha256: f46450ad7555157442289421a6feef09ca6f11fab4eb26c6e911f3c0d685d04d requires_dist: - furo>=2023.8.17 ; extra == 'docs' - myst-parser>=0.13 ; extra == 'docs' @@ -1381,6 +1393,70 @@ packages: - pkg:pypi/babel?source=hash-mapping size: 6525614 timestamp: 1730878929589 +- kind: pypi + name: basedmypy + version: 2.7.0 + url: https://files.pythonhosted.org/packages/4a/c0/57dd357faee7ef5172a3434565c823b84e6ec6625c7e80d9813e4e7b5e15/basedmypy-2.7.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl + sha256: fa155eb6506c2caf7296e97eb57e3870bc65e271af2582f2bb245b49acd283b0 + requires_dist: + - basedtyping>=0.1.4 + - typing-extensions>=4.6.0 + - mypy-extensions>=1.0.0 + - tomli>=1.1.0 ; python_full_version < '3.11' + - psutil>=4.0 ; extra == 'dmypy' + - orjson ; extra == 'faster-cache' + - pip ; extra == 'install-types' + - setuptools>=50 ; extra == 'mypyc' + - lxml ; extra == 'reports' + requires_python: '>=3.8' +- kind: pypi + name: basedmypy + version: 2.7.0 + url: https://files.pythonhosted.org/packages/d6/ff/c9a0be388eb2399e10955d50e8ee79ddd67686155c1d2b6f0c588fbfb5a8/basedmypy-2.7.0-cp313-cp313-macosx_11_0_arm64.whl + sha256: ee773922a22a3aba0eb2ce8f9b8733e1b6086b7b75b885f887cff0f9746bf607 + requires_dist: + - basedtyping>=0.1.4 + - typing-extensions>=4.6.0 + - mypy-extensions>=1.0.0 + - tomli>=1.1.0 ; python_full_version < '3.11' + - psutil>=4.0 ; extra == 'dmypy' + - orjson ; extra == 'faster-cache' + - pip ; extra == 'install-types' + - setuptools>=50 ; extra == 'mypyc' + - lxml ; extra == 'reports' + requires_python: '>=3.8' +- kind: pypi + name: basedmypy + version: 2.7.0 + url: https://files.pythonhosted.org/packages/e9/3c/c6243926f5710becd95abd6af4d496e04f03fe43d76d1ef50937399ec2ed/basedmypy-2.7.0-cp313-cp313-win_amd64.whl + sha256: 0758a45dc099f57110b21fd480dae82d289620501acbbb2854db5d22d6dd7b2a + requires_dist: + - basedtyping>=0.1.4 + - typing-extensions>=4.6.0 + - mypy-extensions>=1.0.0 + - tomli>=1.1.0 ; python_full_version < '3.11' + - psutil>=4.0 ; extra == 'dmypy' + - orjson ; extra == 'faster-cache' + - pip ; extra == 'install-types' + - setuptools>=50 ; extra == 'mypyc' + - lxml ; extra == 'reports' + requires_python: '>=3.8' +- kind: pypi + name: basedpyright + version: 1.22.0 + url: https://files.pythonhosted.org/packages/1b/d2/1783a17c041a48faa1fd056a7dd1029e419a0026ecc2c070b7c7516018d0/basedpyright-1.22.0-py3-none-any.whl + sha256: 6376107086ad25525429b8a94a2ffdb67c6dd2b1a6be38bf3c6ea9b5c3d1f688 + requires_dist: + - nodejs-wheel-binaries>=20.13.1 + requires_python: '>=3.8' +- kind: pypi + name: basedtyping + version: 0.1.10 + url: https://files.pythonhosted.org/packages/db/4a/76fe7ddbb90aadaeb298dbb57e562a365f21a6fa17d3c69e73cb3c0c84e8/basedtyping-0.1.10-py3-none-any.whl + sha256: 8952416f8fd196d25c1f6d6bb556223183e928c944bee4bd0c49af659677dea9 + requires_dist: + - typing-extensions>=4.12.2,<5.0.0 + requires_python: '>=3.9,<4.0' - kind: conda name: beautifulsoup4 version: 4.12.3 @@ -1711,12 +1787,12 @@ packages: timestamp: 1666700778190 - kind: conda name: coverage - version: 7.6.7 + version: 7.6.8 build: py310h38315fa_0 subdir: win-64 - url: https://prefix.dev/conda-forge/win-64/coverage-7.6.7-py310h38315fa_0.conda - sha256: ce137eef8cd129d4a8adf3bbaa92c0d007116deb636b193462f086548e5e2099 - md5: 43c66f538fcbc63d499ce1050bc69e92 + url: https://prefix.dev/conda-forge/win-64/coverage-7.6.8-py310h38315fa_0.conda + sha256: 26f7df3758c5a6fbca73b76ee415eb0581fe40dd0734c99220cf88b76b18e2ba + md5: 981d75123a07437c07181d5919a6c2af depends: - python >=3.10,<3.11.0a0 - python_abi 3.10.* *_cp310 @@ -1727,19 +1803,18 @@ packages: arch: x86_64 platform: win license: Apache-2.0 - license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 319146 - timestamp: 1731699094460 + size: 319434 + timestamp: 1732426451111 - kind: conda name: coverage - version: 7.6.7 + version: 7.6.8 build: py310h89163eb_0 subdir: linux-64 - url: https://prefix.dev/conda-forge/linux-64/coverage-7.6.7-py310h89163eb_0.conda - sha256: 9f2eac7b7b148bf48adaa946d331103bcd5306b588f319b21166c4f5851d5086 - md5: edced792209b5a2591ebccad19955a59 + url: https://prefix.dev/conda-forge/linux-64/coverage-7.6.8-py310h89163eb_0.conda + sha256: bf344cd5cba14409c422022dcacdf030f66ed325493ecb6f6bf6f22b7e0ee39b + md5: 1109af252e695897f5acc7c1578202cd depends: - __glibc >=2.17,<3.0.a0 - libgcc >=13 @@ -1749,19 +1824,18 @@ packages: arch: x86_64 platform: linux license: Apache-2.0 - license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 293679 - timestamp: 1731698707639 + size: 294004 + timestamp: 1732426259018 - kind: conda name: coverage - version: 7.6.7 + version: 7.6.8 build: py310hc74094e_0 subdir: osx-arm64 - url: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.7-py310hc74094e_0.conda - sha256: 45e6658cab7fcdc2ba44bd4b02c552be155ebff322beb90c61c975fb2d9911cc - md5: 88292f9e59b79b17ca3088843d0f81e3 + url: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.8-py310hc74094e_0.conda + sha256: 54451c5fb41b5a3d84c7b11a798707e944a36d72964bc52ed933f5c7799271a1 + md5: 0f258154dbcc44c881025eea5e981126 depends: - __osx >=11.0 - python >=3.10,<3.11.0a0 @@ -1771,19 +1845,18 @@ packages: arch: arm64 platform: osx license: Apache-2.0 - license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 293578 - timestamp: 1731698812707 + size: 293158 + timestamp: 1732426403407 - kind: conda name: coverage - version: 7.6.7 + version: 7.6.8 build: py313h8060acc_0 subdir: linux-64 - url: https://prefix.dev/conda-forge/linux-64/coverage-7.6.7-py313h8060acc_0.conda - sha256: f4b96ab26f132a63f017dfe5934347828cbcda352399d2e482913afa41aef984 - md5: e87423953e8fc4eaab4a80e3e82c256e + url: https://prefix.dev/conda-forge/linux-64/coverage-7.6.8-py313h8060acc_0.conda + sha256: 4c6cfa6816d21dc2e799fcb7d4f2d3b7dadeb0eba948cacec84fd33b9a769b54 + md5: cf7681f6c2dc94ff8577430e4c280dc6 depends: - __glibc >=2.17,<3.0.a0 - libgcc >=13 @@ -1793,19 +1866,18 @@ packages: arch: x86_64 platform: linux license: Apache-2.0 - license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 371743 - timestamp: 1731698664791 + size: 371219 + timestamp: 1732426302564 - kind: conda name: coverage - version: 7.6.7 + version: 7.6.8 build: py313ha9b7d5b_0 subdir: osx-arm64 - url: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.7-py313ha9b7d5b_0.conda - sha256: c80de9254ab0bfae595efe4a2f8dfac386609b418525d969589b0727328bcec8 - md5: 2abfb580934b8d65a2f8deeea29f332e + url: https://prefix.dev/conda-forge/osx-arm64/coverage-7.6.8-py313ha9b7d5b_0.conda + sha256: 1747141f16821adced20f12966831ff444f06942dbecb36d443db43fa8b0dfe0 + md5: 2a72ba6a651f184a6515acfa48687d11 depends: - __osx >=11.0 - python >=3.13,<3.14.0a0 @@ -1815,19 +1887,18 @@ packages: arch: arm64 platform: osx license: Apache-2.0 - license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 369950 - timestamp: 1731698806040 + size: 370706 + timestamp: 1732426401447 - kind: conda name: coverage - version: 7.6.7 + version: 7.6.8 build: py313hb4c8b1a_0 subdir: win-64 - url: https://prefix.dev/conda-forge/win-64/coverage-7.6.7-py313hb4c8b1a_0.conda - sha256: 6512673ce400cf995665c2b12a0245a6c2b9177f82c361a41fce5c2c1038fce7 - md5: 7c0abf163e6179c7d6c83f2a97a7d473 + url: https://prefix.dev/conda-forge/win-64/coverage-7.6.8-py313hb4c8b1a_0.conda + sha256: 01b3d6d287dd34363efaa47baf93148f404af7b4f7b52f3117a3575dc6edb86a + md5: 258641c09a12218156e1706d6bea5bf6 depends: - python >=3.13,<3.14.0a0 - python_abi 3.13.* *_cp313 @@ -1838,11 +1909,10 @@ packages: arch: x86_64 platform: win license: Apache-2.0 - license_family: APACHE purls: - pkg:pypi/coverage?source=hash-mapping - size: 396982 - timestamp: 1731699148697 + size: 396450 + timestamp: 1732426714288 - kind: conda name: decorator version: 5.1.1 @@ -2036,13 +2106,13 @@ packages: timestamp: 1619110249723 - kind: conda name: identify - version: 2.6.2 + version: 2.6.3 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://prefix.dev/conda-forge/noarch/identify-2.6.2-pyhd8ed1ab_0.conda - sha256: 4e3f1c381ad65b476a98d03c0f6c73df04ae4095b501f51129ba6f2a7660179c - md5: 636950f839e065401e2031624a414f0b + url: https://prefix.dev/conda-forge/noarch/identify-2.6.3-pyhd8ed1ab_0.conda + sha256: 2350107285349caad1a5c5c5296a1335b8649d6b1b0e8f2bde18127c404471c5 + md5: dd3acd023fc358afab730866a0e5e3f5 depends: - python >=3.6 - ukkonen @@ -2050,8 +2120,8 @@ packages: license_family: MIT purls: - pkg:pypi/identify?source=hash-mapping - size: 78376 - timestamp: 1731187862708 + size: 78352 + timestamp: 1732589463054 - kind: conda name: idna version: '3.10' @@ -2209,7 +2279,7 @@ packages: - python >=3.9 license: Apache-2.0 AND MIT purls: - - pkg:pypi/jedi?source=compressed-mapping + - pkg:pypi/jedi?source=hash-mapping size: 842916 timestamp: 1731317305873 - kind: conda @@ -3089,23 +3159,23 @@ packages: timestamp: 1727963148474 - kind: conda name: llvm-openmp - version: 19.1.3 - build: hb52a8e5_0 + version: 19.1.4 + build: hdb05f8b_0 subdir: osx-arm64 - url: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.3-hb52a8e5_0.conda - sha256: 49a8940e727aa82ee034fa9a60b3fcababec41b3192d955772aab635a5374b82 - md5: dd695d23e78d1ca4fecce969b1e1db61 + url: https://prefix.dev/conda-forge/osx-arm64/llvm-openmp-19.1.4-hdb05f8b_0.conda + sha256: dfdcd8de37899d984326f9734b28f46f80b88c068e44c562933a8b3117f2401a + md5: 76ca179ec970bea6e275e2fa477c2d3c depends: - __osx >=11.0 constrains: - - openmp 19.1.3|19.1.3.* + - openmp 19.1.4|19.1.4.* arch: arm64 platform: osx license: Apache-2.0 WITH LLVM-exception license_family: APACHE purls: [] - size: 280488 - timestamp: 1730364082380 + size: 281554 + timestamp: 1732102484807 - kind: pypi name: markdown-it-py version: 3.0.0 @@ -3283,96 +3353,12 @@ packages: purls: [] size: 103019089 timestamp: 1727378392081 -- kind: conda - name: mypy - version: 1.13.0 - build: py313h536fd9c_0 - subdir: linux-64 - url: 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 - arch: x86_64 - platform: linux - license: MIT - license_family: MIT - purls: - - pkg:pypi/mypy?source=hash-mapping - size: 17256607 - timestamp: 1729644645953 -- kind: conda - name: mypy - version: 1.13.0 - build: py313h63a2874_0 - subdir: osx-arm64 - url: 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 - arch: arm64 - platform: osx - license: MIT - license_family: MIT - purls: - - pkg:pypi/mypy?source=hash-mapping - size: 9929683 - timestamp: 1729644322804 -- kind: conda - name: mypy - version: 1.13.0 - build: py313ha7868ed_0 - subdir: win-64 - url: 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 - arch: x86_64 - platform: win - license: MIT - license_family: MIT - purls: - - pkg:pypi/mypy?source=hash-mapping - size: 8608743 - timestamp: 1729644175962 -- kind: conda - name: mypy_extensions +- kind: pypi + name: mypy-extensions version: 1.0.0 - build: pyha770c72_0 - subdir: noarch - noarch: python - url: https://prefix.dev/conda-forge/noarch/mypy_extensions-1.0.0-pyha770c72_0.conda - sha256: f240217476e148e825420c6bc3a0c0efb08c0718b7042fae960400c02af858a3 - md5: 4eccaeba205f0aed9ac3a9ea58568ca3 - depends: - - python >=3.5 - license: MIT - license_family: MIT - purls: - - pkg:pypi/mypy-extensions?source=hash-mapping - size: 10492 - timestamp: 1675543414256 + url: https://files.pythonhosted.org/packages/2a/e2/5d3f6ada4297caebe1a2add3b126fe800c96f56dbe5d1988a2cbe0b267aa/mypy_extensions-1.0.0-py3-none-any.whl + sha256: 4392f6c0eb8a5668a69e23d168ffa70f0be9ccfd32b5cc2d26a34ae5b844552d + requires_python: '>=3.5' - kind: pypi name: myst-parser version: 4.0.0 @@ -3463,6 +3449,24 @@ packages: - pkg:pypi/nodeenv?source=hash-mapping size: 34489 timestamp: 1717585382642 +- kind: pypi + name: nodejs-wheel-binaries + version: 22.11.0 + url: https://files.pythonhosted.org/packages/68/69/f0dbbf72c8bdd9149ee00427c282d392da7fad9c53bd96f4844c2ab9021c/nodejs_wheel_binaries-22.11.0-py2.py3-none-win_amd64.whl + sha256: 8310ab182ee159141e08c85bc07f11e67ac3044922e6e4958f4a8f3ba6860185 + requires_python: '>=3.7' +- kind: pypi + name: nodejs-wheel-binaries + version: 22.11.0 + url: https://files.pythonhosted.org/packages/a5/16/4cd2c0791567ee7b0203c3c6b59341854f0aeecb7315159d634c2b54b6d4/nodejs_wheel_binaries-22.11.0-py2.py3-none-macosx_11_0_arm64.whl + sha256: 00afada277fd6e945a74f881831aaf1bb7f853a15e15e8c998238ab88d327f6a + requires_python: '>=3.7' +- kind: pypi + name: nodejs-wheel-binaries + version: 22.11.0 + url: https://files.pythonhosted.org/packages/d8/16/e34cf573096e7b25c85829e99f7e47d6cda0a6cdc4bd078d6bcdcb4dc979/nodejs_wheel_binaries-22.11.0-py2.py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl + sha256: a9545cc43f1ba2c9f467f3444e9cd7f8db059933be1a5215135610dee5b38bf3 + requires_python: '>=3.7' - kind: conda name: numpy version: 2.1.3 @@ -3828,70 +3832,6 @@ packages: - pkg:pypi/prompt-toolkit?source=hash-mapping size: 270271 timestamp: 1727341744544 -- kind: conda - name: psutil - version: 6.1.0 - build: py313h536fd9c_0 - subdir: linux-64 - url: 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 - arch: x86_64 - platform: linux - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/psutil?source=hash-mapping - size: 494158 - timestamp: 1729847232458 -- kind: conda - name: psutil - version: 6.1.0 - build: py313h63a2874_0 - subdir: osx-arm64 - url: 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 - arch: arm64 - platform: osx - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/psutil?source=hash-mapping - size: 501427 - timestamp: 1729847280285 -- kind: conda - name: psutil - version: 6.1.0 - build: py313ha7868ed_0 - subdir: win-64 - url: 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 - arch: x86_64 - platform: win - license: BSD-3-Clause - license_family: BSD - purls: - - pkg:pypi/psutil?source=hash-mapping - size: 508489 - timestamp: 1729847497486 - kind: conda name: pthreads-win32 version: 2.9.1 @@ -4530,21 +4470,21 @@ packages: timestamp: 1717057174842 - kind: conda name: setuptools - version: 75.5.0 + version: 75.6.0 build: pyhff2d567_0 subdir: noarch noarch: python - url: https://prefix.dev/conda-forge/noarch/setuptools-75.5.0-pyhff2d567_0.conda - sha256: 54dcf5f09f74f69641e0063bc695b38340d0349fa8371b1f2ed0c45c5b2fd224 - md5: ade63405adb52eeff89d506cd55908c0 + url: https://prefix.dev/conda-forge/noarch/setuptools-75.6.0-pyhff2d567_0.conda + sha256: eeec4645f70ce0ed03348397dced9d218a650a42df98592419af61d2689163ed + md5: 68d7d406366926b09a6a023e3d0f71d7 depends: - python >=3.9 license: MIT license_family: MIT purls: - pkg:pypi/setuptools?source=hash-mapping - size: 772480 - timestamp: 1731707561164 + size: 774304 + timestamp: 1732216189406 - kind: conda name: six version: 1.16.0 @@ -5136,24 +5076,23 @@ packages: timestamp: 1731710681163 - kind: conda name: virtualenv - version: 20.27.1 + version: 20.28.0 build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://prefix.dev/conda-forge/noarch/virtualenv-20.27.1-pyhd8ed1ab_0.conda - sha256: 189b935224732267df10dc116bce0835bd76fcdb20c30f560591c92028d513b0 - md5: dae21509d62aa7bf676279ced3edcb3f + url: https://prefix.dev/conda-forge/noarch/virtualenv-20.28.0-pyhd8ed1ab_0.conda + sha256: 82776f74e90a296b79415361faa6b10f360755c1fb8e6d59ca68509e6fe7e115 + md5: 1d601bc1d28b5ce6d112b90f4b9b8ede depends: - - distlib <1,>=0.3.7 - - filelock <4,>=3.12.2 - - platformdirs <5,>=3.9.1 - - python >=3.8 + - distlib >=0.3.7,<1 + - filelock >=3.12.2,<4 + - platformdirs >=3.9.1,<5 + - python >=3.9 license: MIT - license_family: MIT purls: - pkg:pypi/virtualenv?source=hash-mapping - size: 2965442 - timestamp: 1730204927840 + size: 3350255 + timestamp: 1732609542072 - kind: conda name: vs2015_runtime version: 14.42.34433 diff --git a/pyproject.toml b/pyproject.toml index 27ad736..f449698 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -70,19 +70,23 @@ array-api-extra = { path = ".", editable = true } [tool.pixi.feature.lint.dependencies] pre-commit = "*" -mypy = "*" pylint = "*" # import dependencies for mypy: array-api-strict = "*" numpy = "*" pytest = "*" +[tool.pixi.feature.lint.pypi-dependencies] +basedmypy = "*" +basedpyright = "*" + [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" } mypy = { cmd = "mypy", cwd = "." } pylint = { cmd = ["pylint", "array_api_extra"], cwd = "src" } -lint = { depends-on = ["pre-commit", "pylint", "mypy"] } +pyright = { cmd = "basedpyright", cwd = "." } +lint = { depends-on = ["pre-commit", "pylint", "mypy", "pyright"] } [tool.pixi.feature.tests.dependencies] pytest = ">=6" @@ -165,6 +169,8 @@ enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"] warn_unreachable = true disallow_untyped_defs = false disallow_incomplete_defs = false +# array-api#589 +disallow_any_expr = false [[tool.mypy.overrides]] module = "array_api_extra.*" @@ -172,6 +178,20 @@ disallow_untyped_defs = true disallow_incomplete_defs = true +# pyright + +[tool.pyright] +include = ["src", "tests"] +pythonVersion = "3.10" +pythonPlatform = "All" +typeCheckingMode = "strict" + +# array-api#589 +reportAny = false +reportExplicitAny = false +reportUnknownMemberType = false + + # Ruff [tool.ruff] diff --git a/src/array_api_extra/_typing.py b/src/array_api_extra/_typing.py index 9ffa13f..97d48bf 100644 --- a/src/array_api_extra/_typing.py +++ b/src/array_api_extra/_typing.py @@ -3,6 +3,7 @@ from types import ModuleType from typing import Any -Array = Any # To be changed to a Protocol later (see array-api#589) +# To be changed to a Protocol later (see array-api#589) +Array = Any # type: ignore[no-any-explicit] __all__ = ["Array", "ModuleType"] diff --git a/tests/test_funcs.py b/tests/test_funcs.py index a8db987..eab62d0 100644 --- a/tests/test_funcs.py +++ b/tests/test_funcs.py @@ -13,7 +13,8 @@ from array_api_extra import atleast_nd, cov, create_diagonal, expand_dims, kron, sinc if TYPE_CHECKING: - Array = Any # To be changed to a Protocol later (see array-api#589) + # To be changed to a Protocol later (see array-api#589) + Array = Any # type: ignore[no-any-explicit] class TestAtLeastND: @@ -131,7 +132,7 @@ def test_1d(self): @pytest.mark.parametrize("n", range(1, 10)) @pytest.mark.parametrize("offset", range(1, 10)) - def test_create_diagonal(self, n, offset): + def test_create_diagonal(self, n: int, offset: int): # from scipy._lib tests rng = np.random.default_rng(2347823) one = xp.asarray(1.0) @@ -180,9 +181,9 @@ def test_basic(self): assert_array_equal(kron(a, b, xp=xp), k) def test_kron_smoke(self): - a = xp.ones([3, 3]) - b = xp.ones([3, 3]) - k = xp.ones([9, 9]) + a = xp.ones((3, 3)) + b = xp.ones((3, 3)) + k = xp.ones((9, 9)) assert_array_equal(kron(a, b, xp=xp), k) @@ -197,7 +198,7 @@ def test_kron_smoke(self): ((2, 0, 0, 2), (2, 0, 2)), ], ) - def test_kron_shape(self, shape_a, shape_b): + def test_kron_shape(self, shape_a: tuple[int], shape_b: tuple[int]): a = xp.ones(shape_a) b = xp.ones(shape_b) normalised_shape_a = xp.asarray( @@ -271,7 +272,7 @@ def test_simple(self): assert_allclose(w, xp.flip(w, axis=0)) @pytest.mark.parametrize("x", [0, 1 + 3j]) - def test_dtype(self, x): + def test_dtype(self, x: int | complex): with pytest.raises(ValueError, match="real floating data type"): sinc(xp.asarray(x), xp=xp)