github callumalpass/tasknotes 5.0.0-beta.5

pre-release3 hours ago

TaskNotes 5.0.0-beta.5

[!info] TaskNotes v5 beta

This is an opt-in beta. TaskNotes 4.13.8 remains the recommended stable release.

Before updating

  • This beta requires Obsidian 1.13.1 or newer. See the v4 to v5 upgrade guide for first-launch changes and returning to v4.
  • Back up the complete vault and finish syncing before upgrading mdbase metadata. Avoid simultaneous metadata updates on other devices, especially on mobile; see the limitations below.
  • Connecting TaskNotes App still requires its one-time Set up and allow access consent. Compatible metadata alone does not install the App's packs.
  • Existing Base files are unchanged unless you run Update default base files. Updating them adds the new review views and archive filters described below.
  • The Statistics and Pomodoro statistics dashboards have been removed. Close any old statistics tabs after upgrading; time tracking, Pomodoro history and existing Base files are retained.

Added

  • Added Check collection to report invalid task records without changing notes. After confirmation and a verified backup, it can fill missing creation dates from file creation times and apply status replacements you choose. Other errors require manual review. See Migration checks.
  • Added Today and Inbox commands for the configured tasks Base, plus Inbox and Archived views in newly generated defaults. See Views.
  • Added support for Firefox extension origins when accessing the authenticated local HTTP API.

Changed

  • Newly generated tasks Bases open on Today. Active default task, Kanban and calendar views exclude the configured archive tag. Existing Base files remain unchanged unless you explicitly update them. See Default Base Templates.
  • New installs show Create task, Tasks and Calendar ribbon actions; other views remain available through commands and Obsidian's ribbon configuration. Existing ribbon preferences are retained.
  • The starter note now introduces creating, reviewing and completing a task in the selected interface language. Starter guidance and upgrade hints use the native v5 settings routes.
  • Google Calendar sync commands appear only when task export is enabled; current-task sync also requires an active task note.
  • Natural language selectors for tags, contexts, projects and custom fields now require start-of-input or preceding whitespace. Email addresses and URL fragments stay intact; punctuation-adjacent selectors such as (@work) stay literal. These parser changes use tasknotes-nlp-core 0.2.0. See Natural Language Input.

Removed

  • Removed the Statistics and Pomodoro statistics dashboards and generated Pomodoro statistics template. The Pomodoro timer, time tracking, stored history, API and existing Base files are retained. See Time Management.
  • Removed the unused views button alignment control. Its saved value is retained for downgrade compatibility.

