From 0abf23f6e48e2e1f83d15b06b136974595338202 Mon Sep 17 00:00:00 2001 From: William Silversmith Date: Tue, 1 Jul 2025 20:07:46 -0400 Subject: [PATCH 1/6] ci: add windows support --- .github/workflows/python-package.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 23278e5..b20f39f 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -11,11 +11,11 @@ on: jobs: build: - - runs-on: ubuntu-latest strategy: + os: [ubuntu-latest, windows-latest] matrix: python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] + runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 From e384b5cdc44a997f505b3d59b4b9c4fa7edd799f Mon Sep 17 00:00:00 2001 From: William Silversmith Date: Tue, 1 Jul 2025 20:08:14 -0400 Subject: [PATCH 2/6] ci: run on non-master branches --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index b20f39f..7961177 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -5,7 +5,7 @@ name: Python package on: push: - branches: [ master ] + branches: * pull_request: branches: [ master ] From b1e99e847ad070758d765e4c8680fa86732d12ea Mon Sep 17 00:00:00 2001 From: William Silversmith Date: Tue, 1 Jul 2025 20:09:37 -0400 Subject: [PATCH 3/6] ci: fix syntax --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 7961177..e6cbfe8 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -5,7 +5,7 @@ name: Python package on: push: - branches: * + branches: [ "*" ] pull_request: branches: [ master ] From 958438e522a6efb8d398ee293e4992c0ad0dc802 Mon Sep 17 00:00:00 2001 From: William Silversmith Date: Tue, 1 Jul 2025 20:10:53 -0400 Subject: [PATCH 4/6] ci: fix syntax --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index e6cbfe8..1fce5ee 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -11,11 +11,11 @@ on: jobs: build: + runs-on: ${{ matrix.os }} strategy: os: [ubuntu-latest, windows-latest] matrix: python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] - runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 From 6cfec313f5674e95bcc314ed0d053d28d3bcbeec Mon Sep 17 00:00:00 2001 From: William Silversmith Date: Tue, 1 Jul 2025 20:11:50 -0400 Subject: [PATCH 5/6] ci: place os correctly --- .github/workflows/python-package.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 1fce5ee..742cbaa 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -13,8 +13,8 @@ jobs: build: runs-on: ${{ matrix.os }} strategy: - os: [ubuntu-latest, windows-latest] matrix: + os: [ubuntu-latest, windows-latest] python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] steps: From ea1ad69c99ecb4091adbc6ab6732f72555d65e17 Mon Sep 17 00:00:00 2001 From: William Silversmith Date: Tue, 1 Jul 2025 20:13:33 -0400 Subject: [PATCH 6/6] ci: test windows --- .github/workflows/python-package.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 742cbaa..78215d1 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -23,10 +23,20 @@ jobs: uses: actions/setup-python@v2 with: python-version: ${{ matrix.python-version }} - - name: Install dependencies + + - name: Install dependencies (Linux/macOS) + if: runner.os != 'Windows' run: | python -m pip install --upgrade pip if [ -f requirements.txt ]; then pip install -r requirements.txt -r requirements_dev.txt; fi + + - name: Install dependencies (Windows) + if: runner.os == 'Windows' + run: | + python -m pip install --upgrade pip + if (Test-Path requirements.txt) { pip install -r requirements.txt -r requirements_dev.txt } + shell: pwsh + - name: Test with pytest run: | python -m pytest -v -x test