Commit Graph

118 Commits

Author SHA1 Message Date
Dustin J. Mitchell
20af583e21 Refactor to store dependencies as individual attributes
This also drops support for the transitional `json.depends.array`
configuration value, which has not been necessary since ~2016.

As with tags, dependencies are stored in both a "combined",
comma-separated format (for compatibility) and in an
attribute-per-dependency format (for the future).
2021-08-17 20:36:54 -04:00
Dustin J. Mitchell
413b8d22b7 Remove references to the 'depends' property outside of Task.cpp
With the exception of `taskDifferences` and `taskInfoDifferences`,
deferred to #2572.
2021-08-17 20:36:54 -04:00
Dustin J. Mitchell
901283c79f [WIP] make 'waiting' status a 'virtual' status 2021-08-08 14:27:25 -04:00
Dustin J. Mitchell
20041c120e Refactor to store tags as individual attributes
Each tag is stored as `tag_<tagname>: x`.  The `x` is required because
empty attributes are treated as nonexistent.

For compatibility, the `tags` attribute is updated in sync with the
per-tag attributes.  This compatibility support may be dropped in later
versions.

Note that synchronization _updates_ use JSON format, which does not
change with this patch, and thus no compatibility issues exist.  The
synchronization _initialization_, however, uses FF4, meaning that a
sync server initialized from a version of `task` with this patch will
contain `tag_<tagname>` attributes, which will look like orphaned UDAs
to older versions.  However, as updates to tasks are synchronized via
the sync server, the updates will not contain these attributes and they
will show as "deleted" in the `task info` display on the older version.
Aside from the noise in the `task info` output, this is harmless.
2021-08-05 02:11:27 -04:00
Tomas Babej
9017cd6e53 doc: Update copyright to 2021 2021-01-02 02:48:22 -05:00
Tomas Babej
9ed047d46d Task: Support setting 64-bit integer values
Thanks to Stephan Rieche.
2020-12-27 21:29:15 -05:00
Paul Beckingham
702af00435 Revert "[clang-tidy] Remove redundant const"
This reverts commit 55d103c491.
2020-12-05 16:18:37 -05:00
Rosen Penev
55d103c491 [clang-tidy] Remove redundant const
Found with readability-const-return-type

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Tomas Babej
a09f9d48ab Update copyright to 2020 2020-11-21 12:27:05 -05:00
Tomas Babej
8066e4e6e2 meta: Update copyright year 2019-01-01 08:46:21 -05:00
Simon Ruderich
e817dfc800 Always use https:// link for opensource.org
It was already used in a few places, make this consistent.
2018-03-04 14:53:07 +01:00
Paul Beckingham
0de169bb10 Copyright 2018 2017-12-31 19:22:07 -05:00
Paul Beckingham
eb935d895b TW-1881: default.scheduled seems not to work
- Thanks to Onion.
2017-01-16 20:25:58 -05:00
Paul Beckingham
5206b4a84b TW-1827: Extract annotations from a task
- Thanks to Ryan.
2017-01-16 16:00:16 -05:00
Paul Beckingham
4e7576cb79 Merge branch 'recurrence' into 2.6.0 2017-01-07 12:29:11 -05:00
Paul Beckingham
a50e65a134 Copyright update 2017-01-01 12:30:04 -05:00
Paul Beckingham
b0a4a409a6 Task: Improved method signature 2016-12-31 16:33:39 -05:00
Paul Beckingham
245ed39b78 Task: Improved method signature 2016-12-31 16:15:24 -05:00
Paul Beckingham
5193f7d03e Task: Improved method signature 2016-12-31 15:55:06 -05:00
Paul Beckingham
cfc3e098c1 Task: Improved method signature 2016-12-31 15:44:13 -05:00
Paul Beckingham
c31e0b106d Task: Renamed ::getUDAOrphans to ::getUDAOrphanUUIDs 2016-12-31 12:27:28 -05:00
Paul Beckingham
630a1530e0 Task: Added QUARTER virtual tag 2016-05-30 14:11:07 -04:00
Tomas Babej
f3147a512c feedback: Use task identifiers instead of IDs
During construction of a feedback string for a dependency change,
a list of IDs of the dependencies was used. However, if the tasks
being referred to are already deleted / completed, their respective
IDs are all 0s.

Use shortened UUIDs in such case.
2016-04-03 09:35:18 -04:00
Paul Beckingham
6ef490a093 Task: Code cleanup 2016-01-31 16:28:13 -05:00
Paul Beckingham
15373daf85 Task: Improved CppCoreGuideline compliance 2016-01-31 16:05:00 -05:00
Paul Beckingham
641d232dea Copyright: Updated to 2016 2015-12-31 15:06:43 -05:00
Paul Beckingham
9415f62482 Task: Conditional compilation allows Taskserver to reuse code 2015-11-08 17:03:05 -05:00
Wilhelm Schuermann
8f8ad813cd Task: Remove std::map inheritance, clean up interface
- Make the Task object's interface more explicit by removing the
  std::map inheritance.
