- Added Path::operator== for expanded path comparisons. Why was
that not already implemented?
- Added checks that the push/pull destination is not equal to
rc.data.location. That would be bad.
- Added comments, tweaked the wording on some messages. Stubbed out
confirmation of pull overwrite, while I think about it.
- Colorized the merge process.
- Added whitespace to the merge output for alignment and a less cramped
look.
- De-tabbed.
- Changed "(*foo).method ()" to "foo->method ()" or clarity.
- Removed two tests that relied upon the (removed) "Redo" message.
- Removed the urgency rating from the info report. Otherwise, we
will need to explain it, and without the corresponding new next
report, what can we say? It will be reenabled later.
- Completed support for 'task 1 depends:2,-3' to manipulate the
dependencies.
- Now supports rc.dependency.reminder to indicate when to nag about
dependency chain violations, defaulting to on.
- Now supports rc.dependency.confirm to require confirmation before
fixing dependency chains, defaulting to on.
- New source file dependency.cpp which implements a low-level API for
determining dependency status, and assorted handlers for task state
changes.
- Adds blocking tasks to the 'next' report.
- Added more dependency unit tests, changed the wording in a couple of
them and numbered them for easy reference.
- Added dependencyGetBlocking and dependencyGetBlocked API calls, in
the ongoing effort to find a workable API for dependencies. The
goal is to make the calling code as small as possible when dealing
with dependencies.
- Corrected the algorithm for determining whether a task is blocked or
blocking to also check that the other task is pending or waiting.
For example:
task add one
task add two depends:1
task do 1
As the first task is completed, task 2 still depends on 1, but is
no longer blocked due to the completed status.
- Modified the "info" report to use the modified API.
- Cleaned up message that is generated when a recurring task is past
its until: date and all child tasks have been dismissed, as the
parent task is deleted.
- Added unit tests recur.until.t to prove that the above is working.
- Context::autoFilter was suppressing 'tags' filter terms due to the
+tag/-tag syntax, which we now know only augments attribute modifiers,
and doesn't replace them.