Releases: callumalpass/tasknotes
3.17.0
TaskNotes 3.17.0
Major Features
Enhanced Recurring Tasks with DTSTART Support
This release introduces improvements to recurring task handling with full DTSTART (start date/time) integration, addressing long-standing challenges in recurring task management and filtering.
Background and Motivation:
The previous recurring task system created difficulties for users in filtering and managing task schedules. Users experienced unintuitive behavior where recurring tasks couldn't be treated consistently with regular tasks, making it challenging to see when the next occurrence would appear or to dynamically update task schedules upon completion. This implementation follows RFC 5545 standards to provide a better foundation for recurring task behavior. Thanks to @jpmoo and @kmaustral for their discussion of the challenges of the previous implementation (#237) , and to @Volker-brdb and @nightroman for the issue (#336)
Key Improvements:
- DTSTART Integration: All recurring tasks now include proper start dates and times in their recurrence rules, ensuring consistent behavior across timezones and providing a clear anchor point for the recurring pattern
- Dynamic Date Updates: The
task.scheduledfield now always shows the next uncompleted occurrence, automatically updating when tasks are completed rather than showing static pattern dates - Flexible Next Occurrence Scheduling: The next scheduled occurrence can now be placed anywhere - before the pattern start date, outside the recurring pattern, or at any custom time, giving users complete control over scheduling
- Visual Hierarchy: Pattern instances display with dashed borders while the next scheduled occurrence shows with solid borders, providing clear visual distinction between the recurring pattern and the active next task
- Independent Time Control: Pattern instances and next occurrences can have different times (e.g., daily pattern at 9 AM, next occurrence at 2:30 PM), allowing for exceptions without breaking the recurring pattern
- Dual Drag Behavior: Dragging pattern instances updates the recurring pattern timing globally, while dragging the next occurrence reschedules only that specific instance
- Automatic DTSTART Addition: The system automatically adds DTSTART when completing recurring tasks, editing recurrence rules, or converting tasks to recurring, ensuring backward compatibility while upgrading task definitions
- Manual Rescheduling Support: Clear flags indicate when tasks have been manually rescheduled, maintaining transparency about schedule modifications
Expandable Project Subtasks
A new feature allows users to expand project task cards to view subtasks inline with proper visual hierarchy.
Features:
- Chevron Controls: Click chevron icons on project task cards to expand/collapse subtask display
- Configurable: New "Show expandable subtasks" setting allows users to enable/disable the feature
Responsive Pomodoro View
The Pomodoro view now adapts to different container sizes with comprehensive responsive design.
Thanks to @oliverlalan for requesting this improvement (#339).
Enhanced Filename Templates
Significant expansion of available template variables for task creation, providing much greater flexibility in filename patterns.
New Template Variables:
- Date/Time Variations: shortDate, monthName, dayName, week, quarter, time12, time24
- Unix Timestamps: unix (seconds), unixMs (milliseconds)
- Title Case Variations: titleLower, titleUpper, titleSnake, titleKebab, titleCamel, titlePascal
- Short Forms: priorityShort, statusShort for single-letter representations
- Unique Identifiers: zettel (Zettelkasten ID), nano (high-precision unique ID)
The settings UI now documents all 40+ available template variables for easy reference.
Thanks to @fastrick for the original unix timestamp request.
Bug Fixes
Critical Timezone Handling Fixes
This release resolves multiple timezone-related bugs that affected users worldwide, particularly those in non-UTC timezones. These fixes implement the "UTC Anchor" principle for consistent date handling.
Major Timezone Bugs Fixed:
- Recurring Task Completion: Fixed critical issue where marking recurring tasks complete would affect the wrong day for users in certain timezones, addressing reports from multiple users including issues #327, #322, and #314
- Calendar Date Misalignment: Resolved off-by-one day errors in calendar rendering and task indicators, addressing inconsistencies across different views (originally reported by @Crunchnuggetz in issue #129, with additional reports from @donjjones and @robmikulec)
- Weekly Task Display: Fixed issue where weekly recurring tasks set for specific days (e.g., Tuesdays) were showing completion dates on the wrong day (Monday) - reported by @jpmoo in issue #322
- Task Completion Date Bug: Resolved bug where
complete_instanceswas being set to the previous day, causing tasks to remain visible in Agenda view until manually corrected - reported in issue #314 - Date Parsing Inconsistencies: Eliminated mixing of UTC and local date parsing that caused timezone-dependent behavior across the application
- Filter Date Handling: Fixed date filtering to work consistently across all timezones
- Agenda View "Today" Detection: Corrected timezone-sensitive today detection that affected agenda headers
- ICS Import Timezone Issues: Resolved timezone problems with both recurring and single events from ICS imports
Technical Implementation:
- Introduced
parseDateToUTC()function for consistent UTC anchoring of date-only strings - Updated date comparison functions to use UTC anchors throughout
- Replaced timezone-sensitive date operations with consistent UTC-based alternatives
- Comprehensive audit and fix of all date handling patterns in the codebase
Project Filtering Improvements
Resolved critical bugs in project filtering that prevented proper task display and project selection.
Fixes:
- Wikilink Resolution: Fixed handling of relative vs absolute project wikilinks (e.g.,
[[../Projects/My Project]]vs[[My Project]]) - thanks to @xorander00 for the detailed bug report - Filter Grouping Logic: Corrected AND/OR grouping in project filters to prevent showing too many tasks
- Missing Projects: Fixed issue where not all projects appeared in filter dropdown selection
- Cache Management: Improved cache invalidation and project name extraction with better validation
Subtask Widget Improvements
Fixed several issues with the project subtasks widget affecting user experience and reliability.
Widget Fixes:
- View State Persistence: Fixed issue where subtask widget views would reset when switching between notes or modifying subtasks (reported by @Poly-0000 in issue #329)
- Filter State Isolation: Prevented filter settings from bleeding between different notes' subtask widgets
- Configurable Positioning: Added setting to control widget placement at top or bottom of notes (requested by @michelebugio in issue #164)
- Event Listener Management: Improved cleanup to prevent memory leaks and event accumulation
- Event Bubbling: Fixed issue where clicking subtasks would trigger both subtask and parent task modals
- Styling Isolation: Prevented completion styles from affecting nested subtasks incorrectly
ICS Calendar Integration
Timezone Processing: Fixed timezone handling bug in ICS calendar subscriptions where VTIMEZONE components weren't being registered before parsing events, causing incorrect display times for timezone-specific calendar events.
Performance and Reliability
Cache Optimization: Restored FilterService cache TTL to 30 seconds after temporary reduction, balancing performance with data freshness.
Type Safety: Added proper type assertions for ICAL.TimezoneService calls to resolve TypeScript compilation issues.
Error Handling: Enhanced error handling and null safety checks throughout project filtering and service initialization.
Technical Improvements
UTC Anchor Implementation
Comprehensive implementation of the UTC Anchor principle for robust timezone handling:
- All date-only strings now consistently parsed as UTC anchors
- Date comparison operations standardized using UTC methods
- Eliminated timezone-dependent date creation patterns
- Added comprehensive timezone test coverage
Service Architecture
Expanded Projects Service: Enhanced state management and tracking for expandable project subtasks with proper cleanup and memory management.
View State Manager: Improved view state persistence across different contexts and note switches.
Documentation Updates
- Updated recurring tasks documentation to reflect new behavior
- Added timezone handling guides for developers
- Enhanced calendar views documentation with drag behavior explanations
- Comprehensive template variable documentation
Breaking Changes
Date Handling: While maintaining backward compatibility for user data, the internal date handling now consistently uses the UTC Anchor principle.
Migration Notes
Existing recurring tasks will continue to work without modification. The system automatically adds DTSTART components when users interact with recurring tasks (completing, editing, or rescheduling).
3.16.4
TaskNotes 3.16.4
Bug Fixes
User Interface
- Task Modal Title Field: Fixed regression from version 3.16.3 where the title field was inadvertently removed from all task modals. The title field is now properly displayed with correct visibility logic:
- Edit modals: Title field always visible in the details section
- Create modals with natural language input enabled: Title field visible in details section (as the main input becomes the NLP textarea)
- Create modals with natural language input disabled: Title field only appears at the top of the modal
3.16.3
TaskNotes 3.16.3
Bug Fixes
User Interface
- Create Task Modal Accessibility: Fixed UI issues when creating tasks with natural language input disabled. The modal now opens in an expanded state with immediate access to all input fields, eliminating the need to click or tab before entering task details [#324] - Thanks to @nightroman for reporting this usability issue
Timezone Handling
- Recurring Task Calendar Display: Fixed timezone-related display bug where recurring tasks appeared on the wrong day for users in negative UTC timezones. Tuesday tasks no longer incorrectly appear on Monday in the calendar view
- Task Completion Calendar: Improved timezone consistency in the TaskEditModal completion calendar to ensure dates display correctly across all timezones
Task Conversion
- Context Detection in Instant Tasks: Fixed instant task conversion to properly detect and preserve contexts specified with "@context" syntax when converting inline tasks to TaskNotes [#320] - Thanks to @nslee123 for reporting this issue
- Time Preservation: Fixed instant task conversion to preserve time information when converting tasks with scheduled or due times. Time components are now correctly carried over during the conversion process
Improvements
Code Quality
- Test Coverage: Added unit tests for InstantTaskConvertService context detection to ensure reliable context parsing in future releases
3.16.2
TaskNotes 3.16.2
New Features
Task Link Integration
- Markdown Link Support for Inline Task Widgets: Extended task link detection and rendering to support both wikilinks and markdown links. The plugin now properly renders
[text](path)markdown links as interactive inline task widgets in both live preview and reading modes [#312] - Thanks to @nightroman for noting the missing link overlays on markdown links
Improvements
Link Processing
- Link Detection: Improved TaskLinkDetectionService to detect both
[[wikilinks]]and[markdown](links)with proper URL decoding for paths containing spaces - Link Rendering: Updated both TaskLinkOverlay (live preview) and ReadingModeTaskLinkProcessor (reading mode) to handle both link types consistently
- API Integration: Uses proper Obsidian API functions (
parseLinktext()andgetFirstLinkpathDest()) for reliable link resolution
3.16.1
TaskNotes 3.16.1
New Features
Task Management
- Visual Filter State Indicators: Added visual state indicators for active saved views in FilterBar to provide better feedback when a saved view is currently active
Bug Fixes
Link Generation and Consistency
- Obsidian Link Format Compliance: Fixed "Insert tasknote link" and "Convert task to TaskNote" commands to use Obsidian's native generateMarkdownLink method, respecting user's link format preferences in Files & Links settings [#312] - Thanks to @nightroman for reporting the inconsistency and requesting proper format support
- Consistent Link Formatting: Both commands now generate links in the same format and are compatible with external tools when markdown links are preferred
Timezone and Date Handling
- Recurring Task Completion Fix: Resolved critical timezone bug where recurring task completion dates were stored incorrectly in non-UTC timezones [#314] - Thanks to @kmaustral for detailed reporting and testing across multiple views
- UTC Date Consistency: Updated all date utilities to use UTC methods consistently across calendar components, fixing off-by-one date issues in task completion tracking
- Calendar Date Normalization: Added createSafeUTCDate utility function and converted MiniCalendarView navigation to UTC methods for reliable date handling
User Interface
- Sort Arrow Visibility: Enhanced sort direction arrow visibility and positioning in filter condition builder with increased font size, bold weight, and accent color [#307] - Thanks to @kmaustral for noting the arrow was difficult to see in dark mode
- Duplicate Tooltip Prevention: Removed duplicate tooltips on recurring task indicators by using Obsidian's native setTooltip function instead of HTML title attributes
- Pointer Cursor Consistency: Added pointer cursor styling to all buttons in Pomodoro view for better usability [#308] - Thanks to @anomatomato for the contribution
Error Handling and Stability
- Daily Note Creation Protection: Added proper error handling for createDailyNote failures across TimeblockCreationModal, PomodoroService, and helper utilities, preventing "Cannot read properties of undefined" errors
- Security Compliance: Replaced unsafe innerHTML assignment with textContent in drag handle creation to resolve ESLint security violations
Improvements
User Interface
- Calendar Styling Enhancements: Improved advanced calendar view with better borders, header text readability, and removed custom scrollbar styling for system consistency
- Enhanced Visual Definition: Added border and border radius to calendar container, plus consistent borders on column headers and toolbar for cleaner appearance
Development and Code Quality
- Test Infrastructure: Added missing setTooltip mock to resolve 39 failing TaskCard tests
- Documentation Updates: Improved documentation formatting and appearance
Technical Improvements
- Enhanced date handling throughout the codebase with UTC method standardization
- Improved defensive programming practices for timezone-sensitive operations
- Better error messaging for daily note creation failures
- Code security improvements with ESLint compliance
3.16.0
Release Notes 3.16.0
New Features
Task Management
- Bulk Task Conversion: Added command to convert all checkbox tasks in a note to TaskNotes at once (#28) - Thanks to @TheSnakePolyglot for the feature request
- Instant Task Conversion Enhancement: Enable instant task conversion for any line type, not just existing tasks (#259, #262) - Thanks to @ghelton and @cathywu for the suggestions
- Default Project Setting: Added option to set a default project for new tasks in task creation settings (#250) - Thanks to @davidszerman for the request
- Advanced Tag and Project Parsing: Implement intelligent parsing of tags and projects during instant task conversion
- Enhanced Filter Bar Integration: Added FilterBar integration to subtask widget for better task organization
Calendar and Views
- Custom Multi-Day Calendar View: Added configurable custom multi-day calendar view with support for 3-day, work week, and full week layouts (#282) - Thanks to @girisumit for the feature request
- Responsive Calendar UI: Hide calendar title in narrow containers for better responsive design (#285) - Thanks to @girisumit for the improvement suggestion
- Locale-Aware Date Formatting: Added locale-aware date formatting to advanced calendar view (#210) - Thanks to @emes81 for highlighting this usability issue
- Saved Views Enhancement: Added view options support to saved views with active view name display in filter condition builder (#245) - Thanks to @kmaustral for the feedback
Task Organization
- Drag and Drop Status Reordering: Added drag and drop reordering for status configurations with hamburger menu icon (#291) - Thanks to @23426356587 for the suggestion
- Overdue Tasks Filter: Added setting to hide completed tasks from overdue status display (#300) - Thanks to @lankly for reporting the issue
- Project Group Enhancements: Made project group labels clickable in Task List View with ctrl+hover preview support (#198) - Thanks to @jpmoo for the suggestion
Pomodoro Timer
- Background Timer Continuity: Pomodoro timer now continues running when app is minimized or loses focus (#136) - Thanks to @Poly_0000 for reporting and @Totobal5 for the fix
- System Notifications: Convert Pomodoro notices to system notifications for better visibility (#136)
- Manual Duration Adjustment: Fixed manually adjusted Pomodoro duration being ignored on start (#293) - Thanks to @Totobal5 for identifying and fixing
- Task Completion Sorting: Sort completed tasks to end of Pomodoro task selector for better organization
Bug Fixes
UI and Interaction
- Tooltip Standardization: Standardized tooltips to use Obsidian's native setTooltip function to eliminate duplicate tooltips (#257) - Thanks to @digitaldoctors for the bug report
- Open Note Button Stability: Stabilized Open note button hover behavior and made font size consistent with other modal buttons
- Date Context Menu Clarity: Added titles to date context menus for better user clarity (#253) - Thanks to @digitaldoctors for the suggestion
- Project Removal: Fixed project removal in edit modal not saving changes properly (#213)
- Advanced Calendar Resizing: Fixed Advanced Calendar view not resizing correctly in detached windows (#137) - Thanks to @macbikegeek for reporting and @Totobal5 for the fix
Calendar and Recurring Tasks
- Timezone Bug Fixes: Resolved multiple timezone-related off-by-one bugs in recurring task completion and agenda view display - A big thanks to @jpmoo and @kmaustral for reporting and describing in detail this bug
- Custom Calendar Display: Fixed undefined days display in custom calendar view
- Calendar Recurrence: Resolved timezone-based off-by-one bugs in calendar recurrence calculations - Thanks to @jpmoo and @kmaustral for reporting this bug
Task Management
- Pomodoro Task Tracking: Handle task filename changes in pomodoro view to prevent tracking issues (#289) - Thanks to @cathywu for the report
- Plugin Conflict Protection: Made suggestion objects defensive against potential plugin conflicts (#304) - Thanks to @zeltak for reporting the plugin conflict
- Instant Conversion Improvements: Use cleaned title for NLP parsing in instant task conversion with fallback to default tasks folder (#128) - Thanks to @bepolymathe for reporting the folder issues
Improvements
User Interface
- Minimalist Design System: Implemented consistent borderless button design system across all components
- UI Polish: Applied minimalist styling with cleaned up borders and shadows throughout the interface
- Settings Enhancement: Enhanced settings explanatory sections with improved minimalist styling
- Advanced Calendar Title: Made advanced calendar title smaller for better proportions
Search and Filtering
- Enhanced Search: Improved search functionality to preserve existing filters when performing new searches
- Filter Preservation: Better handling of filter states across different search operations
Development and Code Quality
- Code Documentation: Improved code comments and documentation throughout the codebase
- Linting Cleanup: Resolved various linting errors and improved code consistency
- Test Infrastructure: Updated timezone-related tests to work reliably in CI environment
- GitHub Actions: Added timeouts and offline preferences to improve CI reliability
Technical Improvements
- Reduced excessive console logging from filter components
- Updated Jest coverage thresholds to realistic levels
- Improved error handling in various components
- Improved defensive programming practices throughout the codebase
Contributors
Extra thanks to @Totobal5 for multiple code contributions including Pomodoro timer fixes and advanced calendar resizing fixes
3.15.1
Release 3.15.1
New Features
Kanban Board Enhancements
- Show Empty Status Columns: Kanban board now displays empty columns for all configured statuses, providing better visual structure and workflow clarity
- Enhanced Task Grouping: Introduced GetGroupedTasksOptions interface for improved task grouping functionality with target date support and group pre-population [#236] - Thanks to @srcnDev for the implementation
Calendar Improvements
- All-Day Event Styling: Added line-through styling for completed all-day events in the Advanced Calendar view [#252, #254] - Thanks to @anomatomato for reporting the issue and submitting the PR
- Task Event Customization: Task events in the Advanced Calendar now include CSS classes based on their tags (e.g.,
fc-tag-meeting,fc-tag-work), enabling custom styling per tag [#243, #244] - Thanks to @jradam for the feature request and implementation
Bug Fixes
Kanban Board
- Duplicate Column Prevention: Fixed issue where renaming existing statuses in Kanban configuration could result in duplicate columns appearing in the board [#258] - Thanks to @mat2022a for the bug report
Subtask Widget Issues
- Split Pane Display: Resolved issue where subtask widgets would inappropriately appear on notes in split panes when focusing on different notes [#234]
- Table Cell Interference: Fixed subtask widgets appearing inside table cells when editing tables in project notes [#207]
Technical Changes
Documentation
- Fixed line break formatting issues in documentation files
Code Organization
- Improved task grouping architecture with new options interface
- Enhanced calendar event rendering system for better tag-based customization
- Refined subtask widget positioning logic for better editor integration
3.15.0
Release 3.15.0
New Features
NLP Input Enhancements
- Auto-suggestions: Added autocomplete functionality for tags and contexts in NLP input [#131] - Thanks to @Poly-0000 for the suggestion
- Project Auto-suggestions: Enhanced project auto-suggestions with rich display and field mapper integration
- Context and Tag Suggestions: Implemented auto-suggestion system to prevent typos and improve consistency [#131]
Calendar Integration
- ICS Event Integration: Added comprehensive ICS calendar event support with content creation capabilities [#122, #220] - Thanks to @donjjones and @Crunchnuggetz for the feature requests
- ICS Event Creation: Integrated ICS events into field mapping and type system for note creation [#122, #220]
- ICS Settings: Added ICS integration settings to calendar tab
- Calendar Hover Previews: Implemented hover preview functionality for advanced calendar - Thanks @nightroman for noticing this
- Time Entry Interaction: Added time entry interaction functionality to advanced calendar
Time Management
- Auto-stop Tracking: Added automatic time tracking termination when tasks are completed - Thanks to @cathywu for the suggestion [#184]
- Total Tracked Time: Enhanced edit modal to display total tracked time information [#181] - Thanks to @bcohen44 for the feature request
- Pomodoro View: Added task card display and improved controls to pomodoro view [#184]
- Timeblock Management: Enhanced TimeblockInfoModal with editing and deletion capabilities [#74] - Thanks to @bepolymathe for the suggestion
User Interface Improvements
- Fuzzy Note Pickers: Enhanced note pickers with title and alias support [#192] - Thanks to @Poly-0000 for the feedback
- Persistent Column Ordering: Added persistent column ordering to kanban board [#61] - Thanks to @slepsl for the suggestion
- Click-outside Support: Added click-outside and keyboard support to filter bar [#227] - Thanks to @cstelmach for the UX improvement request
- UI Polish: Removed unnecessary borders, shadows and transitions from various UI elements
Bug Fixes
Task Management
- Nested Tags: Fixed support for nested tags in FilterBar
- TypeError Resolution: Resolved TypeError when calling includes on non-array values
Calendar Integration
- Default Time Estimate: Fixed calendar click-to-add operations to respect default time estimate setting [#233] - Thanks to @nightroman for the bug report
- Time Slot Duration: Improved click detection in calendar to use time slot duration setting [#233]
Documentation
- Auto-suggestion Documentation: Added comprehensive documentation for auto-suggestion functionality
- ICS Integration Guide: Created detailed ICS calendar integration documentation
- Release Notes: Added comprehensive release notes documentation with links to all versions
- Inline Task Widget: Added screenshots and documentation for inline task widgets
Technical Changes
Code Organization
- Enhanced service architecture for ICS integration
- Improved field mapping system for calendar events
- Optimized auto-suggestion algorithms
- Enhanced type definitions for new functionality
Performance
- Improved rendering performance for pomodoro view
- Optimized calendar event handling
- Enhanced note picker search capabilities
3.14.0
Release 3.14.0
New Features
Project Management Enhancements
- Project Indicator Icons: TaskCard now displays visual indicators when tasks are used as projects [#191] - Thanks to @Poly-0000 for the suggestion
- Project Filtering: Added comprehensive project filtering functionality to the main plugin [#191]
- Create Subtask Option: Added "Create subtask" option to task card context menu for improved project workflow [#192] - Thanks to @Poly-0000 for the feature request
- Project Detection: Enhanced ProjectSubtasksService with isTaskUsedAsProject method for better project identification [#191]
User Interface Improvements
- Drag-and-Drop Saved Views: Implemented drag-and-drop reordering for saved views to improve workflow customization [#203] - Thanks to @jpmoo for the suggestion
- Project Styling: Added CSS styling for project indicator icons to improve visual hierarchy [#191]
- Created Date Sorting: Added 'Created Date' as a sort key option for better task organization [#188] - Thanks to @bl4z3ng41n for the PR
Bug Fixes
Calendar and Recurring Tasks
- Calendar Resize Support: Fixed duration updates for recurring tasks via calendar resize operations
- All-Day Handling: Improved recurring task all-day handling in calendar view [#201] - Thanks to @anomatomato and @bespokecomp for reporting
Settings and State Management
- Pomodoro Session Persistence: Fixed issue where pomodoro sessions were being cleared when changing settings [#196] - Thanks to @anomatomato for the bug report
Technical Changes
Performance and Stability
- Enhanced cache management and event handling for project-related functionality
- Improved error handling in project subtask operations
- Optimized project detection algorithms for better performance
Code Organization
- Refactored project-related services for better modularity
- Enhanced TypeScript type definitions for project functionality
- Improved service initialization and cleanup processes
Documentation
- Updated README with new project assets and feature documentation
3.13.4
Release Notes - 3.13.4
Bug Fixes
FilterBar Migration Issues
- Fixed critical TypeError crashes when upgrading from versions prior to 3.13.0
- Resolved
Cannot read properties of undefined (reading 'forEach')andCannot read properties of undefined (reading 'find')errors in FilterBar rendering - Added detection for old FilterQuery format and automatic replacement with fresh defaults
- Users upgrading from older versions now get clean filter states instead of broken data structures
- Preserved valid sort and grouping settings when replacing incompatible filter data
- Added error boundaries with console warnings for better debugging
Thanks to @cathywu, @Crunchnuggetz, @Poly-0000, @jpmoo and finally @bcohen44 for reporting the FilterBar crashes that led to identifying these migration issues.
Features
Calendar View Improvements
- Added ICS refresh button directly in the Advanced Calendar view toolbar
- ICS calendar subscriptions can now be refreshed without opening settings
- Button integrates with existing ICS subscription service and triggers immediate calendar re-render
- Improved ICS settings layout with horizontal button arrangement
- Enhanced calendar styling with proper hover states and removed unnecessary CSS overrides
- Extended today highlight disable to timegrid columns for visual consistency
Notes
This release focuses on stability improvements for users upgrading from older versions. The FilterBar migration fixes ensure that users moving from pre-3.13.0 versions will have a smooth experience with the new filtering system introduced in 3.13.0.
The ICS refresh button provides better user experience by allowing calendar data to be updated directly from the calendar view without navigating to settings.