- Fixed bug #1022, where dependencies were note released when a blocking task
was completed (thanks to Arkady Grudzinsky).
- The Task object now caches ::is_blocked and ::is_blocking Booleans that are
determined on pending.data load.
- Simplified and sped up color rule processing using cached values, reducing
the number of map lookups, and removed loop invariants when the rules are
not defined.
- Simplified urgency calculations given the cached values for blocked/blocking.
- On load, pending.data is scanned for accurate blocked/blocking status
determination.
- Obsoleted and removed complex single-task dependency calculations.
- Sped up 'nag' processing by using cached values..
- Modified the 'show' command to consider color.blocking to be valid.
- Added default config value for color.blocking, and included it in the
precedence list ahead of blocked, as it is more important.
- Updated taskrc.5 man page to include the new color.blocking rule, and its
place in the rule precedence.
- Fixed bug #1006, #1024, which caused words like the German 'im' and 'des' in
a description to be expanded into 'imask' and 'description' (thanks to
Louis-Claude Canon and Martin U).
- Promoted Louis-Claude Canon in the AUTHORS file, added Martin U.
- Supports 'scheduled' date for tasks, which represent the earliest opportunity
to work on a task.
- Added unit tests for urgency.
- Implemented color rule.
- Added scheduled to 'info' report.
- Updated assorted documentation.
- Removed comments in default rc because they are never seen.
- Added (broken) 'ready' report, which is like 'next' but only for ready tasks.
- Removed the feature that allows commands to be piped in to stdin,
and appended to any existing command line. This feature is
conditionally compiled, controlled by the FEATURE_STDIN define in
main.h
- Many unit tests contained "echo '-- y'", and now use "echo 'y'"
because the '--' is no longer supported on stdin.
- Thanks to the IRC team for testing, including Bryce Harrington,
Sam Stuck, Owen Clarke, Greg Grossmeier.
- Added feature #682, which allows the configuration variable 'defaultheight'
to override the assumed height of 24 lines when 'detection' is not enabled
(thanks to Steve Rader).
- Addressed bug #804 by allowing rc.hyphenate to control whether hyphens are
inserted when long lines are broken. This may help prevent xterm from
mis-parsing URLs in task annotations, when wrapped (thanks to Yann Davin).
- Added unit tests.
- Added feature #800, adding a new command 'columns' that lists all the columns
available for custom reports, and includes their formatting options (thanks
to T. Charles Yun).
- Added feature #559, which implements a new configuration variable,
rc.exit.on.missing.db, which causes taskwarrior to exit if the
rc.data.location is missing (thanks to Sander Marechal).
- Added regex support to substirutions.
- Fixed bug that prevented 1.9.4 from shipping with regexes. If the
description is "aXXaaXXa", and the substitution is /XX/.../ then the
first substitutions changes the length of the string to "a...aaXXa"
and therefore invalidates the index for the second match, and makes
this change: "a...a...Xa". The fix is to keep a running 'skew' count
of the difference in 'from' and 'to' length, to adjust the match
indexes.
- Moved the helper deltaSubstitutions function into the Task object,
which makes more sense.
- Cleaned up output composition for CmdAdd.
- Eliminated #ifdef FEATURE_REGEX. They are here to stay.
- Output from the query command is now optionally surrounded by [ ... ]
to make this a syntactically correct JSON document. This is off by
default.
- Updated documents.
- Implemented CmdHelp object that replaces the report.cpp longUsage
function, and builds the output dynamically from other Command
objects. This is also why the help text right now is very short,
as only a few commands are migrated.
- Obsoleted longUsage function.
- Updated task.1 man page with 'execute' command details.
- Modified command.lua sample to include command usage.
- Removed "help" from old Context::dispatch, which means "help" is
the first migrated command.
- Added usage and description to all Cmd* objects.
- Implemented Command::usage and Command::description as base class
methods that simply return data that is specified by the derived
classes.
- New 'exec' command that runs external programs, implemented by
CmdExec.
- Restructured code so that only Commands implements ::read_only
and ::displays_id methods, while derived objects simply set flags.
- Corrected column alignment in summary report.
- Integrated new View in place of Table for all custom reports.
- Implemented legacy field mapping for columns and sort fields.
- Implemented rc.indent.report.
- Implemented rc.row.padding.
- Implemented rc.column.padding.
- Implemented rc.color.label.
- Modified default rc.indent.annotation from 1 to 2.
- Implemented urgency value caching.
- Implemented View truncation by line and row.
- Columns now know which report thy belong to, so they can use the
rc.report.<report>.dateformat override.
- Assorted bugs remain.
- Implemented 'description.default', 'description.count', and
'description.oneline'.
- New 'indent.annotation' for the 'description.default' field format.
- Added 'status' as a reportable column (thanks to Peter De Poorter
and Bryce Harrington).
- Closed features pertaining to the 'task ids ... | task ...' (thanks
to Bryce Harrington and Eric Fluger).
- Renamed all holiday files to include a locale, rather than just
a country code.
- Enhanced update-holidays.pl add-on script to support regions,
provide better error handling, error on missing Perl module,
warnings on unavailable data, and help text.
- Updated documentation accordingly.