Fixed

  • Fixed first-launch mdbase upgrades recognizing historical TaskNotes-generated v4 collections, including BOM/CRLF formatting, reordered YAML keys and generated task types in existing v0.3 collections. Incomplete synced metadata now waits and retries as files arrive instead of creating another task type. Edited or ambiguous definitions are preserved for review. Task notes are not rewritten. See Upgrading from v4 to v5.
  • mdbase metadata upgrades now back up and journal type, contract, schema and configuration changes together, verify staged writes and recover interrupted updates on restart. Conflicts show the affected paths and recovery instructions. Duplicate beta task types retain recovery copies and are kept when records explicitly reference them; multiple providers and symlinked metadata folders are reported rather than silently changed. See Migration recovery.
  • Fixed metadata upgrades on mobile adapters that refuse occupied destinations. Replacements retain the actual displaced revision and verify the published bytes before clearing recovery evidence. Native filesystem publication also protects late arrivals during mobile emulation. On iOS/Android adapters that check then rename internally, a concurrent arrival can still be overwritten in the interval between those operations, even when read-back succeeds. Finish syncing first and keep an independent full-vault backup. See Backup and recovery.
  • mdbase upgrades now retain existing property mappings, custom stable IDs, archive tags, occurrence policies, custom constraints and custom property declarations. Existing collection membership defaults and exclusions are preserved. Invalid definitions or unresolved custom properties are reported while retaining the last valid plugin settings.
  • mdbase configuration now adds the Markdown/Base extensions and configured view-folder includes required by TaskNotes App without removing existing extensions or configuration, including legacy extension coverage and duplicate include entries. Pack installation remains part of the App's engine-verified setup consent. See App setup.
  • Check collection respects collection-wide exclusions, subfolder settings, nested collections, nested field references and array path globs. Explicitly typed tasks hidden by plugin folder exclusions remain included. Repairs recheck records, membership, the task definition and allowed statuses before writing; stale previews must be checked again.
  • Settings existence-check failures now stop startup instead of being treated as a new installation.
  • Fixed calendar freezes in vaults with many tasks, while preserving task and timeblock drag and resize permissions.
  • (#2304) Fixed embedded month calendars not filling their available width with Minimal theme and Readable Line Length enabled. Thanks to @same774 for reporting.
  • (#2305) Fixed tasks due after 11:30 PM appearing on the following day in Calendar and Agenda views. Thanks to @PeterYuLi1204 for reporting.
  • (#2306) Fixed the task editor's completion calendar showing dates from a different month than its heading in some time zones, and skipping short months when navigating from a month-end completion. Thanks to @teampbevolution for reporting.
  • (#2258) Task cards now preserve spaces and emoji in context and tag labels instead of collapsing them during display. Thanks to @Oblique82 for reporting and tracing the affected renderer.
  • Fixed generated default Bases files failing to open when custom priority labels or status/priority values contain quotes, backslashes or line breaks. Regenerate affected files with Update default base files. See Default Base Templates.
  • Fixed selected-text conversion including the next unselected line when a selection ends at the start of that line. Reversed selections and partial-line selections now preserve text outside the selection. See Inline Tasks.
  • (#1157) Fixed long inline task titles exceeding the available line width or dropping below their status indicator in nested bullets on Obsidian mobile. Enabled properties remain available in a bounded, scrollable strip. Thanks to @3zra47 for the continued reports and screenshots, @ludon89 for confirming the long-title alignment issue, and @renatomen for fresh-vault testing. See Inline Tasks.
  • Long-running ICS subscriptions now show recurring events from the past 30 days through the next year without using the visible-event limit on historical occurrences.
  • Microsoft calendar connections now fetch events and start automatic refresh immediately. Disconnecting clears calendar data and sync state, and late responses cannot restore disconnected data.
  • Disabled Google and Microsoft calendars are excluded from the combined event cache.
  • Google Calendar retry queues preserve concurrent edits and tasks queued while retries are running. Manual refresh reports failed calendars instead of reporting success with stale data.
  • (#2226) Cleaned up exported recurring-task exclusions to include only dates in the exported series, including the final day of all-day series. This is recurrence exclusion cleanup, not a confirmed fix for every Google Calendar 400 response. Thanks to @3zra47 for the report and failing-task examples, and @stefan-f-bucher for reporting refresh problems.
  • Reminders are no longer lost during rescans or sleep. Missed reminders are recovered up to 24 hours back while Obsidian remains running, and completed or archived tasks no longer notify. See Reminders.
  • Fixed recurring-instance completion through the HTTP API ignoring the date sent by the TaskNotes CLI, which completed the default occurrence instead of the requested one. Invalid or conflicting dates are now rejected.
  • Webhooks now disable only after consecutive deliveries exhaust their retries, rather than after intermittent lifetime failures.
  • Concurrent timer actions no longer create duplicate active entries or publish stale timer data. Pomodoro-owned trackers end at the intended completion time after sleep and leave pre-existing manual trackers running. See Time Management.
  • (#2328) Rapid direct status edits now reconcile each completion and reopening in order, including recurring occurrence notes. Thanks to @mudnug for reporting and testing.
  • Changing task identification settings now refreshes the task index, including already-existing notes recognized by the new property.
  • Saving TaskNotes settings no longer overwrites concurrent external edits (for example from Obsidian Sync or TaskNotes App) to the collection's task type file; conflicting changes return to conflict reconciliation instead.
  • The Relationships widget initially opens the first populated view and remembers an explicitly selected view for each note during the session. See Relationships Widget.
  • (#2032) Mobile list reorder handles now support long-press dragging, cancellation and edge scrolling. Drag handles no longer cover task status controls. Thanks to @spasche for reporting. See Manual ordering.
  • Date picker labels, quick actions, accessibility labels and invalid-input notices now follow the selected language.
  • Updating default Base files now repairs open Bases whose selected view was removed. Opening a configured Base also recovers a stale selected view.
  • Korean now appears as 한국어 in the language selector.
  • (#2269) Custom property keys are trimmed when loading, editing and saving settings, while retaining native validation for empty and colliding keys. This does not rename properties in existing notes. Repeated project prefixes no longer leave a stray trigger in the title: ++personal selects project +personal. Thanks to @prethrive for reporting. See Settings.
  • Custom list fields no longer duplicate wikilinks already extracted by the shared parser.
  • (#694) Wikilinks containing natural language triggers, including quoted links, are preserved during task capture. Thanks to @Hermegenius for reporting.
  • (#2274) Italian relative days oggi, domani and dopodomani, including entro/per Due forms, are parsed without changing links, metadata, escaped words or details. Standalone per now sets the due date; use programmato per for a scheduled date. Thanks to @MarcoBarna for reporting.
  • Editing filename-backed task titles now preserves the full title when sanitization, a long filename or a duplicate name prevents an exact match. A failed rename leaves the previous title and task properties unchanged.
  • Updated the shared task model to @tasknotes/model 0.3.0-rc.16. Empty project, context and tag properties no longer produce a literal null entry when editing tasks (#2148); completing tasks with multiline recurrence rules retains the rule's frequency, timezone and clock. Thanks to @minchinweb for reporting the empty-property issue.

Don't miss a new tasknotes release

NewReleases is sending notifications on new releases.