Skip to content

2.0.0

Choose a tag to compare

@github-actions github-actions released this 25 Aug 20:36
· 16 commits to main since this release
ae47619

Highlights

  • Breaking change: the plugin now requires Obsidian 1.13 or later, so update Obsidian before installing this release.
  • Project overviews: Opening a project now shows its own page, with progress, description, a milestone timeline, sub-projects, and properties. Plus a new setting that can switch this back to opening straight into the task list. It's up to you.
  • Sub-projects and multi-project views: Projects can nest under a parent, and the table, board, and timeline can show a project's subtree, its folder, or the whole vault at once, with their own saved views and filters.
  • A folder per project: Each project now keeps everything together in one folder, and old existing projects migrate to the new structure automatically.
  • Cross-project dependencies: A task can depend on or block work in another project, with its schedule following the dates of the project it depends on.
  • Custom priorities and per-project config: Priorities can be added, renamed, recolored, and reordered, and a project can define its own statuses, priorities, default view, and scheduling behavior in its settings
  • Progress and completion timing: A task's progress can be set directly from 0 to 100, and a completed task shows whether it finished on time or how many days late it was
  • People notes: Assignees and project members can be linked to the person notes in your vault, with avatars, a note created automatically for a new name, and commands that list everything one person is working on
  • Better wikilinks: Names, custom fields, and project links written as wikilinks resolve to the note they point to wherever they show up. We all love those nice obsidian graphs!
  • Improved custom fields style: A custom field now uses the same controls as a task's built-in properties, so a custom date opens the date picker and a custom select shares status's popover, and in the table a link or person field shows as a link or an avatar instead of raw text, and a checkbox renders as a proper checkbox
  • A searchable icon picker: Status, priority, and project icons are chosen from a grid of every icon Obsidian knows, or set to any emoji
  • Settings rework: Settings are grouped by area, with statuses, priorities, team members, and TaskNotes each on their own page, and can be found through Obsidian's own settings search.
  • Tasks in tabs: Tasks can open in a tab instead of a modal, with the task editor hosted as a page of its own
  • TaskNotes import: Tasks, statuses, and priorities can be imported from TaskNotes, including dates, dependencies, subtasks, tags, and archive state
  • A lighter index behind the scenes: The project list, pickers, and due-date reminders read from a lightweight index instead of re-parsing every project file, so they stay quick even in very large vaults
  • Updated sync engine: A task or project open in several tabs or views stays in sync: an edit in one place shows up in all the others right away
Screenshot 2026-08-25 224328 Screenshot 2026-08-25 224356 Screenshot 2026-08-25 224608 Screenshot 2026-08-25 224811 Screenshot 2026-08-25 225353 Screenshot 2026-08-25 224502

