- Many files were missing an explicit cmake.h include. Some were not including
it at all. Now it's used almost everywhere.
(cherry picked from commit 82ae86979c497e6d1d0c6b2b5a55aa379ec82c98)
- Fix a bug where 'print.empty.columns=no' resulted in never printing the
project column because ColProject::measure did not take into account
the length of the last word of the project name.
- Unit tests.
- When formating real numbers that are between 0 and 1, the width controls the
number of characters that are shown (with width "4", "0.01234" is shown as
"0.01").
- Provided sample sqlite3 export script in Python, to serve as a
starting point for anyone wanting to migrate taskwarrior data into
a SQL database. Illustrates JSON parsing and separation of the
relational data.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
- 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.
- TDB2::load_lines was splitting the text on \n, but because the last
line contains \n, there was an additional blank line. This is what
split_minimal is for.
- split_minimal contained a copy/paste bug that added the extra line
if the input was non-trivial, instead of if the remainder was non-
trivial.
- Fixed incorrect unit test accordingly.
- Implemented closeEnough, which does a truncated, caseless compare
between two strings. For example, "FoO" is cloneEnough to "food."
to be a match. Used to allow mixed case and abbreviated arguments.
- 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).
- Replaced old Tree-based parser with a faster, leaner parser.
Currently lacking good error handling and a large test suite.
- Integrated new parser into Task object, for encode/decode.
- Replicated same basic unit tests. Needs more.
- Fixed bug in handleShell that failed to call the new Context::initialize2.
- Removed debugging code from CmdInstall.
- Implemented format() that does not require width and precision args.
- Implemented the ability to iterate over installed Command objects,
to augment the '_commands' command.
- Renamed verbosity tokens, to de-pluralize them.