Commit graph

175 commits

Author SHA1 Message Date
Paul Beckingham
104aeb3905 TDB2
- Commented and reorganized for threading.
2015-03-02 09:33:57 -05:00
Tomas Babej
f0cc0151b7 TDB2: Explicitly mark updates done as addition to optimize performance
We are able to avoid loading the completed.data in certain scenarios.
2015-02-28 16:54:09 -05:00
Paul Beckingham
1cfdfbae52 Hooks
- Removed the ability for hooks to add tasks, or modify tasks that are outside
  the context of the current event. This makes hooks a local mechanism that
  operates only on local changes. Modifications/additions coming in via sync
  command are not processed by hooks.
2015-01-31 17:47:58 -05:00
Paul Beckingham
547d9edb55 TW-1484
- TW-1484 The 'history' and 'ghistory' reports do not obey rc.color.label.
2015-01-10 15:49:42 -05:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
23e2719e1a TDB2
- Restored blank line for clarity, now that duplicate debug messages are allowed.
2014-10-19 01:31:03 -04:00
Paul Beckingham
1a5fb437a5 Task
- Upgrades legacy recur values.
2014-10-07 00:24:03 -04:00
Paul Beckingham
bfc6e38851 Hooks
- ::onExit now provides a set of all changeѕ tasks to the hook script, in
  read-only form.
2014-09-14 17:04:12 -04:00
Paul Beckingham
d0fd3bac4a TDB2
- ::update must call validate(false) to ensure metadata exists for the 'modify'
  case, then later call validate() to add defaults for the 'add' case.
2014-09-14 16:36:32 -04:00
Paul Beckingham
ab72cdad4d Hooks
- Stubbed new ::onAdd and ::onModify interfaces.
2014-09-14 15:42:47 -04:00
Paul Beckingham
7b617a7b6e TDB2
- Consolidated most of the processing in ::add and ::modify into ::update.
2014-09-14 15:25:37 -04:00
Paul Beckingham
21be0e3e94 TDB2
- Combined add and modify operations in ::add, in case the hook processing
  generates modifications.
2014-09-14 15:07:40 -04:00
Paul Beckingham
ac833c183a TDB2
- TDB2::add no longer assumes that adding one task results in only one task
  begin added, as hook processing may expand the set.
2014-09-14 14:56:54 -04:00
Paul Beckingham
f3c035d2b8 TDB2
- Removed hook processing that is now in the wrong place.
2014-09-14 14:20:30 -04:00
Paul Beckingham
1058f045b0 TDB2
- Added ::has methods to determine whether a UUID is known.
2014-09-10 22:54:17 -04:00
Paul Beckingham
05ba58c56f TDB2
- Disabled hook processing while processing hooks. This is because both ::add
  and ::modify can each add or modify tasks, and there is the potential for
  infinite recursion.
2014-09-09 23:37:29 -04:00
Paul Beckingham
6faf6bb678 TDB2
- Now updates the task ID of any new task, therefore avoiding off-by-one
  errors that occur when code calls TDB2::next_id.
2014-08-16 14:20:00 -04:00
Paul Beckingham
6209529aaa TDB2
- In debug mode, if any TF2 objects are dirty, they speak up.
2014-08-09 20:26:51 -04:00
Paul Beckingham
0825ce3c56 TDB2
- Updated ID:UUID mapping on ::add, which is the first part of the fix for
  TW-1389.
2014-08-06 10:45:15 -04:00
Paul Beckingham
68436d0d50 TDB2
- Integrated hooks to TF2::add_task and TF2::modify_task.
2014-05-13 22:06:19 -04:00
Paul Beckingham
d52eebaa66 Bug TW-1288
- TW-1288 Added missing locking for task modifications (thanks to Kosta H,
          Ralph Bean, Adam Coddington).
