Commit graph

9428 commits

Author SHA1 Message Date
Tomas Babej
8b86f16f25 Variant: Do not use implicit fall-through
The code handling the comparison between the date and string types would
convert the variants to correct types, but only through multi-level
fall-through in the switch statement, which is always a bit of a
dangerous construct.

Added explicit return for the non-trivial case, preventing the need for
the fall-through.

Closes #2502.
2021-06-12 15:49:06 -04:00
Tomas Babej
8f16824538 tests: Add test for partial operator over date/string pairs 2021-06-12 15:49:06 -04:00
Tomas Babej
c98fe5f34b
cmake: Remove recur2.cpp from CMakeLists 2021-06-12 10:40:47 -04:00
Tomas Babej
34ffd164bb
recur: Remove references to the new recurrence mechanism 2021-06-12 10:40:29 -04:00
Tomas Babej
4db7990df8
recur: Remove WIP recurrence overhaul implementation
The feature has been moved to 3.0 milestone. Also, we are now using
feature branches for development of new functionality, in order to make
the development branch more stable.
2021-06-12 10:37:23 -04:00
Tomas Babej
7011cfb05a Changelog: Document TW #2503 2021-06-10 21:44:07 -04:00
Tomas Babej
5e5a48606f CmdExec: Prevent user from executing an empty command
Closes #2503.
2021-06-10 21:44:07 -04:00
Tomas Babej
496773b386
README: Update Discord badge with an invite link 2021-06-06 01:19:51 -04:00
Tomas Babej
3581260ee7 performance: Move sample data out of the perl script
This made language statistics look much more skewed towards Perl than
they should be.
2021-06-06 00:27:39 -04:00
Tomas Babej
c5a210e4a0 README: Add contributor-relevant badges 2021-06-06 00:27:39 -04:00
Tomas Babej
47d17a4365 README: Move downloads stats under main header 2021-06-06 00:27:39 -04:00
Tomas Babej
920c31ea72 README: Add downloads badges to the top 2021-06-06 00:27:39 -04:00
Tomas Babej
b7541571b5 test: Replace cmake3 with cmake for CentOS builds 2021-06-06 00:27:39 -04:00
Tomas Babej
d705abee32 README: Make it clear what discussions are we talking about 2021-06-06 00:27:39 -04:00
Tomas Babej
2ae4db3a37 README: Add libera.chat 2021-06-06 00:27:39 -04:00
Tomas Babej
b5134c9be3 README: Add Github discussions and download statistics 2021-06-06 00:27:39 -04:00
Tomas Babej
acc72e7e3d README: Make some of the links actionable 2021-06-06 00:27:39 -04:00
Tomas Babej
f3abccd151 README: Promote our communities 2021-06-06 00:27:39 -04:00
Tomas Babej
7d053f29e1 README: Add Taskwarrior heading 2021-06-06 00:27:39 -04:00
Tomas Babej
3d352d73d2 README: Decrease logo size 2021-06-06 00:27:39 -04:00
Tomas Babej
ab545b9f49 README: Add the logo on top 2021-06-06 00:27:39 -04:00
Tomas Babej
987414dc8e README: Add overview stats 2021-06-06 00:27:39 -04:00
Tomas Babej
67a7a9cb93 README: Expand INSTALL section 2021-06-06 00:27:39 -04:00
Tomas Babej
ab04227eb5 README: Drop submodule update instructions
These should no longer be relevant.
2021-06-06 00:27:39 -04:00
oxalica
3c402d4fb7 Prefer /usr/bin/env and searching from PATH 2021-06-02 19:35:18 -04:00
oxalica
2cb8f1d5ea Support relative include for themes in taskrc 2021-06-02 19:34:57 -04:00
oxalica
3672ed0c1b Remove build date/time from diagnostic message
This message does not really help, and makes the binary
non-deterministic.
2021-06-02 19:33:39 -04:00
Vladimir Rusinov
e762306563 Add a test for capitalized months and days of the week.
The change was implemented in
https://github.com/GothenburgBitFactory/libshared/pull/33.

This change adds validation in TaskWarrior.

