diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index b6f028d..36439cf 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -8,7 +8,7 @@ on: types: [opened, synchronize, reopened] env: - MIN_PYTHON_VERSION: "3.8" + MIN_PYTHON_VERSION: "3.9" defaults: @@ -79,7 +79,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] os: ["ubuntu-latest", "macos-14", "windows-latest"] steps: - uses: actions/checkout@v4 @@ -116,7 +116,7 @@ jobs: matrix: # Only testing the build on the smallest supported Python version # since we're building abi3 wheels - python-version: ["3.8"] + python-version: ["3.9"] os: ["ubuntu-latest", "macos-14", "windows-latest"] architecture: [x86-64, aarch64] exclude: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f30a58e..2c2aea6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: ["3.8"] + python-version: ["3.9"] architecture: [x86-64, aarch64] steps: - uses: actions/checkout@v4 @@ -32,7 +32,7 @@ jobs: runs-on: macos-14 strategy: matrix: - python-version: ["3.8"] + python-version: ["3.9"] architecture: [x86-64, aarch64] steps: - uses: actions/checkout@v4 @@ -53,7 +53,7 @@ jobs: strategy: matrix: # amd64 only for windows, as no arm64 runners are available - python-version: ["3.8"] + python-version: ["3.9"] steps: - uses: actions/checkout@v4 - name: build (release) @@ -90,34 +90,34 @@ jobs: runs-on: ubuntu-latest needs: [linux, macos, windows, sdist] steps: - - name: Download Linux 3.8 wheels for x86-64 + - name: Download Linux 3.9 wheels for x86-64 uses: actions/download-artifact@v4 with: - name: "wheels-linux-python-3.8-x86-64" + name: "wheels-linux-python-3.9-x86-64" path: wheels-linux - - name: Download Linux 3.8 wheels for aarch64 + - name: Download Linux 3.9 wheels for aarch64 uses: actions/download-artifact@v4 with: - name: "wheels-linux-python-3.8-aarch64" + name: "wheels-linux-python-3.9-aarch64" path: wheels-linux - - name: Download MacOS 3.8 wheels for x86-64 + - name: Download MacOS 3.9 wheels for x86-64 uses: actions/download-artifact@v4 with: - name: "wheels-macos-python-3.8-x86-64" + name: "wheels-macos-python-3.9-x86-64" path: wheels-macos - - name: Download MacOS 3.8 wheels for aarch64 + - name: Download MacOS 3.9 wheels for aarch64 uses: actions/download-artifact@v4 with: - name: "wheels-macos-python-3.8-aarch64" + name: "wheels-macos-python-3.9-aarch64" path: wheels-macos - - name: Download Windows 3.8 wheels + - name: Download Windows 3.9 wheels uses: actions/download-artifact@v4 with: - name: "wheels-windows-python-3.8" + name: "wheels-windows-python-3.9" path: wheels-windows - name: Download sdist diff --git a/Cargo.toml b/Cargo.toml index 0693ae5..2a2ae3c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,7 +29,7 @@ arrow = { version = "53.2.0", default-features = false, features = ["pyarrow"] } calamine = { version = "0.26.1", features = ["dates"] } chrono = { version = "0.4.39", default-features = false } log = "0.4.22" -pyo3 = { version = "0.22.6", features = ["abi3-py38"] } +pyo3 = { version = "0.22.6", features = ["abi3-py39"] } pyo3-log = "0.11.0" [dev-dependencies] diff --git a/README.md b/README.md index 7521149..8450cf3 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Docs available [here](https://fastexcel.toucantoco.dev/). ### Prerequisites -Python>=3.8 and a recent Rust toolchain must be installed on your machine. `cargo` must be available in your `PATH`. +Python>=3.9 and a recent Rust toolchain must be installed on your machine. `cargo` must be available in your `PATH`. ### First setup diff --git a/pyproject.toml b/pyproject.toml index c39ca92..732a69e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,7 +7,7 @@ name = "fastexcel" description = "A fast excel file reader for Python, written in Rust" readme = "README.md" license = { file = "LICENSE" } -requires-python = ">=3.8" +requires-python = ">=3.9" classifiers = [ "Development Status :: 5 - Production/Stable", "License :: OSI Approved :: MIT License", @@ -16,7 +16,6 @@ classifiers = [ "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", @@ -44,7 +43,7 @@ module-name = "fastexcel._fastexcel" features = ["pyo3/extension-module"] [tool.mypy] -python_version = "3.8" +python_version = "3.9" follow_imports = "silent" ignore_missing_imports = true # A few custom options @@ -60,7 +59,7 @@ log_cli_level = "INFO" [tool.ruff] line-length = 100 -target-version = "py38" +target-version = "py39" [tool.ruff.lint] # Enable Pyflakes `E` and `F` codes by default.