Releases: karanhudia/borg-ui
Releases · karanhudia/borg-ui
Release 1.74.0
What's Changed
- fix(tests): add missing Repository and User imports in database fixtures (facca9c)
- fix(tests): update multi_repo_schedule test for sanitized archive names (6b437c1)
- chore: fix prettier (6413fb9)
- fix(quick-13): remove unused jobId prop from MemoizedLogLine (TS6133) (5ed3295)
- feat(quick-13-01): add JSON syntax highlighting to TerminalLogViewer (faf6e29)
- fix(quick-12-01): fix backup_eta MQTT sensor invalid state when ETA is null (0e5fa4a)
- fix(quick-11-01): prepend pre-hook logs to buffer and save full transcript in job.logs (3884270)
- fix(quick-10-01): poll job status in LogViewerDialog to unblock stuck Running badge (dddcb3b)
- refactor(quick-10-01): import SYSTEM_VARIABLE_PREFIX instead of hardcoding BORG_UI_ string (6de45a7)
- fix(quick-9-01): replace SYSTEM_VARIABLES allowlist with BORG_UI_ prefix check (dceaffe)
- feat(quick-8-02): replace three inline archive-name blocks with build_archive_name (8e348c9)
- feat(quick-8-01): add build_archive_name utility with sanitization (4bc09a3)
- test(quick-8-01): add failing tests for archive name sanitization (3dc7c37)
- feat(quick-7-01): add offset guard to placeholder branches in get_job_logs (752b81a)
- test(quick-7-01): add failing tests for placeholder offset guard (d640543)
- Add Italian locale file (it.json) (#318) (9eb002b)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.74.0
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.73.0...v1.74.0
Release 1.73.0
What's Changed
- fix(migration-073): purge orphaned rows before table recreation (d0c4894)
- fix(quick-6): flush stdout after each migration upgrade() call (21dd040)
- fix(quick-5-01): rewrite migration 067 using idempotent 048/073 pattern (69a09ce)
- fix(quick-4): add ondelete="CASCADE" to DeleteArchiveJob.repository_id ForeignKey (0ba9675)
- feat(quick-4): add migration 073 with ON DELETE CASCADE for delete_archive_jobs FK (732468f)
- fix(quick-3): translate untranslated strings in es.json (f1a9bf3)
- fix(quick-3): translate untranslated strings in de.json (866f8f0)
- chore: fix test (45a17ae)
- docs(quick-2): complete add-missing-localisation-to-python-api-f plan (f590eda)
- feat(quick-2): migrate all hardcoded HTTPException detail strings to locale key dicts (e5edb64)
- feat(quick-2): add missing i18n locale keys for all backend API error sections (68ed953)
- chore: move tests (c86733d)
- chore: fix backend tests (0930b08)
- style: apply Prettier formatting to frontend components and tests (30b4e37)
- fix(06-01): migrate borg_errors.py and backup_service.py raw English paths to locale keys (4470022)
- feat(06-02): translate JSON key string error_message in RestoreJobCard Alert blocks (2ced875)
- test(06-02): add failing tests for JSON key string error_message in RestoreJobCard (3ee8b14)
- fix(06-01): remove raw-stderr ternary in restore_service.py line 451 (ab0c1c9)
- feat(05-03): add real German translations for 12 placeholder backend.* keys in de.json (17af911)
- feat(05-03): add real Spanish translations for 12 placeholder backend.* keys in es.json (52a3fe7)
- fix(05-02): add 17 missing keys to es.json and de.json for locale parity (fbdbdbc)
- feat(05-01): produce Phase-5-only de.json with 2047 keys matching committed en.json (d29894d)
- chore(05-02): track scripts/check-locale-parity.js in git (c7eb039)
- feat(05-01): produce Phase-5-only es.json with 2047 keys matching committed en.json (1195505)
- feat(05-02): add locale parity check step to test-frontend CI job (6e8ae4f)
- feat(05-02): add check:locales npm script to frontend/package.json (3005e91)
- feat(04-05): migrate 13 raw English message fields in ssh_keys.py to locale key strings (f2da6ee)
- fix(04-06): migrate settings.py/filesystem.py/scripts_library.py message fields to locale keys (a0dc603)
- feat(04-06): add backend.success.filesystem and backend.success.scripts locale domains (02df27f)
- feat(04-04): migrate service layer to json.dumps key format; update ErrorDetailsDialog (6c2e47f)
- feat(04-04): add backend.errors.service locale domain with 13 keys (1005aff)
- feat(04-03): migrate remaining 9 API files to translation key dict format (538b0b8)
- feat(04-03): add new locale keys for archives, mounts, activity, filesystem, browse, packages, notifications, scripts domains (26ee565)
- feat(04-02): migrate ssh_keys.py and settings.py HTTPException.detail strings to translation keys (be9b834)
- feat(04-02): add SSH and settings locale keys to all three locale files (cc464e3)
- feat(04-01): migrate restore.py and schedule.py HTTPException.detail strings to translation keys (082bfcc)
- feat(04-01): add 11 new restore and schedule locale keys to all 3 locale files (3b52803)
- feat(03-04): migrate 8 remaining raw English HTTPException.detail strings in repositories.py (946a628)
- feat(03-04): add 6 new backend.errors.repo locale keys for gap closure (ae2ce37)
- feat(03-03): migrate repositories.py user-facing HTTPException.detail strings to translation keys (f43b838)
- feat(03-03): add 13 new backend.errors.repo and backend.success.repo locale keys (5cf9a79)
- fix(03-01): migrate remaining inactiveUser strings in security.py to translation keys (243140e)
- feat(03-01): migrate security.py and add notEnoughPermissions locale key (8ff085a)
- feat(03-02): migrate backup.py user-facing strings to translation keys (0dd52b0)
- feat(03-01): migrate auth.py detail and message strings to translation keys (ebfb2bd)
- feat(02-01): enable missingKeyHandler in i18n.ts for development key detection (787e787)
- feat(02-01): add backend translation namespace to all three locale files (1c04120)
- fix(01-04): remove hardcoded English third-position fallbacks from stderr assignments (0ef78fc)
- fix: resolve react-hooks/exhaustive-deps lint warnings (545cbaa)
- chore: prettier fix (dc77afd)
- test: initialize i18n in test setup and update test expectations for i18n (a677a69)
- test: update test expectations to match i18n locale values (0ec6ea5)
- feat(01-04): wire analytics transparency notice through i18next (5d2ac06)
- feat(01-03): add missing locale fallback keys for remaining error sites (c41f014)
- feat(01-02): add toast locale keys to en.json, es.json, and de.json (3d8b6d5)
- feat(01-03): wire translateBackendKey to all remaining detail and message sites (5f0fff9)
- feat(01-02): replace hardcoded toast strings and wire detail sites in 5 page components (2756f56)
- feat(01-01): add common.errors.unexpectedError to all locale files (3a035b4)
- feat(01-01): implement translateBackendKey utility (34099fc)
- test(01-01): add failing tests for translateBackendKey utility (e3fa3ec)
- chore: prettier fix (903c112)
- feat: add i18next dependencies and initialize i18n in app entry (90baea7)
- feat: add i18n translations to all remaining components (d7991db)
- feat: add Spanish and German translations with language switcher (08451c3)
- docs: add reverse proxy guide and remove unsupported BASE_PATH references (58426fa)
- fix: make migration 048 idempotent against extra ssh_connections columns (af21eb6)
- test: add unit tests for SSH connection deletion FK cleanup (367b055)
- fix: null out FK references before deleting an SSH connection (e7fafab)
- chore: prettier fix (9c0a278)
- fix: guard against stale ssh_connections_new table in migration 048 (de4b24e)
- fix: MQTT settings tab UI alignment and icon visibility (4932f77)
- fix: add missing mqtt_base_topic column to MQTT migration (5d51175)
- feat: add MQTT & Home Assistant integration (beta) (ef1739c)
- fix: update keyfile integration tests for new storage location and naming (811ac87)
- fix: update test selector to match added keyfile caption text (4c02a1f)
- docs: clarify /local is a convention, not a requirement (12654d5)
- feat: keyfile import/export improvements and notification fix (723df80)
- fix: add missing timeout settings to backup service test fixtures (e5e561c)
- fix: replace passlib with direct bcrypt calls for bcrypt 5.x compatibility (464e4bb)
- fix: bump coverage to 7.10.7 for pytest-cov 7.0.0 compatibility (c7e6335)
- fix: increase source size timeout and improve current file update frequency (e64adb8)
- chore(deps): bump bcrypt from 4.0.1 to 5.0.0 (6d2057e)
- chore(deps): bump psutil from 5.9.6 to 7.2.2 (ac1f18e)
- chore(deps): bump ajv from 6.12.6 to 6.14.0 in /frontend (5f9d156)
- chore: prettier fix (d609dd3)
- feat: track unique Matomo users via hashed installation ID (5e2c607)
- docs: fix misleading /local mount description in usage guide (570bc08)
- docs: restructure installation guide for clarity (1564886)
- feat: enable original location restore for SSH destinations and fix restore preview paths (1e5b678)
- fix: resolve TypeScript linting errors (91d011a)
- fix: sanitize SSH URLs in notifications to prevent @ mentions (738e5a1)
- chore(deps): bump @types/node from 24.10.1 to 25.2.3 in /frontend (#286) (1d10916)
- chore: add test (0af4ccb)
- feat: restrict break lock functionality to admin users only (0cfe8ec)
- fix: add pull-requests write permission for security workflow PR comments (5d99935)
- docs: add comprehensive OIDC/proxy authentication documentation (4e626d7)
- chore(deps): bump gunicorn from 23.0.0 to 25.1.0 (33b78ec)
- chore(deps): bump croniter from 1.4.1 to 6.0.0 (c551872)
- fix: backend test failures for auth status codes and mount integration (7ced091)
- test: add comprehensive tests to reach 70% branch coverage (db64451)
- fix: update auth tests and add coverage for uncovered components (442e55a)
- fix: update notification tests to match text badge format (f6f3f1b)
- fix: TypeScript linting errors in unused catch variables (7153d64)
- fix: logs not displaying for restore jobs with completed_with_warnings status (2a28dac)
- fix: add missing parameters to send_backup_success signature (5c8c53a)
- improve: enhance notification system with professional design and metrics (e3aef6a)
- Revert "refactor: replace rsync with SSHFS for local→SSH restore" (3af3d07)
- refactor: replace rsync with SSHFS for local→SSH restore (f98053f)
- fix: SSH key permission errors causing rsync/restore failures (d6d5cab)
- fix: remove double slash in SSH custom path preview (0bacfd4)
- fix: restore UI issues - missing slash in SSH paths and false failure on exit code 1 (9c9523e)
- improve: replace archive filter tabs with dropdown and hide SSH mounts for SSH repos (88a9398)
- fix: restore failing with 'Repository' object has no attribute 'ssh_connection_id' (82829ad)
- feat: add archive grouping, sorting, and filtering to improve navigation (2ddaa09)
- feat: add bypass_lock_on_list beta setting for concurrent read operations (4bb18ac)
- fix: prevent critical mount shadowing bug causing data loss on remote servers (f6f5bdc)
- feat: add proxy authentication support (SSO integration) (9b2ac5c)
- chore(deps-dev): bump jsdom from 27.0.1 to 28.1.0 in /frontend (92af899)
- chore(deps): bump structlog from 23.2.0 to 25.5.0 (70b4fb7)
- chore(deps): bump redis from 5.0.1 to 7.1.1 (951a26c)
- chore(deps): bump pytest-cov from 4.1.0 to 7.0.0 (1bc7d86)
- ci(deps): bump peter-evans/dockerhub-description from 4 to 5 (27787dd)
- ci(deps): bump actions/download-artifact from 4 to 7 (c19aaa6)
- ci: add Dependabot configuration for automated dependency updates (5133a31)
- chore(deps): bump cryptography from 44.0.1 to 46.0.5 (b39fb3a)
- fix: update dependencies to resolve security vulnerabilities (071f1ab)
- chore: update CI workflow to use new test_app.py path (5c73f03)
- chore: update CI workflow to use new test_ap...
Release 1.72.4
What's Changed
- fix: make migration 048 idempotent against extra ssh_connections columns (476dab2)
- test: add unit tests for SSH connection deletion FK cleanup (6fc790f)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.72.4
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.72.3...v1.72.4
Release 1.72.3
What's Changed
- fix: null out FK references before deleting an SSH connection (8066341)
- chore: prettier fix (6b850af)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.72.3
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.72.2...v1.72.3
Release 1.72.2
What's Changed
- fix: guard against stale ssh_connections_new table in migration 048 (c089d86)
- fix: MQTT settings tab UI alignment and icon visibility (428721a)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.72.2
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.72.1...v1.72.2
Release 1.72.1
What's Changed
- fix: add missing mqtt_base_topic column to MQTT migration (aa8c5aa)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.72.1
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.72.0...v1.72.1
Release 1.72.0
What's Changed
- feat: add MQTT & Home Assistant integration (beta) (9dfa123)
- fix: update keyfile integration tests for new storage location and naming (c6eee1b)
- fix: update test selector to match added keyfile caption text (160f504)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.72.0
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.71.0...v1.72.0
Release 1.71.0
What's Changed
- docs: clarify /local is a convention, not a requirement (fb7a2a7)
- feat: keyfile import/export improvements and notification fix (577038a)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.71.0
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.70.1...v1.71.0
Release 1.70.1
What's Changed
- fix: add missing timeout settings to backup service test fixtures (f59d6dd)
- fix: replace passlib with direct bcrypt calls for bcrypt 5.x compatibility (94f9af3)
- fix: bump coverage to 7.10.7 for pytest-cov 7.0.0 compatibility (3dd8d85)
- fix: increase source size timeout and improve current file update frequency (31fba46)
- chore(deps): bump bcrypt from 4.0.1 to 5.0.0 (fc67fe1)
- chore(deps): bump psutil from 5.9.6 to 7.2.2 (6b28618)
- chore(deps): bump ajv from 6.12.6 to 6.14.0 in /frontend (d2c6f13)
- chore(deps): bump gunicorn from 23.0.0 to 25.1.0 (f457467)
- chore(deps): bump croniter from 1.4.1 to 6.0.0 (a49864f)
- chore(deps-dev): bump jsdom from 27.0.1 to 28.1.0 in /frontend (599ed51)
- chore(deps): bump structlog from 23.2.0 to 25.5.0 (bd08e02)
- chore(deps): bump redis from 5.0.1 to 7.1.1 (9203ca9)
- chore(deps): bump pytest-cov from 4.1.0 to 7.0.0 (6afa7c1)
- ci(deps): bump peter-evans/dockerhub-description from 4 to 5 (af3de3f)
- ci(deps): bump actions/download-artifact from 4 to 7 (b110bdb)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.70.1
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.70.0...v1.70.1
Release 1.70.0
What's Changed
- chore: prettier fix (88af523)
- feat: track unique Matomo users via hashed installation ID (a3d0811)
- docs: fix misleading /local mount description in usage guide (4ccc2ad)
- docs: restructure installation guide for clarity (ec69e49)
- feat: enable original location restore for SSH destinations and fix restore preview paths (fc41b0a)
Docker Images
Published to Docker Hub:
docker pull ainullcode/borg-ui:1.70.0
docker pull ainullcode/borg-ui:latest
Full Changelog: v1.69.1...v1.70.0