Merge mmo/ui branch: Fyne system tray UI #26
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
qwc-open/backive!26
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-19/merge-ui"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Squash-merges the
mmo/uibranch (38 commits) intomain, adding a Fyne-based system tray UI for desktop notifications, plus follow-up fixes, tests, and CI repair.cmd/backive_ui,ui/package) with message level filtering and hide-until supportui_handler.go)map[string]interface{}for structured run data0777to0660, write errors handledui/ui_main.go, exported struct fields for JSON marshal, rewrittenShallShow()logic, panic→log in settings I/Olog.Fatalui_handler_test.go,ui/ui_test.go, extendedbackup_test.go(68.4% coverage on non-CGO packages)Closes #19
Closes #8
Closes #10
Closes #11
Commits
CI fixes (was completely broken)
The previous workflow failed immediately because
goreleaser/goreleaser-action@v2.7.0was not mirrored ondata.forgejo.org. Additional issues fixed:checkout@v2→v4,setup-go@v2→v5(#11)go buildgolint: replaced withgo vet(#11)go mod vendor, committedvendor/, builds use-mod=vendor(#10)go test -v -cover→go test -v -cover ./...pkg-configto apt dependencies (needed for CGO/Fyne)sudofrom apt commands (Forgejo runner is root)log.Printf(msg)→log.Print(msg)(Go 1.25 stricter checks)Deferred
Test plan
go build -mod=vendor ./...succeeds (non-CGO)go test -v -cover -mod=vendor ./...passes (non-CGO packages)go vetclean (non-CGO packages)backive-example.ymlhasuiUnixSocketLocationMerges 38 commits from mmo/ui that add: - System tray UI application (cmd/backive_ui, ui/ package) - Unix socket IPC between daemon and UI (ui_handler.go) - Message level filtering (INFO/REMIND/WARN/ERROR) - Database format migration to map[string]interface{} - Updated CI workflows for CGO and X11 deps - Architecture documentation (PlantUML diagrams) Conflicts resolved in go.mod/go.sum: kept mmo/ui deps with golang.org/x/text v0.3.8 from main. Ref: #19 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>- TestRunsLoadLegacyFormat: verify old string-based DB format loads - TestRunsLoadMapFormat: verify new map[string]interface{} format loads - TestShouldRunNeverRun: edge case for backup that has never run Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>