Commit Graph

87 Commits

Author SHA1 Message Date
Paul Beckingham
8dab95e200 Bug Fix - recurrence
- Fixed bug whereby handleRecurrence was being called after the tasks
  were loaded and filtered, and thus handleRecurrence operated on a
  filtered set, and failed.  The fix is to move the call to before the
  TDB::load call, and to add another TDB::loadPending call inside
  handleRecurrence.  This means TDB::load needs to be reentrant without
  re-reading the file, and can therefore be called twice, with the
  likelihood of there being a different filter for each call.  This in
  turn led to the problem whereby handleRecurrence would generate the
  synthetic tasks, which then sat uncommitted in TDB::mNew.  The fix
  for this is that every call to TDB::loadPending gets the contents of
  TDB::mNew appended (with correct IDs).  This bug is what you might
  call a good one.
2009-06-19 00:15:38 -04:00
Paul Beckingham
9c2e70b73a Bug Fixes, Unit Tests
- Fixed bug where "foo:bar" was not recognized as an attribute, and
  generated an error rather than demoting is to part of the description.
- Fixed bug where en-passant deltas were applied only to the first task
  in a sequence.
- Fixed various unit test.
2009-06-18 22:01:43 -04:00
Paul Beckingham
ae3257b623 Bug Fix - tags report using std::cout
- The tags report was writing directly to std::cout, therefore
  bypassing the header/footer control.
2009-06-18 18:37:53 -04:00
Paul Beckingham
b2c76f6123 Enhancement - modify command
- Implemented modify command
2009-06-16 23:25:35 -04:00
Paul Beckingham
051720a279 Enhancement - annotate
- Implemented annotation command.
2009-06-16 22:55:05 -04:00
Paul Beckingham
23f0a9658e Enhancement - duplicate
- Implemented duplicate command.
- Now allows duplication (and demotion) of recurring tasks.
2009-06-16 22:40:59 -04:00
Paul Beckingham
8a22ac7cf2 Enhancement - header, footer, message
- Added header, footer and message sinks.
- Added individual colorization of headers, footers and messages.
- Added new configuration variables to Config.cpp, taskrc.5.
- Added colorization functions to rules.cpp
2009-06-16 21:55:30 -04:00
Paul Beckingham
6a77d61faa Enhancements - undo command
- Implemented the undo command.
2009-06-16 00:16:43 -04:00
Paul Beckingham
71b320b361 Enhancement - undelete command
- Implemented undelete command.
2009-06-16 00:08:02 -04:00
Paul Beckingham
41e137a92c Enhancements - stop command
- Implemented stop command
- Fixed bug in TDB that failed to truncate the pending file on
  update.
2009-06-15 23:59:56 -04:00
Paul Beckingham
1551362d1e Enhancements - delete, start
- Implemented delete command.
- Implemented start command.
2009-06-15 23:47:42 -04:00
Paul Beckingham
9f1880e050 Enhancement - done command
- Implemented done command.
2009-06-15 11:27:50 -04:00
Paul Beckingham
98316f7ab1 Enhancement - append
- Implemented append command.
2009-06-15 01:44:42 -04:00
Paul Beckingham
7ff178cecc Integration - TDB write operations
- TDB::gc rewritten.
- TDB::commit fixed.
- Corrected usage of handleRecurringTasks wrt TDB.
- Unit tests for TDB.
2009-06-15 00:52:24 -04:00
Paul Beckingham
f470acadaa Enhancements - export
- Implemented Task::composeCSV.
- Implemented export command, but removed filename support.  This
  needs to be documented.
2009-06-14 14:26:39 -04:00
Paul Beckingham
9f6b112003 Enhancement - history report
- Implemented history report.
- Improved (not to the point of them working) filters.
- Improved automatic filter construction.
- Removed obsolete members from Task.
- Added tag support to the "add" command.
2009-06-14 12:09:57 -04:00
Paul Beckingham
c89a222c7c Integration - removing T
- Removed linkage to T.o in unit tests.  The first step towards
  eliminating T.cpp.
