Wilhelm Schuermann
96ca7eb5f2
Nibbler: Remove unused function argument
2015-11-12 13:36:23 +01:00
Paul Beckingham
dd82835ac4
Nibbler: Removed unused ::backN method
2015-10-29 23:55:43 -04:00
Paul Beckingham
297f2b6e99
Nibbler: Removed unused ::skipAll method
2015-10-29 23:53:17 -04:00
Paul Beckingham
119827e4e1
Nibbler: Removed unused ::getDigit6 method
2015-10-29 23:46:48 -04:00
Paul Beckingham
88469fc5f9
Nibbler: Removed unused ::getUntilEOL method
2015-10-29 23:41:01 -04:00
Paul Beckingham
0c5984c517
Nibbler: Removed unused ::getWord method
2015-10-29 23:34:46 -04:00
Paul Beckingham
78da4ffb90
Nibbler: Removed unused ::getName method
2015-10-29 23:32:07 -04:00
Paul Beckingham
38b9e54955
Nibbler: Removed unused ::getUUID method
2015-10-29 23:28:42 -04:00
Paul Beckingham
1e8eac0e3d
Nibbler: Removed unused ::getRx method
2015-10-29 23:23:41 -04:00
Paul Beckingham
de66200028
Nibbler: Removed unused ::getUntilRx method
2015-10-29 23:19:41 -04:00
Paul Beckingham
180d3e75ff
Nibbler: Removed unused ::skipRx method
2015-10-29 23:19:01 -04:00
Paul Beckingham
741afd2240
Nibbler: Removed unused ::getDateISO method
2015-10-28 20:13:55 -04:00
Paul Beckingham
51afff2e6e
Nibbler: Removed unused ::getDate and tests
2015-10-28 20:09:55 -04:00
Paul Beckingham
461610aaa6
Test: Cleanup prep for '-Wextra'
2015-10-16 15:55:17 -04:00
Paul Beckingham
799e62051f
Test: Removed Date
2015-10-05 09:54:54 -04:00
Paul Beckingham
7bbc794d3a
C++11: N2672 Initializer lists
...
- Modified code to use the more compact and readable initializer lists.
2015-05-24 13:03:02 -04:00
Paul Beckingham
c11601e30e
Cleanup
...
- Removed unused Nibbler::getHex.
2015-02-17 10:58:45 -05:00
Paul Beckingham
b7ad091d00
Updated copyright to 2015
2015-01-01 00:00:41 -05:00
Paul Beckingham
5413d3172b
TW-230, TW-1329
...
- TW-230 Filter tasks on partial UUIDs (thanks to Paul Kishimoto).
- TW-1329 Short UUIDs (thanks to Benjamin Weber).
2014-07-01 23:56:53 -04:00
Paul Beckingham
6514bdfc4d
TW-28, TW-271, TW-277, TW-752, TW-1265
...
- TW-1265 cannot add UDA with underscore (thanks to Jakub Wilk).
- Added unit tests for TW-1265.
- Added ChangeLog and AUTHOR entries for other fixed issues.
2014-05-31 11:11:53 -04:00
Paul Beckingham
98f740e9d1
Merge branch '2.3.0' into 2.4.0
...
Conflicts:
AUTHORS
CMakeLists.txt
NEWS
src/A3.cpp
src/CMakeLists.txt
src/Config.cpp
src/Duration.cpp
src/Duration.h
src/Nibbler.cpp
src/Nibbler.h
src/RX.cpp
src/RX.h
src/columns/ColDate.cpp
src/columns/ColScheduled.cpp
src/commands/Command.cpp
src/legacy.cpp
src/utf8.cpp
src/utf8.h
test/CMakeLists.txt
test/bug.mergedeps.t.postponed
test/duration.t.cpp
test/merge.duplicates.t
test/merge.simple_duplication.t
test/merge.t
test/nibbler.t.cpp
test/roundtrip.t
test/rx.t.cpp
test/utf8.t.cpp
2014-01-07 19:10:03 -05:00
Paul Beckingham
4cf0763845
Nibbler
...
- Merged libexpr changes.
2014-01-02 00:34:51 -05:00
Paul Beckingham
8ed92ca498
Copyright
...
- Bumped copyright to 2014, ready for release.
2014-01-01 13:32:22 -05:00
Paul Beckingham
efae57d56b
Merge from libexpr
...
- Incorporated Nibbler changes from libexpr.
2013-12-08 16:19:38 -05:00
Paul Beckingham
ada6e49dab
Bug #1251
...
- #1251 tests should sanitize TASKDATA and TASKRC env vars (thanks to Jakub
Wilk).
2013-09-07 13:52:16 -04:00
Paul Beckingham
663c82837c
Nibbler::backN
...
- Added a method to support multi-byte backstep through a string.
- Added unit tests.
2013-08-31 16:02:51 -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
a1132f0028
Code Cleanup
...
- Cmake was not updating HAVE_ST_BIRTHTIME.
- NIBBLER_FEATURE_DATE was not properly applied everywhere.
- FEATURE_COLOR was not properly set.
- Some source files failed to include cmake.h, and therefore were not properly
- Removed inefficient use of std::string::substr for guaranteed single character
strings.
- Integrated Directory::cd.
- Integrated File::ctime, ::btime.
- Integrated Path::operator+.
- Integrated Nibbler::getDigit{2,4,6}.
- Integrated HighResTimer.
enabling/disabling code.
- All Path objects now expanded internally to absolute form.
- Modified unit tests to accomodate absolute paths.
- Merged new nibbler.t.cpp tests.
- Made various methods const.
- Includes removed from some files, added to others.
2013-05-05 08:33:52 -04:00
Paul Beckingham
1dccd29643
Copyright 2013
...
- Updated copyright notices.
2013-03-04 17:47:12 -05:00
Scott Kostyshak
7a6cdde571
Code Cleanup
...
- Constify some catches.
2012-09-04 22:04:41 -04:00
Louis-Claude Canon
ec330921de
Code Cleanup
...
- Factorize code for parsing date elements.
- Better order of blocks for parsing date elements.
- Add corresponding minimal-digit date parsing method for reading seconds,
minutes and week.
- Update documentation and test.
2012-08-02 00:11:12 -04:00
Louis-Claude Canon
ee0a16f663
Enhancement
...
- Undefined variables are put to today in dates (if year and month is not
specified, the current ones are considered). But if a global ones is
specified, lower one are put to their default values (0 or 1).
2012-08-01 23:41:28 -04:00
Paul Beckingham
c20c025c8e
Bug
...
- Fixed a bug that caused a commond dateformat (YDM-HN) to be misinterpreted
as a UUID. Solution is to increase minimum partial UUID length from 9 to
14.
2012-07-17 18:30:58 -04:00
Paul Beckingham
9a6319a210
Parsing
...
- Use of broken 'isalpha' caused 'entrée' to be parsed by Nibbler::getName
as 'entr'. This is part of bug #1006 , but only a small part.
2012-06-10 16:17:09 -04:00
Paul Beckingham
e8309fcf49
Unit Tests
...
- Added unit test to nibbler.t that illustrates one of the problems
associated with bug #1006 : Nibbler::getName read "entrée" and finds
"entr".
2012-06-10 15:54:39 -04:00
Paul Beckingham
f4bfa1b2fd
Bug #995
...
- Fixed bug #995 , which mis-parsed UUIDs in filters as other elements (thanks
to Bryce Harrington).
- Nibbler no longer permits 8-character UUID abbreviations, because too often
they resemble other forms, such as '1111111d' which looks like a duration.
- Modified unit tests accordingly.
2012-04-29 00:28:28 -04:00
Paul Beckingham
7a45db4d0f
Feature #891
...
- Added feature #891 , which allows for leftmost partial matches of UUID values.
Makes direct comparisons for full-length values, and regular expressions for
partial values. Note that there is a minimum length of 8 hex digits.
- Added safety parsing mechanism that fails a partial UUID if immediately
followed by a hex digit. This allows for numbers longer than 8 digits to not
be misinterpreted as a UUID.
- Implemented Nibbler::getPartialUUID.
- Implemented unit tests.
@@ -1145,12 +1145,23 @@ const A3 A3::sequence (const A3& input) const
for (unsigned int i = 0; i < uuids.size (); ++i)
{
- if (ids.size ())
+ if (ids.size () + i > 0)
sequenced.push_back (Arg ("or", Arg::cat_op));
- sequenced.push_back (Arg ("uuid", Arg::type_string, Arg::cat_dom));
- sequenced.push_back (Arg ("=", Arg::cat_op));
- sequenced.push_back (Arg (uuids[i], Arg::type_string, Arg::cat_literal));
+ // A full-length UUID requires a string comparison.
+ if (uuids[i].length () == 36)
+ {
+ sequenced.push_back (Arg ("uuid", Arg::type_string, Arg::cat_dom));
+ sequenced.push_back (Arg ("=", Arg::cat_op));
+ sequenced.push_back (Arg (uuids[i], Arg::type_string, Arg::cat_literal));
+ }
+ // A UUID fragment is a leftmost comparison.
+ else
+ {
+ sequenced.push_back (Arg ("uuid", Arg::type_string, Arg::cat_dom));
+ sequenced.push_back (Arg ("~", Arg::cat_op));
+ sequenced.push_back (Arg ("^" + uuids[i], Arg::type_string, Arg::cat_rx));
+ }
}
sequenced.push_back (Arg (")", Arg::cat_op));
@@ -1674,11 +1685,11 @@ bool A3::is_uuid (Nibbler& n, std::string& result)
n.save ();
result = "";
std::string uuid;
- if (n.getUUID (uuid))
+ if (n.getPartialUUID (uuid))
{
result += uuid;
while (n.skip (',') &&
- n.getUUID (uuid))
+ n.getPartialUUID (uuid))
{
result += ',' + uuid;
}
@@ -1997,13 +2008,13 @@ bool A3::extract_uuid (
Nibbler n (input);
std::string uuid;
- if (n.getUUID (uuid))
+ if (n.getPartialUUID (uuid))
{
sequence.push_back (uuid);
while (n.skip (','))
{
- if (!n.getUUID (uuid))
+ if (!n.getPartialUUID (uuid))
throw std::string (STRING_A3_UUID_AFTER_COMMA);
sequence.push_back (uuid);
2012-02-19 22:27:40 -05:00
Paul Beckingham
96fe3f42ba
Minor Refactoring
...
- Added support for more type-specific checks of attribute values.
- Added support for more type-specific attribute rendering.
- Improved generalized methods for checking columns in a report.
- Added unit tests.
- Minor code cleanup.
- Added secret hidden feature for internal testing.
2012-02-05 20:56:46 -05:00
Paul Beckingham
89b5c91a35
Unit Tests
...
- Corrected method name.
2012-01-30 20:27:50 -05:00
Paul Beckingham
ec96d929a0
Bug 879 - Description/Annotation ending with Slash Causes Problems
...
- Backslashes actually. The escaping mechanism in the low-level parser
was eating leading \ characters when it should not. Very hard bug to
find, trivial to fix.
- Added unit tests to several components while narrowing this down.
2012-01-29 15:36:05 -05:00
Paul Beckingham
938a33f236
Unit Tests
...
- Typo in #ifdef caused incorrect number of reported tests.
2012-01-05 20:17:03 -05:00
Paul Beckingham
fb38dca1db
Parsing
...
- Integrated modified Nibbler and test code from kronisk. These
changes make both test and Nibbler standalone objects, with configurable
features.
2012-01-05 17:37:50 -05:00
Paul Beckingham
6580095002
Copyright
...
- Year change.
2012-01-02 23:32:10 -05:00
Federico Hernandez
bbe218a6f1
License
...
- first round of unit tests
2011-10-08 12:17:42 +02:00
Paul Beckingham
36db62728b
Unit Tests
...
- Improved signal to noise ratio for caseless.t.
- Added test count markers to nibbler.t.cpp.
2011-09-06 23:39:57 -04:00
Paul Beckingham
47ae2ee9f6
Unit Tests
...
- Added unit tests for Nibbler::getNumber when the input is simply "2.0".
2011-08-10 00:25:03 -04:00
Paul Beckingham
c244132476
Unit Tests
...
- Fixed bug in Nibbler::getN.
- Added unit test for Nibbler::getN.
2011-07-31 11:14:56 -04:00
Paul Beckingham
fde7ec107a
Code Cleanup
...
- Removed obsolete Nibbler::getDOM.
2011-07-26 00:40:29 -04:00
Paul Beckingham
3fd83ca400
Nibbler
...
- Implemented Nibbler::getName to parse an alpha-numeric name.
- Added appropriate unit tests.
2011-07-24 01:00:24 -04:00
Paul Beckingham
09d94a0712
Expressions
...
- Eliminated the . prefix for DOM references to the current task - it is
unnatural to state ".due < today".
- Prioritized parsing dates ahead of integers, which were masking all
dates.
2011-07-19 00:25:26 -04:00