Skip to content

Commit fc34f72

Browse files
Lukas Geigerclaude
andcommitted
ci: add source-platform smoke for macOS and Linux
Adds .github/workflows/source-platform-smoke.yml running the existing unittest suite on ubuntu-latest and macos-latest with QT_QPA_PLATFORM=offscreen. The git-diff parsing in get_modified_lines() is platform-neutral; the known flaky test is Windows-specific (CRLF drift) and should pass clean on Linux/macOS. Also excludes docs/superpowers/ from .gitignore. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 4f2b420 commit fc34f72

2 files changed

Lines changed: 53 additions & 1 deletion

File tree

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: PythonBox source-platform smoke
2+
3+
on:
4+
push:
5+
branches: [master]
6+
pull_request:
7+
branches: [master]
8+
workflow_dispatch:
9+
10+
jobs:
11+
smoke:
12+
name: Smoke (${{ matrix.os }})
13+
runs-on: ${{ matrix.os }}
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
os: [ubuntu-latest, macos-latest]
18+
19+
env:
20+
QT_QPA_PLATFORM: offscreen
21+
PYTHONIOENCODING: utf-8
22+
23+
steps:
24+
- uses: actions/checkout@v4
25+
26+
- name: Set up Python
27+
uses: actions/setup-python@v5
28+
with:
29+
python-version: "3.11"
30+
31+
- name: Install system Qt libs (Linux only)
32+
if: runner.os == 'Linux'
33+
run: |
34+
sudo apt-get update -qq
35+
sudo apt-get install -y --no-install-recommends \
36+
libgl1 libegl1 libglib2.0-0 libdbus-1-3 \
37+
libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 \
38+
libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 \
39+
libxcb-xinerama0 libxcb-xfixes0
40+
41+
- name: Install PySide6
42+
run: pip install "PySide6>=6.5.0"
43+
44+
- name: Run test suite
45+
run: python -m unittest discover -s tests -v

.gitignore

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Python
1+
# Python
22
__pycache__/
33
*.py[cod]
44
*$py.class
@@ -54,6 +54,7 @@ releases/
5454
*.msix
5555
*.appx
5656
*.spec
57+
!PythonBox.spec
5758

5859
# Internal project management
5960
AUFGABEN.txt
@@ -101,3 +102,9 @@ ehthumbs.db
101102

102103
# Local agent config
103104
.claude/
105+
docs/superpowers/
106+
# ---- Interne Steuerungsdateien ----
107+
DECISIONS.md
108+
PORTIERUNGSPLAN.md
109+
TODO.md
110+
DONE.md

0 commit comments

Comments
 (0)