- Relocated longUsage and shortUsage to report.cpp, where they belong,
which has the positive side effect of allowing all the compiled unit
tests to link.
- 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.
- "projects" report converted to 1.8.0.
- Relocated code from task.cpp to recur.cpp to allow unit tests to link
without includign task.cpp and therefore main.
- Removed obsolete sandbox directory.
- Fixed bug where Config::load deleted the pre-loaded custom reports.
- Fixed bug where Cmd::valid failed to include custom reports properly.
- 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.
- New Cmd object to handle localized commands, customReports and general
command parsing.
- Localized new Subst methods.
- Relocate guess method from parse.cpp to text.cpp.
- Converted Att object to use new valid/parse scheme.
- Unit tests for Cmd object.
- Fixed att.t.cpp unit tests.
- New unit tests for Mod object.
- Added new constructors to Mod object for ease of use.
- Added Mod handling in Att object.
- Added more Att unit tests.
- Fixed problem where a blank ID was considered valid. For example,
the command "task 1 -2" should use -2 as the description, but instead
considered this to be the sequence 1,0,2.
- Replaced old validId calls with the new validSequence calls.
- A sequence has been redefined to be the first set of consecutive
arguments that look like sequences. Once broken by a non-sequence
argument, all remaining args, even if they look like a sequence,
are not considered part of the sequence. This allows commands like
"task append 1,3-5 Write 10 emails", where 10 is not part of the
sequence because of the intervening "Write".
- Unit tests (parse.t.cpp) that exercise the parsing of sequences.
Should probably be expanded to cover more.
- Added unit tests for Date enhancements
- Added unit tests for duration recognition
- Task parsing now supports due: using relative dates
- Task parsing now supports recur: and until: attributes
- Task parsing now support private attributes base: and range: