Commit graph

3091 commits

Author SHA1 Message Date
Paul Beckingham
e0aabe08bf Unit Tests
- Fixed broken DOM tests.
2012-02-24 18:26:35 -05:00
Paul Beckingham
a495b05d6b Bug #938
- Made alternate fix to CmdUrgency.cpp, to avoid the ambiguity around
  the format() signatures (thanks to Owen Clarke).
2012-02-23 20:48:01 -05:00
Owen Clarke
87853bdd78 Bug #938
- Fixed compiler warnings on Solaris.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-23 20:43:54 -05:00
Owen Clarke
25a1b89156 Bug #938
- Fixed incorrect return type.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-23 20:33:05 -05:00
Paul Beckingham
9c641fd778 Credit
- Updated ChangeLog to reflect recent patches.
2012-02-23 20:27:38 -05:00
Owen Clarke
3ba0b62783 Bug #937
- Fixed problem with incomplete 'stat' path.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-23 20:23:05 -05:00
Owen Clarke
8e5afa0d8a Bug #936
- Fixed failing tests on Solaris.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-23 20:16:39 -05:00
Owen Clarke
ed6bdd7bdc Bug #936
- Fixed failing tests on Solaris.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-23 20:13:44 -05:00
Owen Clarke
3b9a737ac4 Bug #936
- Fixed failing tests on Solaris.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-23 19:58:42 -05:00
Paul Beckingham
15a0d7a801 Bug #880
- Fixed bug #880, which listed the wrong file paths for themes (thanks to Peter
  Lewis).
2012-02-23 17:26:52 -05:00
Federico Hernandez
8521e6d1e7 New try for RC1 2012-02-22 01:39:45 +01:00
Paul Beckingham
21e006319a Beta5
- Set version back to beta5 for a quick patch.
2012-02-21 19:30:33 -05:00
Paul Beckingham
33e2a1b52c Merge branch '2.0.0' of tasktools.org:task into 2.0.0 2012-02-21 19:29:11 -05:00
Paul Beckingham
1a7ed9e137 Debugging
- Inadvertently left in a debug statement.
2012-02-21 19:26:17 -05:00
Federico Hernandez
efa1914be5 Bumped version number to RC1 2012-02-22 01:09:49 +01:00
Paul Beckingham
1f8e823593 Holidays Updated
- Modified update-holidays.pl script to include the MIT license.
- Added the URLs used to download the data, in the data.
- Added a refresh script to freshen the files.
2012-02-21 17:23:57 -05:00
Paul Beckingham
b17be021db Credit
- Added Luke Macken to the AUTHORS file.  Forgot to include it in the
  previous patch.
2012-02-20 17:37:38 -05:00
Luke Macken
1358a8302f Portability
Manually include unistd.h in a couple of places get things building with gcc
4.7, which removed it from the global namespace. This fixes the following build
errors:

    src/A3.cpp:283:3: error: 'STDIN_FILENO' was not declared in this scope
    src/commands/CmdEdit.cpp:598:30: error: 'getpid' was not declared in this scope
    src/commands/CmdEdit.cpp:603:47: error: 'chdir' was not declared in this scope

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-20 17:31:30 -05:00
Paul Beckingham
39998d5cc5 Bug #932
- Fixed bug #932, which fixed change propagation for recurring tasks (thanks to
  Jennifer Cormier).
- Added unit tests, corrected some.
2012-02-20 17:25:31 -05:00
Paul Beckingham
259f39f2d2 Performance
- Corrected performance measurement.  The TDB2::gc requires data to
  be loaded first, but load time is measured separately.  This resulted
  in repeat counting.  Now the gc time subtracts any load time that is
  accumulated *during* the gc.  This is now a fair accounting of the time.
2012-02-20 09:26:52 -05:00
Paul Beckingham
d386081c4c Bug
- Modified format 'uuid.short' to show the leftmost 8 characters from
  a UUID, which is the same as partial UUID matching implemented in
  #891.
2012-02-20 01:23:34 -05:00
Paul Beckingham
9f8165e3c6 Bug #932 (part 1)
- Fixed bug that caused only parent recurring tasks to have their attributes
  properly removed.
- When duplicating a parent recurring task, a new recurring parent task is
  created.  When a child recurring task is duplicated, a plain task is created.
- Added unit tests.
- Thanks to Jennifer Cormier.
2012-02-20 01:10:42 -05:00
Paul Beckingham
0a0e8f0d6b Bug - UTF8
- Fixed bug in the handling of UTF8 JSON data from holidata.net, when
  update-holidays.pl when decoding and writing files.
