Skip to content

Commit 566d794

Browse files
Add highest and lowest dependency testing in CI
1 parent b92afd3 commit 566d794

File tree

4 files changed

+573
-414
lines changed

4 files changed

+573
-414
lines changed

.github/workflows/ci.yml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ on:
99
jobs:
1010
lint:
1111
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
resolution: [highest, lowest-direct]
1215
steps:
1316
- name: Check out repository code
1417
uses: actions/checkout@v5
@@ -18,21 +21,22 @@ jobs:
1821
# Use oldest supported Python version for linting to ensure compatibility
1922
python-version: "3.10"
2023
- name: Install dependencies
21-
run: uv sync --dev
24+
run: uv sync --dev --resolution=${{ matrix.resolution }}
2225
- name: Run ruff linting
23-
run: uv run ruff check
26+
run: uv run --no-sync ruff check
2427
- name: Check code formatting
25-
run: uv run ruff format --check
28+
run: uv run --no-sync ruff format --check
2629
- name: Run mypy type checking
27-
run: uv run mypy .
30+
run: uv run --no-sync mypy .
2831

2932
test:
30-
name: Test Python ${{ matrix.python-version }}
33+
name: Test Python ${{ matrix.python-version }} - ${{ matrix.resolution }}
3134
runs-on: ubuntu-latest
3235
strategy:
3336
fail-fast: false
3437
matrix:
3538
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
39+
resolution: [highest, lowest-direct]
3640

3741
steps:
3842
- name: Check out repository code
@@ -44,7 +48,7 @@ jobs:
4448
python-version: ${{ matrix.python-version }}
4549

4650
- name: Install dependencies
47-
run: uv sync --dev
51+
run: uv sync --dev --resolution=${{ matrix.resolution }}
4852

4953
- name: Run tests
50-
run: uv run pytest
54+
run: uv run --no-sync pytest

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1313

1414
### Changed
1515
- Replaced `Make` with `just` for development commands
16+
- Relaxed dependency version requirements.
1617

1718
### Deprecated
1819
- `CSVDataFeed` - Use `PolarsDataFeed` instead for loading data from CSV files

pyproject.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ classifiers = [
3030
'Topic :: Software Development',
3131
]
3232
dependencies = [
33-
"httpx>=0.28.1",
34-
"polars>=1.35.2",
35-
"plotly>=5.18.0",
33+
"httpx>=0.28.0",
34+
"polars>=1.0.0",
35+
"plotly>=5.0.0",
3636
"python-dotenv>=1.0.0",
37-
"typing-extensions>=4.15.0",
37+
"typing-extensions>=4.6.0",
3838
]
3939

4040
[project.urls]
@@ -75,11 +75,11 @@ pythonpath = ["."]
7575

7676
[dependency-groups]
7777
dev = [
78-
"mkdocs-material>=9.6.21",
78+
"mkdocs-material>=9.7.1",
7979
"mkdocstrings[python]>=0.24.0",
8080
"mypy>=1.18.2",
8181
"plotly-stubs>=0.0.6",
82-
"pytest>=8.4.2",
82+
"pytest>=9.0.0",
8383
"pytest-cov>=7.0.0",
8484
"pytest-httpx>=0.35.0",
8585
"ruff>=0.14.0",

0 commit comments

Comments
 (0)