2009-06-13 18:53:01 -04:00
Paul Beckingham
25d27bec93 Integration - attribute validation
- Implemented digitsOnly primitive.
- Implemented noSpaces primitive.
- Added unit tests for above.
- Att now manages the lists of valid attributes and modifier names.
- validName migrated to Att.
- validModifiableName migrated to Att.
- New Att::validNameValue.
- Removed obsolete validDescription.
- Removed obsolete validPriority.
- Removed obsolete valid.cpp/guess.
- Implemented text.cpp/noVerticalSpace.
- Added unit tests for text.cpp/noVerticalSpace.
- Removed final static lists from valid.cpp.
2009-06-13 16:27:13 -04:00
Paul Beckingham
5a0535c9b5 Enhancment - Record::has
- Used new Record::has method for efficiency.
2009-06-12 01:54:53 -04:00
Paul Beckingham
d4a9a387af Bug Fix - add with no status
- Tasks were not assigned a default status of Task::pending when added.
2009-06-11 00:46:04 -04:00
Paul Beckingham
7b9cb12308 Enhancement - add
- Modified Record::get* methods to be const.
- Implemented TDB2::add.
- Renamed Task::valid to Task::validate.
- Implemented Task::setEntry to default creation time.
- Fixed bug where TDB2 was opening files "rw" instead of "r+".
2009-06-11 00:11:11 -04:00
Paul Beckingham
8728312da6 Optimization - TDB2 access
- Broke TDB2::load into TDB2::load, TDB2::loadPending and
  TDB2::loadCompleted.
- Converted "projects" and "tags" reports to use this.
2009-06-10 23:12:11 -04:00
Paul Beckingham
9776495286 Code Cleanup - TDB removal
- TDB removed from all code, but source kept for further reference.
2009-06-10 22:54:56 -04:00
Paul Beckingham
d7da182450 Code Cleanup
- Renamed T2.h -> Task.h, T2.cpp -> Task.cpp.  This permanently avoids
  the problem where g++ on OpenBSD 4.5 fails because of the T class,
  which probably conflicts with C++ templates.  Who knows.
2009-06-10 21:35:07 -04:00
Paul Beckingham
71f4749d56 Code Cleanup
- Renamed files task.h -> main.h, task.cpp -> main.cpp.  This is to
  prepare for the next rename, which addresses the OpenBSD bug.
- Removed utf8.h, utf8.cpp from Makefile.am, which were inadvertantly
  added.
2009-06-10 21:20:00 -04:00
Paul Beckingham
2da4f8ba7a Enhancements - Context::getWidth
- Added help function to reduce general code size.
2009-06-10 00:35:37 -04:00
Paul Beckingham
0449f9e0a2 Enhancements - version command
- Implemented version command.
- Corrected config handling in version command.
2009-06-09 23:58:05 -04:00
Paul Beckingham
f3f77a4c78 Enhancement - report stubs
- Stubbed all non-1.8.0 reports.
- Updated all handler signatures.
2009-06-09 22:48:03 -04:00
Paul Beckingham
a694ac05b1 Enhancement - colors report
- Implemented colors report.
- Commented out all other commands and reports.
- Eliminated obsolete findT function.
2009-06-09 22:21:56 -04:00
Paul Beckingham
aff828c51b Integration - "tags" report
- The "tags" report is now working under 1.8.0.
2009-06-08 01:24:33 -04:00
Paul Beckingham
fb5fe5f5b4 Integration - "projects" report
- "projects" report converted to 1.8.0.
- Relocated code from task.cpp to recur.cpp to allow unit tests to link
  without includign task.cpp and therefore main.
- Removed obsolete sandbox directory.
- Fixed bug where Config::load deleted the pre-loaded custom reports.
- Fixed bug where Cmd::valid failed to include custom reports properly.
2009-06-08 00:54:49 -04:00
Paul Beckingham
2aa43fe4fe Documentation Update
- Removed references to old websites and online groups.
- Removed references to the github issue tracker.
- Added references to http://taskwarrior.org.
2009-06-05 01:01:17 -04:00
Paul Beckingham
66bd5fc3c0 Code Cleanup
- Integrated Context.config.
- Eliminated Config& as a function argument.
- Added extern references to Context where needed.
2009-06-03 02:03:49 -04:00
Paul Beckingham
87ed7dad6c Enhancements - config variables
- Added 'locale' and 'displayweeknumber' as valid configuration variables.
2009-05-30 14:21:21 -04:00
Paul Beckingham
0fcaf85652 Bug Fix - blank annotations now disallowed
- Prevented blank annotations from being added, and the description
  being echoed as though it were the annotation applied (thanks to
  Bruce Dillahunty).
