Commit Graph

165 Commits

Author SHA1 Message Date
Micha
7d7a79cf13 chore: release 26.1.2 v26.1.3 2026-01-03 18:05:28 +01:00
Micha
2775e44f92 docs: add 26.1.1 changelog entry 2026-01-03 18:02:34 +01:00
Micha
d5cadf75ca chore: release 26.1.1 v26.1.2 2026-01-03 16:34:23 +01:00
Micha
28104c1bc3 fix: improve changelog extraction in publish script
- Simplified awk extraction without aggressive sed cleanup
- Now correctly extracts version-specific changelog entries
- Works with minimal or full changelog sections
2026-01-03 16:32:12 +01:00
Micha
8dae638111 docs: rename 'Unreleased' to 'Prereleases' in changelog 2026-01-03 16:29:33 +01:00
Micha
670c8fe83b docs: reorganize changelog - move auto-populate to 26.1.0, update section order 2026-01-03 16:27:58 +01:00
Micha
846983649a docs: update changelog for 26.1.0 release 2026-01-03 16:25:42 +01:00
Micha
1670b030ba feat: auto-populate release description from CHANGELOG
- Extract changelog entry for current version when creating releases
- Parse CHANGELOG.md and add to release body in Gitea
- Falls back to 'See commit history for details.' if no changelog found
- Keeps release notes synchronized with version
2026-01-03 16:23:24 +01:00
Micha
fc43fa9094 chore: release 26.1.0 2026-01-03 16:21:16 +01:00
Micha
4f026d6e1b fix: interval indicator respects refresh interval setting
- ServerDetailView now reads refreshInterval from AppStorage
- Progress bar duration dynamically adjusts based on user's refresh interval setting
- Previously hardcoded to 60 seconds regardless of user preference
2026-01-03 16:18:08 +01:00
Micha
06932cde21 chore: release 26.0.70 v26.1.1 2026-01-03 15:49:43 +01:00
Micha
7a286c68e3 feat: add status notifications for server monitoring
- Add notification preferences (Status Notifications and Alert Notifications toggles)
- Implement ping failure/recovery notifications when servers go offline/online
- Track individual service status changes and notify when services fail
- Request notification permissions on app launch
- Services like DNS, FTP, SSH, etc. now trigger alerts when status changes
- Notifications only sent when settings are enabled