2014-03-11 23:28:57 -04:00
Jochen Sprickerhof
4ae8431f96 Bug TD-45
- TD-45 Fix preprocessor define.

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-03-06 18:26:39 -05:00
Paul Beckingham
523dce8f32 Code Cleanup
- Standardized headers.
2014-02-01 14:33:37 -05:00
Paul Beckingham
8b736934d7 Code Cleanup
- Removed deprecated 'push', 'pull' and 'merge' commands.
2014-01-18 19:12:48 -05:00
Paul Beckingham
8ed92ca498 Copyright
- Bumped copyright to 2014, ready for release.
2014-01-01 13:32:22 -05:00
Paul Beckingham
d211337315 Performance
- Optimizes indexing into pending.data for direct task access.
2013-11-03 14:02:11 -05:00
Paul Beckingham
f367989afa Bug #1270
- The 'undo' command is now properly removing backlog entries.
2013-10-06 13:43:21 -04:00
Paul Beckingham
7a6c534636 Code Cleanup
- Restructured 'undo' code to make backlog rollback more readily implementable.
2013-10-06 11:02:25 -04:00
Paul Beckingham
88abd93e52 Feature
- Protects against interrupt during critical DB commit and sync operations.
2013-09-07 14:24:35 -04:00
Paul Beckingham
4133d29cca FF4/JSON Interop
- Removed the \n characters from Task::composeFF4 and Task::ComposeJSON.
- Tasks in backlog.data file are now written as JSON.
- Tasks are recognized in FF4 or JSON format.
2013-06-02 20:38:58 -04:00
Paul Beckingham
dd0b01e487 Code Sharing
- Cleaned up the #ifdef in Task.cpp for sharing with taskd.

(cherry picked from commit af94ac2e12d84fddb735d6931aaf2c46176c794c)
2013-06-02 13:58:21 -04:00
Paul Beckingham
d03c4cda8a Build Error
- Many files were missing an explicit cmake.h include.  Some were not including
  it at all.  Now it's used almost everywhere.

(cherry picked from commit 82ae86979c497e6d1d0c6b2b5a55aa379ec82c98)
2013-06-02 13:57:36 -04:00
Paul Beckingham
773b55d374 Code Cleanup
- Removed L10N define.  It served its purpose.
2013-04-07 23:50:51 -04:00
Paul Beckingham
8af0a7f3ba Merge branch 'master' into 2.3.0
Conflicts:
	AUTHORS
	CMakeLists.txt
	INSTALL
	NEWS
	cmake.h.in
	doc/man/task-faq.5.in
	package-config/osx/README
	scripts/utils/verify_l10n
	src/API.h
	src/Config.cpp
	src/Context.cpp
	src/DOM.cpp
	src/Hooks.cpp
	src/TransportShell.h
	src/commands/CmdDiagnostics.cpp
	src/commands/CmdShell.cpp
	src/commands/CmdVersion.cpp
	src/en-US.h
	src/shell/Readline.h
	src/wcwidth6.cpp
	test/CMakeLists.txt
	test/color.uda.t
	test/duration.t.cpp
	test/hook.on-launch.t
	test/template.t
	test/uuid.t
2013-04-07 17:56:59 -04:00
Paul Beckingham
88968ac36c Bug #1191
+ The 'execute' command should not be considered a 'write' command.
2013-03-06 21:04:46 -05:00
Johannes Schlatow
7388cec75e Bug #1191
Added missing close().
2013-03-07 02:46:37 +01:00
Paul Beckingham
1dccd29643 Copyright 2013
- Updated copyright notices.
2013-03-04 17:47:12 -05:00
Paul Beckingham
2be52e1be2 Bug #1137
- Fixed bug #1137, which caused file locks to be non-blocking (thanks to Steve
  Rader).
2013-02-10 23:25:27 -05:00
Paul Beckingham
6ce3a8e27f Bug #1123
- Fixed bug #1123, which caused the undo of a 'log' command to corrupt the data
  file (thanks to Tim None).
2012-12-01 15:05:03 -05:00
Johannes Schlatow
7710c7a623 Merge bug
Hopefully found the ultimate cause of duplicated (completed) tasks.

The corresponding test case

 1. does not rely on the fact that there are modifications with equal
    timestamps and
 2. is a LOT simpler than the other ones.
2012-11-23 13:14:40 +01:00
Johannes Schlatow
0e28374131 Bug #1117
Fixed some other merge issues with the sorting order of equally timestamped
entries in undo.data (see #1104).

1. The fact that both files can begin with equal timestamps but different
   modifications has not been taken into account.

2. Besides the fact that the relative order within the same data file must
   be preservered as introduced before, we also need a unique order for entries
   of different data files so that each machine comes to the same merge result.
   This has now been achieved by taking the UUIDs into account as soon as the
   timestamps are equal.
2012-11-23 13:03:32 +01:00
Paul Beckingham
4a6b9e6104 TDB2
- Added an option to bypass backlog recording to TDB2::add and TDB2::modify.
  This is required when handling backlog data, to prevent perpetual syncing.
2012-10-08 17:45:43 -04:00
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