What's Changed
π Most Notable
Please restart Obsidian after updating the plugin. Thank you.
π Major new feature: Custom Task Statuses
New search instructions:
status.name
status.type
Docs
Credit: Sytone and the 'Tasks SQL Powered' plugin
This plugin's implementation of reading, searching and editing custom statuses was entirely made possible by the work of @sytone and his fork of Tasks called 'Tasks SQL Powered'. 1
Where code in Tasks has been copied from 'Tasks SQL Powered', Sytone has been specifically credited as a co-author, that is, joint author, and these commits can be seen on the GitHub site: Commits "Co-Authored-By: Sytone".
Subsequently, the custom statuses implementation in Tasks has diverged from the 'Tasks SQL Powered' significantly. However, none of the new features and fixes would have been possible without Sytone's foundation work, for which we are very grateful.
Full List
π Features
- feat: Add & document 'In Progress' + 'Cancelled' by @claremacrae in #1460
- feat: βCreate or edit Taskβ modal supports custom task statuses by @claremacrae in #1463
- feat: adopt tasks-x's JSON settings facility by @claremacrae in #1465
- feat: Enable adding & editing of custom statuses by @claremacrae in #1467
- feat: Show core statuses, read-only by @claremacrae in #1482
- feat: Add status.name text search by @claremacrae in #1513
- feat: Add 'sort by status.name' by @claremacrae in #1518
- feat: Add status categories/types to eventually control behaviour by @claremacrae in #1538
- feat: update 'done' and 'not done' for new status types by @claremacrae in #1542
- feat: Bulk add and remove statuses by @claremacrae in #1544
- feat: Add 'status.type' filter and 'sort by status.type' by @claremacrae in #1547
- feat: Add 'group by status.name' by @claremacrae in #1550
- feat: Add 'group by status.type' by @claremacrae in #1553
- feat: Nicer syntax and better help for 'status.type' by @claremacrae in #1555
- feat: Add ability to edit core statuses by @claremacrae in #1567
- feat: Move '-' and '/' to custom statuses by @claremacrae in #1569
- feat: Make statuses more readable in settings by @claremacrae in #1571
πͺ Fixes
- fix: Fix an unreleased error in StatusRegistry by @claremacrae in #1455
- fix: sort group & filter by status now match 1.22.0 by @claremacrae in #1459
- fix: Address minor usability issues when editing status by @claremacrae in #1464
- fix: Hide UI for status commands by @claremacrae in #1491
- fix: Status changes now applied immediately! by @claremacrae in #1496
- fix: toggling to unknown status now gives valid task by @claremacrae in #1504
- fix: No longer accept 'status-name' and similar instead of 'status.name' by @claremacrae in #1517
- fix: 'sort by status.name' was treated as 'sort by status' in queries by @claremacrae in #1520
- fix: Prevent Tasks getting stuck 'Loading Tasks...' by @claremacrae in #1524
- fix: Fix edit status error validation by @claremacrae in #1526
- fix: Improve wording & fix styling in status settings by @claremacrae in #1529
- fix: with global filter, the modal was losing custom status symbols by @claremacrae in #1533
- fix: reading of status settings now works again by @claremacrae in #1536
- fix: unchecked tasks are now correct in Reading view by @claremacrae in #1541
- fix: 'Add All Unknown Status Types' was creating duplicates by @claremacrae in #1545
- fix: Correct several bugs in next status with recurrence by @claremacrae in #1554
- fix: 'sort by status.type' now puts most actionable tasks first by @claremacrae in #1556
- fix: Remove verbose console debug output by @claremacrae in #1557
- fix: Make NON_TASK statuses match 'done' by @claremacrae in #1563
π Documentation
- docs: Start documenting custom statuses by @claremacrae in #1457
- docs: Improve README.md, for new users and devs by @claremacrae in #1469
- docs: Add 'Find tasks with potentially invalid data' by @claremacrae in #1506
- docs: Partial documentation for custom statuses by @claremacrae in #1510
- docs: Add info and warnings about custom status feature by @claremacrae in #1511
- docs: Improve tables of content and version banners by @claremacrae in #1514
- docs: Start documenting status types by @claremacrae in #1540
- docs: Update screenshots for custom status docs by @claremacrae in #1546
- docs: New Reference section, about supported themes by @claremacrae in #1577
- docs, fix: Finalise Statuses docs & UI by @claremacrae in #1584
- vault: Update Tasks-Demo vault for testing custom status by @claremacrae in #1452
- vault: Add and update custom checkbox info by @claremacrae in #1575
π οΈ Behind the scenes
- chore: New GitHub Action: 'Verify Build on Windows' by @claremacrae in #1516
- chore: Add stress_test_obsidian_tasks.py by @claremacrae in #1523
- chore: Update author list in main.js to match community store by @claremacrae in #1560
- refactor: Move Status class out to its own file by @claremacrae in #1450
- refactor: Add StatusConfiguration & Status from obsidian-tasks-x by @claremacrae in #1451
- refactor: Partial adoption of StatusRegistry from obsidian-tasks-x by @claremacrae in #1453
- refactor: Update 'Toggle task done' command to use StatusRegistry by @claremacrae in #1454
- refactor: remove originalStatusCharacter from Task and TaskBuilder by @claremacrae in #1456
- refactor: Divide up status settings code by @claremacrae in #1473
- refactor: Extract function createRowForTaskStatus() by @claremacrae in #1474
- refactor: Fix a few warnings by @claremacrae in #1475
- refactor: Remove unused method by @claremacrae in #1476
- refactor: Make StatusRegistry easier to test by @claremacrae in #1492
- refactor!: Encapsulate & test custom status settings code by @claremacrae in #1493
- refactor: Move StatusConfiguration to its own file by @claremacrae in #1531
- refactor: Add factory methods to StatusConfiguration by @claremacrae in #1532
- refactor: Rework group-naming code for future improvements by @claremacrae in #1549
- refactor: Rename indicator to symbol throughout by @claremacrae in #1559
- test: Address 5 TODOs in Sort.test.ts by @claremacrae in #1470
Full Changelog: 1.22.0...1.23.0
'Tasks SQL Powered' as of revision 2c0b659 on 2 August 2022 β©
Footnotes