Changes:
- PreferencesView: Add NotificationsPreferencesView with two toggles
- PingService: Add notification support with state tracking for ping events
- MainView: Add service status monitoring with change detection
- Track previous service states to detect transitions
2026-01-03 15:48:01 +01:00
Micha
e7b776942b fix: use AppStorage values for ping and refresh intervals
Make the ping and refresh intervals from preferences actually control
the timer frequencies. Settings now properly update timers when changed.
- Read pingInterval and refreshInterval from AppStorage
- Recreate timers when settings change
- Setup timers on app appearance with correct intervals
2026-01-03 14:31:51 +01:00
Micha
8cf974118b fix: add connection test feedback in server form
- Show error message when connection test fails
- Disable test button while testing
- Provide clear feedback when API key or hostname are invalid
- Reset error message on successful connection
2026-01-03 14:16:11 +01:00
Micha
ae83ea7dab chore: release 26.0.69 v26.0.70 2026-01-03 14:00:42 +01:00
Micha
39205230b6 Sparkle test 2026-01-03 13:58:38 +01:00
Micha
55a266014c chore: release 26.0.68 2026-01-03 13:52:34 +01:00
Micha
c002cab616 chore: disable sandbox for now to use Sparkle updates
Disable app-sandbox to allow Sparkle auto-updates to work properly.
Keep entitlements file structure for future sandbox re-enablement.
Sandbox integration with Sparkle requires more complex authorization
setup that can be tackled later when preparing for App Store.
2026-01-03 13:50:26 +01:00
Micha
117134cead chore: release 26.0.67 2026-01-03 13:36:30 +01:00
Micha
35711d33c0 Sparkle test 2026-01-03 13:34:50 +01:00
Micha
4f3d56dc3c chore: release 26.0.66 2026-01-03 13:28:45 +01:00
Micha
0d80a0f912 fix: use basic Sparkle updater for sandboxed apps
Disable SUEnableInstallerLauncherService and remove XPC entitlements.
Use Sparkle's standard update mechanism which works with sandboxed apps.
Add file access entitlements for update storage.
2026-01-03 13:26:37 +01:00
Micha
b1d6e61f05 chore: release 26.0.65 2025-12-30 20:19:29 +01:00
Micha
2dd2c2154f fix: sign Sparkle framework separately for sandboxed builds
Sign the Sparkle framework before signing the whole app to ensure
proper code signature chain for sandboxed installation.
2025-12-30 20:17:47 +01:00
Micha
c6ecbbe511 chore: release 26.0.64 2025-12-30 20:14:03 +01:00
Micha
77a145604c Sparkle test 2025-12-30 20:12:24 +01:00
Micha
0016030ff3 chore: release 26.0.63 2025-12-30 20:06:55 +01:00
Micha
615d664731 fix: configure sandbox for Sparkle installer with proper entitlements
- Add downloads folder read-write access for installer
- Enable SUEnableInstallerLauncherService for sandboxed update installation
- Keep XPC service entitlements for installer communication
2025-12-30 20:04:26 +01:00
Micha
5644fbdfe0 chore: release 26.0.62 2025-12-30 19:55:55 +01:00
Micha
9b5883fe77 Sparkle test 2025-12-30 19:54:08 +01:00
Micha
5d15810802 chore: release 26.0.61 2025-12-30 19:53:12 +01:00
Micha
519d15ed10 Sparkle test 2025-12-30 19:51:35 +01:00
Micha
446bbe7f98 chore: release 26.0.60 2025-12-30 19:50:43 +01:00
Micha
b67fffd3f0 fix: re-add XPC service entitlements for sandboxed Sparkle installer
Add back InstallerConnection and InstallerStatus entitlements which are
required for the sandboxed app to communicate with Sparkle's installer
XPC service.
2025-12-30 19:48:44 +01:00
Micha
84935ee8fd chore: release 26.0.59 2025-12-30 19:42:29 +01:00
Micha
0f266f7046 Sparkle test 2025-12-30 19:40:37 +01:00
Micha
bff7c44c29 chore: release 26.0.58 2025-12-30 19:36:29 +01:00
Micha
f930e8334f chore: remove configuration note from updates preferences
Remove the explanation text about configuring appcast URL and EdDSA key.
This is configuration for developers, not end users.
2025-12-30 19:33:14 +01:00
Micha
0032ad9b57 chore: remove update button from main toolbar
Remove the 'Check for Updates' button from the main window toolbar.
Updates are available via Preferences → Updates, which is sufficient.
2025-12-30 19:29:01 +01:00
Micha
b7f5d1a762 chore: remove update logs UI from preferences
Remove the Show/Hide Logs button and logs view from the Updates preferences
tab. Keep the logging infrastructure in SparkleUpdater for diagnostics,
but don't display it in the UI.
2025-12-30 19:27:06 +01:00
Micha
5dc5621871 docs: update changelog with Sparkle updater fixes and improvements
Document the key fixes that made Sparkle updates work:
- Using ditto instead of zip to preserve code signatures
- XPC service entitlements for sandboxed apps
- In-app logging for update debugging
- Re-enabled sandbox with minimal entitlements
2025-12-30 19:23:36 +01:00
Micha
2a848c3251 chore: release 26.0.57 2025-12-30 19:20:11 +01:00
Micha
bb4f972d58 feat: re-enable sandbox with minimal entitlements
- Re-enable app-sandbox
- Add network.client entitlement (required for Sparkle updates)
- Keep build script passing entitlements to codesign
- Use ditto for ZIP to preserve code signatures

This is a minimal sandbox configuration focused on security while
keeping updates working.
2025-12-30 19:14:40 +01:00
Micha
62d4a9ac96 chore: release 26.0.56 2025-12-30 19:09:35 +01:00
Micha
75fe670779 fix: use ditto instead of zip to preserve code signatures
zip breaks code signatures on macOS. Use ditto -c -k to create the update
ZIP archive while preserving the embedded code signature of the app bundle.
2025-12-30 19:07:10 +01:00
Micha
a961baab28 chore: release 26.0.55 2025-12-30 18:59:42 +01:00
Micha
7246b132f6 Sparkle test 2025-12-30 18:58:04 +01:00
Micha
1afce31641 chore: release 26.0.54 2025-12-30 18:52:40 +01:00
Micha
281016bfc9 fix: remove entitlements from code signing for non-sandboxed app
For non-sandboxed apps, don't pass --entitlements to codesign.
This was causing code signature issues.
2025-12-30 18:50:41 +01:00
Micha
144ad27aa6 chore: release 26.0.53 2025-12-30 18:43:27 +01:00