From 9f0ae127943412bf37ec6edb8dfaba4eb1acbd75 Mon Sep 17 00:00:00 2001 From: cjjohn <72096478+Grovy311@users.noreply.github.com> Date: Fri, 14 Aug 2026 23:55:41 +0200 Subject: [PATCH] Keep build_and_deploy.ps1 deploying to %LOCALAPPDATA%, document upstream cherry-picks Cherry-picked commits from Julian Appel's dev/jappel branch changed the default deploy target to $projectDir\dist\VersaPadViewer. Revert just that to %LOCALAPPDATA%\VersaPadViewer, which is where the actually installed/running instance on this machine lives -- switching would orphan the existing install and any shortcuts pointing at it. Document the cherry-pick provenance and what was deliberately left out (.mcp.json's hardcoded path, the docs/ tree) in AGENTS.md. --- AGENTS.md | 18 ++++++++++++++++++ README.md | 2 +- build_and_deploy.ps1 | 7 +++++-- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 653ea34..fcc3487 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -133,6 +133,24 @@ Dokumentation und Verifikation unten für die Größeneinschätzung). Namen jetzt immer aus der kombinierten JSON (`combined["profile_names"]` bzw. `versapad_combined.read_profile_names()`), eine einzige Quelle der Wahrheit für alle Frontends. +- **Herkunft der drei Punkte oben + Tab-Umbenennen-Fix:** per Cherry-Pick aus + Julian Appels eigenem `dev/jappel`-Branch (`git.jappel.io/jappel/ + VersaGUI-py`) übernommen, der sich zeitgleich mit unserem eigenen + COM-Port-Fix entwickelt hat (kein Fork-Sync-Automatismus -- manuell + gegengelesen und übernommen, siehe Sessionlog). **Eine Abweichung vom + Original:** dort landet der Build jetzt in `$projectDir\dist\ + VersaPadViewer` statt `%LOCALAPPDATA%\VersaPadViewer` -- hier bewusst + NICHT übernommen, weil das die tatsächlich installierte/genutzte Instanz + wäre und bestehende Verknüpfungen sonst ins Leere zeigen würden. + `build_and_deploy.ps1` hier weiterhin `%LOCALAPPDATA%\VersaPadViewer`. + Bestehende `versapad_config_all.json` vom alten Desktop-Pfad wurde einmalig + nach `%LOCALAPPDATA%\VersaPadViewer\` migriert (kopiert, Original bleibt). + Nicht übernommen: die `.mcp.json`-Registrierung (hartkodierter Pfad auf + Julians Maschine, `C:\Users\Julian\...`) -- dafür stattdessen ein Issue in + seinem Repo (git.jappel.io/jappel/VersaGUI-py) angelegt, damit relative/ + portable Pfadauflösung dort nachgezogen werden kann; die drei + `docs/*.md`-Referenzdateien (unser eigener Dokumentationsstandard hält für + dieses Tool bewusst bei README + AGENTS.md ohne vollen `docs/`-Baum). - **Bug behoben 2026-08-08:** `server.py` (`vp.load_profile()`) und `desktop_viewer.py` (`_current_profile_view()`) lasen im Nur-Lese-Modus hart von den Desktop-JSONs -- fehlten sie (z.B. User loescht sie), gab es diff --git a/README.md b/README.md index 7a06535..9de3204 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ Maschine/Python-Version unterschiedlich). Selbst bauen: Das Skript installiert/aktualisiert selbst alle nötigen Pakete aus `requirements.txt` (kein manuelles `pip install` vorher nötig), baut dann mit PyInstaller (`--onedir --windowed`, eigenes Icon) und kopiert das -Ergebnis nach `dist\VersaPadViewer\VersaPadViewer.exe` im Projektordner. +Ergebnis nach `%LOCALAPPDATA%\VersaPadViewer\VersaPadViewer.exe`. Bricht ein Schritt ab (fehlendes Python, PyInstaller-Fehler, ...), zeigt das Skript eine klare Fehlermeldung und wartet auf einen Tastendruck, statt sich bei Doppelklick im Explorer kommentarlos zu schließen (`-NoPause` diff --git a/build_and_deploy.ps1 b/build_and_deploy.ps1 index e0617e0..bdf1608 100644 --- a/build_and_deploy.ps1 +++ b/build_and_deploy.ps1 @@ -1,5 +1,8 @@ # Baut VersaPadViewer.exe (PyInstaller --onedir) und kopiert das Ergebnis -# nach $projectDir\dist\VersaPadViewer. +# nach %LOCALAPPDATA%\VersaPadViewer (nicht $projectDir\dist wie im +# jappel-Upstream -- hier bereits die tatsaechlich installierte/genutzte +# Instanz, siehe Speicher-Notiz "VersaPad Viewer Tool"; ein Pfadwechsel +# wuerde bestehende Verknuepfungen/Autostart-Eintraege brechen). # # WICHTIG: Sowohl Bauen als auch Laufen muessen lokal passieren, NICHT auf # dem Netzlaufwerk (Z:\Git\...): @@ -27,7 +30,7 @@ param( $ErrorActionPreference = "Stop" $projectDir = $PSScriptRoot $buildSrc = "$env:TEMP\versapad_build_src" -$localDir = "$projectDir\dist\VersaPadViewer" +$localDir = "$env:LOCALAPPDATA\VersaPadViewer" $requirementsFile = "$projectDir\requirements.txt" function Assert-LastExitCode([string]$step) {