TaskNotes 4.0.0-beta.3
Beta Release
You may encounter issues. Report problems on GitHub Issues.
Added
-
Updated task card styling
- Increased status dot size from 16px to 18px
- Added subtle shadows and transitions to card hover states
- Updated hover effects on status and priority dots with scaling and removed glow
- Modified metadata pills with backdrop blur and adjusted spacing
- Added box shadows to interactive elements (dates, projects, tags) on hover
- Updated animations to use cubic-bezier easing
- Added gradient accents to subtask and blocking task borders
- Fixed subtasks appearing behind parent card hover backgrounds
- Fixed subtask click and context menu events bubbling to parent cards
- Fixed subtasks inheriting parent priority and status colors
-
(#361) Added completion-based recurrence support with
recurrence_anchorfield- Tasks can now recur based on completion date instead of scheduled date
- Set
recurrence_anchor: completionin task frontmatter to enable this behavior - When completing a recurring task, the next occurrence will be scheduled relative to the completion date
- The DTSTART in the RRULE automatically updates to the completion date, ensuring calendar views show future occurrences at the correct dates
- Defaults to
scheduled(original behavior) if not specified - Useful for tasks like "Exercise weekly" where you want the next occurrence 7 days after you actually complete it, not 7 days after it was scheduled
- Example: Complete a weekly task 2 days late, and the next occurrence will be 7 days from the completion date (not the original scheduled date)
- Thanks to @luciolebrillante for the original feature request, and @jhedlund, @nschenone, @BryanWall, @realJohnDoe, and @kazerniel for additional input and interest
-
(#416) Added support for skipped recurrence instances with
skipped_instancesfield- Recurring tasks can now have individual instances marked as "skipped" without completing them
- Skipped instances are stored in the
skipped_instancesfrontmatter array (e.g.,["2025-11-15", "2025-11-22"]) - Right-click on a recurring task instance in calendar views to skip/unskip it
- Visual styling differentiates skipped instances:
- Calendar views: Gray background with muted appearance
- Task cards: Strike-through text with gray styling
- Skipped instances don't affect the recurrence pattern - future instances continue as scheduled
- Useful for holidays, vacations, or other planned exceptions to recurring tasks
- Thanks to @mdbraber for the suggestion to use an array similar to
complete_instances, and @jerzy-dudzic for reporting the issue
Fixed
-
(#893) Fixed yearly recurring tasks not always updating scheduled date to next occurrence when completed
- Increased look-ahead period for yearly recurrence from 365 days to 800 days (~2.2 years)
- Also optimized look-ahead periods for other frequencies: daily (30 days), weekly (90 days), monthly (400 days)
- Ensures the next occurrence is always found when completing recurring task instances
- Thanks to @VenturaNotes for reporting
-
(#951) Fixed yearly recurring tasks not showing up in calendar's weekly, 3-day, or day views
- Extended the look-ahead period for yearly recurring tasks when generating calendar instances
- Calendar views now look ahead ~2.2 years for yearly tasks to ensure occurrences appear even in short date ranges
- Only displays instances that fall within the actual visible calendar range
- Weekly recurring tasks were unaffected and continued to work correctly
- Thanks to @bespokecomp for reporting
-
(#889) Fixed git merge conflicts in calendar subscription metadata
- Calendar subscription
lastFetchedandlastErrorfields are now stored in memory instead of being saved to disk - Prevents git conflicts when syncing vaults across multiple computers that independently fetch calendar subscriptions
- The "last synced" timestamp in settings will reset on plugin reload, but subscriptions will re-fetch automatically
- Thanks to @karlfrohlich for reporting
- Calendar subscription
-
Fixed recurrence modal not loading DTSTART date/time when editing existing recurrence rules
- The custom recurrence modal now correctly parses and displays the start date and time fields
- Fixed parser that was splitting on
=instead of:for DTSTART values
-
(#1097) Fixed custom properties and formulas not displaying in Bases views
- Updated TaskCard to use Bases API's getValue() method for formulas and custom note properties
- Formulas now work correctly using
formula.NAMEsyntax - Custom note properties now work correctly using
note.PROPERTYsyntax - Thanks to @cathywu for reporting
-
(#1099) Fixed issues with default Bases file creation
- Fixed double-prefix bug in relationships template that generated invalid filter expressions like
note.note.projects - Fixed race condition where files created during plugin load wouldn't appear in file explorer
- Default Bases files now generate with correct property paths and appear reliably in the file explorer
- Thanks to @kmaustral for reporting
- Fixed double-prefix bug in relationships template that generated invalid filter expressions like
-
(#1110) Fixed open recurring tasks appearing crossed out in Tasks view
- Removed stale
selectedDateproperty that was never updated in v4 - Tasks view now uses fresh UTC-anchored "today" for correct recurring task completion status
- Fixes issue where tasks completed yesterday would appear crossed out today for users in positive UTC offset timezones
- Also fixed KanbanView to use UTC-anchored dates for consistency
- Thanks to @kmaustral for reporting
- Removed stale
-
(#1118) Fixed user-defined fields not working in inline task conversion
- User-defined fields like
>customfield valuenow properly convert to frontmatter when using the "TaskNote: Convert task to TaskNote" command - Fixed fields appearing with internal IDs (e.g.,
field_1761435101864) instead of configured frontmatter key names - Array values are now properly joined with commas
- Added
userFieldsproperty toParsedTaskDatainterface to support custom fields throughout the conversion flow - Thanks to @guncav for reporting
- User-defined fields like
-
Fixed kanban column width CSS constraints not matching settings
- Updated CSS min-width from 280px to 200px and max-width from 350px to 500px to match slider range
- Column width slider now works correctly across the full 200-500px range
-
Kanban view now shows empty columns for all user-defined statuses when grouping by status
- Empty columns appear for custom statuses defined in settings, even when no tasks have that status
- Allows users to drag tasks into empty status columns
- Works in both flat kanban view and swimlane mode
- Respects the existing "Hide empty columns" setting
- Thanks to @williamcheuk03 for reporting this issue