Commit graph

261 commits

Author SHA1 Message Date
Paul Beckingham
585cbdfcac Merge branch 'hooks' into 1.9.0
Conflicts:
	src/command.cpp
	src/report.cpp
2010-01-27 22:46:20 -05:00
Paul Beckingham
b1700f3cf6 Enhancement - caseless compare
- Fixed bug detecting multiple failed negative attribute matches.
2010-01-27 16:52:54 -05:00
Paul Beckingham
4f1183a358 Enhancement - caseless compare
- Fixed bug in text.cpp:find that failed to locate a substring if it occurred
  at the end of the string.
2010-01-27 16:28:57 -05:00
Paul Beckingham
0c5a71b02f Enhancement - caseless substitution
- Substitutions "task <id> /from/to/" now obey the rc.search.case.sensitive
  setting.
2010-01-27 12:26:06 -05:00
Paul Beckingham
06ecef76d3 Enhancement - caseless find
- Added support for a starting offset.
2010-01-27 09:50:10 -05:00
Paul Beckingham
2dfe144236 Enhancement - caseless string compare, find
- Switched the sense of the Boolean parameter to match a more natural
  name in the .taskrc file.
2010-01-27 09:33:26 -05:00
Paul Beckingham
3e5ea8cb6c Enhancement - Caseless string compare, find
- Merged compare and find functions in from metatask.
- Merged unit tests in from metatask.
2010-01-27 09:12:06 -05:00
Federico Hernandez
ccb6327131 Merge branch '1.9.0' of tasktools.org:task into 1.9.0 2010-01-25 01:09:43 +01:00
Federico Hernandez
401f1b6496 Holidays and dates
- improved dateformat handling now defaulting to YMD set via
  dateformat.holiday variable
- fixed missing sorting in holiday table output when running
  calendar.holidays=full
- renamed reportdateformat to dateformat.report
- added config file checking for calendar.holidays and calendar.details
- added 2 holiday files for SE and US (watertown, MA)
2010-01-25 01:06:15 +01:00
Paul Beckingham
48bf9d9f85 Bug Fix - #299 Can't use multiple project.hasnt:foo
- Fixed bug that prevented a filter from containing multiple references
  to the same attribute (thanks for John Florian).
- Added unit tests to verify.
2010-01-24 18:40:04 -05:00
Paul Beckingham
383962173e Bug Fix - #360 Huh? "You cannot remove the recurrence from a recurring task. "
- The logic for detecting changes to a recurring task was wrong.
- Added unit tests for this bug.
2010-01-24 17:35:37 -05:00
Federico Hernandez
a7244a999e Holidays
- added displaying of holidays in 'task cal'
  via calendar.holidays
- the legend in the calendar can now be turned off
- weeknumbers in the calendar can now be color-coded
2010-01-22 01:42:32 +01:00
Paul Beckingham
21d5607af2 Unit Tests - post-start, pre-exit
- Implemented unit tests for the post-start and pre-exit hooks.
2010-01-19 23:24:24 -05:00
Paul Beckingham
b927d95d58 Merge branch '1.9.0' of tasktools.org:task into 1.9.0 2010-01-19 17:53:53 -05:00
Paul Beckingham
dd5623be65 Unit Tests
- Fixed tests that were broken when the config defaults changed.
2010-01-19 17:53:17 -05:00
Federico Hernandez
ab86490b37 Clean up annotation details
- changed variable name from annotation.details to annotations
- added report.X.annotations
- changed values from 2, 1, 0 to full, sparse, none
- made reportdateformat available in timesheet
2010-01-19 00:46:25 +01:00
Paul Beckingham
229a3d309c Feature - #296 Setting configuration variables in .taskrc
- Now supports 'task config name value', 'task config name ""', and
  'task config name' to directly modify the .taskrc file.
- Updated man page.
- Added unit tests.
- Modified existing config command to also display configuration
  variables that have no values.
2010-01-17 00:13:19 -05:00
Paul Beckingham
5a886f6e58 Unit Tests
- Now sorts the results of a glob, so that the results are in a
  consistent order on all platforms.
2010-01-16 17:46:32 -05:00
Paul Beckingham
abffaa184b Enhancement - Path integration
- Obsoleted util.cpp spit, slurp calls
2010-01-16 17:45:45 -05:00
Paul Beckingham
e53ba8110b Enhancement - Path integration
- Implemented Path::operator (std::string) const, to provide an
  automatic cast to std::string for any Path, File or Directory.
