aa9918adba
v0.6.0 hat ocrmypdf auf 16.13.0 gepinnt, um einen ungewollten Major-Sprung
zu verhindern. Auf Bestandsinstallationen war das ein DOWNGRADE (dort lief
via ">=16.0" bereits 17.x) — und 16.13.0 bricht auf Debian 12 mit dem
Bord-Ghostscript 10.0.0 bei JEDER PDF ab, sobald skip_text gesetzt ist.
Im Test auf CT 200 lief das Update mit Exit 0 durch, der Dienst blieb
"active", --check-config meldete "Preflight ok" — und jede Datei landete
in error/. Stiller Totalausfall.
- requirements.txt: ocrmypdf==17.4.1 (real auf Debian 12 + gs 10.0.0
verifiziert). Ab 17.0.0 steht die GS-Pruefung in ocrmypdf unter einem
`if options.output_type.startswith('pdfa')`; bis 16.x lief sie ohne
diesen Guard und schlug auch bei output_type="pdf" zu.
- check_preflight() prueft Ghostscript nicht mehr nur bei gesetztem
pdfa_level, sondern bildet die reale Bedingung ab:
betroffene GS-Version UND skip_text UND (PDF/A ODER ocrmypdf < 17).
Der Dienst bricht damit beim Start ab statt bei der ersten Datei.
- update.sh zeigt Versionsspruenge der gepinnten Pakete; Downgrades als
WARN, auch in der Abschluss-Zusammenfassung.
- update.sh faehrt nach dem Start einen Rauchtest (eingebettete Mini-PDF
durch die echte Pipeline) und raeumt restlos auf. Uebersprungen, wenn
Upload-Ziele oder E-Mail-Notify aktiv sind, damit kein Testmuell zum
Kunden geht. Abschaltbar mit --no-smoke-test.
- Doku korrigiert: pdfa_level = "" allein ist keine Entwarnung, die haengt
an der ocrmypdf-Version.
152 Tests gruen.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
25 lines
1.3 KiB
Plaintext
25 lines
1.3 KiB
Plaintext
# Feste Pins: ein Update darf nicht ungefragt einen Major-Sprung einziehen
|
|
# (der naechste waere ocrmypdf 18 — der reisst sonst alle Instanzen auf einmal).
|
|
# Geprueft gegen Python 3.11 (Debian 12) und 3.13 (Debian 13) — fuer beide
|
|
# gibt es fertige Wheels, es wird nichts kompiliert.
|
|
# Beim Anheben: update.sh --rebuild-venv auf einer Testmaschine fahren.
|
|
#
|
|
# ocrmypdf: MUSS 17.x sein, 16.x ist fuer uns unbrauchbar (v0.6.1).
|
|
# In ocrmypdf 16.x laeuft die Ghostscript-Pruefung in
|
|
# builtin_plugins/ghostscript.py:check_options() BEDINGUNGSLOS, also auch bei
|
|
# output_type="pdf". Auf Debian 12 (Ghostscript 10.0.0) bricht damit
|
|
# JEDE PDF ab, sobald skip_text=true gesetzt ist — und das ist unser Default:
|
|
# if Version('10.0.0') <= gs_version < Version('10.02.1') and (
|
|
# options.skip_text or options.redo_ocr
|
|
# ): raise MissingDependencyError(...)
|
|
# Ab 17.0.0 steckt genau dieser Block in einem
|
|
# `if options.output_type.startswith('pdfa'):` — bei pdfa_level = "" wird
|
|
# Ghostscript gar nicht erst angefasst und die Pruefung greift nicht mehr.
|
|
# Deshalb hier 17.x. 17.4.1 ist die im Feld auf Debian 12 + gs 10.0.0
|
|
# verifizierte Version; 17.12.1 traegt denselben Guard und waere der
|
|
# naechste Kandidat, ist aber noch nicht auf einer Testmaschine gefahren.
|
|
ocrmypdf==17.4.1
|
|
watchdog==6.0.0
|
|
requests==2.33.1
|
|
paramiko==4.0.0
|