Fixes:
* https://github.com/GothenburgBitFactory/taskwarrior/issues/2160
* https://github.com/GothenburgBitFactory/taskwarrior/issues/2364
2021-05-29 10:36:25 -04:00
Paul Beckingham
a9a7f16af3 Added F?UNDING.yml to connect the repo with the sponsorship 2021-05-25 18:40:38 -04:00
begasus
cd06d937a5 Search for libnetwork on Haiku 2021-05-25 18:26:04 -04:00
begasus
4fff27f4bc Fix reference for errno.h on Haiku 2021-05-14 00:04:48 -04:00
Rosen Penev
73575f8d88 convert manual loops to std::count_if
Simpler and generates less assembly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-05-01 21:20:52 -04:00
Tomas Babej
62399239ca Filter: Make +ACTIVE trigger pendingOnly shortcut 2021-04-24 15:28:00 -04:00
Tomas Babej
523e2b40fe Filter: Consider presence of +PENDING tag signal to skip completed.data
This puts +PENDING at the same level of treatment as status:pending when
it comes to decision whether the data processed should be pending only.

The mechanism is by no means perfect and should be improved in the
future.
2021-04-24 15:28:00 -04:00
Tomas Babej
5e87be4641 Filter: Fix copy-paste error in pendingOnly 2021-04-24 15:28:00 -04:00
Tomas Babej
c7fd6b798b libshared: Bump version to support Pig.getUntilAscii 2021-04-24 10:47:28 -04:00
Tomas Babej
87d0499fc8 performance: Use ascii-only version of getUnitl for parsing attribute names
Not having to consider utf-8 characters has performance benefits.
2021-04-24 10:47:28 -04:00
Tomas Babej
95b135b59e DOM: Create a copy of Task object only if needed 2021-04-24 10:47:28 -04:00
Tomas Babej
87b0be9b6f performance: Pre-emptively reserve size of the values vector
Each token will add a corresponding Variant into the vector, so we can
avoid the performance penalty connected with dynamic resizes of the
vector.
2021-04-24 10:47:28 -04:00
Tomas Babej
312f77f703 performance: Do not use Pig to extract raw line content 2021-04-24 10:47:28 -04:00
Tomas Babej
e7487c8a63 performance: Avoid lexing input when not needed in getDOM
Lexing a token can be expensive operation. Perform lexing only if a
UUID/ID reference could have been provided.
2021-04-24 10:47:28 -04:00
Tomas Babej
c3f9d09d22 performance: Cache used command value
The detected command does not change once CLI2::analysis has been
performed. Cache the value of the command to avoid the need to
re-discover the correct value each time we're interested in it.
2021-04-24 10:47:28 -04:00
Tomas Babej
a19773873a performance: Cache CLI2::canonicalize lookups
Canonicalization of attributes or attribute prefixes happens once per
every single task considered in the filtering process. It maps short,
prefixed names to their full-length versions, for example:

"pro" -> "project" in the expression "project:Home"

It follows that such process is not task-dependant and as such the
lookups can be cached.
2021-04-24 10:47:28 -04:00
Rosen Penev
ab7f5b0b51 clang-tidy: loop conversion
Found with modernize-loop-convert

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-23 09:13:22 -04:00
Rosen Penev
15f0ab87e0 clang-tidy: use const references
Found with performance-for-range-copy

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-23 01:59:45 -04:00
Rosen Penev
e84930be8d clang-tidy: use auto
Found with modernize-use-auto

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-23 01:39:23 -04:00
Rosen Penev
d0c4350c2f clang-tidy: add missing reserve calls
Found with performance-inefficient-vector-operation

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-23 00:22:43 -04:00
Rosen Penev
3cafb5257e clang-tidy: use = default
Found with modernize-use-equals-default

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-23 00:15:06 -04:00
Rosen Penev
4aaaa8dcc8 clang-tidy: use bool literals
Found with modernize-use-bool-literals

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-23 00:11:52 -04:00
Rosen Penev
8ffb85b327 clang-tidy: use '' for single character find
Found with performance-faster-string-find

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-04-22 23:18:16 -04:00