Releases: obsidian-tasks-group/obsidian-tasks
2.0.1 - Speed up drawing of Tasks blocks after 2.0.0 release
What's Changed
- fix: Speed up drawing of Tasks blocks after 2.0.0 release by @claremacrae in #1801
- chore: Add 'donations' link by @claremacrae in #1792
- contrib: Shorter paras in dependencies docs & streamline editing by @claremacrae in #1794
- vault: Update Tasks plugin to 2.0.0 in sample vault by @claremacrae in #1789
Full Changelog: 2.0.0...2.0.1
2.0.0 - Improved date searches, new created field, public API to Edit task modal
β οΈ Version 2.0.0: See notes below to review selected Date Searches
Major improvements to date searches have changed results of some previously misleading searches. Details below.
π Most Notable
Please restart Obsidian after updating the plugin. Thank you.
- π New Roadmap board - currently showing what is work-in-progress.
- π New Contributing Site - helping developers contribute to the Tasks project.
- π Added searching of date ranges - thanks @ilandikov
- Absolute and relative date ranges, for example:
done (before, after, in) YYYY-MM-DD YYYY-MM-DD
done (before, after, in) (last, this, next) (week, month, quarter, year)
- Docs
β οΈ Important: some date search results now give different, improved results- Review the comprehensive list of changes in date search results to decide if you need to update any of your existing tasks searches.
- π Added new optional
created
field added - thanks @vanadium23- [ ] take out the trash β 2021-04-09
- Enable it in settings
- then it's added automatically by:
- βCreate or edit Taskβ Modal, when it creates a brand new task
- and when you complete a recurring task
- It already supports filtering, sorting and grouping
- Docs - for the field
- Docs - for searching
- π Added new tag filters - thanks @ilandikov
has tags
no tags
- Docs
- π Added new public API to retrieve markdown string for a new task via the 'Add or edit task' modal - thanks @3bit
- πͺ Fixed some bugs which caused toggling of tasks in Reading view to sometimes write the updated task on the wrong line - thanks @BluBloos for getting this started
- πͺ Fixed rendering of Tasks query blocks in Obsidian Canvas - thanks @ilandikov (and to @gypsyav for reporting the problem)
- πͺ Fixed 'short mode' tooltip hiding task data - thanks @HynDuf
Full List
π Features
- feat: Teach DateParser to read date ranges by @claremacrae in #1683
- feat: Add visual debugging aids for Tasks developers by @claremacrae in #1695
- feat: Show notice if there's a problem toggling task by @claremacrae in #1697
- feat: add created date to task by @vanadium23 in #1723
- feat: Add searches on date ranges by @ilandikov in #1734
- feat: Add filter, group and sorting for created date by @vanadium23 in #1744
- feat: Add created date to EditTask modal by @vanadium23 in #1745
- feat: Add public API to retrieve markdown string for a new task via the Task UI by @3bit in #1736
- feat: Add filters for tag presence and absence by @ilandikov in #1749
- feat: βCreate or edit Taskβ Modal usability improvements by @3bit in #1762
πͺ Fixes
- fix: Prevent rare overwrite of wrong line in Reading mode & results blocks by @BluBloos in #1663
- fix: Prevent reading stale file data when replacing task by @BluBloos in #1672
- fix: Simplify cursor repositioning during the 'ToggleDone' command by @kedestin in #1712
- fix: render Tasks in canvas by @ilandikov in #1733
- fix: Tooltip pop up above the description of task in short mode by @HynDuf in #1735
- fix: Prevent exception if toggling in unsaved file in Reading mode by @claremacrae in #1772
- fix: Major improvements to toggling tasks in Reading view by @claremacrae in #1780
π Documentation
- docs: Finalise docs for 'created date' by @claremacrae in #1750
- docs: Add more info to API docs by @claremacrae in #1752
- docs: Fix a broken link I created in #1752 by @claremacrae in #1753
- docs: Adopt 'absolute' & 'relative' dates instead of 'formal & natural language' by @claremacrae in #1754
- docs: add date range examples by @ilandikov in #1755
- docs: Update description field docs for #1762 improvements by @claremacrae in #1781
- docs: Add appendix showing date filter changes by @claremacrae in #1784
- docs: Bump the next version to 2.0.0 by @claremacrae in #1785
- docs: Bump the next version to 2.0.0 in more docs files by @claremacrae in #1787
- vault: Update plugins: Tasks, dataview and Style Settings by @claremacrae in #1678
- vault: Enable detailed manual testing of toggling by @claremacrae in #1702
π οΈ Behind the scenes
- chore: Configure jest to work with Svelte components. by @3bit in #1757
- chore: Introduce 'contrib' Conventional Commit prefix for contributing docs by @claremacrae in #1775
- contrib: update CONTRIBUTING.md for improved codebase navigation by @BluBloos in #1654
- contrib: Migrate CONTRIBUTING & related to Obsidian Publish by @claremacrae in #1709
- contrib: Update all references to CONTRIBUTING.md by @claremacrae in #1710
- contrib: contributing: add 'Useful links', rename FAQs & more by @claremacrae in #1714
- contrib: Add several new pages on starting writing tests by @claremacrae in #1725
- contrib: Status change docs more readable and include modal by @claremacrae in #1776
- refactor: DateField, HappensDateField and approval tests on DueDateField by @ilandikov in #1665
- refactor: Refactor filtering in DateField and HappensDateField classes by @ilandikov in #1670
- refactor: regexp code in DateField and inherited classes by @ilandikov in #1671
- refactor: Add TaskLocation to encapsulate position data by @claremacrae in #1698
- refactor: Store task line numbers by @claremacrae in #1700
- refactor: Make Task reading and writing more modular by @kedestin in #1728
- refactor: More logical order of default settings values by @claremacrae in #1782
- test: Enable CustomMatchersForFilters without imports by @claremacrae in #1676
- test: Fix assertions in Task tests & fix tests; thanks SonarLint by @claremacrae in #1724
- test: Create mock tests for File.replaceTaskWithTasks() by @claremacrae in #1771
New Contributors
- @kedestin made their first contribution in #1712
- @vanadium23 made their first contribution in #1723
- @HynDuf made their first contribution in https://github.com/obsidian-tasks-group/obsidian-task...
1.25.0 - Safer editing in Edit task dialog
What's Changed
π Features
Invalid values are shown in red, and you can't save the changes until they are fixed:
π οΈ Behind the scenes
- refactor: Remove repetition in Task modal by @claremacrae in #1645
New Contributors
Full Changelog: 1.24.0...1.25.0
1.24.0 - Statuses for more Themes!
What's Changed
Dependencies have been updated. Please restart Obsidian after updating the plugin. Thank you.
Full List
π Features
- feat: One-click support for Things & Aura themes by @claremacrae in #1603
- feat: Add one-click support for Ebullientworks theme by @claremacrae in #1607
- feat: Add one-click support for AnuPpuccin theme by @claremacrae in #1610
- feat: Clarify theme buttons in status settings by @claremacrae in #1609
Improved readability in status settings
πͺ Fixes
- fix: imported CANCELLED tasks now toggle to TODO by @claremacrae in #1608
- fix: typo in Custom Statuses screenshot imageΒ (issue #1600)
π Documentation
- docs: Update screenshots and docs for new themes and bug fixes by @claremacrae in #1611
- vault: Update Tasks plugin to "1.23.0" (from "1.19.0") by @claremacrae in #1588
- vault: Update data.json to 1.23.0 format by @claremacrae in #1593
π οΈ Behind the scenes
- refactor: Reduce cyclic dependencies by @claremacrae in #1592
- chore: Improve internal validation of theme status collections by @claremacrae in #1606
Full Changelog: 1.23.0...1.24.0
1.23.0 - Custom Statuses!
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 createRowFor...
-
'Tasks SQL Powered' as of revision 2c0b659 on 2 August 2022 β©
1.22.0 - Search text of recurrence rules
What's Changed
π Most Notable
Please restart Obsidian after updating the plugin. Thank you.
π Added searching of recurrence rules
- Docs
- Examples:
recurrence includes wednesday recurrence does not include when done recurrence regex matches /\d/ recurrence regex does not match /\d/
- Thank you for the suggestion, @pcause and @huntpbrennan!
Full List
π Features
- feat: Add text searching of task recurrence rules by @claremacrae in #1449
Full Changelog: 1.21.0...1.22.0
1.21.0 - Many improvements to task sorting
What's Changed
π Most Notable
Please restart Obsidian after updating the plugin. Thank you.
Sorting Tasks: Features and Fixes
The majority of effort in this release went on overhauling the code for sorting tasks. In adding tests, I found and fixed a number of issues with the current sorting code. See the Fixes list below.
- Added
sort by happens
- this sorts by the earliest of scheduled, start and due dates. - Added
sort by filename
- Added
sort by heading
Also, group by filename
now links to the note, for quick navigation. Thanks @ilandikov!
Full List
π Features
- feat: Add
sort by happens
by @claremacrae in #1419 - feat: Add
sort by filename
by @claremacrae in #1422 - feat: Add
sort by heading
by @claremacrae in #1423 - feat:
group by filename
now links to the note by @ilandikov in #1426
πͺ Fixes
Fixes to sorting of tasks:
- fix: Multiple
sort by tag
lines ignored all but last one by @claremacrae in #1408 - fix: Make
sort by path
sort ignoring capitalisation by @claremacrae in #1437 - fix: Make
sort by tag
sort ignoring capitalisation by @claremacrae in #1439 - fix: Improve stripping of format chars in
sort by description
by @claremacrae in #1440 - fix: Sorting by text fields now sorts numbers correctly by @claremacrae in #1441
Other fixes:
- fix: Feature Request template link Ideas in Discussions was broken by @Sheikh-JamirAlam in #1412
π Documentation
- docs: Group sorting options by area by @claremacrae in #1420
- docs: Tables in docs now easier to read, as aligned by @claremacrae in #1425
π οΈ Dependencies
- build(deps): bump commonmarker from 0.23.5 to 0.23.6 in /docs by @dependabot in #1171
- chore(deps): Bump nokogiri from 1.13.8 to 1.13.10 in /docs by @dependabot in #1383
- chore(deps-dev): Bump svelte-check from 2.9.0 to 2.10.3 by @dependabot in #1414
π οΈ Behind the scenes
- chore: Enable manual running of codeql-analysis.yml CI by @claremacrae in #1416
- chore: Faster PRs by running CodeQL on release by @claremacrae in #1417
- refactor: Convert Sorting from alias to class, to store comparator by @claremacrae in #1398
- refactor: StatusField now implements 'sort by status' by @claremacrae in #1399
- refactor: DueDateField now implements 'sort by due' by @claremacrae in #1400
- refactor: Reduce repetition in new sorting code by @claremacrae in #1401
- refactor: Break some cyclic dependencies in Sorting code by @claremacrae in #1403
- refactor: Field classes do all 'sort by' options except 'tag' by @claremacrae in #1406
- refactor: TagsField now implements 'sort by tag' by @claremacrae in #1411
- refactor: Rename Sorting to Sorter - and minor tidying by @claremacrae in #1435
- refactor: Remove cyclic dependency between Query and Sort by @claremacrae in #1436
- refactor: Improve design of task rendering code & add tests by @esm7 in #1409
- test: Add Jest support for easier testing of sorting by @claremacrae in #1404
- test: Finish adding tests for existing sort algorithms by @claremacrae in #1405
New Contributors
- @Sheikh-JamirAlam made their first contribution in #1412
- @ilandikov made their first contribution in #1426
Full Changelog: 1.20.0...1.21.0
1.20.0
What's Changed
π Most Notable
Please restart Obsidian after updating the plugin. Thank you.
- Added: New support for tasks in numbered lists. Thanks @BrianKmdy.
- Added: New a 'priority is not' filter option. Thanks to @FabianoLothor for the suggestion.
Full List
π Features
- feat: Add support for numbered checkboxes by @BrianKmdy in #1363
- feat: Add a 'priority is not' filter option by @claremacrae in #1365
πͺ Fixes
- fix: Make parsing of priority filter more precise and more forgiving by @claremacrae in #1387
- fix: Editing & toggling task starting * or 1. reverted them to - by @claremacrae in #1391
π Documentation
- docs: Major update of Getting Started page by @claremacrae in #1392
- vault: Update Tasks plugin to "1.19.0" by @claremacrae in #1353
- vault: Fix testing of task results in 'SlrVb's Alternative Checkboxes.md by @claremacrae in #1354
π οΈ Behind the scenes
- chore: Delete old screenshot files. by @claremacrae in #1370
- refactor: Add new listMarker field to Task by @claremacrae in #1388
- test: Make TaskBuilder handle status consistently by @claremacrae in #1355
- test: Add tests for the 'Create or edit task' modal's parsing of input line by @claremacrae in #1390
New Contributors
- @BrianKmdy made their first contribution in #1363
Full Changelog: 1.19.0...1.20.0
1.19.0 - New 'explain' instruction
What's Changed
π Most Notable
Please restart Obsidian after updating the plugin. Thank you.
- Added
explain
instruction- See how Tasks interprets your queries.
- No more guessing what
next monday
ordue before in 7 days
actually means! - Docs
Example result:
Full List
π Features
- feat: Add 'explain' instruction, to visualise tasks block filters by @claremacrae in #1241
- feat: finish explain instruction: better output and added docs by @claremacrae in #1350
π Documentation
- docs: Remove obsolete warning from regex docs - tags now supported by @claremacrae in #1311
- docs: README now uses images in docs/images by @claremacrae in #1313
- docs: How to download Tasks-Demo vault with plugin build installed by @claremacrae in #1331
- docs: Add row headings to divide up Quick Reference page by @claremacrae in #1337
- docs: Add "Text filters" section, including how quotes are used by @claremacrae in #1338
- docs: Document using regex to find empty fields by @claremacrae in #1340
- docs: Prevent 2 lines running together in the published docs. by @claremacrae in #1352
- vault: Demo using dataview to get tasks in files with a tag by @claremacrae in #1342
π οΈ Behind the scenes
- chore: Make issue templates less shouty by @claremacrae in #1312
- chore: Document developer steps to add a new task filter by @claremacrae in #1314
- chore: Document developer steps to add a new field to Task by @claremacrae in #1315
- chore: Update all jest dependencies to current version. by @claremacrae in #1329
- chore: Update release steps, for changes made in #1194 - and more detail by @claremacrae in #1332
- test,chore: Add Approval Tests, as an alternative to Jest snapshots by @claremacrae in #1330
What's Changed
Full Changelog: 1.18.1...1.19.0
1.18.1
What's Changed
- fix: Editing via Pencil icon can now change scheduled dates based on date in file-name in #1309 - fixes #1300. Thanks @mvdkwast!
Full Changelog: 1.18.0...1.18.1