Commit graph

83 commits

Author SHA1 Message Date
Paul Beckingham
98d9a367f3 Sync
- Corrected handling of backlog.data after a synch, using TF2::clear_tasks.
2012-10-08 17:43:14 -04:00
Paul Beckingham
cd6d08f97c Code Cleanup
- Removed last traces of synch.key.
2012-10-02 00:00:43 -04:00
Paul Beckingham
337e5557b3 Backlog
- Added backlog handling for add/modify.
2012-10-01 23:30:57 -04:00
Paul Beckingham
bb167b2275 Feature
- New 'modified' attribute, which contains the most recent modification date,
  if a modification has occurred.
2012-09-27 00:56:41 -04:00
Federico Hernandez
a3242f7b5b Merge branch 'master' into 2.2.0
- merge of 2.1.2 release being now the current released version in
  master.

Conflicts:
	CMakeLists.txt
	NEWS
	test/bug.1104.t
	test/run_all
2012-09-18 22:58:59 +02:00
Johannes Schlatow
68c1ca3f69 Bug #1104
Fixed the bug where the sort order of transactions with equal timestamps
 was not stable, i.e. due to the lack of a total order, different merges
 produced different sortings and hence messed up transactions which
 have already been merged.
2012-09-10 22:53:44 +02:00
Johannes Schlatow
98da8ddcb8 Bug #1104
Added unit test.

 Implemented a quick fix for the issue with a broken branch-off algorithm
 which disregarded the transaction boundaries in the undo.data file.
2012-09-10 20:33:32 +02:00
Johannes Schlatow
55fe8810ce Bug #1104
Added unit test.

 Implemented a quick fix for the issue with a broken branch-off algorithm
 which disregarded the transaction boundaries in the undo.data file.
2012-09-10 14:42:44 +02:00
Scott Kostyshak
7a6cdde571 Code Cleanup
- Constify some catches.
2012-09-04 22:04:41 -04:00
Paul Beckingham
79e2c591f1 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.
2012-07-09 01:29:51 -04:00
Paul Beckingham
d59aaa6427 TDB2
- Pushed task lookup by ID and UUID down a level from TDB2 to TF2.  This allows
  reuse at the low level for things like proper dependency evaluation.
2012-07-08 16:04:34 -04:00
Paul Beckingham
b0b8bfe1d2 Bug #1023
- Fixed bug #1023, which applied default.project and default.priority during
  modification (thanks to Christoph Lange).
- Added unit tests.
- Added Christoph to the AUTHORS file.
2012-07-04 16:45:09 -04:00
Louis-Claude Canon
e5fe704f6a Code Cleanup 2012-06-16 16:08:51 -04:00
Louis-Claude Canon
b45a305df2 Enhancement
- Output error, header, footnote and debug messages on standard error.
2012-06-16 16:07:27 -04:00
Paul Beckingham
2668b04901 Performance
- Added std::string::reserve in high-use locations.
- Used Task::get_date over Task::get where possible.
- Added missing code (bug) for waking up any completed tasks that are freshly
  waited.
- Greater use of STL methods for bulk copying.
2012-04-27 02:46:01 -04:00
Paul Beckingham
cd552231e9 Performance
- Eliminated the 'contents' layer, which was never used to the degree
  anticipated.  This reduces memory footprint significantly.
2012-04-27 01:49:26 -04: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
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
a262d41828 Backlog
- Removed backlog file processing, which slows down processing.  When
  2.1 has taskd support, the backlog will be cleared, but until then there
  is no point in accumulating transactions.
2012-01-03 00:55:20 -05:00
Paul Beckingham
6580095002 Copyright
- Year change.
2012-01-02 23:32:10 -05:00
Paul Beckingham
e5303a2180 Deletion
- An already-completed task may now also be deleted.
- Added unit tests.
2011-10-23 23:49:25 -04:00
Paul Beckingham
fce2469f41 Deletion
- Allows the deletion of an already-completed task, provided it is
  addressed by UUID.
- Displays UUID in cases where there is no ID.
2011-10-22 23:44:54 -04:00
Paul Beckingham
670fe1f3e5 Performance
- Added std::vector::reserve calls to reduce allocations and copying.
2011-10-21 00:12:45 -04:00
Paul Beckingham
cc168b137f Code Cleanup
- Removed incorrect comment.
2011-10-10 22:53:39 -04:00
Federico Hernandez
8116c6a103 License
- moving task from GPL to MIT license
  top level src directory
2011-10-08 00:04:01 +02:00
Paul Beckingham
4470a5f156 I18N
- Localized TDB2.
- Removed old debugging comments.
- Formatting fix in CmdBurndown.
2011-10-02 17:00:40 -04:00
Paul Beckingham
87d940c46d Bugs #822, #845
- Fixed bug #822, #845, which generated incorrect IDs (thanks to Matt Kraai and
  Michelle Crane).
2011-09-29 00:00:36 -04:00
Johannes Schlatow
295e23aac4 Merge
- removed previous hack that created a zero-byte undo.data file.
  Now the undo.data is created as needed in TDB2::merge.
2011-09-13 10:28:30 +02:00
Paul Beckingham
87df2f66ec Merge
- Fixed merge, with an egregious hack for now, by creating zero-byte undo.data
  file.  This goes against the whole TDB2 philosophy, so it is temporary.
- Updated PUNCHLIST.
- Removed old tdb comment from CmdMerge.
2011-09-13 00:51:58 -04:00
Paul Beckingham
dcd0bd1de7 TDB2
- Fixed a bug, or rather a side-effect of more efficient i/o.  Now that
  a TDB2::GC call does not write out files until the final TDB2::commit,
  the GC has the effect of not modifying task IDs based on shuffling tasks
  between pending.data and completed.data until the next command.  Fixed.
2011-09-13 00:22:11 -04:00
Paul Beckingham
9ada2f554a Bug
- The modify command no longer claims that a task was modified if no
  changes were applied.
2011-09-11 13:49:07 -04:00
Paul Beckingham
195c7d5142 TDB2
- Added TDB2::all_tasks as a helper function to load and combine tasks
  from pending and completed.
2011-09-05 10:45:58 -04:00
Paul Beckingham
751e8e7f90 Import YAML
- Implemented the import-yaml.pl external script.
- Added unit tests.
- Fixed problem where the pending tasks were not loaded prior to uuid
  verification.
2011-09-05 01:11:37 -04:00
Paul Beckingham
f74c33dc02 Bug
- Fixed a silly bug whereby TDB2::gc, once it loaded the data, wiped the TF2
  objects, such that TDB2::commit didn't know there was data to write.
  Hmm.  Time for a vacation.
2011-09-03 16:32:30 -04:00
Paul Beckingham
8bf1386b78 Bug
- Fixed an even worse bug whereby TDB2::gc never even bothered to load
  the data before running the GC.  Sigh.
2011-09-03 16:31:03 -04:00
Paul Beckingham
1e510f66ef Bug
- Fixed nasty bug whereby TF2::clear wiped the file names (pending.data etc) and
  so any subsequent TDB2::commit never even opened the file.  Yikes.
2011-09-03 16:30:15 -04:00
Paul Beckingham
eb992d3523 TDB2
- Implemented TDB2::gc.  Probably with a few really nasty bugs, to
  provide nice entertainment for the rest of the weekend.
2011-09-03 12:56:26 -04:00
Paul Beckingham
3d1a5acafb TDB2
- Implemented high-level TDB2::id and TDB2:uuid that delegates to TF2.
- Fixed a bug in TDB2::modify that failed to properly overwrite a task.
2011-09-03 11:17:12 -04:00
Paul Beckingham
63eb22fc7e TDB2 Merge
- Migrated TDB::merge to TDB2::merge.
- Removed obsoleted code from TDB.
- Modified unit tests for merge to use export instead of export.csv.
2011-09-01 23:48:35 -04:00
Paul Beckingham
e9c5b96344 Build
- Missed an include file.
2011-09-01 01:20:33 -04:00
Paul Beckingham
63dfb17bbc Undo
- Undo functionality restored, although not ideal.
2011-09-01 00:46:35 -04:00
Paul Beckingham
b09351c517 Task Validation
- Fixed validation bug whereby recurring child tasks inherited the
  parent status ("recurring") instead of the expected "pending".
- Modified 'add' command to code duplicated in Task::validate.
- Cleaned up associated bug.period.t unit test.
2011-08-31 01:34:59 -04:00
Paul Beckingham
c1f33a23d3 Undo
- Stubbed the undo implementation in TB2::revert (undo as a name is
  already taken), and in the process lose the capability.
- Add detection of <modifications> when running the 'undo' command
  and generate an error.
2011-08-30 00:42:04 -04:00
Paul Beckingham
0f627bd44e TDB2
- Added TDB2::clear and TF2::clear methods.
2011-08-28 08:13:41 -04:00
Paul Beckingham
50fa2c0ddf TDB2
- Every task in pending.data an ID.
2011-08-28 00:02:15 -04:00
Paul Beckingham
1e70f00c29 TDB2
- Properly handles cases where tasks are added, then existing data files
  are loaded.  The 'add' list and the 'loaded' list needed to be merged.
2011-08-27 23:30:51 -04:00
Paul Beckingham
c23f663408 TDB2
- Fixed problem with backlog - TDB2::modify should call backlog.add_task
  but was calling backlog.modify_task.
2011-08-27 20:56:41 -04:00
Paul Beckingham
0eec42ce4a TDB2
- Corrected maintenance of the _lines vector during TDB2::add_line.
- Implemented TDB2::modify_task undo maintenance.
- Added unit tests for TDB2.  Which fail.
2011-08-27 16:33:19 -04:00