- Added header, footer and message sinks.
- Added individual colorization of headers, footers and messages.
- Added new configuration variables to Config.cpp, taskrc.5.
- Added colorization functions to rules.cpp
- Implemented history report.
- Improved (not to the point of them working) filters.
- Improved automatic filter construction.
- Removed obsolete members from Task.
- Added tag support to the "add" command.
- shadow file update is now triggered by the type of command, not
explicitly by name.
- Context::inShadow now keeps track of whether it is running a shadow
file update to prevent recursion.
- Renamed T2.h -> Task.h, T2.cpp -> Task.cpp. This permanently avoids
the problem where g++ on OpenBSD 4.5 fails because of the T class,
which probably conflicts with C++ templates. Who knows.
- Added unit tests for Config. Why didn't I do this a year ago?
- Shut off old 1.7.0 code (gulp).
- Task now thoroughly broken, and only 1.8.0 can help.
- Context now gathers messages and footnotes.
- task now calls into the new 1.8.0 code (via Context), then calls
into the old 1.7.0 code. Two for the price of one.
- Began the big integration festival by moving all objects out of
the sandbox.
- Hooked up one error message to context.stringtable, just to make
a point.