From cddfe04b424bc8e3c2cfe58ca19ea001adfd67da Mon Sep 17 00:00:00 2001 From: linuxrider Date: Thu, 12 Feb 2026 07:15:39 +0100 Subject: [PATCH 1/2] update workflows --- .github/workflows/doc.yml | 4 ++-- .github/workflows/lint.yml | 4 ++-- .github/workflows/test.yml | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/doc.yml b/.github/workflows/doc.yml index 64733e8..4aa4150 100644 --- a/.github/workflows/doc.yml +++ b/.github/workflows/doc.yml @@ -14,8 +14,8 @@ jobs: - name: checkout uses: actions/checkout@v6 with: { submodules: recursive } - - uses: prefix-dev/setup-pixi@v0.9.3 - with: { pixi-version: v0.61.0 } + - uses: prefix-dev/setup-pixi@v0.9.4 + with: { pixi-version: v0.63.2 } - name: build documentation run: | pixi run doc diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index b98d724..77b757f 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -14,8 +14,8 @@ jobs: - name: checkout uses: actions/checkout@v6 with: { submodules: recursive } - - uses: prefix-dev/setup-pixi@v0.9.3 - with: { pixi-version: v0.61.0 } + - uses: prefix-dev/setup-pixi@v0.9.4 + with: { pixi-version: v0.63.2 } - name: pylint run: pixi run pylint - name: black diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 192a452..188300a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -17,8 +17,8 @@ jobs: steps: - uses: actions/checkout@v6 with: { submodules: recursive } - - uses: prefix-dev/setup-pixi@v0.9.3 - with: { pixi-version: v0.61.0 } + - uses: prefix-dev/setup-pixi@v0.9.4 + with: { pixi-version: v0.63.2 } - name: doctest shell: pixi run bash -e {0} run: pixi run -e ${{ matrix.environment }} doctest From 2fcaed84757da380fafb77730fde4f24fa736820 Mon Sep 17 00:00:00 2001 From: linuxrider Date: Thu, 12 Feb 2026 07:40:40 +0100 Subject: [PATCH 2/2] add optional dependecies --- pixi.lock | 204 ++++++++++++++++++++++++++++++++++++++++--------- pyproject.toml | 29 ++++--- 2 files changed, 187 insertions(+), 46 deletions(-) diff --git a/pixi.lock b/pixi.lock index 8134446..bd148a3 100644 --- a/pixi.lock +++ b/pixi.lock @@ -5,6 +5,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -55,6 +57,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pythran-0.18.1-pyha804496_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8c095d6_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.17.0-py314hf07bd8e_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-64-2.28-h4ee821c_9.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_ha0e22de_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda @@ -109,6 +112,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pythran-0.18.1-pyha804496_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/readline-8.2-h8382b9d_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/scipy-1.17.0-py314hd30f180_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sysroot_linux-aarch64-2.28-h585391f_9.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/tk-8.6.13-noxft_h561c983_103.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda @@ -167,6 +171,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.13-8_cp313.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pythran-0.18.1-pyh534df25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/readline-8.2-h7cca4af_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.17.0-py313h2bd7e7a_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-0.1.3-h88f4db0_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-64/tapi-1600.0.11.8-h8d8e812_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/tk-8.6.13-hf689a15_3.conda @@ -225,6 +230,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pythran-0.18.1-pyh534df25_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/readline-8.2-h1d1bf99_2.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.17.0-py314hfc1f868_1.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-0.1.3-h44b9a77_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tapi-1600.0.11.8-h997e182_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/tk-8.6.13-h892fb3f_3.conda @@ -273,6 +279,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.14.2-h4b44e0e_100_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python_abi-3.14-8_cp314.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pythran-0.18.1-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.17.0-py314h221f224_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2022.3.0-hd094cb3_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h2c6b04d_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.3.0-pyhcf101f3_0.conda @@ -289,6 +296,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -484,6 +493,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -653,7 +664,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.30.0-py313h843e2db_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml-0.18.16-py313h07c4f96_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ruamel.yaml.clib-0.2.14-py313h07c4f96_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.14.8-h813ae00_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.15.0-h40fa522_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.16.3-py313h11c21cd_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/simdjson-4.2.2-hb700be7_0.conda @@ -867,7 +878,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/rpds-py-0.30.0-py312h75d7d99_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruamel.yaml-0.18.16-py312hcd1a082_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruamel.yaml.clib-0.2.14-py312hcd1a082_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruff-0.14.8-h9564552_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruff-0.15.0-he9a2e21_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/scipy-1.16.3-py312h410a068_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/simdjson-4.2.2-hfefdfc9_0.conda @@ -1079,7 +1090,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-64/rpds-py-0.30.0-py313hcc225dc_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ruamel.yaml-0.18.16-py313hf050af9_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/ruamel.yaml.clib-0.2.14-py313hf050af9_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.14.8-hd9f4cfa_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.15.0-h5930b28_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.16.3-py313h61f8160_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-64/sigtool-0.1.3-h88f4db0_0.tar.bz2 @@ -1289,7 +1300,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/osx-arm64/rpds-py-0.30.0-py312h6ef9ec0_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruamel.yaml-0.18.16-py312h4409184_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruamel.yaml.clib-0.2.14-py312h4409184_0.conda - - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.14.8-h382de68_0.conda + - conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.15.0-h279115b_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.16.3-py312ha6bbf71_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/osx-arm64/sigtool-0.1.3-h44b9a77_0.tar.bz2 @@ -1484,7 +1495,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.30.0-py313hfbe8231_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ruamel.yaml-0.18.16-py313h5ea7bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ruamel.yaml.clib-0.2.14-py313h5ea7bf4_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.14.8-h15e3a1f_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.15.0-h213852a_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.16.3-py313h7aa983e_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/simdjson-4.2.2-h49e36cd_0.conda @@ -1540,6 +1551,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -1894,6 +1907,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -2248,6 +2263,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -2602,6 +2619,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -2950,6 +2969,8 @@ environments: - url: https://conda.anaconda.org/conda-forge/ indexes: - https://pypi.org/simple + options: + pypi-prerelease-mode: if-necessary-or-explicit packages: linux-64: - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 @@ -4552,12 +4573,13 @@ packages: - pypi: ./ name: ec-tools version: 0.1.0 - sha256: d6abd5c9d767b51da8fb748d39eb4f06b6c8e674aa2250ab6d694a0fd2fa3637 + sha256: 59f270f768c23e11b3ad4ae77f7b776df7965a2a2c4cf258965b1e50144981df requires_dist: - numpy>=2.0.3,<3 - transonic>=0.7.3,<0.9 + - numba ; extra == 'numba' + - pythran ; extra == 'pythran' requires_python: '>=3.10.0' - editable: true - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.3.1-pyhd8ed1ab_0.conda sha256: ee6cf346d017d954255bbcbdb424cddea4d14e4ed7e9813e429db1d795d01144 md5: 8e662bd460bda79b1ea39194e3c4c9ab @@ -11640,10 +11662,10 @@ packages: - pkg:pypi/ruamel-yaml-clib?source=hash-mapping size: 105450 timestamp: 1760564606434 -- conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.14.8-h813ae00_0.conda +- conda: https://conda.anaconda.org/conda-forge/linux-64/ruff-0.15.0-h40fa522_0.conda noarch: python - sha256: 4adf379daccb73f03297a6966d1200f6ea65e6a1513d749e7f782e32267fe2bb - md5: 295ce05c06920527a581a5e148a4eec6 + sha256: fc456645570586c798d2da12fe723b38ea0d0901373fd9959cab914cbb19518b + md5: fe90be2abf12b301dde984719a02ca0b depends: - python - __glibc >=2.17,<3.0.a0 @@ -11653,13 +11675,13 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/ruff?source=hash-mapping - size: 11340280 - timestamp: 1764866215629 -- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruff-0.14.8-h9564552_0.conda + - pkg:pypi/ruff?source=compressed-mapping + size: 9103793 + timestamp: 1770153712370 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/ruff-0.15.0-he9a2e21_0.conda noarch: python - sha256: b790eebb5202961e33c1f59fa9a6fa1ac8e9c7686523c5cb8cf5e81977cb9de8 - md5: 4a21ceddb9f71fc03e79c3922ba6a5b8 + sha256: 803420e8772f977773d16c4f65a408e1164f24dbfcc7ee5ecf3186f26a29266f + md5: 14237324ec9136969cf5c82ca36915a1 depends: - python - libgcc >=14 @@ -11669,12 +11691,12 @@ packages: license_family: MIT purls: - pkg:pypi/ruff?source=hash-mapping - size: 10888420 - timestamp: 1764866220428 -- conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.14.8-hd9f4cfa_0.conda + size: 8771882 + timestamp: 1770153714339 +- conda: https://conda.anaconda.org/conda-forge/osx-64/ruff-0.15.0-h5930b28_0.conda noarch: python - sha256: 686d612b38fa11566e8ddbdd4e8f5558f0bac76926328158f1fbcc1dae9c01da - md5: 544c6d626cf0b56068f3f4c59e8651ac + sha256: de9f76a00b86053d340cb0cc43f119c9d917f870e71b0320e4fd6d7e00c74657 + md5: a48352b21637abd3e40822c4e6eb5c56 depends: - python - __osx >=10.13 @@ -11684,12 +11706,12 @@ packages: license_family: MIT purls: - pkg:pypi/ruff?source=hash-mapping - size: 11286425 - timestamp: 1764866316890 -- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.14.8-h382de68_0.conda + size: 9136186 + timestamp: 1770153825397 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/ruff-0.15.0-h279115b_0.conda noarch: python - sha256: 97135a37ab2c55eac06d75569f08ff388af63ec1a0a2a122528b4951b8536027 - md5: f8c69cb8d0c9ac4ab0593926f21a2a3b + sha256: d0d55cd450f7e66b98aec49bd76e7476badeed78563988003766d4dd5c4850fa + md5: 67e036614accdbee477daac1ba2441b9 depends: - python - __osx >=11.0 @@ -11698,13 +11720,13 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/ruff?source=hash-mapping - size: 10302078 - timestamp: 1764866315123 -- conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.14.8-h15e3a1f_0.conda + - pkg:pypi/ruff?source=compressed-mapping + size: 8383076 + timestamp: 1770153856208 +- conda: https://conda.anaconda.org/conda-forge/win-64/ruff-0.15.0-h213852a_0.conda noarch: python - sha256: fbcaafffd55c7022464219b95658d38980ee04bb001d35c3d97e2e933d7c6bf7 - md5: 35ec53f16d22dc8b17e17865a98c2120 + sha256: 2a35ebac465ee4d278cb7ef9dd45672927652d64924bf59dc6044e98951ac3b5 + md5: 5a017ed8ef2bfb6e69cbf5a3e7eba820 depends: - python - vc >=14.3,<15 @@ -11713,9 +11735,9 @@ packages: license: MIT license_family: MIT purls: - - pkg:pypi/ruff?source=hash-mapping - size: 11874411 - timestamp: 1764866263950 + - pkg:pypi/ruff?source=compressed-mapping + size: 9623640 + timestamp: 1770153731442 - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.15.2-py310h1d65ade_0.conda sha256: 4cb98641f870666d365594013701d5691205a0fe81ac3ba7778a23b1cc2caa8e md5: 8c29cd33b64b2eb78597fa28b5595c8d @@ -11831,6 +11853,29 @@ packages: - pkg:pypi/scipy?source=hash-mapping size: 16864022 timestamp: 1763220800462 +- conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.17.0-py314hf07bd8e_1.conda + sha256: a95de421c586de901402107fbeb7524efaee5bb55c1aba2e1334f8b8ebc89093 + md5: c7df812186fb1290bc00d9b7b5a50b18 + depends: + - __glibc >=2.17,<3.0.a0 + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - libgcc >=14 + - libgfortran + - libgfortran5 >=14.3.0 + - liblapack >=3.9.0,<4.0a0 + - libstdcxx >=14 + - numpy <2.7 + - numpy >=1.23,<3 + - numpy >=1.25.2 + - python >=3.14,<3.15.0a0 + - python_abi 3.14.* *_cp314 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/scipy?source=hash-mapping + size: 17048277 + timestamp: 1768800950735 - conda: https://conda.anaconda.org/conda-forge/linux-aarch64/scipy-1.15.2-py310hf37559f_0.conda sha256: 4454218b1d3caa962e171ff5833bf0691e3f156098c4eab773a19115cada6426 md5: 5c9b72f10d2118d943a5eaaf2f396891 @@ -11946,6 +11991,29 @@ packages: - pkg:pypi/scipy?source=hash-mapping size: 16721982 timestamp: 1763220972980 +- conda: https://conda.anaconda.org/conda-forge/linux-aarch64/scipy-1.17.0-py314hd30f180_1.conda + sha256: a010e32acbf8e836b433302e97a6715f8b3721e4744c194fd1ff6c4a8486fbd2 + md5: f48548709e516f1463b62aa42bd629bc + depends: + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - libgcc >=14 + - libgfortran + - libgfortran5 >=14.3.0 + - liblapack >=3.9.0,<4.0a0 + - libstdcxx >=14 + - numpy <2.7 + - numpy >=1.23,<3 + - numpy >=1.25.2 + - python >=3.14,<3.15.0a0 + - python >=3.14,<3.15.0a0 *_cp314 + - python_abi 3.14.* *_cp314 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/scipy?source=hash-mapping + size: 16824294 + timestamp: 1768801165054 - conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.15.2-py310hef62574_0.conda sha256: da86efbfa72e4eb3e4748e5471d04fdbe3f9887f367b6302c1dcdb155bbf712b md5: e79860e43d87b020a0254f0b3f5017c5 @@ -12060,6 +12128,28 @@ packages: - pkg:pypi/scipy?source=hash-mapping size: 15325764 timestamp: 1763221416721 +- conda: https://conda.anaconda.org/conda-forge/osx-64/scipy-1.17.0-py313h2bd7e7a_1.conda + sha256: c30ec7d0e2571f6f2ddaddf3eb64e0e2e16e58c0a4f724f2ee2b894e0ce1a8e4 + md5: 076afc646e5b800ab4adece0310795db + depends: + - __osx >=10.13 + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - libcxx >=19 + - libgfortran + - libgfortran5 >=14.3.0 + - liblapack >=3.9.0,<4.0a0 + - numpy <2.7 + - numpy >=1.23,<3 + - numpy >=1.25.2 + - python >=3.13,<3.14.0a0 + - python_abi 3.13.* *_cp313 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/scipy?source=hash-mapping + size: 15299524 + timestamp: 1768800867425 - conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.15.2-py310h32ab4ed_0.conda sha256: f6ff2c1ba4775300199e8bc0331d2e2ccb5906f58f3835c5426ddc591c9ad7bf md5: a389f540c808b22b3c696d7aea791a41 @@ -12179,6 +12269,29 @@ packages: - pkg:pypi/scipy?source=hash-mapping size: 14084720 timestamp: 1763220862474 +- conda: https://conda.anaconda.org/conda-forge/osx-arm64/scipy-1.17.0-py314hfc1f868_1.conda + sha256: 7240afa19ba5a5fd66b8ad4270a17e2987940b5dddc6367c4a28a6bd62444547 + md5: 09978c420b2e017134c825c06250bf23 + depends: + - __osx >=11.0 + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - libcxx >=19 + - libgfortran + - libgfortran5 >=14.3.0 + - liblapack >=3.9.0,<4.0a0 + - numpy <2.7 + - numpy >=1.23,<3 + - numpy >=1.25.2 + - python >=3.14,<3.15.0a0 + - python >=3.14,<3.15.0a0 *_cp314 + - python_abi 3.14.* *_cp314 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/scipy?source=compressed-mapping + size: 13977639 + timestamp: 1768800961564 - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.15.2-py310h15c175c_0.conda sha256: f19350c2061b1cdc3151a33c3dd4f71a1a481f9b10ac186674f957814bc839bc md5: 81798168111d1021e3d815217c444418 @@ -12284,6 +12397,27 @@ packages: - pkg:pypi/scipy?source=hash-mapping size: 14937821 timestamp: 1763221198564 +- conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.17.0-py314h221f224_1.conda + sha256: 3e206736e3afce07be3f2f714518c0eff211f49e603b6aadb468e9d96ef4c420 + md5: 0f9edd5793da94f7ec58690abe25c8a2 + depends: + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - liblapack >=3.9.0,<4.0a0 + - numpy <2.7 + - numpy >=1.23,<3 + - numpy >=1.25.2 + - python >=3.14,<3.15.0a0 + - python_abi 3.14.* *_cp314 + - ucrt >=10.0.20348.0 + - vc >=14.3,<15 + - vc14_runtime >=14.44.35208 + license: BSD-3-Clause + license_family: BSD + purls: + - pkg:pypi/scipy?source=compressed-mapping + size: 15121680 + timestamp: 1768801838627 - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-80.9.0-pyhff2d567_0.conda sha256: 972560fcf9657058e3e1f97186cc94389144b46dbdf58c807ce62e83f977e863 md5: 4de79c071274a53dcaf2a8c749d1499e diff --git a/pyproject.toml b/pyproject.toml index 3c25e48..8e92286 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -9,8 +9,13 @@ description = "tools to work with electrochemical data" readme = "README.md" requires-python = ">=3.10.0" dependencies = [ "numpy>=2.0.3,<3", "transonic>=0.7.3,<0.9" ] + version = "0.1.0" +[project.optional-dependencies] +numba = ["numba"] +pythran = ["pythran"] + [tool.setuptools] packages = ["ec_tools",] @@ -19,13 +24,15 @@ channels = ["conda-forge"] platforms = ["linux-64", "linux-aarch64", "osx-64", "osx-arm64", "win-64"] [tool.pixi.environments] -python-310 = ["test", "python-310"] -python-311 = ["test", "python-311"] -python-312 = ["test", "python-312"] -python-313 = ["test", "python-313"] -python-314 = ["test", "python-314"] -benchmark = ["opt"] -dev = ["dev", "doc", "test", "benchmark", "lint"] +python-310 = ["test", "python-310", "numba", "pythran"] +python-311 = ["test", "python-311", "numba", "pythran"] +python-312 = ["test", "python-312", "numba", "pythran"] +python-313 = ["test", "python-313", "numba", "pythran"] +python-314 = ["test", "python-314", "numba", "pythran"] + +benchmark = ["benchmark", "numba", "pythran"] + +dev = ["dev", "doc", "test", "benchmark", "lint", "numba", "pythran"] [tool.pixi.dependencies] numpy = "*" @@ -50,18 +57,18 @@ python = "3.13.*" python = "3.14.*" [tool.pixi.feature.test.dependencies] -numba = "*" pytest = "*" pytest-xdist = "*" pytest-doctestplus = "*" -pythran = "*" scipy = "*" [tool.pixi.feature.test.tasks] doctest = "pytest -n auto --doctest-modules ec_tools" -[tool.pixi.feature.opt.dependencies] +[tool.pixi.feature.numba.dependencies] numba = "*" + +[tool.pixi.feature.pythran.dependencies] pythran = "*" [tool.pixi.feature.benchmark.dependencies] @@ -71,7 +78,7 @@ scipy = "*" benchmark = "TODO" [tool.pixi.feature.lint.dependencies] -ruff = ">=0.14.5,<0.15" +ruff = ">=0.15.0,<0.16" [tool.pixi.feature.lint.tasks] pylint = "ruff check ec_tools"