mirror of
https://github.com/GothenburgBitFactory/taskwarrior.git
synced 2025-06-26 10:54:26 +02:00
Merge branch '1.9.3' of tasktools.org:task into 1.9.3
This commit is contained in:
commit
191d8ef355
4 changed files with 21 additions and 6 deletions
2
AUTHORS
2
AUTHORS
|
@ -30,6 +30,7 @@ The following submitted code, packages or analysis, and deserve special thanks:
|
|||
Kevin Owens
|
||||
Mick Koch
|
||||
Kathryn Andersen
|
||||
Alexander Schremmer
|
||||
|
||||
Thanks to the following, who submitted detailed bug reports and excellent
|
||||
suggestions:
|
||||
|
@ -59,6 +60,5 @@ suggestions:
|
|||
Seneca Cunningham
|
||||
Dirk Deimeke
|
||||
Michelle Crane
|
||||
Alexander Schremmer
|
||||
Elizabeth Maxson
|
||||
|
||||
|
|
|
@ -8,8 +8,9 @@
|
|||
as relative to the current date/time.
|
||||
+ Added feature #189, that records the start and stop times as an
|
||||
annotation for a task.
|
||||
+ Added features #244, #272, #274 and #275, which support import and
|
||||
export of YAML 1.1. YAML is now the default export format for task.
|
||||
+ Added features #244, #272, #273, #274, #275 and #279, which support
|
||||
import and export of YAML 1.1. YAML is now the default export format
|
||||
for task.
|
||||
+ Added feature #391, now the 'task color legend' command will show
|
||||
samples of all the defined colors and color rules from your .taskrc
|
||||
and theme.
|
||||
|
|
|
@ -647,7 +647,7 @@ void Task::validate () const
|
|||
if (has ("wait"))
|
||||
{
|
||||
Date wait (::atoi (get ("wait").c_str ()));
|
||||
if (wait > due)
|
||||
if (wait < due)
|
||||
throw std::string ("A 'wait' date must be after a 'due' date.");
|
||||
}
|
||||
|
||||
|
|
|
@ -95,18 +95,32 @@ void handleRecurrence ()
|
|||
{
|
||||
if (mask.length () <= i)
|
||||
{
|
||||
mask += '-';
|
||||
changed = true;
|
||||
|
||||
Task rec (*t); // Clone the parent.
|
||||
rec.set ("uuid", uuid ()); // New UUID.
|
||||
rec.setStatus (Task::pending); // Shiny.
|
||||
rec.set ("parent", t->get ("uuid")); // Remember mom.
|
||||
|
||||
char dueDate[16];
|
||||
sprintf (dueDate, "%u", (unsigned int) d->toEpoch ());
|
||||
rec.set ("due", dueDate); // Store generated due date.
|
||||
|
||||
if (t->get ("wait").size())
|
||||
{
|
||||
Date old_wait (atoi (t->get ("wait").c_str ()));
|
||||
Date old_due (atoi (t->get ("due").c_str ()));
|
||||
Date due (*d);
|
||||
sprintf (dueDate, "%u", (unsigned int) (due + (old_wait - old_due)).toEpoch ());
|
||||
rec.set ("wait", dueDate);
|
||||
rec.setStatus (Task::waiting);
|
||||
mask += 'W';
|
||||
}
|
||||
else
|
||||
{
|
||||
mask += '-';
|
||||
rec.setStatus (Task::pending);
|
||||
}
|
||||
|
||||
char indexMask[12];
|
||||
sprintf (indexMask, "%u", (unsigned int) i);
|
||||
rec.set ("imask", indexMask); // Store index into mask.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue