diff --git a/BusyMirror.xcodeproj/project.pbxproj b/BusyMirror.xcodeproj/project.pbxproj index c147b0f..7fc0bb0 100644 --- a/BusyMirror.xcodeproj/project.pbxproj +++ b/BusyMirror.xcodeproj/project.pbxproj @@ -410,7 +410,7 @@ "CODE_SIGN_IDENTITY[sdk=macosx*]" = "-"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 8; + CURRENT_PROJECT_VERSION = 9; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = BusyMirror/Info.plist; @@ -421,7 +421,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MARKETING_VERSION = 1.2.6; + MARKETING_VERSION = 1.3.0; PRODUCT_BUNDLE_IDENTIFIER = com.cqrenet.BusyMirror; PRODUCT_NAME = "$(TARGET_NAME)"; REGISTER_APP_GROUPS = YES; @@ -440,7 +440,7 @@ "CODE_SIGN_IDENTITY[sdk=macosx*]" = "-"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 8; + CURRENT_PROJECT_VERSION = 9; ENABLE_PREVIEWS = YES; GENERATE_INFOPLIST_FILE = YES; INFOPLIST_FILE = BusyMirror/Info.plist; @@ -451,7 +451,7 @@ "$(inherited)", "@executable_path/../Frameworks", ); - MARKETING_VERSION = 1.2.6; + MARKETING_VERSION = 1.3.0; PRODUCT_BUNDLE_IDENTIFIER = com.cqrenet.BusyMirror; PRODUCT_NAME = "$(TARGET_NAME)"; REGISTER_APP_GROUPS = YES; diff --git a/CHANGELOG.md b/CHANGELOG.md index 547f0fa..3f8a7ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ All notable changes to BusyMirror will be documented in this file. ## [1.2.4] - 2025-10-10 - Fix: enable “Mirror Now” when Routes are defined even if no Source/Targets are checked in the main window. Button now enables if either routes exist or a manual selection is present. +## [1.3.0] - 2025-10-10 +- New: Mark Private option to mirror with prefix + real title and set event privacy on supported servers; available globally and per-route; persisted. +- Misc: calendar access fixes, concurrency annotations, accepted‑only filter, settings autosave/restore, Mirror Now enablement. + ## [1.2.3] - 2025-10-10 - Fix: reliably save and restore settings between runs via autosave of key options and restoration of source/target selections by persistent IDs. - UX: persist Source and Target selections; rebuild indices on launch so UI matches saved IDs. diff --git a/ReleaseNotes-1.3.0.md b/ReleaseNotes-1.3.0.md new file mode 100644 index 0000000..b8ed868 --- /dev/null +++ b/ReleaseNotes-1.3.0.md @@ -0,0 +1,17 @@ +# BusyMirror 1.3.0 — 2025-10-10 + +New +- Mark Private option: mirror events with your prefix + real title while marking them Private on supported servers (e.g., Exchange). Co‑workers see the time block but not the details. +- Per-route and global toggles for Mark Private; persists in settings and export/import. + +Fixes & improvements +- More reliable calendar loading after permission grant (reinit EKEventStore). +- Concurrency: `@MainActor` on permission/refresh methods. +- Accepted‑only filter via current user attendee `participantStatus`. +- Settings autosave and restore (including source/target selections by IDs). +- Mirror Now enabled when calendars available; routes or manual selection used as appropriate. + +Build +- `make build-release` +- `make package` → BusyMirror-1.3.0-macOS.zip and .sha256 +