diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 90e05c4..1e36725 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -9,3 +9,11 @@ updates: directory: "/" # Location of package manifests schedule: interval: "weekly" + - package-ecosystem: "Cargo" + directory: "/" + schedule: + interval: "monthly" + groups: + rust: # group all rust deps into a single PR + patterns: + - "*" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a02cbf3..a43acb1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,13 +36,14 @@ jobs: - run: cargo test core: + needs: [rust] uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@main with: submodules: false coverage: codecov toxdeps: tox-pypi-filter envs: | - - linux: py312 + - linux: py313 secrets: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} @@ -68,6 +69,7 @@ jobs: envs: | - windows: py311 - macos: py310 + - linux: py312 - linux: py310-oldestdeps secrets: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} @@ -123,18 +125,20 @@ jobs: test_command: 'pytest -p no:warnings --doctest-rst --pyargs streamtracer' submodules: false targets: | - - cp3{10,11,12}-manylinux_x86_64 - - cp3{10,11,12}-musllinux_x86_64 - - cp3{10,11,12}-macosx_x86_64 - - cp3{10,11,12}-macosx_arm64 - - cp3{10,11,12}-win_amd64 + - cp3{10,11,12,13}-manylinux_x86_64 + - cp3{10,11,12,13}-musllinux_x86_64 + - cp3{10,11,12,13}-macosx_x86_64 + - cp3{10,11,12,13}-macosx_arm64 + - cp3{10,11,12,13}-win_amd64 # Build aarch64 one wheel per job as they be slow - cp310-musllinux_aarch64 - cp311-musllinux_aarch64 - cp312-musllinux_aarch64 + - cp313-musllinux_aarch64 - cp310-manylinux_aarch64 - cp311-manylinux_aarch64 - cp312-manylinux_aarch64 + - cp313-manylinux_aarch64 secrets: pypi_token: ${{ secrets.pypi_token }} diff --git a/Cargo.toml b/Cargo.toml index cb239b4..a2801a0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,12 +10,12 @@ name = "streamtracer" crate-type = ["cdylib"] [dependencies] -pyo3 = {version = "0.21", features = ["extension-module"]} -numpy = "0.21" +pyo3 = {version = "0.22", features = ["extension-module"]} +numpy = "0.22" # I think this should follow the pyo3 version, but it can be slow to release num-traits = "0.2" num-derive = "0.4" -rayon = "1.8" -ndarray = {version = "0.15", features = ["rayon"]} +rayon = "1.10" +ndarray = {version = "0.16", features = ["rayon"]} [dev-dependencies] float_eq = "1.0.0" diff --git a/pyproject.toml b/pyproject.toml index ad67b11..106a998 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,6 +26,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Topic :: Scientific/Engineering :: Physics", ] version = "2.2.0" diff --git a/tox.ini b/tox.ini index f058908..e079227 100644 --- a/tox.ini +++ b/tox.ini @@ -3,7 +3,7 @@ min_version = 4.0 requires = tox-pypi-filter>=0.14 envlist = - py{310,311,312} + py{310,311,312,313} py312-devdeps py310-oldestdeps codestyle