Paul Beckingham
f0c8330ebf
Filter: Added a mechanism to override ::safety
2015-07-12 22:02:11 -04:00
Paul Beckingham
f0d27dcaac
Filter: Removed Eval::disambiguity
2015-07-01 17:53:09 -04:00
Paul Beckingham
5d02291077
Merge branch '2.4.5' of ssh://git.tasktools.org/tm/task into 2.4.5
2015-06-30 07:54:22 -04:00
Paul Beckingham
12bec38f12
Filter: Typo (thanks to Peter Rochen)
2015-06-30 07:53:26 -04:00
Paul Beckingham
358223a6b1
Filter: Corrected implementation of ::safety
2015-06-27 21:08:24 -04:00
Paul Beckingham
b67b2ccc96
CLI2: Added ::addContextFilter, and supporting processing
2015-06-27 15:53:24 -04:00
Paul Beckingham
737cb23546
CLI2: Eliminated CLI
...
- This is a large commit, as all the changes are centered around the elimination
of CLI.
- CLI is no longer compiled.
- Context no longer maintains CLI + CLI2.
- Filter now walks the parse tree and sends to Eval a
std::vector <std::pair <std::string, Lexer::Type>> containing only args tagged
with FILTER.
- Filter more efficiently sets/unsets Eval::debug, by doing it less often.
- The filterExpr.length() check is no longer meaningful, and instead the size of
the std::vector above is used.
- Filter::pendingOnly performs better analysis.
- Filter::safety makes use of the std::vector size also.
- Task::modify makes use of 'canonical' rather than 'name', which is a policy
change, not a fix.
2015-06-24 13:23:56 -04:00
Paul Beckingham
6c0ba77204
CLI2: Added ::prepareFilter for the deferred parsing of filters
2015-06-19 10:15:01 -07:00
Paul Beckingham
e74c6963a9
C++11: Cleaned up program framework with range-based for
2015-05-11 17:50:53 -04:00
Tomas Babej
1465bcb918
Context: Do not apply context for the export command
2015-03-14 17:28:20 -04:00
Paul Beckingham
b7ad091d00
Updated copyright to 2015
2015-01-01 00:00:41 -05:00
Paul Beckingham
8795b0a692
TW-1447
...
- TW-1447 Not possible to filter on a UDA of type String (thanks to atomicules).
2014-12-25 17:18:44 -05:00
Paul Beckingham
d5c937ba8c
Filter
...
- Diagnostics for filter eval were not enabled properly. Now rc.debug.parser=2
will show all filter eval diagnostics.
2014-11-22 13:48:28 -05:00
Paul Beckingham
dc1e01b1c2
Filter
...
- Identifies Filter::subset as source of CLI::dump call, rather than the
default label, which was confusing.
2014-11-22 12:24:55 -05:00
Paul Beckingham
fd518e3fce
Filter
...
- Improved ::pendingOnly algorithm.
2014-11-10 18:11:13 -05:00
Paul Beckingham
771ec1d080
Filter
...
- Removed all Parser references.
2014-10-31 22:53:00 -04:00
Paul Beckingham
f804a43cee
Filter
...
- Corrected use of rc.debug.parser.
- Added notes for fixing ::pendingOnly.
2014-10-31 22:31:58 -04:00
Paul Beckingham
74526ee564
CLI
...
- Converted ::safety from Parser to CLI.
- Updated unit tests to use the new template.
- Added tests to cover both values of rc.allow.empty.filter.
2014-10-26 09:02:51 -04:00
Paul Beckingham
b7efb753b5
Filter
...
- Rewrote ::pendingOnly to work with CLI instead of Parser.
2014-10-24 23:00:06 -04:00
Paul Beckingham
fab9fe2a7d
Filter
...
- Modified algorithm for ::pendingOnly.
2014-10-23 00:36:04 -04:00
Paul Beckingham
b484abea4a
CLI, Filter
...
- Moved parse tree dump into Context::debug output.
2014-10-20 01:01:27 -04:00
Paul Beckingham
fa011c5bfb
Filter
...
- Modified diagnostics to observe rc.debug.parser.
2014-10-06 23:25:31 -04:00
Paul Beckingham
1ccc284cc7
Safety Valve Override
...
- Support 'allow.empty.filter', defaulting to 'yes', but if 'no' disallows the
combination of a write command and an empty filter. Ordinarily this is just
a warning that requires confirmation (thanks to Lee Lieske).
2014-08-11 12:32:11 -04:00
Paul Beckingham
a3cfc2de7f
Filter
...
- The 'ambiguity' control for Eval was being set *after* the expression was
parsed, which was useless and misleading.
2014-07-03 15:27:00 -04:00
Paul Beckingham
456b982ced
DOM
...
- Updated DOM to use Variant ovjects, which carry a type which improves
expression evaluation.
2014-06-11 21:53:00 -04:00
Paul Beckingham
ddcadb35f7
Filter
...
- Set ambiguity to false, thus disabling recognition of certain date forms.
2014-06-08 14:17:50 -04:00
Paul Beckingham
e6df1b38e2
DOM
...
- Standardized DOM interface to return success/failure, with the possibility
of blank values. This matches the Eval::source callback interface‥
- Added more unit tests.
2014-06-04 18:57:36 -04:00
Paul Beckingham
ba8c007ace
Filter
...
- When a filter resolves an identifier through a DOM reference, it records
the source. In other words, when 'priority' is resolved to 'H', the source
reference ('priority') is stored in the variant. This is because different
data attributes behave differently when compared.
2014-05-31 10:01:00 -04:00
Paul Beckingham
688dcb6cd3
Filter
...
- Fixed ::pendingOnly, which now has a clearly-defined set of rules.
2014-05-30 00:39:38 -04:00
Paul Beckingham
bba0b75a3b
Eval
...
- Cleaned up debug FILTER diagnostics.
2014-05-26 12:16:44 -04:00
Paul Beckingham
79ac26cb02
Filter
...
- The domSource function is no longer static, and is prototyped in Filter.h
for general use.
2014-05-25 16:57:46 -04:00
Paul Beckingham
949063102a
Diagnostics
...
- Further removal of diagnostic output.
2014-05-25 14:59:09 -04:00
Paul Beckingham
c0c1eca0fc
Filter
...
- Filter diagnostics include which data file was loaded.
2014-05-25 13:21:36 -04:00
Paul Beckingham
9bea83c2c3
Filter
...
- Generates debug message about filtering process.
2014-05-25 13:07:56 -04:00
Paul Beckingham
79abddd03d
Parser
...
- Renamed A3t to Parser.
2014-05-25 09:44:22 -04:00
Paul Beckingham
f5a13e5e42
Filter
...
- Full transition to the new filtering mechanism, using the new expression
evaluator. It is working well enough to start the dogfood. Many tests
now broken.
2014-05-25 08:51:56 -04:00
Paul Beckingham
1964ffc053
Filter
...
- Implemented the safety mechanism that checks for confirmation is a
write command processes a filter, but the filter expression is blank.
For example, running "task delete" would delete all tasks unless this
safety check is in place.
2014-05-24 23:48:20 -04:00
Paul Beckingham
6cb64e370e
Filter
...
- Added more stubbed transition code.
2014-05-24 15:16:07 -04:00
Paul Beckingham
7e8e48ff08
Filter
...
- Stubbed code for eventual elimination of E9 in Filter.
2014-05-24 14:15:39 -04:00
Paul Beckingham
2a72d0f1d6
Filter
...
- Added a static contextTask task reference instead of an iterator that
domSource cannot dereference. Idiot.
2014-05-24 13:33:15 -04:00
Paul Beckingham
7ffd391faa
Filter
...
- Filter mismatch reports now only show in debug mode.
2014-05-11 14:46:46 -04:00
Paul Beckingham
8f02fb1b13
Filter
...
- Clearly marked the obsolete code.
2014-05-11 13:54:28 -04:00
Paul Beckingham
a97ce45cdf
Eval
...
- Debug mode can now be disabled.
2014-05-11 10:15:10 -04:00
Paul Beckingham
656dcde272
Filter
...
- Implemented ::pendingOnly (was named ::shortcut), for detecting filters
that do not need to access completed.data.
2014-05-02 23:39:03 -04:00
Paul Beckingham
dea9d3f4ef
Filter
...
- rc.debug=1 propagates to Eval::debug.
- Corrected comments.
2014-04-27 12:49:54 -07:00
Paul Beckingham
899e65714a
Filter
...
- Added domSource, and a context Task so that Eval can access attributes.
Doesn't work.
2014-04-27 11:06:02 -07:00
Paul Beckingham
fe2634b472
Filter
...
- New Filter object to control filtering, instead of commands/Command.cpp.
2014-04-27 10:05:05 -07:00
Paul Beckingham
f971fcd110
Code Cleanup
...
- Obsoleted Filter.{h,cpp}.
- Obsoleted Sequence.{h,cpp}.
- Eliminated Context::autoFilter.
- Stubbed Expression::eval.
2011-06-15 23:45:50 -04:00
Paul Beckingham
8fabffe18c
Code Cleanup
...
- Eliminated '#include "x"' by changing all to '#include <x>'.
2011-05-28 00:19:59 -04:00
Dan White
4b71fa73f8
Feature #710
...
- Added feature #710 , which adds an attribute modifier prefix to return the
complement of a filtered set (thanks to Dan White).
- Added missing description to the 'help' command.
Signed-off-by: Paul Beckingham <paul@beckingham.net >
2011-03-19 00:56:45 -04:00