- Fixed merge, with an egregious hack for now, by creating zero-byte undo.data
file. This goes against the whole TDB2 philosophy, so it is temporary.
- Updated PUNCHLIST.
- Removed old tdb comment from CmdMerge.
- Fixed bug in Task::addDependency where a 'dup dep' error string was not
properly composed, which cause the error message to be shown as 'k'.
- Relocated expression evaluation on modification to only be processed for
date attributes. This impacts DOM, but fixes more than it breaks.
- Corrected unit test that was expecting an old-style error message.
- Added protection against array overrun in next_mod_group. Again.
- While fixing bug.360.t, discovered a bigger problem, which is not yet
fixed. When a due date is removed from a recurring child task, the
imask, parent and recur attributes should also be removed. Similarly
when a recur frequency is removed from a recurring child task, the
imask and parent should also be removed.
- Net result: two new failing tests.
- Rewrote updateRecurrenceMask, which was hopelessly muddled after the
TDB -> TDB2 change.
- Modified associated code.
- Improved signal to noise ratio in unit tests.
- Implemented the import-yaml.pl external script.
- Added unit tests.
- Fixed problem where the pending tasks were not loaded prior to uuid
verification.
- Added safety valve processing. Whenever a write-command omits a
filter, the command will affect every task. This is dangerous.
If rc.confirmation is disabled, the command is terminated.
- Removed the newly obsoleted Command::apply_defaults, which is now
merged into Task::validate, and therefore applied to all modifications
and new tasks.
- Converted the 'modify' command to TDB2. This has a negative impact
on unit tests, but that represents bugs and ommissions in TDB2,
not flaws in the 'modify' command. I hope.
- Converted the 'done' command to TDB2. This has a negative impact
on unit tests, but that represents bugs and ommissions in TDB2,
not flaws in the 'done' command.
- Fixed validation bug whereby recurring child tasks inherited the
parent status ("recurring") instead of the expected "pending".
- Modified 'add' command to code duplicated in Task::validate.
- Cleaned up associated bug.period.t unit test.