- Using this more explicit interface, remove unneeded ctors in order to
  allow the compiler to "Do The Right Thing"(tm).
  This leads to a performance improvement of 12% in the "add"
  performance test, and 7% for "import".
2015-11-04 20:33:52 +01:00
Tomas Babej
2d25cf6f59 TW-1704: Task: Use Task::identifier to reference the task
To achieve consistent output, use a helper method to generate a proper
handle - ID for tasks with non-zero ID, UUID otherwise.
2015-10-29 20:00:53 -04:00
Tomas Babej
6b83945a21 Urgency: Replace 'next' coefficient with configuration entry 2015-09-04 08:10:36 -04:00
Paul Beckingham
c2c26b338b CmdImport: Added support for free-form JSON import 2015-07-27 20:48:51 -04:00
Paul Beckingham
5995320164 Task: Added a code path allowing parseJSON to be handed a JSON tree 2015-07-27 20:48:48 -04:00
Paul Beckingham
41a76c6798 Tags: New 'UDA' and 'ORPHAN' virtual tags. 2015-07-24 23:46:24 -04:00
Paul Beckingham
30911968cc Task: Dead code removal 2015-07-17 14:31:25 -04:00
Paul Beckingham
1f8a66b7f3 CLI2: Integrated Lexer::decomposeSubstitution
- Task::modify now considers the 'g' at the end of a substitution to be a
  string of characters, which may contain 'g'. No other flags are currently
  supported.
2015-07-11 16:44:13 -04:00
Wilhelm Schuermann
49f7612704 TW-1572: Implement better urgency inheritance
- Implement recursive urgency inheritance.  If this is to be made a
  default setting, some thought will have to be put into making it
  more efficient.
2015-05-22 23:01:21 +02:00
Paul Beckingham
935b2993f3 C++11: Took advantage of N1757. 2015-04-06 15:30:39 -04:00
Paul Beckingham
5af4579741 Priority: Converted 'priority' attribute to a UDA
- 'priority.long' and 'priority.short' formats now map to 'priority', and
  generate a warning.
- Man page updated.
- Converted priority urgency coefficients to UDA equivalents.
- Converted priority color rules to UDA color rules.
- Removed 'default.priority' support.
- Removed special sort handling for 'priority' field in Variant, added special
  UDA sort handling.
- Removed ColPriority.{h,cpp} source files.
- Removed asorted newly-unused variables.
- The 'show' command now highlights unused priority settings.
- Removed unused localized priority-relateѕ strings.
- Added legacy mapping for columns and sort columns for 'priority.long' and
  'priority.short' columns in report definitions.
- Removed priority color rules implementation.
- Removed obsolete tests for #860, #990, custom.priority_long.t.
- Updated various tests that set priority default, colors.
2015-04-04 19:30:33 -04:00
Paul Beckingham
743cb92958 Context: Static initialize UDA sort order values 2015-04-04 14:50:38 -04:00
Paul Beckingham
7665d13d42 Duration
- Removed legacy duration value mapping, which causes much performance
  degradation.
2015-03-02 16:16:39 -05:00
Paul Beckingham
b7ad091d00 Updated copyright to 2015 2015-01-01 00:00:41 -05:00
Paul Beckingham
b972c2c6c8 Task
- Improved structure of legacy duration value upgrades, so it can be used for
  other things, namely UDA durations.
2014-10-07 22:38:44 -04:00
Paul Beckingham
1a5fb437a5 Task
- Upgrades legacy recur values.
2014-10-07 00:24:03 -04:00
Paul Beckingham
b5f3cfd9a3 Code Cleanup
- Replaced multiple Task:setX methods with Task::setAsNow (x).
2014-09-14 11:57:02 -04:00
Paul Beckingham
a7171193ca Task
- Migrated util.cpp encode and decode functions because this is the only place
  they are used.
2014-09-07 17:23:16 -04:00
Wilhelm Schuermann
7548ce662a TW-296
- TW-296 urgency of blocked task should affect urgency of blocking task

Signed-off-by: Paul Beckingham <paul@beckingham.net>
2014-07-06 14:11:10 -04:00
Paul Beckingham
1ccbb3b43a Task
- Added ::get_float method for accessing numeric attributes.
2014-06-24 22:14:46 -04:00
Paul Beckingham
55b5149be0 TW-72
- TW-72 extend info report with urgency column
2014-06-01 16:33:14 -04:00
Paul Beckingham
46d1f2c679 Build
- Added missing include for FreeBSD.
2014-05-29 20:05:29 -04:00
Paul Beckingham
c39285b61c Task
- Renamed 'mods_required' argument to the more accurate 'text_required' in the
  ::modify method.
2014-05-27 00:37:31 -04:00