- 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.
- Implemented Command::filter_shortcut to detect when a filter begins
with "status:pending" and skip the loading/parsing of completed.data.
- Removed obsolete att.t.cpp tests.
- Removed diagnostics from TDB2::TDB2 that were causing a segfault.
I suppose there is no std::cout available during global ctors?
- Implemented CmdAdd.cpp and CmdLog.cpp using TDB2.
- Implemented simple append writes in TDB2.
- Modified CmdImport to accept and parse JSON.
- Added more const-ness in DOM, Expression and Task, to allow TDB2::get_tasks
to return a const vector ref, which is a Very Good Thing.
- Corrected usage for the export command.
- Implemented Task::urgency as a call to Task::urgency_c, which is a const
overload to allow urgency calculations (without caching) for const Task
objects.
- Removed obolete code from TDB.
- Added lots of diagnostic output for TDB2 - it's annoying, but will be
gone soon.
- Added mention in CmdHelp of the new <filter> and <modifications>
syntax elements. Needs more.
- Added Command::filter overload which uses TDB2. Not in use yet.
- Implemented add and log commands using new infrastructure.
- Relaxed restriction about creating completed tasks with no dependencies.
- Localized CmdAdd.cpp CmdLog.cpp.
- Implemented Command::modify_task to apply command line arguments to a
specified task.
- Implemented Command::apply_defaults to apply various initial values to
a specified task, such as entry date.
- Obsoleted Command::exectute 'commandLine' argument. It is worse
than unnecessary, it is an uncategorized raw argument string, which
is only really useful for the 'execute' command, which itself now
calls Arguments::combine to reconstruct the command line string.
- Implemented CmdHelp object that replaces the report.cpp longUsage
function, and builds the output dynamically from other Command
objects. This is also why the help text right now is very short,
as only a few commands are migrated.
- Obsoleted longUsage function.
- Updated task.1 man page with 'execute' command details.
- Modified command.lua sample to include command usage.
- Removed "help" from old Context::dispatch, which means "help" is
the first migrated command.
- Added usage and description to all Cmd* objects.
- Implemented Command::usage and Command::description as base class
methods that simply return data that is specified by the derived
classes.
- New 'exec' command that runs external programs, implemented by
CmdExec.
- Restructured code so that only Commands implements ::read_only
and ::displays_id methods, while derived objects simply set flags.
- Corrected column alignment in summary report.
- Implemented the ability to iterate over installed Command objects,
to augment the '_commands' command.
- Renamed verbosity tokens, to de-pluralize them.
- Implemented stubbed Context::initialize2.
- Implemented combined command line.
- Migrated some code from Context::initialize to ::initialize2.
- Integrated ::initialize2 into the startup sequence.
- Implemented Context::dispatch2.
- Integrated ::dispatch2 into the run sequence.
- Implemented Context::updateXtermTitle.
- Added debug messages to new Command objects.
- Implemented CmdLogo, which implements the _logo command, for fun.
- Removed unnecessary base class overrides from Cmd* objects.
- Added new src/commands and src/columns intermediate libs.
- Began implementation of the first Command object.
- Began implementation of the first Column object.
- TDB2, Variant updates.