github marco308/mdone v1.1.2
mDone 1.1.2

latest releases: v1.22.0, v1.21.0, v1.20.0...
one month ago

Added

  • Sort tasks by due date, priority, or title with ascending/descending toggle on iOS and macOS (#48)
  • Expanded unit test coverage for APIClient, TaskService, ProjectService, and SyncService
  • MockURLProtocol test helper for network request testing without real API calls
  • Tests for network error handling, token expiry, pagination, date decoding edge cases
  • Tests for all VTask computed properties (isOverdue, isDueToday, isDueTomorrow, isDueThisWeek, repeatDescription)
  • Tests for cached model round-trips, updates, and label preservation
  • Automatic retry with exponential backoff for transient API failures (timeouts, rate limits, server errors)

Changed

  • Error messages are now user-friendly with clear guidance instead of technical details
  • Added error banner component that displays contextual icons, recovery suggestions, and retry actions
  • Network, auth, and server errors are mapped to actionable messages (e.g., "You're offline. Your changes will sync when you're back online.")

Fixed

  • Task descriptions created in Vikunja's web UI now render as formatted text (lists, links, bold) instead of raw HTML markup; description preview is shown by default when a description is present (#56)
  • Crash when opening a project whose tasks have duplicate task_positions rows on the Vikunja server; the duplicates are now ignored on the client (#54)
  • macOS: Clicking a task in the Inbox now opens the detail view
  • iOS: App no longer drops server connections when briefly switching to another app; in-flight requests now finish in the background (#49)
  • App automatically refreshes data when returning to the foreground
  • macOS: Calendar permission prompt now appears immediately after login instead of only when navigating to the Calendar tab
  • Improved calendar privacy purpose string with a specific usage example per App Store guidelines
  • macOS: Added missing calendars entitlement required for App Store sandbox compliance
  • VoiceOver accessibility across all screens: added descriptive labels to interactive controls, task rows, calendar cells, focus timer, and notification bell
  • Added accessibility grouping to task rows, project rows, notification rows, and empty states so VoiceOver reads them as coherent elements
  • Added header traits to section headers and calendar month title
  • Marked decorative elements (priority color bars, status dots, icons) as hidden from accessibility
  • Replaced hardcoded font sizes with @ScaledMetric for Dynamic Type support in focus timer, empty states, and setup screen
  • Replaced hardcoded notification badge font size with semantic .caption2 for Dynamic Type scaling
  • Added toggle trait to task completion checkbox buttons
  • Added selected trait to active filter chips and calendar day cells

Full changelog: CHANGELOG.md

Don't miss a new mdone release

NewReleases is sending notifications on new releases.