32 lines
2.6 KiB
Markdown
32 lines
2.6 KiB
Markdown
# Changelog
|
|
|
|
## Unreleased
|
|
|
|
## 26.1.0 (2025-01-03)
|
|
|
|
### Fixed
|
|
- Fixed excessive refresh timer resets by properly cancelling previous subscriptions and validating value changes before recreating timers.
|
|
- Fixed interval indicator to respect user's refresh interval setting instead of always assuming 60 seconds.
|
|
|
|
### Added
|
|
- Added status notifications for server monitoring in Preferences → Notifications:
|
|
- "Status Notifications" toggle: alerts when servers go offline/online or services change status.
|
|
- "Alert Notifications" toggle: (placeholder for future alert threshold configuration).
|
|
- Ping status changes now trigger notifications (Server Online/Offline).
|
|
- Service status monitoring tracks individual services (DNS, FTP, SSH, HTTP, HTTPS, etc.) and alerts when they go offline or come back online.
|
|
- Notification permissions are requested automatically when the app launches.
|
|
- Auto-populate release description from CHANGELOG when publishing to Gitea.
|
|
|
|
### Previous Changes
|
|
- Flattened the project structure so sources live at the repository root instead of the nested `iKeyMon/` folder and updated the Xcode project accordingly.
|
|
- Fixed build settings (entitlements, preview assets) and placeholder previews to work with the new layout.
|
|
- Migrated the updated API layer and unified `ServerInfo` model from the previous branch.
|
|
- Added verbose logging in `MainView` to trace server loading, selection, and fetch/ping activity when the list appears empty.
|
|
- Switched `MainView` and `ServerFormView` to the version-aware API client (`APIFactory`/`APIv2_12`) for server summaries and introduced a shared `PingService`.
|
|
- Detection now probes `meta.api_version` so future API versions are selected automatically, and the ping loop logs only failures to keep output quiet.
|
|
- Introduced repository-wide version management via `version.json` + `scripts/sync_version.sh`, ensuring Xcode targets and release artifacts stay aligned.
|
|
- Enhanced `scripts/build_release.sh` to timestamp/harden signatures, notarize DMGs, and optionally publish tagged releases (pre-release by default) with ZIP/DMG assets directly to Gitea when credentials are configured.
|
|
- Integrated Sparkle (via Swift Package Manager) to handle automatic update checks, downloads, signature verification, and relaunches, replacing the previous custom updater UI. Preferences now simply surface Sparkle's check/download toggles.
|
|
- `scripts/build_release.sh` can optionally run Sparkle's `generate_appcast` (when signing key and download prefix env vars are set), producing a ready-to-host `appcast.xml` alongside the ZIP/DMG artifacts.
|
|
- Further reduced MainView console noise by removing redundant refresh/onAppear logs.
|