Der Fehler
Das Release 1.7.0 war angelegt, die EXE hing dran - und der Updater haette
trotzdem nie etwas gefunden. Der Anhang hiess "Rechnungstool-1.7.0.exe",
gesucht wird aber "Rechnungstool.exe" (version.EXE_NAME). Die Nummer kommt
erst beim Ablegen dazu.
Das Tueckische: nichts schlaegt fehl. Der Updater meldet freundlich
"Aktuell. Kein Update noetig." und startet die alte Fassung. Ein Update,
das stumm nie ankommt, ist schlimmer als eines, das laut scheitert.
Zweiter Fund derselben Runde: die Pruefsummen standen nur im Release-TEXT.
Der Updater liest sie aus einer angehaengten Datei <exe>.sha256. Ohne die
prueft er nur die Groesse - und eine verfaelschte Datei hat genau die
richtige Groesse.
bauen.py legt jetzt release/ an
Genau die vier Dateien, die ans Release gehoeren, unter genau den Namen,
unter denen der Updater sie sucht. Damit haengt niemand mehr etwas
Falsches an.
pruef_release.py
Prueft gegen das echte Repository: gibt es zur Nummer aus version.py ein
Release, heisst der Anhang exakt wie EXE_NAME, haengt die Pruefsumme dran,
ist es die der zuletzt gebauten Datei - und findet passendes_release() es
auch. Ohne Netz wird uebersprungen statt rot gemeldet.
muster/ ist raus
Der Gast darin ist erfunden, der Betrieb nicht: IBAN, Steuernummer und die
private Rufnummer des Auftraggebers stehen im Briefkopf. In ein
oeffentliches Repository gehoert das nicht.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V4t48uxDok5rJXhC9bX1Ax
Logo
Das Programmlogo steht jetzt klein neben "powered by ravokk" - dort sitzt
die Kennung des Werkzeugs, nicht die des Kunden. Eine eigene Kopfzeile hat
dieses Programm nicht; oben sind die Reiter.
bauen.py
Der Weg von der Quelle zur Setup-Datei war eine Folge von Befehlen, die
jemand von Hand eintippen musste. Wer einen Schritt vergisst, liefert eine
Setup-Datei mit einer alten EXE aus - und sieht es ihr nicht an. Genau das
ist heute passiert. Jetzt ist es ein Befehl, die Nummer kommt aus
version.py, und am Ende stehen die SHA256-Summen fuer den Release-Text.
pruef_start_exe.py
Prueft, was kein anderer Pruefstand prueft: ob die GEBAUTE EXE ein
sichtbares Fenster zeigt. Alle uebrigen fahren das Programm aus der Quelle,
dort trat der Fehler nie auf. "Der Prozess laeuft" beweist dabei nichts -
er lief ja, waehrend nichts zu sehen war.
Aufgeraeumt
"Rechnung Campinghof.exe" ist weg; gebaute Dateien gehoeren ins Release,
nicht ins Repo. Die .spec-Dateien dagegen schon: ohne sie kann niemand die
EXE nachbauen, die der Updater ausliefert.
Fassung 1.7.0.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V4t48uxDok5rJXhC9bX1Ax