2012-02-19 23:22:45 -05:00
Paul Beckingham
7a45db4d0f Feature #891
- Added feature #891, which allows for leftmost partial matches of UUID values.
  Makes direct comparisons for full-length values, and regular expressions for
  partial values.  Note that there is a minimum length of 8 hex digits.
- Added safety parsing mechanism that fails a partial UUID if immediately
  followed by a hex digit.  This allows for numbers longer than 8 digits to not
  be misinterpreted as a UUID.
- Implemented Nibbler::getPartialUUID.
- Implemented unit tests.
@@ -1145,12 +1145,23 @@ const A3 A3::sequence (const A3& input) const

   for (unsigned int i = 0; i < uuids.size (); ++i)
   {
-    if (ids.size ())
+    if (ids.size () + i > 0)
       sequenced.push_back (Arg ("or", Arg::cat_op));

-    sequenced.push_back (Arg ("uuid",        Arg::type_string, Arg::cat_dom));
-    sequenced.push_back (Arg ("=",                             Arg::cat_op));
-    sequenced.push_back (Arg (uuids[i],      Arg::type_string, Arg::cat_literal));
+    // A full-length UUID requires a string comparison.
+    if (uuids[i].length () == 36)
+    {
+      sequenced.push_back (Arg ("uuid",         Arg::type_string, Arg::cat_dom));
+      sequenced.push_back (Arg ("=",                              Arg::cat_op));
+      sequenced.push_back (Arg (uuids[i],       Arg::type_string, Arg::cat_literal));
+    }
+    // A UUID fragment is a leftmost comparison.
+    else
+    {
+      sequenced.push_back (Arg ("uuid",         Arg::type_string, Arg::cat_dom));
+      sequenced.push_back (Arg ("~",                              Arg::cat_op));
+      sequenced.push_back (Arg ("^" + uuids[i], Arg::type_string, Arg::cat_rx));
+    }
   }

   sequenced.push_back (Arg (")", Arg::cat_op));
@@ -1674,11 +1685,11 @@ bool A3::is_uuid (Nibbler& n, std::string& result)
   n.save ();
   result = "";
   std::string uuid;
-  if (n.getUUID (uuid))
+  if (n.getPartialUUID (uuid))
   {
     result += uuid;
     while (n.skip (',') &&
-           n.getUUID (uuid))
+           n.getPartialUUID (uuid))
     {
       result += ',' + uuid;
     }
