Bug #1022
- Fixed bug #1022, where dependencies were note released when a blocking task was completed (thanks to Arkady Grudzinsky). - The Task object now caches ::is_blocked and ::is_blocking Booleans that are determined on pending.data load. - Simplified and sped up color rule processing using cached values, reducing the number of map lookups, and removed loop invariants when the rules are not defined. - Simplified urgency calculations given the cached values for blocked/blocking. - On load, pending.data is scanned for accurate blocked/blocking status determination. - Obsoleted and removed complex single-task dependency calculations. - Sped up 'nag' processing by using cached values.. - Modified the 'show' command to consider color.blocking to be valid. - Added default config value for color.blocking, and included it in the precedence list ahead of blocked, as it is more important. - Updated taskrc.5 man page to include the new color.blocking rule, and its place in the rule precedence.
This commit is contained in:
@@ -66,15 +66,20 @@ public:
|
||||
int id (const std::string&);
|
||||
|
||||
void has_ids ();
|
||||
void auto_dep_scan ();
|
||||
void clear ();
|
||||
const std::string dump ();
|
||||
|
||||
private:
|
||||
void dependency_scan ();
|
||||
|
||||
public:
|
||||
bool _read_only;
|
||||
bool _dirty;
|
||||
bool _loaded_tasks;
|
||||
bool _loaded_lines;
|
||||
bool _has_ids;
|
||||
bool _auto_dep_scan;
|
||||
std::vector <Task> _tasks;
|
||||
std::vector <Task> _added_tasks;
|
||||
std::vector <Task> _modified_tasks;
|
||||
|
||||
Reference in New Issue
Block a user