Releases: KashCal/KashCal
v23.3.0
v23.2.1
Features
- Device calendars: see your phone's built-in calendar events alongside KashCal events
- Device calendar reminders with quick view and edit support
- Widget "+" button to create events directly from home screen
- Week widget compact layout with full day names and date range header
Bug Fixes
- Fix events disappearing after creation on basic CalDAV servers (e.g., Purelymail)
- Fix CalDAV sync on Android 10-11
- Fix device calendar recurring event exception handling
- Fix widget tap on all-day device events in negative UTC offsets
Docs
v23.1.16
Fixes
- Show all-day events first in widgets (#85)
- Respect time format preference for reminder labels (#96)
- Timezone picker: globe aligned with time picker center (#88)
- Improve time picker layout for small screens (#88)
- Multi-day timed event share text now includes end date (#89)
- extendPastOccurrences respects sync lookback setting
Features
- Apply default reminders to new events synced without VALARM
v23.1.9
New Features:
• Contact anniversaries: automatically sync anniversaries from your contacts with customizable reminders
• Configurable sync lookback: choose how far back to sync events (90 days, 6 months, 1 year, 2 years, or all)
• Week numbers: optional week numbers in the month calendar grid
v23.1.2
v23.1.1
v23.0.0
What's New
- Device Calendar Integration: See your phone's calendar in KashCal alongside iCloud, CalDAV, and ICS
- Zoho CalDAV: Zoho calendar verified working
- Multi-Home-Set: Support for CalDAV servers with multiple calendar-home-set URLs
Plus many bug fixes and performance improvements.
v22.5.15
Fix: False parse-failure counting for VTODO/VJOURNAL
CalDAV sync-collection returns hrefs for all resource types (VEVENT, VTODO, VJOURNAL), but KashCal only syncs VEVENTs. Non-event resources were falsely counted as parse errors, causing:
- Sync token held for 3 retry cycles (wasted bandwidth)
- Session status showed PARTIAL instead of SUCCESS
- "⚠ N failed to parse" warnings in Sync History
- Resources permanently "abandoned" after max retries
Fix: Detect VTODO/VJOURNAL/VFREEBUSY resources before counting parse errors. Non-event resources are now silently skipped.
Affected servers: Nextcloud, SOGo (any server with mixed VEVENT+VTODO calendars). iCloud unaffected (separates Reminders into filtered VTODO-only calendar).
v22.5.14
Changes
Features
- Support multiple calendar-home-set URLs per RFC 4791 (#70)
- Handle CalendarContract VIEW/EDIT intents for launcher compatibility
Fixes
- Stop applying default reminders to CalDAV-synced events (#74)
- Default "Start Week On" to system locale instead of Sunday
Tests
- Add coverage for birthday sync, RRULE edge cases, ICS export, and location suggestions
- Add coverage for first day of week system default (#71)
- Add edge case coverage for CalendarContract intent parsing
v22.5.13
Batched concurrent multiget for large calendar sync
Zoho CalDAV compatibility fixes
Fix trimIndent() XML corruption in fetchEventsByHref (iCloud 400, Nextcloud 500)
Fix CalDAV sync trigger for non-iCloud accounts
Tests: 133+ new unit tests, Docker server integration tests, diagnostic tests