Configuration

- New 'recurrence' configuration setting can disable recurring task generation.
This commit is contained in:
Paul Beckingham 2015-01-25 15:41:31 -05:00
parent 8323407242
commit 4bdee56fa7
6 changed files with 15 additions and 0 deletions

View file

@ -27,6 +27,7 @@
- Changed assorted reports so they do not use '.age' format for dates that are - Changed assorted reports so they do not use '.age' format for dates that are
in the future, because those are never shown with this format (thanks to in the future, because those are never shown with this format (thanks to
Sujeevan Vijayakumaran). Sujeevan Vijayakumaran).
- New 'recurrence' configuration setting can disable recurring task generation.
------ current release --------------------------- ------ current release ---------------------------

2
NEWS
View file

@ -12,6 +12,8 @@ New configuration options in taskwarrior 2.4.1
- The 'date.iso' setting allows you to enable (default) or disable support - The 'date.iso' setting allows you to enable (default) or disable support
for ISO-8601 dates. This is because some of you have 'dateformat' settings for ISO-8601 dates. This is because some of you have 'dateformat' settings
that conflict. that conflict.
- The 'recurrence' setting enables (default) or disables recurring task
instance generation.
Newly deprecated features in taskwarrior 2.4.1 Newly deprecated features in taskwarrior 2.4.1

View file

@ -411,6 +411,11 @@ The character or string to show in the depends.indicator column. Defaults to +.
.B uda.<name>.indicator=U .B uda.<name>.indicator=U
The character or string to show in the <uda>.indicator column. Defaults to U. The character or string to show in the <uda>.indicator column. Defaults to U.
.TP
.B recurrence=yes
Controls whether recurrence is enable, and whether recurring tasks continue to
generate new task instances. Defaults to 'yes'.
.TP .TP
.B recurrence.confirmation=prompt .B recurrence.confirmation=prompt
Controls whether changes to recurring tasks propagates to other child tasks with Controls whether changes to recurring tasks propagates to other child tasks with

View file

@ -82,6 +82,7 @@ std::string Config::_defaults =
"# # Comma-separated list. May contain any subset of:\n" "# # Comma-separated list. May contain any subset of:\n"
"#verbose=blank,header,footnote,label,new-id,new-uuid,affected,edit,special,project,sync,filter\n" "#verbose=blank,header,footnote,label,new-id,new-uuid,affected,edit,special,project,sync,filter\n"
"confirmation=yes # Confirmation on delete, big changes\n" "confirmation=yes # Confirmation on delete, big changes\n"
"recurrence=yes # Enable recurrence\n"
"recurrence.confirmation=prompt # Confirmation for propagating changes among recurring tasks (yes/no/prompt)\n" "recurrence.confirmation=prompt # Confirmation for propagating changes among recurring tasks (yes/no/prompt)\n"
"allow.empty.filter=yes # An empty filter gets a warning and requires confirmation\n" "allow.empty.filter=yes # An empty filter gets a warning and requires confirmation\n"
"indent.annotation=2 # Indent spaces for annotations\n" "indent.annotation=2 # Indent spaces for annotations\n"

View file

@ -172,6 +172,7 @@ int CmdShow::execute (std::string& output)
" monthsperline" " monthsperline"
" nag" " nag"
" print.empty.columns" " print.empty.columns"
" recurrence"
" recurrence.confirmation" " recurrence.confirmation"
" recurrence.indicator" " recurrence.indicator"
" recurrence.limit" " recurrence.limit"

View file

@ -54,6 +54,11 @@ extern Context context;
// child tasks need to be generated to fill gaps. // child tasks need to be generated to fill gaps.
void handleRecurrence () void handleRecurrence ()
{ {
// Recurrence can be disabled.
// Note: This is currently a workaround for TD-44, TW-1520.
if (! context.config.getBoolean ("recurrence"))
return;
std::vector <Task> tasks = context.tdb2.pending.get_tasks (); std::vector <Task> tasks = context.tdb2.pending.get_tasks ();
Date now; Date now;