- Made use of new cast in various code.
- Changed use of spaces in atoi () calls.
- Switched from std::string::data () to std::string::c_str () calls.
2010-01-16 14:42:36 -05:00
Paul Beckingham
b596e96b43 Enhancement - Path, File, Directory integration
- Replaced all access calls.
- Replaced all stat calls.
- Obsoleted util.cpp isAbsoluteDirectory calls.
- Obsoleted util.cpp expandPath calls.
2010-01-16 10:27:31 -05:00
Paul Beckingham
8e47342a18 Unit Tests
- Modified config.t.cpp according to the recent Config.cpp changes.
2010-01-15 22:04:41 -05:00
Paul Beckingham
0faf7fa8ee Config - defaults
- Config is now providing a default set of all configuration variables.
- The default set is used to both initialize a Config object, and to
  create a sample .taskrc.
2010-01-15 02:50:46 -05:00
Federico Hernandez
3aae7b180b Feature - #283 verbosity of annotations
- the configuration variable annotation.details now controls the
  verbosity of the output of annotations.
2010-01-14 00:03:52 +01:00
Federico Hernandez
b001c2f40b Merge branch '1.9.0' of tasktools.org:task into 1.9.0 2010-01-12 23:15:19 +01:00
Federico Hernandez
660d0cca3e Report date format
- added new reportdateformat to extend the formatting of due dates
  in the reports and "task info"
- added new conversion sequences a, A, b, B and Y to be used with
  reportdateformat
2010-01-12 23:12:22 +01:00
Paul Beckingham
e1f3f2355a Enhancement
- Added Path::is_absolute, and corresponding unit tests.
- Replaced expandPath and isAbsolutePath call in Config.cpp.
2010-01-12 01:30:59 -05:00
Paul Beckingham
a5cb041ef2 Code Reorganization
- Merged Path, File and Directory handling objects from metatask.git.
- Merged unit tests.
- These objects will replace a fair amount of code in task 1.9 and
  more in 2.0.
2010-01-09 17:48:32 -05:00
Paul Beckingham
bfdeee2cea Unit Tests - shell.t
- Began a set of unit tests for shell mode.  Needs work.
2010-01-09 15:17:44 -05:00
Federico Hernandez
7ef5233547 Calendar coloring
- Added 1 new color configuration variables to colorize weekend days
  in the calendar: 'calendar.color.weekend'.
- Changed the default colors in the calendar.
2010-01-08 16:21:27 +01:00
Federico Hernandez
d552b208dd Calendar coloring
- Added 3 new color configuration variables to colorize today, days with due tasks
  and days with overdue tasks in the calendar:
  'calendar.color.today', 'color.calendar.due' and 'calendar.calendar.overdue'
2010-01-08 12:23:26 +01:00
Federico Hernandez
6dd00f41e9 Calendar details
- added 2 new configuration variables 'calendar.details' and
   'calendar.details.report' that make it possible to display
   details of task with due date when doing 'task cal'
2010-01-08 00:15:00 +01:00
Federico Hernandez
be75b4bf3a Fixed 2 unit tests that behaved wrong at the end/beginning of a year. 2010-01-01 22:05:08 +01:00
Paul Beckingham
db707d5e15 Feature - new field 'priority_long'
- The new 'priority_long' field can be shown in custom reports, and will
  display 'High' rather than the abbreviated 'H'.
- Unit tests.
2009-12-31 12:57:03 -05:00
Federico Hernandez
dca4772f33 New command config
- version now only displays the version number and copyright notice
- config displays the task configuration that version used to show
- configuration variable longversion is not longer needed
2009-12-29 02:46:16 +01:00
Paul Beckingham
9ce55bcf67 Copyright
- Updated the copyright notices to 2010, for the 1.9.0 release.
2009-12-27 12:39:42 -05:00
Paul Beckingham
6cfb913e45 Unit Tests - benchmark2.t
- Gathers timing for runs of the list report for 1, 10, 100 and 1000
  tasks.  This will create a history of data in the tinderbox runs
  for later analysis.
2009-12-27 10:14:45 -05:00
Paul Beckingham
5ef3bcc243 Unit Tests - benchmark2
- Fixed Timer class to use a fixed precision, that for some reason,
  does not work on Haiku.  Put a conditional compile around it for
  now - perhaps later Haiku alpha releases will change things?
