Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 26 additions & 2 deletions .github/workflows/check-python-code.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,22 @@ concurrency:

jobs:
check:
name: Check
name: Check (${{ matrix.resolution }}, py${{ matrix.python }})
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
# Default resolution exercises the committed lock against every
# supported Python minor version. The lowest-direct cell pins each
# direct dependency to its declared floor (see UV_RESOLUTION below)
# and runs only on the Python floor.
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
Comment thread
lowlydba marked this conversation as resolved.
resolution: [default]
include:
- python: "3.10"
resolution: lowest-direct

permissions:
contents: read

Expand All @@ -41,7 +54,18 @@ jobs:
- name: Set up Python
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
with:
python-version: "3.10"
python-version: ${{ matrix.python }}

# UV_RESOLUTION=lowest-direct makes `uv sync` re-resolve every direct
# dependency to the lowest version permitted by pyproject.toml. This
# exercises the declared floor (e.g. pydantic==2.12.0) instead of
# whatever the committed lock happens to point at. Failures here mean
# a direct dep's minimum needs to be bumped. Set via GITHUB_ENV only
# in the relevant cell so default cells run with no UV_RESOLUTION at
# all -- otherwise an empty value is rejected by uv.
- name: Configure resolution
if: matrix.resolution == 'lowest-direct'
run: echo "UV_RESOLUTION=lowest-direct" >> "$GITHUB_ENV"

- name: Run make check
run: make check
2 changes: 1 addition & 1 deletion packages/overture-schema-addresses-theme/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ maintainers = [
]
dependencies = [
"overture-schema-core",
"pydantic>=2.0",
"pydantic>=2.12.0",
]
description = "Overture Maps addresses theme models and structures"
dynamic = ["version"]
Expand Down
2 changes: 1 addition & 1 deletion packages/overture-schema-annex/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
maintainers = [
{name = "Overture Maps Schema Working Group"},
]
dependencies = ["overture-schema-core", "pydantic>=2.0"]
dependencies = ["overture-schema-core", "pydantic>=2.12.0"]
description = "Add your description here"
dynamic = ["version"]
license = "MIT"
Expand Down
2 changes: 1 addition & 1 deletion packages/overture-schema-base-theme/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ maintainers = [
dependencies = [
"overture-schema-core",
"overture-schema-system",
"pydantic>=2.0",
"pydantic>=2.12.0",
]
description = "Overture Maps base theme shared structures and models (bathymetry, infrastructure, land, land_cover, land_use, water)"
dynamic = ["version"]
Expand Down
2 changes: 1 addition & 1 deletion packages/overture-schema-buildings-theme/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ maintainers = [
dependencies = [
"overture-schema-core",
"overture-schema-system",
"pydantic>=2.0",
"pydantic>=2.12.0",
]
description = "Overture Maps buildings theme shared structures, building types, and building part types"
dynamic = ["version"]
Expand Down
8 changes: 4 additions & 4 deletions packages/overture-schema-cli/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ maintainers = [
dependencies = [
"overture-schema-core",
"overture-schema-system",
"pydantic>=2.0",
"pydantic>=2.12.0",
"pyyaml>=6.0.2",
"click>=8.0",
"rich>=13.0",
Expand Down Expand Up @@ -33,9 +33,9 @@ requires = ["hatchling"]

[dependency-groups]
dev = [
"pytest>=7.0",
"ruff",
"mypy",
"pytest>=9.0.0",
"ruff>=0.13.0",
"mypy>=1.17.0",
]

[tool.hatch.version]
Expand Down
2 changes: 1 addition & 1 deletion packages/overture-schema-core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ description = "Core schemas for Overture Maps"
license = "MIT"
dependencies = [
"overture-schema-system",
"pydantic>=2.0",
"pydantic>=2.12.0",
"shapely>=2.1.1",
]

Expand Down
2 changes: 1 addition & 1 deletion packages/overture-schema-divisions-theme/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ maintainers = [
dependencies = [
"overture-schema-core",
"overture-schema-system",
"pydantic>=2.0",
"pydantic>=2.12.0",
]
description = "Overture Maps divisions theme shared structures, division, division area and division boundary types"
dynamic = ["version"]
Expand Down
3 changes: 1 addition & 2 deletions packages/overture-schema-places-theme/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@ maintainers = [
dependencies = [
"overture-schema-core",
"overture-schema-system",
"pydantic>=2.0",
"pydantic[email]",
"pydantic[email]>=2.12.0",
]
description = "Overture Maps places theme with place type models"
dynamic = ["version"]
Expand Down
8 changes: 4 additions & 4 deletions packages/overture-schema-system/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ readme = "README.md"
requires-python = ">=3.10"
license = "MIT"
dependencies = [
"pydantic>=2.0.0",
"pydantic>=2.12.0",
"shapely>=2.0.0",
]

Expand All @@ -24,9 +24,9 @@ Issues = "https://github.com/OvertureMaps/schema/issues"

[dependency-groups]
dev = [
"pytest>=7.0",
"ruff",
"mypy",
"pytest>=9.0.0",
"ruff>=0.13.0",
"mypy>=1.17.0",
]

[tool.hatch.version]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ maintainers = [
dependencies = [
"overture-schema-core",
"overture-schema-system",
"pydantic>=2.0",
"pydantic>=2.12.0",
]
description = "Overture Maps transportation theme with shared structures and connector and segment types"
dynamic = ["version"]
Expand Down
6 changes: 3 additions & 3 deletions packages/overture-schema/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ dependencies = [
"overture-schema-places-theme",
"overture-schema-transportation-theme",
"overture-schema-core",
"pydantic>=2.0",
"pydantic>=2.12.0",
"pyyaml>=6.0.2",
"overture-schema-cli",
]
Expand Down Expand Up @@ -42,8 +42,8 @@ requires = ["hatchling"]

[dependency-groups]
dev = [
"pyyaml",
"deepdiff",
"pyyaml>=6.0.2",
"deepdiff>=8.6.0",
"yamlcore>=0.0.4",
]

Expand Down
4 changes: 2 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ dev = [
"mypy>=1.17.0",
"pdoc>=15.0.4",
"pydocstyle>=6.3.0",
"pytest>=8.4.1",
"pytest>=9.0.0",
"pytest-cov>=7.0.0",
"ruff>=0.12.4",
"ruff>=0.13.0",
]

[tool.pytest.ini_options]
Expand Down
Loading
Loading