2.2.1 (2026-07-31)
- build: treat webpack warnings as errors (82ee23f)
- cli: downgrade yargs to fix broken production bundle (18d9792)
2.2.0 (2026-07-16)
- auth: show server warning status for expired or missing tokens (1bdba9f)
- core: improve unicode path matching in NormalizedMap (dc6a162)
- build: upgrade electron-builder for ARM64 NSIS installer (a6599b0)
- ci: use current app-builder blockmap API (9411344)
- core: prevent local path traversal from remote file paths (9c2f6a8)
- main: add preload scripts for wrapper and webview with scoped IPC channels (7ce2311)
- main: block renderer-created windows in server view (d195049)
- main: move server auth to desktop request manager (874f141)
- main: restrict external URL and file opening (8d68b15)
- main: scope server navigation by origin and path (b3893fd)
- renderer: adjust min-zwidth of top bar (4dc7eb7)
- security: restore TLS validation and add per-server opt-in (db16d07)
- security: verify server WebContents on remote IPC (02e489a)
2.1.1 (2026-05-22)
- core: close remote diff stream on early exit (03eaceb)
2.1.0 (2026-03-13)
- core: login screen not showing after unauthorized desktop-app signup attempt (d9b0ebc)
- main: ensure AppImage startup compatibility on Ubuntu 23.10+ (and similar restricted-sandbox distros) by enforcing --no-sandbox + --disable-setuid-sandbox (c770b5c)
- main: fix DownloadManager regression after session partitioning by binding will-download on all sessions (3e3a25a)
- main: guard DownloadManager progress updates when window/webContents are destroyed (6cdc929)
- main: harden throttleFunc timer scheduling to prevent invalid timeout warnings (c21b0c4)
2.0.0 (2026-02-09)
- auth: refactor authentication services and delegate desktop client registration to server (9c64f08)
- auth: refactor server actions to streamline client registration and enhance type safety (40de54b)
- main: implement loopback callback server for desktop OIDC flow (d13d0e1)
- main:views: refactor view destruction to ensure cleanup of views, sessions, and cookies (48028b3)
- main: force view destruction to ensure all connections are closed (a039f76)
- main: refactor view creation and destruction to ensure session partitioning and cleanup (ac4c8f0)
1.6.2 (2026-01-19)
- core enforce valid repository subdirectories and path normalization (f6f17df)
1.6.1 (2026-01-07)
- main: streamline error handling with
console.errorin webView methods (6d6951c)
1.6.0 (2025-12-07)
- settings: add "Hide Dock Icon" option on macOS and improve tray accessibility (59261c5)
1.5.1 (2025-11-25)
- assets: update app and tray icons, favicon, and related assets (b302757)
- deps: update dependencies in package-lock.json (ed28649)
- manifest: add server release manifest generation (1128087)
- updater: extend user-agent header support and adjust update check interval to 8 hours (a173c77)
1.5.0 (2025-10-26)
- 🌍 14 languages supported — added 12 new ones: 🇩🇪 🇪🇸 🇵🇹 🇧🇷 🇮🇹 🇨🇳 🇮🇳 🇹🇷 🇯🇵 🇰🇷 🇵🇱 🇷🇺
- i18n: add Japanese, Brazilian Portuguese, Polish, Korean, and Turkish translations (443b898)
- i18n: add Russian translations (82b941d)
- i18n: add support for multiple languages and optimize unused translation keys detection (85e527c)
- i18n: enhance i18n setup with dynamic translation loading and locale resolution (a07d8c6)
- i18n: modularize localization setup and extend language support (8d5eac6)
- i18n: refactor i18n manager and add language normalization logic (04fb872)
1.4.0 (2025-09-26)
- auth: add support for MFA authentication (544ec08)
- main: open external URLs in the user's browser instead of inside the app (f3dda3d)
1.3.0 (2025-09-06)
- main: add options to launch app at login and to start hidden (286a4e1)
- core: prevent infinite loop when adding unreachable server (baeca22)
- main: apply zoomFactor to active BrowserView only (228adb7)
- main: avoid wrong notification on canceled downloads (38df616)
- main: correct webview overflow by snapping bounds to display scale (7eac291)
- main: force webView.webContents.setZoomFactor(1) (4db872d)
- main: stop intercepting system Ctrl/Cmd+arrow keys globally (7e01470)
- main: webView.webContents.setZoomFactor(1) only works after loading content (4ae21ba)
- renderer: correct server dropdown position (4aa1f82)