diff --git a/ChangeLog b/ChangeLog index 6c56cab83..7d5cb5797 100644 --- a/ChangeLog +++ b/ChangeLog @@ -13,6 +13,7 @@ Features + Added parse-free convenience functions + Filter optimization: with no 'OR' or 'XOR' operators, no UUIDS but with IDs the completed.data file is not referenced + + Reduced excessive number of sort columns on certain reports Bugs + Fixed bug #954, which caused bulk deletions when using a UUID filter term and diff --git a/src/Config.cpp b/src/Config.cpp index 2cb5b9e76..e9a42b62b 100644 --- a/src/Config.cpp +++ b/src/Config.cpp @@ -313,20 +313,13 @@ std::string Config::_defaults = "alias._query=export # _query is now export\n" "alias.burndown=burndown.weekly # Prefer the weekly burndown chart\n" "\n" - "# Fields: id, uuid, project, priority, priority_long, entry, start, end,\n" - "# due, countdown, countdown_compact, age, age_compact, active, tags,\n" - "# depends, description_only, description, recur, recurrence_indicator,\n" - "# tag_indicator, wait.\n" - "# Description: This report is ...\n" - "# Sort: due+,priority-,project+\n" - "# Filter: pro:x pri:H +bug limit:10\n" - "# Dateformat: due date format in reports\n" + "# Reports\n" "\n" "# task long\n" "report.long.description=Lists all pending tasks\n" "report.long.columns=id,project,priority,entry,start,due,recur,due.countdown,entry.age,depends,tags,description\n" "report.long.labels=ID,Project,Pri,Added,Started,Due,Recur,Countdown,Age,Deps,Tags,Description\n" - "report.long.sort=due+,priority-,project+,description+\n" + "report.long.sort=due+,priority-,project+\n" "report.long.filter=status:pending\n" "#report.long.dateformat=m/d/Y\n" "#report.long.annotations=full\n" @@ -335,7 +328,7 @@ std::string Config::_defaults = "report.list.description=Lists all pending tasks\n" "report.list.columns=id,project,priority,due,start.active,entry.age,description\n" "report.list.labels=ID,Project,Pri,Due,Active,Age,Description\n" - "report.list.sort=due+,priority-,start-,project+,description+\n" + "report.list.sort=due+,priority-,start-,project+\n" "report.list.filter=status:pending\n" "#report.list.dateformat=m/d/Y\n" "#report.list.annotations=full\n" @@ -344,7 +337,7 @@ std::string Config::_defaults = "report.ls.description=Minimal listing of all pending tasks\n" "report.ls.columns=id,project,priority,description\n" "report.ls.labels=ID,Project,Pri,Description\n" - "report.ls.sort=priority-,project+,description+\n" + "report.ls.sort=priority-,project+\n" "report.ls.filter=status:pending\n" "#report.ls.dateformat=m/d/Y\n" "#report.ls.annotations=full\n" @@ -380,7 +373,7 @@ std::string Config::_defaults = "report.overdue.description=Lists overdue tasks\n" "report.overdue.columns=id,project,priority,due,start.active,entry.age,description\n" "report.overdue.labels=ID,Project,Pri,Due,Active,Age,Description\n" - "report.overdue.sort=due+,priority-,start-,project+,description+\n" + "report.overdue.sort=due+,priority-,start-,project+\n" "report.overdue.filter=status:pending due.before:now\n" "#report.overdue.dateformat=m/d/Y\n" "#report.overdue.annotations=full\n" @@ -389,7 +382,7 @@ std::string Config::_defaults = "report.active.description=Lists active tasks\n" "report.active.columns=id,project,priority,due,start.active,entry.age,description\n" "report.active.labels=ID,Project,Pri,Due,Active,Age,Description\n" - "report.active.sort=due+,priority-,project+,description+\n" + "report.active.sort=due+,priority-,project+\n" "report.active.filter=status:pending start.any:\n" "#report.active.dateformat=m/d/Y\n" "#report.active.annotations=full\n" @@ -398,7 +391,7 @@ std::string Config::_defaults = "report.completed.description=Lists completed tasks\n" "report.completed.columns=end,project,priority,entry.age,description,uuid\n" "report.completed.labels=Complete,Project,Pri,Age,Description,UUID\n" - "report.completed.sort=end+,priority-,project+,description+\n" + "report.completed.sort=end+,priority-,project+\n" "report.completed.filter=status:completed\n" "#report.completed.dateformat=m/d/Y\n" "#report.completed.annotations=full\n" @@ -407,7 +400,7 @@ std::string Config::_defaults = "report.recurring.description=Lists recurring tasks\n" "report.recurring.columns=id,project,priority,due,recur,start.active,entry.age,description\n" "report.recurring.labels=ID,Project,Pri,Due,Recur,Active,Age,Description\n" - "report.recurring.sort=due+,priority-,start-,project+,description+\n" + "report.recurring.sort=due+,priority-,start-,project+\n" "report.recurring.filter=status:pending parent.any:\n" "#report.recurring.dateformat=m/d/Y\n" "#report.recurring.annotations=full\n" @@ -416,7 +409,7 @@ std::string Config::_defaults = "report.waiting.description=Lists all waiting tasks\n" "report.waiting.columns=id,project,priority,wait,entry.age,description\n" "report.waiting.labels=ID,Project,Pri,Wait,Age,Description\n" - "report.waiting.sort=wait+,priority-,project+,description+\n" + "report.waiting.sort=wait+,priority-,project+\n" "report.waiting.filter=status:waiting\n" "#report.waiting.dateformat=m/d/Y\n" "#report.waiting.annotations=full\n" @@ -425,7 +418,7 @@ std::string Config::_defaults = "report.all.description=Lists all pending and completed tasks\n" "report.all.columns=id,status,project,priority,due,end,start.active,entry.age,description\n" "report.all.labels=ID,Status,Project,Pri,Due,Completed,Active,Age,Description\n" - "report.all.sort=project+,due+,end+,priority-,start-,description+\n" + "report.all.sort=entry+\n" "report.all.filter=status.not:deleted\n" "#report.all.dateformat=m/d/Y\n" "#report.all.annotations=full\n" @@ -435,7 +428,7 @@ std::string Config::_defaults = "report.next.columns=id,project,priority,due,start.active,entry.age,urgency,description\n" "report.next.filter=status:pending limit:page\n" "report.next.labels=ID,Project,Pri,Due,A,Age,Urgency,Description\n" - "report.next.sort=urgency-,due+,priority-,start-,project+,description+\n" + "report.next.sort=urgency-,due+,priority-,start-,project+\n" "#report.next.dateformat=m/d/Y\n" "#report.next.annotations=full\n" "\n" @@ -443,7 +436,7 @@ std::string Config::_defaults = "report.blocked.description=Lists all blocked tasks\n" "report.blocked.columns=id,depends,project,priority,due,start.active,entry.age,description\n" "report.blocked.labels=ID,Deps,Project,Pri,Due,Active,Age,Description\n" - "report.blocked.sort=due+,priority-,start-,project+,description+\n" + "report.blocked.sort=due+,priority-,start-,project+\n" "report.blocked.filter=status:pending depends.any:\n" "#report.blocked.dateformat=m/d/Y\n" "\n" @@ -451,7 +444,7 @@ std::string Config::_defaults = "report.unblocked.description=Lists all unblocked tasks\n" "report.unblocked.columns=id,depends,project,priority,due,start.active,entry.age,description\n" "report.unblocked.labels=ID,Deps,Project,Pri,Due,Active,Age,Description\n" - "report.unblocked.sort=due+,priority-,start-,project+,description+\n" + "report.unblocked.sort=due+,priority-,start-,project+\n" "report.unblocked.filter=status:pending depends.none:\n" "#report.unblocked.dateformat=m/d/Y\n" "\n";