Obsidian plugin · 4.12.3

TaskNotes 3.18.2

Fixed timeblocks appearing one day earlier than expected by implementing the UTC Anchor pattern throughout the timeblocking feature. The previous implementation used problematic...

Bug Fixes#

Timeblock Date Shift Issue (#368)#

Fixed timeblocks appearing one day earlier than expected by implementing the UTC Anchor pattern throughout the timeblocking feature. The previous implementation used problematic millisecond-based date iteration that caused timezone-dependent date shift bugs.

Timeblocks now appear on the correct calendar day regardless of user timezone or DST transitions.

Thanks to @zolotyh-dk for reporting this issue with detailed screenshots and system information.

Performance Issues with Task Views#

Eliminated typing lag that occurred when Task, Agenda, and Kanban views were open in large vaults. The plugin was triggering unnecessary view updates during text editing.

New Features#

Enhanced Filename Template Variables (#370)#

Added new timestamp variables for filename templates to support ISO 8601 formats and Google Keep compatibility:

  • {milliseconds}, {ms} - 3-digit milliseconds (000-999)
  • {timezone}, {utcOffset} - UTC offset in ±HH:MM format
  • {timezoneShort}, {utcOffsetShort} - UTC offset in ±HHMM format

Thanks to @mnipritom for requesting these variables.

Boolean Property Identification#

Enhanced property-based task identification to handle boolean values correctly. Tasks can now be identified using boolean properties in frontmatter.

A big thanks to @renatomen for contributing the boolean property identification implementation, documentation, and test coverage

Boolean Status Field Support (#108)#

Added automatic boolean conversion for status values to support Obsidian's checkbox property format. The status field now handles boolean true/false values:

  • String "true" → boolean true (in frontmatter)
  • String "false" → boolean false (in frontmatter)
  • Boolean true → string "true" (when read back)
  • Boolean false → string "false" (when read back)
  • Other status values remain unchanged as strings

Thanks to @arminta7 for reporting the checkbox property compatibility issue and @imed-ghomari for contributing to the discussion on status field handling. And thanks again to @renatomen--the boolean property identification fix inspired this change!