Commit graph

3084 commits

Author SHA1 Message Date
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
Paul Beckingham
7a2bf28005 ChangeLog
- Updated ChangeLog to reflect several bugs that have been fixed, but
  were not reported.
2012-01-28 17:18:34 -05:00
Paul Beckingham
e05b3633f2 Bug - Summary report broken linefeeds
- Applied same #907 patch for CmdHistory.cpp to CmdSummary.cpp.
2012-01-28 10:43:11 -05:00
Paul Beckingham
6cf9790fac Code Cleanup
- Removed code that creates the ~/.task/extensions directory, which will not be
  needed until 2.1.  Until then, it is clutter.
2012-01-28 10:37:14 -05:00
Uli Martens
529161b711 Bug #905
- The problem was that the routine dependencyIsCircular() changed its behaviour
  in git revision 726fc33fe4, and the new version
  only checked tasks by id - but all completed/deleted tasks have the id0, which
  led to the problem.  The fix is extremelly simple, just get the dependencies
  by uuid instead of by id.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-01-23 06:24:51 -05:00
Paul Beckingham
6145f2d4a8 Typo
- Fixed typo in L10N name month names.
2012-01-22 14:41:00 -05:00
Uli Martens
851347fccc Bug #907
- The bug first occured in commit 36ed70ad93 and
  seems to be caused by the rewritten break point detection. This adds linefeeds
  into the table output, where they're not wanted.  This can be fixed by marking
  the respective tables as nonbreakable, as done in the attached patch.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-01-18 07:29:08 -05:00
Ralph Bean
184ba60df4 Portability
- Fixed GCC 4.3 compilation error.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2012-01-17 18:12:27 -05:00