- Added bug.annotate.t unit test to prevent regression.
2009-05-27 01:01:25 -04:00
Paul Beckingham
df3fc9b723 Merge branch 'ff4' into 1.8.0 2009-05-23 09:46:13 -04:00
Paul Beckingham
179f60ed8d Bug Fix - _forcecolor considered obsolete
- Fixed bug that considered the _forcecolor configuration variable
  to be obsolete.  Thanks to Bruce Dillahunty.
2009-05-19 19:31:26 -04:00
Paul Beckingham
04f60a4d8c FF4 - header file reorg
- Added new util.h and text.h header files.
- Corresponding edits.
2009-05-17 23:29:53 -04:00
Paul Beckingham
ee06280808 Code Reorganization - Silver Bullet
- Broke out Silver Bullet feature into separate edit.cpp file.
  Because it is big.
2009-05-13 12:35:54 -04:00
Paul Beckingham
4346f83f6e Merge branch 'silver-bullet' into 1.7.0
Conflicts:
	src/command.cpp
2009-05-13 11:55:21 -04:00
Paul Beckingham
c4e459e8d7 Silver Bullet - added more fields.
- Added (presumable) all other fields.  Now looking for a better
  format, and a nice way to parse it all back.
2009-05-13 11:39:07 -04:00
Paul Beckingham
77475136b9 Bug Fix - weekstart is not an obsolete
- The new 'weekstart' configuration variable was being tagged as
  obsolete by handleVersion.
2009-05-13 10:46:51 -04:00
Paul Beckingham
e8da71498d Documentation Update
- Corrected precedence list on editors.
2009-05-11 21:22:06 -04:00
Paul Beckingham
6762af8ffd Enhancement - Edit command
- Added more fields to the edit command.
- Added a more useful slurp implementation.
- Updated advanced.html with directions on use.
2009-05-10 16:26:48 -04:00
Paul Beckingham
407ef39c54 Enhancement - edit command
- Mere beginnings of the edit command.  No functionality yet.
2009-05-10 01:54:43 -04:00
Paul Beckingham
72f84b3c3e Bug Fix - "done" tasks missing end date
- Tasks marked "done" were not assigned an end date before being
  written to the file.  Fortunately this only affects beta testers
  who, by definition, like to live on the edge.
- Added better text in the NEWS file regarding the github issue
  tracker.
- Cleaned up text a little in the "help" report output.
2009-05-09 21:30:53 -04:00
Paul Beckingham
5814432366 Enhancement - TDB API cleanup
- Removed obsolete TDB::deleteT method.
- Removed obsolete TDB::completeT method.
- Updated documentation.
2009-05-08 00:37:24 -04:00
Paul Beckingham
5cf33105a3 Enhancement - en passant "done"
- When marking task(s) as done, it is now possible to modify them
  at the same time.
2009-05-08 00:25:30 -04:00
Paul Beckingham
b23bad9a5b Enhancement - duplicate command
- Added duplicate command that duplicates a task, and en passant
  applies and specified changes (thanks to David J Patrick).
2009-05-07 23:08:53 -04:00
Paul Beckingham
aec64afc5c Enhancements, Bug Fix
- Removed obsolete usage.html page.
- Added filterSequence helper function to subset tasks to the affected
  sequence of tasks.
- Added series of helper functions to facilitate applying modifications
  to tasks, allowing more commands the ability to modify tasks in all
  ways.
- Added calls to helper functions for append and modify commands.
- Fixed bug that would mistakenly validate the configuration variable
  "bcd" if there was a valid "abcd", "bcde" or "abcde" configuration
  variable.
- Made the messages generated by task after a command is complete
  more verbose and consistent across all commands.
- Fixed bug that caused the ghistory command to skip months where no
  tasks were added, but were deleted or done.  This is the same bug
  that was fixed in 1.6.0 for the history report.  So much for cut
  and paste.
- Allowed all commands that take an ID to now operate on a sequence.
2009-05-07 00:33:17 -04:00