Skip to content

chore(ci): install Pillow so CI can run PIL-based icon tests - #5

Merged
lukisch merged 1 commit into
masterfrom
chore/ci-pillow-fix
Sep 26, 2026
Merged

lukisch merged 1 commit into
masterfrom
chore/ci-pillow-fix

Conversation

@lukisch

@lukisch lukisch commented Sep 26, 2026

Copy link
Copy Markdown
Collaborator

Kleiner Fix, wie von Team-Lead angefragt: CI war auf master rot, weil tests/test_assets_and_icons.py PIL importiert, die CI-Install-Zeile aber nur requirements.txt pytest ruff enthielt — nicht bedingt durch den Icon-Fix (#4), sondern vorbestehend. Gleicher Root Cause und Fix wie bei doc-bricks/CleanMarkdown.

  • .github/workflows/ci.yml: Pillow zur pip-install-Zeile ergänzt.
  • pyproject.toml: Pillow>=10.0 als optionale test-Abhängigkeit ergänzt.

Keine funktionale Änderung an App-Code, Icons oder Version.

tests/test_assets_and_icons.py imports PIL for icon/asset assertions but
the CI install line only had `requirements.txt pytest ruff` -- CI was
red on master for this reason (unrelated to the icon-fix content).
Same root cause and fix as doc-bricks/CleanMarkdown.
@github-actions

Copy link
Copy Markdown

Welcome! Thanks for your first pull request in this repository.

A maintainer will review it soon. Please make sure:

  • Your changes are tested
  • Documentation is updated if needed
  • The PR description explains what changed and why

Thanks for contributing.

@lukisch

lukisch commented Sep 26, 2026

Copy link
Copy Markdown
Collaborator Author

Review (merge-reviewer, claude-opus) auf Head 1321f58: Die Änderung ist korrekt und minimal (Pillow in CI und im test-Extra). Damit ist der Sammelfehler ModuleNotFoundError: PIL weg, und alle 367 Tests werden jetzt überhaupt ausgeführt. Die CI wird dadurch aber nicht grün. Es tauchen drei Fehler auf, die bisher hinter dem Sammelabbruch verborgen waren:

  1. Linux/macOS: tests/test_preview_panel_hardening.py::TestExcelPreviewExternalLaunch::test_open_extern_handles_os_error_gracefully scheitert (AttributeError, vermutlich os.startfile gibt es dort nicht → mit skipif oder monkeypatch absichern).
  2. Linux/macOS: Nach dem Testlauf stürzt Python mit Segmentation fault ab (Exit 139), davor steht QObject: shared QObject was deleted directly. Ein Qt-Teardown-Problem in einem Test.
  3. Windows: 365 passed / 2 skipped, trotzdem Exit 1 etwa 3 s nach dem Summary. Wahrscheinlich derselbe Teardown-Absturz.
    Empfehlung: Den PR mergen (er verschlechtert nichts und macht die Fehler erst sichtbar) und 1–3 als Folgeauftrag an den Autor geben.

@lukisch
lukisch merged commit 7cf3ed1 into master Sep 26, 2026
6 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant