62 Commits

Author SHA1 Message Date
StyxX65
c83d9c8ed5 Docs: update CHANGELOG and
README for macOS CI build + Windows artifact fix

  Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 10:34:20 +02:00
StyxX65
1764e784dc CI: fix Windows artifact — zip onedir output instead of globbing dist/*.exe
PyInstaller --onedir puts the exe inside dist/GDPRScanner/, so dist/*.exe
never matched. Add a PowerShell packaging step that zips the directory,
mirroring the Linux step.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 10:22:14 +02:00
Henrik Højmark
c171740ded Add RELEASING.md: short guide for pushing and tagging releases
Some checks are pending
Build — Windows & Linux / GDPRScanner / windows (push) Waiting to run
Build — Windows & Linux / GDPRScanner / linux (push) Waiting to run
Build — Windows & Linux / Create GitHub Release (push) Blocked by required conditions
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
v1.6.14
2026-04-11 06:21:44 +02:00
Henrik Højmark
7866bf9081 CI: create rolling 'latest' pre-release on every main push
Previously the release job only ran on v* tag pushes, leaving
main-branch builds with no downloadable binaries.

- Release job now also triggers on push to main
- On main: force-moves the 'latest' git tag to the current commit,
  then creates/updates a 'latest' pre-release with the built artifacts
- On v* tag: existing versioned release behaviour unchanged

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 06:20:17 +02:00
Henrik Højmark
3ad68b45f7 Fix viewer share links to use LAN IP; bind Flask to 0.0.0.0
Share links copied from the Share modal were built with
window.location.origin, producing 127.0.0.1 URLs that remote
viewers could never reach.

- Bind Flask to 0.0.0.0 in gdpr_scanner.py (--host default),
  m365_launcher.py, and build_gdpr.py so the server is reachable
  on the local network. Internal loopback URLs (urllib exports,
  webview window, port probe) intentionally keep 127.0.0.1.
- Add /api/local_ip endpoint: UDP probe to 8.8.8.8 discovers the
  active LAN IP without sending real traffic.
- Add _getShareBaseUrl() in viewer.js: fetches /api/local_ip and
  substitutes the LAN IP; falls back to window.location.origin.
- createShareLink and copyTokenLink are now async and await
  _getShareBaseUrl() before building the viewer URL.
- Update CLAUDE.md and static/js/CLAUDE.md with the new invariants.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-11 06:14:17 +02:00
Henrik Højmark
66bbf35192 Fix Linux build: start Xvfb virtual display for pystray 2026-04-11 05:33:08 +02:00
Henrik Højmark
f33fac9e82 Update CHANGELOG: add GitHub Actions CI/CD entry 2026-04-11 05:30:21 +02:00
Henrik Højmark
06a0356cbb Remove Document Scanner job from build workflow 2026-04-11 05:24:29 +02:00
Henrik Højmark
b6b32c0ddc Fix Windows build: force UTF-8 encoding for cp1252 Unicode
error
2026-04-11 05:20:24 +02:00
Henrik Højmark
f641e1552a Fix build.yml: use requirements.txt and add missing
system/spaCy deps
2026-04-11 05:15:06 +02:00
Henrik Højmark
5ee5a9d809 Fix build.yml: correct build script name and artifact path 2026-04-11 05:11:22 +02:00
Henrik Højmark
9c7df76fbd Initial commit 2026-04-11 04:38:11 +02:00