@@ -1997,13 +2008,13 @@ bool A3::extract_uuid (
   Nibbler n (input);

   std::string uuid;
-  if (n.getUUID (uuid))
+  if (n.getPartialUUID (uuid))
   {
     sequence.push_back (uuid);

     while (n.skip (','))
     {
-      if (!n.getUUID (uuid))
+      if (!n.getPartialUUID (uuid))
         throw std::string (STRING_A3_UUID_AFTER_COMMA);

       sequence.push_back (uuid);
2012-02-19 22:27:40 -05:00
Paul Beckingham
c785836083 Feature #632
- Added feature #632, which allows environment variables TASKRC and TASKDATA
  to override .taskrc and .task directory locations (thanks to Steve Rader).
- Added unit tests.
+
2012-02-19 18:59:28 -05:00
Paul Beckingham
09431caf1c Bug
- Tag matching was being performed using the regex \b<tag>\b, which makes
  taskwarrior dependent on regex lib bugs for basic functionality.  This is
  now modified to use pseudo-operators _hastag_ and _notag_.
2012-02-19 17:20:11 -05:00
Michal Vyskocil
78e5891cd3 Portability
- lua_open has been declared as deprecated in lua 5.1 and removed from
  5.2. Usage of luaL_newstate is thus recommended in both series.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-15 19:26:26 -05:00
Paul Beckingham
26cc4e11f5 Unit Tests
- Improved verbosity unit tests.
2012-02-13 06:16:18 -05:00
Uli Martens
7fe5fc80e9 Bug #636
- Fixed bug #636, which causes the burndown reports to not honor the
  _forcecolor=off setting (thanks to Steve Rader, Uli Martens).

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-13 06:15:27 -05:00
Paul Beckingham
28a4947234 Bug #818
- Fixed bug #818, which caused partial tag matching (thanks to Joe Holloway).
- Note that the regex word boundary anchors are different for Solaris
  and Linux, and largely broken on OSX.
- Added unit tests.
2012-02-12 10:42:24 -05:00
Paul Beckingham
efb2476c15 Unit Tests
- Added bug.924.t unit tests.  I cannot replicate the bug, but a
  regerssion test should prevent any recurrence.
2012-02-12 08:41:08 -05:00
Uli Martens
0f60e8c758 Bug #929
- Fixed bug #929, which corrected argument handling for aliases.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-12 08:15:45 -05:00
Ralph Bean
53ac325705 Patch to fix broken build.
Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-02-05 22:47:36 -05:00
Paul Beckingham
96fe3f42ba Minor Refactoring
- Added support for more type-specific checks of attribute values.
- Added support for more type-specific attribute rendering.
- Improved generalized methods for checking columns in a report.
- Added unit tests.
- Minor code cleanup.
- Added secret hidden feature for internal testing.
2012-02-05 20:56:46 -05:00
Paul Beckingham
cffc42484e Code Cleanup
- Removed non-STL Nibbler method, which makes way for a future optimization
  in the form of a non-copying Nibbler.
2012-02-05 15:28:09 -05:00
Paul Beckingham
c0f8ab3249 Configuration Cleanup
- Fixed typos in default config file.
- Removed default values for edit.verbose and echo.command, both of
  which are deprecated.
2012-02-05 14:37:22 -05:00
Paul Beckingham
412396d35b Code Cleanup
- Removed restriction on waiting recurring tasks.
- Removed unused L10N string.
- Removed unnecessary include.
2012-02-05 10:08:10 -05:00
Paul Beckingham
86f113a24c Feature #609
- Added feature #609, which allows suppression of output labels and verbose
  text.
2012-02-03 00:05:46 -05:00
Paul Beckingham
8abc541777 Bug #906
- Fixed bug #906, which caused problems with inverted project matching (thanks
  to Uli Martens).
2012-02-02 23:51:31 -05:00
Paul Beckingham
565d14962d Bug #910
- Fixed bug #910, which caused unexpected behavior when duplicating a recurring
  task (thanks to Jennifer Cormier).
- Fixed typo in duplicate command that failed to remove the 'mask' attribute.
2012-02-02 23:31:22 -05:00
Paul Beckingham
2ce9322a28 Bug #917
- Fixed bug #917, which mis-encoded quotes (thanks to Uli Martens).
- Added unit tests.
- Minor unrelated edits.
2012-02-02 22:58:36 -05:00
Paul Beckingham
89b5c91a35 Unit Tests
- Corrected method name.
2012-01-30 20:27:50 -05:00
Paul Beckingham
1619441f87 Theme Sample generation
- Generating snapshots of themes now automated.
2012-01-30 20:27:17 -05:00
Paul Beckingham
bff868145d Bug #901
- Fixed bug #901, which was preventing multiple IDs and UUIDs from being used
  as a filter (thanks to Bryce Harrington).
2012-01-30 01:00:45 -05:00
Paul Beckingham
36e5e650d4 Feedback
- Converted std::cout to context.footnote, for custom reports and burndown.
  Not sure why they were wrong.
2012-01-30 00:42:15 -05:00
Paul Beckingham
5e4f7feff8 Performance
- Added a shortcut test that speeds up the decode process for most cases.
2012-01-30 00:18:53 -05:00
Paul Beckingham
5609711d47 Feature #571 - Special tag feedback
- The verbosity token 'special' now controls whether the feedback is provided
  when special tags are added to a task.
- Added new 'special' verbosity token documentation to man page.
- Added missing 'next' special tag to man page.
- Added new localized strings for describing special tags.
2012-01-29 18:28:07 -05:00
Paul Beckingham
bf9e14f581 Bug 899
- Fixed bug #899, which displayed incorrect project completion numbers (thanks
  to Paul-Gheorghe Barbu).
- Added unit tests.
2012-01-29 17:44:43 -05:00
Paul Beckingham
c092b027a6 Code Cleanup
- Removed 'synch_key' tests and file I/O.  Soon, soon...
2012-01-29 17:42:52 -05:00
Paul Beckingham
ec96d929a0 Bug 879 - Description/Annotation ending with Slash Causes Problems
- Backslashes actually.  The escaping mechanism in the low-level parser
  was eating leading \ characters when it should not.  Very hard bug to
  find, trivial to fix.
- Added unit tests to several components while narrowing this down.
2012-01-29 15:36:05 -05:00