Added

  • Assignees and project members can be picked from the person notes already in your vault, so the task links to them and they appear in the graph (#131)
  • A person with no note yet gets one created from the assignee picker, in the new people folder setting
  • Clicking an assignee's avatar opens that person's note
  • The show tasks assigned to a person command lists everything one person is working on, across every project
  • A person note opened in the editor shows that person's tasks with the show tasks assigned to this note command
  • The link assignees to their person notes command turns typed names into links to the notes of the same name
  • Opening a project from the project list shows its overview: progress, description, milestones, sub-projects, and properties
  • Clicking a project opens its tasks instead of its overview when the open projects in setting is set to tasks
  • A row, card, or timeline label naming its project opens that project when clicked
  • Projects are listed wherever their files live in the vault
  • A project can sit under another one, chosen in the project settings
  • The project list nests sub-projects under their parent, whose card counts the tasks of the whole group
  • Folders can be left out of the project list with the new excluded folders setting
  • The rebuild project index command looks through the vault for projects again
  • The table, board, and timeline can show several projects at once, chosen from the switcher next to the project name
  • The open all projects command puts every project in the vault in one view
  • Rows, cards, and timeline labels name their project when a view covers more than one
  • Saved views and filters belong to the set of projects on screen, so a project and its sub-projects keep separate ones
  • A task can depend on a task in another project, and its dates follow that one
  • The task editor lists the tasks a task blocks, wherever they live
  • The task menu moves a task and its subtasks to another project
  • A timeline row says when a task depends on something outside the view
  • Priorities can be added, renamed, recolored, and reordered in settings
  • Priority icons can be switched between chevrons, signal bars, arrows, alerts, or none, globally or per project
  • Status and priority icons are picked from a searchable grid of every icon Obsidian knows, or set to an emoji by pasting one into its search field
  • A project's icon is picked from that same grid, so it can be any icon Obsidian knows and not only an emoji
  • TaskNotes tasks can be imported with their dates, dependencies, subtasks, tags, and archive state (#16)
  • Statuses and priorities can be imported from TaskNotes in settings (#16)
  • Projects can define their own statuses and priorities in the project settings, replacing the global ones (#57)
  • Projects can override the default view, auto-scheduling, and the board display options in the project settings
  • The completed date shows whether a task finished on time or how many days late it was
  • Task progress can be set from 0 to 100 in the task editor and by clicking the progress bar in the table
  • Dependent tasks move earlier when a task is completed before its due date, using the new pull-forward setting (#154)
  • Tasks open in a tab instead of a modal when the new task opening setting is set to tab
  • A task note opens in the task editor when tasks are set to open in a tab
  • The task menu moves the task being edited into a tab
  • Subtasks in the table are joined to their parent by tree lines, which can be turned off with the new show subtree connections setting
  • The table draws lines between rows, between columns, or both, using the new line borders setting

Changed

  • A project keeps its note and its task notes together in a folder of its own
  • An existing project moves into its own folder when the vault is opened, keeping its filters, saved views, and open tabs
  • A new sub-project is created inside its parent's folder
  • Renaming a project note renames the folder it owns, so the two keep matching
  • Deleting a project deletes its folder, unless a sub-project sits inside it
  • The tags offered in the task editor are listed alphabetically
  • Custom fields in the task editor use the same controls as the task's own properties, so a custom date opens the date picker and a custom select the same popover as status
  • Project members, the global team members, and task assignees are picked from the same control, which searches the people in your vault and offers to create the note for a new name
  • The people a picker offers include the global team members, the project's own members, and everyone already assigned in that project
  • A person already picked as a plain name shows as picked when the same person is found as a note
  • The project name above the table, timeline, and board opens that project's overview when clicked. Previously it was an editable field for renaming the project
  • Assignee lists sort by the name shown rather than by the link behind it
  • The project list is a table of rows with progress, task counts, members, and the last due date, replacing the cards
  • The project list counts how many projects have tasks past due
  • Sub-projects in the project list are joined to their parent by tree lines, which can be turned off with the show subtree connections setting
  • The project list draws lines between rows, between columns, or both, following the line borders setting
  • Project settings open in a page of their own, keeping each change as it is made
  • Creating a project asks for its name, icon, color, parent, members, and description in one dialog
  • The new project dialog is laid out like the task editor, with a large name field and a properties grid
  • A project's color is chosen from the color picker, replacing the ten preset swatches
  • The projects folder setting decides where new projects are created, not which projects the plugin shows
  • Table rows have no line between them unless line borders are turned on
  • The plugin requires Obsidian 1.13
  • Settings are grouped by area, with statuses, priorities, team members, and TaskNotes each on their own page
  • Settings can be found from Obsidian's settings search
  • The TaskNotes page shows how many statuses and priorities differ before importing
  • A setting that depends on another one is unavailable until that one is turned on
  • Add buttons in the table, Gantt, project editor, and settings share one quiet style
  • Remove buttons in the task editor, project editor, and settings are icon buttons with tooltips
  • The import dialog uses Obsidian's native buttons
  • The Gantt zoom control uses Obsidian's native buttons
  • Filter and saved-view buttons match Obsidian's native buttons, with an accent tint when active
  • The cursor lands where a task description was clicked when the editor opens
  • Subtasks are archived and unarchived along with their parent task
  • The time tracking section in the task editor no longer shows a progress bar
  • The kanban card no longer shows a subtask count next to the progress bar
  • Every property row in the task editor is the same height
  • Section labels in the task editor are smaller and lighter
  • A completed subtask is crossed out in the task editor
  • The field for adding a subtask lines up with the subtasks above it
  • Tasks listed under Depends on and Blocks open in the task editor when clicked
  • The Blocks list in the task editor is a list of tasks like Depends on, replacing the chips
  • A timeline row saying a task depends on something outside the view opens those tasks when clicked
  • A subtask in the task editor opens in its own editor when clicked
  • A subtask is renamed in its own editor rather than by typing in the subtasks list

Fixed

  • Due dates read a day early on the board, the table, the project list, and a project overview for anyone whose clock is behind UTC
  • A status or priority with an icon showed none of it in the filter dropdowns and the bulk action bar
  • A project icon picked from the icon grid showed its name as text in the project list, the toolbar, the overview, the project settings, and the project picker
  • Clearing a number custom field wrote an invalid value into the task's note
  • A custom field holding a link showed as raw link text in the table
  • A person custom field showed the stored text in the table instead of that person's avatar
  • A person custom field lost the link to the person's note when set in the task editor
  • A checkbox custom field showed true or false in the table
  • A url custom field was plain text in the table
  • The assignees on a project's overview did not open their notes when clicked
  • An assignee whose name is a link showed as raw link text in the assignee filter, the bulk assign menu, the timeline tooltip, and the task editor
  • The assignee filter skipped tasks that wrote the same person's name a different way
  • Two people with the same name were treated as one by the assignee filter, when each had their own note
  • A task title sat above the middle of its row when another column made the row taller
  • A change made in one view of a project was undone by the next click in another view of the same project (#173)
  • A project open in two views showed the older state in one of them (#173)
  • A task edited in the task editor lost changes made to it elsewhere while the editor was open
  • Edits to a project file made outside the plugin reached an open project view only after reopening it
  • A settings change reached an open project or project list only after reopening it
  • The table stopped short of its last rows and left empty space below them when scrolled to the bottom
  • The sort arrow in the table stayed on the column that was sorted before
  • Start and completed dates were labelled overdue in the task editor (#156)
  • The due date of a done task was labelled overdue in the task editor (#156)
  • The due date of a done task was highlighted as urgent in the table
  • Text and images in a task description could not be selected or copied (#169)
  • A task description rewrapped its text when clicked for editing
  • Searching for a task by its id found nothing (#167)
  • The import dialog offered the built-in statuses and priorities instead of the configured ones
  • The task editor showed two close buttons in its top right corner
  • The add property button in the task editor touched the custom fields section below it
  • The task editor left more space around the line under the properties than around its other section lines

Pull requests

  • make priorities configurable and extract a task source interface by @mrhyde in #137
  • import tasknotes tasks and palettes by @mrhyde in #138
  • let each project choose which statuses it uses by @mrhyde in #139
  • per-project configuration by @mrhyde in #141
  • add a ui styleguide and consolidate duplicated ui by @mrhyde in #145
  • update dev dependencies by @mrhyde in #175
  • match tasks by id in search by @mrhyde in #176
  • Bump postcss from 8.5.15 to 8.5.23 in the npm_and_yarn group across 1 directory by @dependabot[bot] in #177
  • make task descriptions selectable and place the cursor on click by @mrhyde in #178
  • show the overdue label only on the due date of an unresolved task by @mrhyde in #181
  • mark whether a task landed on time next to its completed date by @mrhyde in #182
  • archive subtasks along with their parent task by @mrhyde in #184
  • make task progress editable and drop redundant progress displays by @mrhyde in #185
  • move the table sort arrow to the sorted column by @mrhyde in #186
  • hide obsidian's native close button in the task editor by @mrhyde in #187
  • pull dependent tasks forward when a blocker finishes early by @mrhyde in #188
  • move the settings tab to obsidian's declarative settings api by @mrhyde in #189
  • update dev dependencies by @mrhyde in #190
  • keep one project instance per file and notify views of changes by @mrhyde in #191
  • trim comments that restate the code by @mrhyde in #192
  • quiet the task editor section labels and align the subtask rows by @mrhyde in #193
  • open the task editor in a tab as an alternative to the modal by @mrhyde in #194
  • draw tree lines between table subtasks and their parent by @mrhyde in #218
  • make table row and column rules optional by @mrhyde in #220
  • measure table row height from the painted rows, not the first one by @mrhyde in #222
  • find projects anywhere in the vault and show several at once by @mrhyde in #223
  • open a project on its own page instead of a modal by @mrhyde in #226
  • let the priority icon set be chosen by @mrhyde in #227
  • give the new project dialog the task editor layout by @mrhyde in #228
  • build project rows from the task table row parts by @mrhyde in #229
  • link assignees to the person notes in the vault by @mrhyde in #232
  • give the overview property labels room for longer names by @mrhyde in #235
  • let a project link open its tasks instead of the overview by @mrhyde in #236
  • open the task behind a dependency from the views by @mrhyde in #237
  • open a subtask from the task editor instead of editing its title there by @mrhyde in #238
  • pick people through one control everywhere by @mrhyde in #239
  • load a project from its path through the store by @mrhyde in #240
  • build custom fields from the shared property controls by @mrhyde in #241
  • build every status and priority menu from one row helper by @mrhyde in #242
  • activate note links and avatars through one helper by @mrhyde in #243
  • read date fields as calendar days when formatting them by @mrhyde in #244
  • drag a gantt bar edge and the whole bar through one handler by @mrhyde in #245
  • draw every project icon through one glyph helper by @mrhyde in #246
  • space the task editor sections evenly by @mrhyde in #247
  • follow a dependency chain out of its project when rescheduling by @mrhyde in #248
  • give each project a folder of its own by @mrhyde in #249
  • fix project folder moves at the vault root and after a rename by @mrhyde in #250

Full Changelog: 1.8.0...2.0.0