Skip to content

Commit ab31c35

Browse files
committed
drop python 3.10
1 parent bbac59a commit ab31c35

6 files changed

Lines changed: 1568 additions & 3423 deletions

File tree

.github/workflows/publish.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
- name: Set up Python
2525
uses: actions/setup-python@v6.2.0
2626
with:
27-
python-version: "3.10"
27+
python-version: "3.11"
2828
- name: Install uv
2929
run: make setup
3030
- name: Publish stac-model to PyPI

.github/workflows/stac-model.yml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
runs-on: ubuntu-latest
88
strategy:
99
matrix:
10-
python-version: ["3.10", "3.11", "3.12", "3.13"]
10+
python-version: ["3.11", "3.12", "3.13"]
1111
env:
1212
COVERAGE_FILE: .coverage.${{ matrix.python-version }}
1313

@@ -27,19 +27,13 @@ jobs:
2727
path: .venv
2828
key: venv-${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }}-${{ hashFiles('uv.lock') }}
2929

30-
- name: Install dependencies
31-
run: make install-dev
32-
if: ${{ matrix.python-version == '3.10' }}
33-
3430
- name: Install dependencies with extras
3531
run: make install-dev-extras
36-
if: ${{ matrix.python-version != '3.10' }}
3732

3833
- name: Display Packages
3934
run: pip list
4035

4136
- name: Run checks
42-
if: ${{ matrix.python-version != '3.10' }}
4337
run: make lint-all
4438

4539
- name: Run tests

CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2222

2323
### Removed
2424

25-
- n/a
25+
- **BREAKING**: `stac-model>=0.6.0` drops Python 3.10 support. Python 3.11+ is now required.
26+
- Removed Python 3.10 from CI test matrix.
27+
- Removed Python 3.10 specific dependency constraints for `torch`, `torchgeo`, and `torchvision`.
28+
- Updated minimum Python version from `>=3.10` to `>=3.11`.
29+
- **Note**: This affects only the `stac-model` package versioning. The MLM specification itself (v1.5.x)
30+
remains independently versioned and does not indicate Python version requirements.
2631

2732
### Fixed
2833

README_STAC_MODEL.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,21 @@
2020

2121
</div>
2222

23+
## Python Version Support
24+
25+
> [!NOTE]
26+
> `stac-model` package versions and MLM specification versions are independently managed.
27+
>
28+
> - **MLM Extension Specification**: Versioned as `vX.Y.Z` (e.g., `v1.5.1`)
29+
> - **stac-model Package**: Versioned as `stac-model-vX.Y.Z` (e.g., `stac-model-v0.5.2`)
30+
31+
**Python Version Compatibility:**
32+
33+
| `stac-model` Version | Python Version |
34+
|----------------------| -------------- |
35+
| `>=0.6.0` | 3.11+ |
36+
| `<0.6.0` | 3.10+ |
37+
2338
## Installation
2439

2540
```shell

pyproject.toml

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ authors = [
1111
{ name = "Francis Charette-Migneault", email = "francis.charette-migneault@crim.ca" },
1212
]
1313
license = { text = "Apache Software License 2.0" }
14-
requires-python = "<4.0,>=3.10"
14+
requires-python = "<4.0,>=3.11"
1515
dependencies = [
1616
"typer<1.0.0,>=0.9.0",
1717
"rich>=13.7.0,<16.0.0",
@@ -23,17 +23,15 @@ dependencies = [
2323
"pip>=25.0.0",
2424
]
2525
optional-dependencies.torch = [
26-
"torch>=2.8.0; python_version>='3.11'",
27-
"torchgeo<0.8.0; python_version=='3.10'",
28-
"torchgeo>=0.8.1; python_version>='3.11'",
29-
"torchvision>=0.21,<1; python_version>='3.11'"
26+
"torch>=2.8.0",
27+
"torchgeo>=0.8.1",
28+
"torchvision>=0.21,<1"
3029
]
3130
optional-dependencies.torch-cu126 = [
32-
"pytorch-triton; python_version>='3.11'",
33-
"torch>=2.8.0; python_version>='3.11'",
34-
"torchgeo<0.8.0; python_version=='3.10'",
35-
"torchgeo>=0.8.1; python_version>='3.11'",
36-
"torchvision>=0.21,<1; python_version>='3.11'",
31+
"pytorch-triton",
32+
"torch>=2.8.0",
33+
"torchgeo>=0.8.1",
34+
"torchvision>=0.21,<1",
3735
]
3836

3937
# important: leave the name and version together for bump resolution
@@ -53,7 +51,6 @@ classifiers = [
5351
"Topic :: Software Development :: Libraries :: Python Modules",
5452
"License :: OSI Approved :: Apache Software License",
5553
"Programming Language :: Python :: 3",
56-
"Programming Language :: Python :: 3.10",
5754
"Programming Language :: Python :: 3.11",
5855
"Programming Language :: Python :: 3.12",
5956
"Programming Language :: Python :: 3.13",
@@ -271,7 +268,7 @@ extra-standard-library = ["typing_extensions"]
271268
[tool.mypy]
272269
# https://github.com/python/mypy
273270
# https://mypy.readthedocs.io/en/latest/config_file.html#using-a-pyproject-toml-file
274-
python_version = "3.10"
271+
python_version = "3.11"
275272
pretty = true
276273
show_traceback = true
277274
color_output = true

0 commit comments

Comments
 (0)