- Added benchmark2.t, which enables high-resolution timers for a
  single 'list' command, with 10, 100 and 1000 task databases. Then
  it emits readily-found and parsed data for charts.
- Eliminated obsolete benchmark data for hardware I no longer own.
2009-12-26 19:44:52 -05:00
Paul Beckingham
f43e093515 Unit Tests - util.t
- Added unit tests to make sure formatSeconds is doing the right thing.
  It isn't, and it needs to change, but at least now we can see what is
  wrong with it.
2009-12-22 13:36:47 -05:00
Federico Hernandez
338e4dfbc7 basic.t
- check version number against configure.ac
- added test for _version command
2009-12-22 00:18:26 +01:00
Paul Beckingham
1046555c9c Unit Tests - abbreviation.t, basic.t
- Fixed broken unit tests that relied on the string 'ABSOLUTELY NO
  WARRANTY' being present in the output of the version command.  The
  tests now rely upon 'GNU General Public License' instead.
2009-12-20 10:51:51 -05:00
Paul Beckingham
75e738a9c9 Unit Tests - list.t
- Added listIntersect and a Boolean listDiff implementation in main.h.
- Added a set of unit tests for the above.
2009-12-13 12:30:49 -05:00
Paul Beckingham
eaeca45eae Bug Fix - broken unit tests on Ubuntu
- Fixed util.cpp formatSeconds and formatSecondsCompact, that were using
  an algorithm that accentuated rounding errors.
- Fixed unit tests that were expecting wrong answers from the wrong
  algorithm above.
2009-12-12 11:30:20 -05:00
Paul Beckingham
0780919c2e Feature - #352 rc file should support includes
- Added include file support to Config.cpp.
- Implemented isAbsolutePath helper.
- Added unit tests for isAbsolutePath.
- Fixed small bug in bug.bulk.t.
- Added TODO items to config.t.cpp.
2009-12-09 17:21:09 -05:00
Paul Beckingham
8d43a35ca4 Unit Tests - util.t
- Added unit tests for formatSeconds and formatSecondsCompact.
- Fixed small boundary but in formatSeconds.
2009-12-09 17:12:50 -05:00
Paul Beckingham
42c1b30c31 Feature - Config validation
- The 'version' command now complains about use of deprecated color names and
  duplicate entries.
- Unit tests verify duplicate detection.
- Unit tests verify deprecated color detection.
- Most validation code moved from command.cpp to Config.cpp.
2009-12-08 22:56:01 -05:00
Federico Hernandez
b684ded845 Bug #347 - Confirmation dialog is lowercase for "all"
- changed confirmation to be now "All" for multiple changes
- added unit tests for all answers to multiple changes
2009-12-09 01:15:31 +01:00
Paul Beckingham
7acef0c9fd Enhancement - related to, but not fixing bug #293
- Added new attribute modifiers 'word' and 'noword' which find the existence
  of whole words, or prove the non-existence of whole words.  If a task has
  the description "Pay the bill", then "description.word:the" will match, but
  "description.word:th" will not.  For partial word matches, there is still
  "description.contains:th".
- Added unit tests for the text.cpp functions.
- Added unit tests including the new modifiers in filters.
- Added unit tests to parse the new modifiers.
- Modified man page.
- Modified the Context::autoFilter processing to use the new modifiers for
  +tag and -tag filtering.
- Added a support email to an error message, while looking at the filter code.
- Added new modifiers to the help report.
- Modified a utf8.t unit test to include an alphanumeric tag, rather than a
  smiley face.
2009-12-07 01:35:47 -05:00
Paul Beckingham
5f353f800d Unit Tests - cal.t
- Fixed a broken fix (e7c8114dff) for
  the calendar command - previously if task could find no tasks with
  due dates, no calendar was displayed, and an error message shown.
  That broken fix was only on the 1.9.0 branch and never released.
  The correct behavior is to show a line of months.  This bug broke
  15 unit tests.
- Fixed minor problem in unit tests where the output was not captured,
  although this has no bearing on the results.
2009-12-06 11:30:51 -05:00
Federico Hernandez
f3d31834ee Merge branch 'master' into 1.9.0
due to release of 1.8.5

Conflicts:
	ChangeLog
	configure.ac
	doc/man/task-tutorial.5
	doc/man/task.1
	doc/man/taskrc.5
	src/Config.cpp
	src/rules.cpp
2009-12-06 04:30:56 +01:00