Merge branch '2.4.3' into lexer2
This commit is contained in:
@@ -2,6 +2,9 @@
|
|||||||
|
|
||||||
- TW-1578 Bash tab completion problems on first run
|
- TW-1578 Bash tab completion problems on first run
|
||||||
(thanks to Renato Alves and Ptolemarch).
|
(thanks to Renato Alves and Ptolemarch).
|
||||||
|
- TW-1580 "modified" attribute no longer updated (thanks to David Patrick).
|
||||||
|
- Setting 'bulk' to zero is interpreted as infinity, which means there is no
|
||||||
|
amount of changes that is considered dangerous (thanks to Tomas Babej).
|
||||||
|
|
||||||
------ current release ---------------------------
|
------ current release ---------------------------
|
||||||
|
|
||||||
|
|||||||
3
NEWS
3
NEWS
@@ -9,7 +9,8 @@ New commands in taskwarrior 2.4.3
|
|||||||
|
|
||||||
New configuration options in taskwarrior 2.4.3
|
New configuration options in taskwarrior 2.4.3
|
||||||
|
|
||||||
-
|
- Setting 'bulk' to zero is interpreted as infinity, which means there is no
|
||||||
|
amount of changes that is considered dangerous.
|
||||||
|
|
||||||
Newly deprecated features in taskwarrior 2.4.3
|
Newly deprecated features in taskwarrior 2.4.3
|
||||||
|
|
||||||
|
|||||||
@@ -314,7 +314,7 @@ Controls padding between columns of the report output. Default is "1".
|
|||||||
Is a number, defaulting to 3. When this number or greater of tasks are modified
|
Is a number, defaulting to 3. When this number or greater of tasks are modified
|
||||||
in a single command, confirmation will be required, regardless of the value of
|
in a single command, confirmation will be required, regardless of the value of
|
||||||
.B confirmation
|
.B confirmation
|
||||||
variable.
|
variable. The special value bulk=0 is treated as an infinity.
|
||||||
|
|
||||||
This is useful for preventing large-scale unintended changes.
|
This is useful for preventing large-scale unintended changes.
|
||||||
|
|
||||||
|
|||||||
@@ -598,7 +598,7 @@ void TDB2::update (
|
|||||||
const std::string& uuid,
|
const std::string& uuid,
|
||||||
Task& task,
|
Task& task,
|
||||||
const bool add_to_backlog,
|
const bool add_to_backlog,
|
||||||
const bool addition)
|
const bool addition /* = false */)
|
||||||
{
|
{
|
||||||
// Validate to add metadata.
|
// Validate to add metadata.
|
||||||
task.validate (false);
|
task.validate (false);
|
||||||
@@ -607,6 +607,13 @@ void TDB2::update (
|
|||||||
Task original;
|
Task original;
|
||||||
if (not addition && get (task.get ("uuid"), original))
|
if (not addition && get (task.get ("uuid"), original))
|
||||||
{
|
{
|
||||||
|
if (add_to_backlog)
|
||||||
|
{
|
||||||
|
// All locally modified tasks are timestamped, implicitly overwriting any
|
||||||
|
// changes the user or hooks tried to apply to the "modified" attribute.
|
||||||
|
task.setAsNow ("modified");
|
||||||
|
}
|
||||||
|
|
||||||
// Update the task, wherever it is.
|
// Update the task, wherever it is.
|
||||||
if (!pending.modify_task (task))
|
if (!pending.modify_task (task))
|
||||||
completed.modify_task (task);
|
completed.modify_task (task);
|
||||||
|
|||||||
@@ -323,8 +323,8 @@ bool Command::permission (
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 1 < Quantity < bulk modifications have optional confirmation, in the (y/n/a/q)
|
// 1 < Quantity < bulk modifications have optional confirmation, in the (y/n/a/q)
|
||||||
// style.
|
// style. Bulk = 0 denotes infinite bulk.
|
||||||
if (quantity < bulk && (!_needs_confirm || !confirmation))
|
if ((bulk == 0 || quantity < bulk) && (!_needs_confirm || !confirmation))
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (context.verbose ("blank") && !_first_iteration)
|
if (context.verbose ("blank") && !_first_iteration)
|
||||||
|
|||||||
@@ -252,6 +252,7 @@ std::string taskInfoDifferences (
|
|||||||
|
|
||||||
for (name = beforeAtts.begin (); name != beforeAtts.end (); ++name)
|
for (name = beforeAtts.begin (); name != beforeAtts.end (); ++name)
|
||||||
if (*name != "uuid" &&
|
if (*name != "uuid" &&
|
||||||
|
*name != "modified" &&
|
||||||
before.get (*name) != after.get (*name) &&
|
before.get (*name) != after.get (*name) &&
|
||||||
before.get (*name) != "" && after.get (*name) != "")
|
before.get (*name) != "" && after.get (*name) != "")
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user