Skip to content

Commit dcff5ee

Browse files
Run CI using dependencies from GH master branches
This should allow us to spot upcoming issues before releases are made. Done as part of a request from Michael Davidsaver.
1 parent 333fbfc commit dcff5ee

File tree

1 file changed

+32
-3
lines changed

1 file changed

+32
-3
lines changed

.github/workflows/code.yml

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ jobs:
5656
os: [ubuntu-latest, windows-latest, macos-13]
5757
python: [cp37, cp38, cp39, cp310, cp311, cp312]
5858

59-
6059
include:
6160
# Put coverage and results files in the project directory for mac
6261
- os: macos-13
@@ -128,9 +127,7 @@ jobs:
128127
matrix:
129128
os: [ubuntu-latest, windows-latest, macos-13]
130129
python: [cp37, cp38, cp39, cp310, cp311, cp312]
131-
132130
runs-on: ${{ matrix.os }}
133-
134131
steps:
135132
- uses: actions/download-artifact@v4
136133
with:
@@ -167,3 +164,35 @@ jobs:
167164
TWINE_USERNAME: __token__
168165
TWINE_PASSWORD: ${{ secrets.pypi_token }}
169166
run: pipx run twine upload dist/*
167+
168+
# Check that the master branches of various upstream dependencies are
169+
# still compatible when used together
170+
master_branch_test:
171+
if: ${{ github.event_name == 'schedule' }}
172+
runs-on: "ubuntu-latest"
173+
steps:
174+
- name: Checkout Source
175+
uses: actions/checkout@v4
176+
with:
177+
# require history to get back to last tag for version number of branches
178+
fetch-depth: 0
179+
submodules: true
180+
181+
- name: Install Python
182+
uses: actions/setup-python@v4
183+
with:
184+
python-version: "3.12"
185+
186+
- name: Install master versions
187+
# Note the install order here: By installing p4p first, then pvxs and epicscorelibs using the --no-warn-conflicts
188+
# flag, we can bypass the dependency mismatch which would otherwise be present. We know that the master branches
189+
# *should* always work together, so it's ok to ignore the warnings.
190+
run: |
191+
pip install git+https://github.com/epics-base/p4p.git git+https://github.com/epics-base/pvxs.git git+https://github.com/epics-base/epicscorelibs.git
192+
pip install git+https://github.com/DiamondLightSource/aioca git+https://github.com/DiamondLightSource/cothread
193+
pip install -e .[dev]
194+
pip freeze
195+
196+
- name: Run tests
197+
run: |
198+
python -m pytest

0 commit comments

Comments
 (0)