Compare commits

..

3554 Commits

Author SHA1 Message Date
Dustin J. Mitchell
bc86a1e53f Release 3.0.2 (#3394) 2024-04-23 00:18:38 +00:00
Dustin J. Mitchell
9b35ab37aa Remove debug print (#3389) 2024-04-22 20:01:26 -04:00
Dustin J. Mitchell
a9995808ec Update cmake support for git submodules (#3383) 2024-04-21 08:55:38 -04:00
Dustin J. Mitchell
0627447a6a Update for 3.0.1 (#3382)
update for 3.0.1
2024-04-20 23:18:57 +00:00
Dustin J. Mitchell
f054a4061e Remove taskchampion-sync-server (#3380)
This crate has been moved to
https://github.com/GothenburgBitFactory/taskchampion-sync-server.

The integration-tests repo used the sync server to test integration
between taskchampion and the sync-server. We should do that again, but
after taskchampion moves to its own repo (#3209). In the interim, the
cross-sync integration test can simply test syncing between local
servers, but the snapshot test is no longer useful as the local server
does not support snapshots.
2024-04-20 12:44:06 +00:00
dependabot[bot]
304b84e4da Bump rustls from 0.21.7 to 0.21.11 (#3379)
Bumps [rustls](https://github.com/rustls/rustls) from 0.21.7 to 0.21.11.
- [Release notes](https://github.com/rustls/rustls/releases)
- [Changelog](https://github.com/rustls/rustls/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rustls/rustls/compare/v/0.21.7...v/0.21.11)

---
updated-dependencies:
- dependency-name: rustls
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-19 19:32:49 -04:00
Dustin J. Mitchell
f86a069faf Fix paths generated from origin (#3372)
These mistakenly doubled the initial `/` character. This was broken in #3361.
2024-04-16 22:05:45 -04:00
ryneeverett
0944c73716 Recommend LSP's in development docs (#3370)
* Recommend LSP's in development docs

Per conversation in #3338.

There are already a lot of documented compile options so I think we're
better off suggesting that everybody create a compile_commands.json
whether or not they're using an LSP because it doesn't cost much.

While I was at it it seemed reasonable to mention rust LSP too. Now that
rls is deprecated I'm not sure there is any competitor to rust-analyzer
worth mentioning.

* Export compile commands by default.

Thanks to @felixschurk for the idea and telling me how to do it.

It took me a minute to figure out that this places the
compile_commands.json in the build directory rather than the root of the
project. But clangd still finds it there and that's a better place for
it anyway.
2024-04-16 08:19:58 -04:00
Dustin J. Mitchell
10cec507cb Check that sync.server.origin is a URL (#3361) 2024-04-16 02:11:55 +00:00
Dustin J. Mitchell
4d9bb20bdd Update task news to support 3.0.0 (#3342)
* Introduce Version, use it to check current version in custom reports
* Support multiple versions in 'task news'
2024-04-15 22:04:16 -04:00
dependabot[bot]
d243d000eb Bump env_logger from 0.10.0 to 0.10.2 (#3336)
Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.10.0 to 0.10.2.
- [Release notes](https://github.com/rust-cli/env_logger/releases)
- [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-cli/env_logger/compare/v0.10.0...v0.10.2)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 21:49:56 -04:00
Dustin J. Mitchell
9040a7eb79 Throw std::strings on sync server errors (#3362) 2024-04-15 21:49:17 -04:00
Dustin J. Mitchell
0a491f36ad Store all modified tasks for use by on-exit hook (#3352)
The on-exit hook gets all modified tasks as input, but this was omitted
in the previous release. This adds a test for the desired behavior, and
updates TDB2 to correctly store the required information.
2024-04-15 21:14:25 -04:00
dependabot[bot]
7578768d9b Bump peaceiris/actions-gh-pages from 3 to 4 (#3367)
Bumps [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages) from 3 to 4.
- [Release notes](https://github.com/peaceiris/actions-gh-pages/releases)
- [Changelog](https://github.com/peaceiris/actions-gh-pages/blob/main/CHANGELOG.md)
- [Commits](https://github.com/peaceiris/actions-gh-pages/compare/v3...v4)

---
updated-dependencies:
- dependency-name: peaceiris/actions-gh-pages
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 21:12:20 -04:00
dependabot[bot]
cb0d21f96e Bump peaceiris/actions-mdbook from 1 to 2 (#3366)
Bumps [peaceiris/actions-mdbook](https://github.com/peaceiris/actions-mdbook) from 1 to 2.
- [Release notes](https://github.com/peaceiris/actions-mdbook/releases)
- [Changelog](https://github.com/peaceiris/actions-mdbook/blob/main/CHANGELOG.md)
- [Commits](https://github.com/peaceiris/actions-mdbook/compare/v1...v2)

---
updated-dependencies:
- dependency-name: peaceiris/actions-mdbook
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 21:11:17 -04:00
dependabot[bot]
3b414cd9bb Bump sigstore/cosign-installer from 3.4.0 to 3.5.0 (#3365)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](https://github.com/sigstore/cosign-installer/compare/v3.4.0...v3.5.0)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-15 21:10:52 -04:00
Dustin J. Mitchell
c90eb8f71d remove reference to NEWS (#3357) 2024-04-12 22:46:09 -04:00
Dustin J. Mitchell
7c465ceb8f Remove NEWS, as it is redundant to 'task news' (#3354) 2024-04-07 21:58:27 -04:00
Dustin J. Mitchell
a6b721853b Remove 'sync' from default verbose flags (#3319)
Do not give sync feedback when not doing remote sync
2024-04-08 01:02:07 +00:00
ryneeverett
fd306712b8 Install corrosion as submodule. (#3348)
This will enable nixpkgs -- and any other distribution that builds in a
network sandbox and/or wants to use their own corrosion package rather
than building another one -- to do so without patching taskwarrior.

Since we're already using submodules for libshared I don't think this
should make the build process any more complicated for anyone else.

See
https://github.com/NixOS/nixpkgs/issues/300679#issuecomment-2041252688
for context.
2024-04-07 12:10:54 -04:00
Felix Schurk
b5aa7c6ae2 change order of hook invocation and setting task id (#3339)
this prevents that the task id is always returned as zero after a hook
is run on it
closes #3312
2024-04-05 19:45:55 -04:00
Dustin J. Mitchell
933885f21c Merge pull request #3341 from ryneeverett/sync-config-man-warning
sync: Point to manpage if unconfigured
2024-04-05 19:01:50 -04:00
ryneeverett
587f8910ef sync: Point to manpage if unconfigured
See #3340.
2024-04-05 10:35:15 -04:00
dependabot[bot]
de42c8ba34 Bump strum_macros from 0.25.0 to 0.25.3 (#3335)
Bumps [strum_macros](https://github.com/Peternator7/strum) from 0.25.0 to 0.25.3.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum_macros
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-04 18:16:31 +00:00
Dustin J. Mitchell
8a0a98d3ef Issue a warning if .data files remain (#3321)
This will help users realize that they have updated to an incompatible
version and must export and import their tasks.
2024-03-31 18:55:30 -04:00
Felix Schurk
5a56cff88b prefix regex strings to be treated as raw strings (#3322)
Source for documentation
https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals.
Closes #3316.
2024-03-31 09:08:56 -04:00
Dustin J. Mitchell
c91cef43b0 add note about ENABLE_SYNC to changelog (#3317) 2024-03-31 00:59:21 +00:00
Felix Schurk
8c2c629a4d use CMake project settings (#3315)
This adds a description as well as the homepage to the CMake settings.
Further it would also now use the numbering cheme as supposed to in
CMake, this way other people could now pin a specific version if
taskwarrior is included in another project.
Documentation from CMake is https://cmake.org/cmake/help/latest/command/project.html
2024-03-30 10:33:49 -04:00
dependabot[bot]
dfaf3dfcb2 Bump tokio from 1.36.0 to 1.37.0 (#3310)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.36.0 to 1.37.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.36.0...tokio-1.37.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-29 09:25:44 -04:00
Dustin J. Mitchell
06fdfc5af3 Edit Cargo.toml during release (#3302) 2024-03-27 22:56:13 +00:00
dependabot[bot]
19f2c0d7b4 Bump uuid from 1.7.0 to 1.8.0 (#3290)
* Bump uuid from 1.7.0 to 1.8.0

Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.7.0 to 1.8.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.7.0...1.8.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* use as_bytes

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
2024-03-24 22:19:27 +00:00
Dustin J. Mitchell
8bb08bf01d Add releasing docs (#3292)
add releasing docs
2024-03-24 21:32:38 +00:00
Dustin J. Mitchell
3e41fb604c Prepare for 3.0.0 release (#3287) 2024-03-24 16:13:06 -04:00
dependabot[bot]
d54264f80c Bump docker/build-push-action from 5.2.0 to 5.3.0 (#3289)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5.2.0...v5.3.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-19 19:40:31 -04:00
dependabot[bot]
db60bf6d72 Bump docker/login-action from 3.0.0 to 3.1.0 (#3288)
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-19 19:40:23 -04:00
dependabot[bot]
0c8edfc50e Bump docker/build-push-action from 5.1.0 to 5.2.0 (#3285)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-11 08:44:18 -04:00
dependabot[bot]
904bece710 Bump mio from 0.8.10 to 0.8.11 (#3283)
Bumps [mio](https://github.com/tokio-rs/mio) from 0.8.10 to 0.8.11.
- [Release notes](https://github.com/tokio-rs/mio/releases)
- [Changelog](https://github.com/tokio-rs/mio/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/mio/compare/v0.8.10...v0.8.11)

---
updated-dependencies:
- dependency-name: mio
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-04 23:55:44 +00:00
Dustin J. Mitchell
aaff97d878 Use opensuse tumbleweed (#3282) 2024-03-04 17:42:27 +00:00
Dustin J. Mitchell
18a8bd2997 Use corrosion instead of CMakeRust (#3273)
* Use corrosion instead of CMakeRust
* use OpenSUSE tumbleweed (latest) to get newer CMake
2024-03-02 16:21:34 -05:00
Felix Schurk
8dd29e0a8a Change to out-of source build, Update build instructions (#3271)
* update build instructions

Usage of "modern" CMake syntax and using specific out of source build.
Further add example on how to build in parallel, build a specific target
and how to change the compiler.

This closes #3236.
2024-02-25 12:27:52 -05:00
ryneeverett
34c0e67469 show undo diff (#3213)
Exposes undo operations via the C API, and uses those to show a (new, differently formatted) diff before committing the undo.
2024-02-09 22:11:14 -05:00
dependabot[bot]
89df80c9f0 Bump sigstore/cosign-installer from 3.3.0 to 3.4.0 (#3267)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](https://github.com/sigstore/cosign-installer/compare/v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-05 11:29:42 -05:00
dependabot[bot]
79435b1a03 Bump tokio from 1.35.1 to 1.36.0 (#3268)
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.35.1 to 1.36.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.35.1...tokio-1.36.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-05 11:28:21 -05:00
Akash Shanmugaraj
aeb6acf640 added BYOS (Bring Your Own SERVICE_ACCOUNT) for GCS authentication (#3262) 2024-01-27 07:57:12 -05:00
Dustin J. Mitchell
83bbe4ec37 Fix invalid imports in [{..}] form (#3241)
* Fix invalid imports in `[{..}]` form

Before this change, if an import of data that takes the form of a JSON
array of JSON objects results in an error, the import would be re-tried
assuming that each line of the file is a JSON object (the old format).
However, no check was made that the value actually was an object before
casting it to `json::object`, resulting in a segfault.

This adds the check, and handles the failure with a useful error message
(from the first attempt to parse the file).
2024-01-25 08:01:20 -05:00
Dustin J. Mitchell
5b5a7a37c0 Use the correct formatting for tag_ properties (#3261)
This resolves a discrepancy between Taskwarrior and Taskchampion as to
how tags should be represented.
2024-01-24 18:11:51 -05:00
dependabot[bot]
00a3b6edc2 Bump actions/cache from 3 to 4 (#3257)
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-22 08:45:34 -05:00
Dustin J. Mitchell
4af0636b52 Add note about Rust not building automatically (#3255) 2024-01-21 22:13:46 -05:00
Dustin J. Mitchell
bacb79302a Change 'should' to 'may' in server snapshot requirements (#3256)
For an object store backend, none of the suggestions in this paragraph
make much sense. "May" is much softer, in terms of
https://datatracker.ietf.org/doc/html/rfc2119. And in particular, the
cloud server implementation does not do any of these things.
2024-01-21 22:13:10 -05:00
Dustin J. Mitchell
daca37806e Rename sync.server.encryption_secret to sync.encryption_secret. (#3249)
* Rename `sync.server.encryption_secret` to `sync.encryption_secret`.

* move pwgen
2024-01-21 19:11:24 -05:00
ryneeverett
082b6084fa sync server: Don't hash client_id for salt (#3250)
We don't know why we're doing this step so we probably shouldn't.
Cryptography isn't magic and extra steps are harmful in that they
obscure the important parts.
2024-01-21 18:16:25 -05:00
Dustin J. Mitchell
fa21835001 Better links from TW devel docs to TaskChampion (#3253) 2024-01-21 18:03:11 -05:00
ryneeverett
4008069a70 sync: Use 600,000 iterations for pbkdf2. (#3251)
Per [wikipedia](https://en.wikipedia.org/wiki/PBKDF2), "In 2023, OWASP
recommended to use 600,000 iterations for PBKDF2-HMAC-SHA256..."
2024-01-21 14:06:53 -05:00
Dustin J. Mitchell
323bd23251 Removed unused import (#3245)
Co-authored-by: Akash Shanmugaraj <65720968+akashShanmugraj@users.noreply.github.com>
2024-01-21 13:14:02 -05:00
Dustin J. Mitchell
5806413d64 Update to supported linux distros (#3248) 2024-01-21 13:13:41 -05:00
dependabot[bot]
0fca650b65 Bump webpki from 0.22.0 to 0.22.4 (#3246)
Bumps [webpki](https://github.com/briansmith/webpki) from 0.22.0 to 0.22.4.
- [Commits](https://github.com/briansmith/webpki/commits)

---
updated-dependencies:
- dependency-name: webpki
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-21 12:54:45 -05:00
Dustin J. Mitchell
9566c929e2 Add support for cloud sync, specifically GCP (#3223)
* Add support for cloud sync, specifically GCP

This adds generic support for sync to cloud services, with specific
spuport for GCP. Adding others -- so long as they support a
compare-and-set operation -- should be comparatively straightforward.

The cloud support includes cleanup of unnecessary data, and should keep
total space usage roughly proportional to the number of tasks.

Co-authored-by: ryneeverett <ryneeverett@gmail.com>
2024-01-21 12:36:37 -05:00
dependabot[bot]
6f1c16fecd Bump uuid from 1.6.0 to 1.7.0 (#3244)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.6.0 to 1.7.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.6.0...1.7.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-20 17:38:08 -05:00
Dustin J. Mitchell
80047ad5e7 Disable Clang's return-type-c-linkage warning (#3227)
* Disable return-type-c-linkage warning on Clang.

This is emitted by the compiler when it can't tell if the incomplete
type being returned is a C++ type, which might not have a C-compatible
layout. In `taskchampion.h`, the types are not C++ types so this is not
an issue and the warning is unnecessary.

* Use an if instead

Fancy generator expressions appear to not work.

* Try some different CMake syntax
2024-01-20 16:41:38 -05:00
Dustin J. Mitchell
b515f876ca Disable mac tests (#3242)
Disable mac testers
2024-01-20 16:39:53 -05:00
Dustin J. Mitchell
6d23497d6f Update task model docs (#3234)
Dependencies are now implemented, and the docs should be clear about the
format of the keys and values.

Noticed while working on GothenburgBitFactory/tw.org#212.
2023-12-27 21:22:23 -05:00
Dustin J. Mitchell
e29925155d Fix formatting of comments in taskchampion.h (#3228) 2023-12-27 20:02:23 -05:00
Dustin J. Mitchell
bd46b254af Fix unnecessary mut (#3224) 2023-12-24 20:14:17 -05:00
Dustin J. Mitchell
1380d79148 Update to 2021 edition (#3217)
..and also include the rust-version property in the taskchampion crate.
2023-12-24 08:58:04 -05:00
Dustin J. Mitchell
b52248f146 Make the sync server client an optional feature (#3216)
* Make the sync server client an optional feature

* fix comment, remove unnecessary allow(dead_code)
2023-12-24 08:57:37 -05:00
ryneeverett
e95f95eb08 xtask msrv: this subcommand is not capitalized (#3218)
$ cargo xtask MSRV 1.99
        Finished dev [unoptimized + debuginfo] target(s) in 0.21s
         Running `target/debug/xtask MSRV 1.99`
    Error: xtask: unknown xtask
    $ cargo xtask msrv 1.99
        Finished dev [unoptimized + debuginfo] target(s) in 0.21s
         Running `target/debug/xtask msrv 1.99`
    xtask: Updated MSRV in ../.github/workflows/checks.yml
    xtask: Updated MSRV in ../.github/workflows/rust-tests.yml
    xtask: Updated MSRV in taskchampion/src/lib.rs
    xtask: Updated MSRV in taskchampion/Cargo.toml
2023-12-24 08:57:01 -05:00
dependabot[bot]
1c11f8b650 Bump sigstore/cosign-installer from 3.1.2 to 3.3.0 (#3211)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 3.1.2 to 3.3.0.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](https://github.com/sigstore/cosign-installer/compare/v3.1.2...v3.3.0)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-18 08:42:35 -05:00
dependabot[bot]
1a783f95e5 Bump ureq from 2.8.0 to 2.9.0 (#3207)
Bumps [ureq](https://github.com/algesten/ureq) from 2.8.0 to 2.9.0.
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/compare/2.8.0...2.9.0)

---
updated-dependencies:
- dependency-name: ureq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-21 14:35:01 -05:00
dependabot[bot]
5b93918bee Bump uuid from 1.5.0 to 1.6.0 (#3205)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.5.0...1.6.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-20 21:42:53 -05:00
dependabot[bot]
d0b81166fa Bump docker/build-push-action from 4.2.1 to 5.1.0 (#3204)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 4.2.1 to 5.1.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v4.2.1...v5.1.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-20 21:23:36 -05:00
dependabot[bot]
1b6fd7c803 Bump regex from 1.9.4 to 1.10.2 (#3201)
Bumps [regex](https://github.com/rust-lang/regex) from 1.9.4 to 1.10.2.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.9.4...1.10.2)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-14 12:03:15 -05:00
dependabot[bot]
1392f55944 Bump proptest from 1.3.1 to 1.4.0 (#3198)
* Bump proptest from 1.3.1 to 1.4.0

Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.3.1 to 1.4.0.
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/v1.3.1...v1.4.0)

---
updated-dependencies:
- dependency-name: proptest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update MSRV to 1.65 to match proptest

Rust 1.65 is just over one year old right now.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
2023-11-13 23:21:54 -05:00
dependabot[bot]
41992d4849 Bump regex from 1.5.6 to 1.9.4 (#3197)
Bumps [regex](https://github.com/rust-lang/regex) from 1.5.6 to 1.9.4.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.5.6...1.9.4)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-13 19:19:55 -05:00
Isaac Wyatt
8f327db5b9 Add cargo xtask msrv (#3189)
* added cargo xtask msrv X.Y placeholder function

* add placeholder function cargo xtask msrv (X.Y)

* implement CLI arg vec, graceful errors, formatting

* impl. xtask msrv insert,upsert,graceful failures

* misc fixes - still need to update write method

* interim commit before removing comments

* updated per @djmitche suggestions. 2 fixes todo

* impl unwrap error checks, file truncating, etc

* removed test paths

* updated toml with specific regex version

* updated cargo toml and lock for regex version

* updated cargo toml and lock for regex version

* fixed clippy complaints

* impl replace file content, not comments

* accept djmitche suggestion to change comment documentation

Co-authored-by: Dustin J. Mitchell <dustin@v.igoro.us>

* refactored, need to fix Cow return

* removed debug prints, unncessary if, etc.

* fix non-idiomatic rust, arg.len error handling

* add #MSRV to config files and test

---------

Co-authored-by: iwyatt <sayhello+git@isaacwyatt.com>
Co-authored-by: Dustin J. Mitchell <dustin@v.igoro.us>
2023-11-11 17:54:38 -05:00
dependabot[bot]
1583e56cfc Bump uuid from 1.4.0 to 1.5.0 (#3192)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.4.0...1.5.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 08:23:57 -04:00
dependabot[bot]
a1aa7a9d74 Bump rustix from 0.37.19 to 0.37.25 (#3191)
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.37.19 to 0.37.25.
- [Release notes](https://github.com/bytecodealliance/rustix/releases)
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.37.19...v0.37.25)

---
updated-dependencies:
- dependency-name: rustix
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 08:17:19 -04:00
Thomas Lauf
a8f79f84a8 Fix typo 2023-10-20 12:03:02 +02:00
dependabot[bot]
9fc40c5949 Bump ureq from 2.7.0 to 2.8.0 (#3180)
* Bump ureq from 2.7.0 to 2.8.0

Bumps [ureq](https://github.com/algesten/ureq) from 2.7.0 to 2.8.0.
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/compare/2.7.0...2.8.0)

---
updated-dependencies:
- dependency-name: ureq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* update rustls too

* more Cargo.lock updates

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
2023-10-07 17:23:47 -04:00
dependabot[bot]
9337763491 Bump byteorder from 1.4.3 to 1.5.0 (#3184)
Bumps [byteorder](https://github.com/BurntSushi/byteorder) from 1.4.3 to 1.5.0.
- [Changelog](https://github.com/BurntSushi/byteorder/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/byteorder/compare/1.4.3...1.5.0)

---
updated-dependencies:
- dependency-name: byteorder
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-06 08:10:48 -04:00
dependabot[bot]
ee35cd6d82 Bump proptest from 1.2.0 to 1.3.1 (#3181)
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.2.0 to 1.3.1.
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/v1.2.0...v1.3.1)

---
updated-dependencies:
- dependency-name: proptest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-05 19:45:03 -04:00
dependabot[bot]
5d4abd3338 Bump docker/login-action from 2.1.0 to 3.0.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 2.1.0 to 3.0.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v2.1.0...v3.0.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-24 13:52:46 +02:00
dependabot[bot]
98f945ba73 Bump docker/build-push-action from 3.2.0 to 4.2.1 (#3172)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 3.2.0 to 4.2.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v3.2.0...v4.2.1)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-11 22:05:33 -04:00
dependabot[bot]
bf05d075a1 Bump actions/checkout from 3 to 4 (#3171)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-11 22:05:04 -04:00
dependabot[bot]
743ded84c1 Bump sigstore/cosign-installer from 2.8.1 to 3.1.2 (#3170)
Bumps [sigstore/cosign-installer](https://github.com/sigstore/cosign-installer) from 2.8.1 to 3.1.2.
- [Release notes](https://github.com/sigstore/cosign-installer/releases)
- [Commits](https://github.com/sigstore/cosign-installer/compare/v2.8.1...v3.1.2)

---
updated-dependencies:
- dependency-name: sigstore/cosign-installer
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 15:50:38 -04:00
Jonathan Neidel
d25f5a5118 Fix arch badge after pkg moved repositories (#3166) 2023-08-31 21:42:02 -04:00
Bernhard M. Wiedemann
603bf075f1 Fix issues with year 2038 (#3052)
* Fix annotations in year 2038

Fixes #3050

* Ensure 32-bit systems work better after 2038

Without this patch, their 32-bit signed long int could overflow.

This patch was done while working on reproducible builds for openSUSE.
2023-08-30 22:08:31 -04:00
dependabot[bot]
7017d8fc31 Bump rustls-webpki from 0.100.1 to 0.100.2 (#3161)
Bumps [rustls-webpki](https://github.com/rustls/webpki) from 0.100.1 to 0.100.2.
- [Release notes](https://github.com/rustls/webpki/releases)
- [Commits](https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2)

---
updated-dependencies:
- dependency-name: rustls-webpki
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-22 18:55:41 -04:00
gl-yziquel
0e4828f155 Fixing a link in DEVELOPER.md. (#3159) 2023-08-20 22:40:40 -04:00
Thomas Lauf
ba83ee9cac Add workflow for Taskwarrior Docker image (#3039)
The workflow is triggered by a successful run of the test suite and creates a Docker image with a Taskwarrior installation of the current branch (restricted to develop/stable)
2023-08-12 11:30:39 +02:00
Dustin J. Mitchell
971b229a4b Consolidate in-repo documentation (#3143)
* move doc/misc to top level, add READMEs

* Move docs -> doc/devel

This also consolidates the _three_ documents describing (differently)
how to build Taskwarrior into a signle document.
2023-08-09 21:30:01 -04:00
Michal Koutný
3248437326 Fix fish completion (#3068)
* Fix fish completions

As per [1] printf in fish does not support '--' as a delimiter of format
string and args.
It used to work (accidentally) earlier (fish 3.5, glibc 2.31) but it is
broken (fish 3.6, glibc 2.36) nowadays.
Fix it by using the simple form of printf invocation with no argument
escaping.

Fixes: #3048

[1] https://fishshell.com/docs/current/cmds/printf.html#description

* Fix fish completions with older fish

Older versions (fish 3.5) cannot cope with '-' in printf format hence
add a workaround for these.
2023-07-25 15:29:50 -04:00
Nathan Luong
76b21f49e8 Implement due dates related methods for Task and TaskMut (#3145)
* Implement due dates related methods for Task and TaskMut

* Merge add_due and remove_due into the single method called set_due

* reformat the file
2023-07-25 09:09:25 -04:00
Dathan Bennett
c86252d693 Add devcontainer spec (#3144)
* Add devcontainer spec from codespaces generator

I started a codespace and used the VSCode devcontainer generator to
generate the devcontainer.json, reinstall-cmake.sh, and Dockerfile.

* Add uuid-dev in Dockerfile

---------

Co-authored-by: Dathan Bennett <dathanb@netflix.com>
2023-07-20 17:33:02 -04:00
Dathan Bennett
a7bb0c9ba0 Link executables using system frameworks on Darwin (#3075)
* Link test executables using system frameworks on Darwin

On an M1 MBP, running `cmake . && make test` yields the error

```
[ 69%] Linking CXX executable tc.t
Undefined symbols for architecture arm64:
  "_CFRelease", referenced from:
      _$LT$iana_time_zone..platform..system_time_zone..SystemTimeZone$u20$as$u20$core..ops..drop..Drop$GT$::drop::hcd3964de9573de30 in libtc_rust.a(iana_time_zone-0e2714c6ff24f5bb.iana_time_zone.4cacef0c-cgu.15.rcgu.o)
  "_CFStringGetBytes", referenced from:
      iana_time_zone::platform::string_ref::StringRef$LT$T$GT$::to_utf8::h39971b546d587152 in libtc_rust.a(iana_time_zone-0e2714c6ff24f5bb.iana_time_zone.4cacef0c-cgu.13.rcgu.o)
  "_CFStringGetCStringPtr", referenced from:
      iana_time_zone::platform::string_ref::StringRef$LT$T$GT$::as_utf8::h8bb5c2c0d091ded1 in libtc_rust.a(iana_time_zone-0e2714c6ff24f5bb.iana_time_zone.4cacef0c-cgu.13.rcgu.o)
  "_CFStringGetLength", referenced from:
      iana_time_zone::platform::string_ref::StringRef$LT$T$GT$::to_utf8::h39971b546d587152 in libtc_rust.a(iana_time_zone-0e2714c6ff24f5bb.iana_time_zone.4cacef0c-cgu.13.rcgu.o)
  "_CFTimeZoneCopySystem", referenced from:
      iana_time_zone::platform::system_time_zone::SystemTimeZone::new::hc42d30609914d79d in libtc_rust.a(iana_time_zone-0e2714c6ff24f5bb.iana_time_zone.4cacef0c-cgu.15.rcgu.o)
  "_CFTimeZoneGetName", referenced from:
      iana_time_zone::platform::system_time_zone::SystemTimeZone::name::h44947ee6deb3339a in libtc_rust.a(iana_time_zone-0e2714c6ff24f5bb.iana_time_zone.4cacef0c-cgu.15.rcgu.o)
  "_SecRandomCopyBytes", referenced from:
      ring::rand::darwin::fill::h0ad94d66d4e1a222 in libtc_rust.a(ring-e5f87a2e334d4c6a.ring.a21bac31-cgu.4.rcgu.o)
  "_kSecRandomDefault", referenced from:
      ring::rand::darwin::fill::h0ad94d66d4e1a222 in libtc_rust.a(ring-e5f87a2e334d4c6a.ring.a21bac31-cgu.4.rcgu.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [test/tc.t] Error 1
make[2]: *** [test/CMakeFiles/tc.t.dir/all] Error 2
make[1]: *** [test/CMakeFiles/test.dir/rule] Error 2
```

This change resolves the error by updating the targets in
test/CMakeLists.txt to link against the CoreFoundation and Security
frameworks when building under Mac OS.

* Link executables against CoreFoundation and Security frameworks on Mac OS

* Rename test_osx.sh to test_macos.sh

---------

Co-authored-by: Dathan Bennett <dathanb@netflix.com>
2023-07-20 17:23:12 -04:00
Dustin J. Mitchell
7f68441916 Change "client key" to "client id" (#3130)
In #3118 @ryneeverett mentioned that "key" suggests that this is a
secret, when in truth it's just a user identifier. So "ID" is a better
word for it than "key".
2023-07-11 22:13:53 -04:00
dependabot[bot]
8097e28318 Bump pretty_assertions from 1.3.0 to 1.4.0 (#3129)
Bumps [pretty_assertions](https://github.com/rust-pretty-assertions/rust-pretty-assertions) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/rust-pretty-assertions/rust-pretty-assertions/releases)
- [Changelog](https://github.com/rust-pretty-assertions/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-pretty-assertions/rust-pretty-assertions/compare/v1.3.0...v1.4.0)

---
updated-dependencies:
- dependency-name: pretty_assertions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-08 10:28:07 -04:00
Dustin J. Mitchell
31105c2ba3 Sync against taskchampion-sync-server (#3118)
This removes use of gnutls and the TLS implementation, which is no
longer needed (task synchronization is handled via Taskchampion, which
uses `reqwest`, which handles TLS via other Rust dependencies). This
incidentally removes the following config options:
 * `debug.tls`
 * `taskd.ca`
 * `taskd.certificate`
 * `taskd.ciphers`
 * `taskd.credentials`
 * `taskd.key`
 * `taskd.server`
 * `taskd.trust`
2023-07-08 10:27:33 -04:00
Dustin J. Mitchell
771977aa69 Restore check for missing config 2023-07-04 14:08:51 -04:00
dependabot[bot]
5db8b292c7 Bump uuid from 1.3.0 to 1.4.0
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.3.0 to 1.4.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.3.0...1.4.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-28 12:23:50 -04:00
Dustin J. Mitchell
0c3d4bbe74 bump ffizz-header to 0.5 2023-06-26 18:18:44 -04:00
Dustin J. Mitchell
48543b7fcb Put Rust deps at the root of the workspace
This allows us to be consistent about the required versions for each of
the member packages.

Fixes #3088.
2023-06-21 12:01:06 -04:00
Dustin J. Mitchell
7a310fbfc1 Remove redundant comments
There's no need to repeat comments on the fields of a struct within
taskchampion-lib.
2023-06-21 12:00:23 -04:00
dependabot[bot]
1930ea0ad0 Bump strum_macros from 0.24.3 to 0.25.0
Bumps [strum_macros](https://github.com/Peternator7/strum) from 0.24.3 to 0.25.0.
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum_macros
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-19 16:29:57 -04:00
dependabot[bot]
790a50f7e0 Bump strum from 0.24.1 to 0.25.0
Bumps [strum](https://github.com/Peternator7/strum) from 0.24.1 to 0.25.0.
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-19 13:36:25 -04:00
Dustin J. Mitchell
839a0c4a0f fix workflow reference 2023-06-19 13:36:17 -04:00
Dustin J. Mitchell
efc2531a7f fix a spot where C code looked like a doctest 2023-06-19 13:36:17 -04:00
Dustin J. Mitchell
a0703af0b9 Run 'cargo xtask codegen' in CI and check that there are no diffs 2023-06-19 13:36:17 -04:00
Dustin J. Mitchell
75e10676ce Use ffizz_header to generate taskchampion.h 2023-06-19 13:36:17 -04:00
dependabot[bot]
989a330e46 Bump ureq from 2.6.1 to 2.7.0
Bumps [ureq](https://github.com/algesten/ureq) from 2.6.1 to 2.7.0.
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/compare/2.6.1...2.7.0)

---
updated-dependencies:
- dependency-name: ureq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-15 19:54:42 -04:00
Dustin J. Mitchell
a69b0c8032 Remove properties when set to an empty string
Fixes #3109.
2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
6cd5bf1237 Update "modified" on modification 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
a1b64a05ba add more information to 'task purge' footnote 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
02de8dfe67 remove TDB2::commit call from tests 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
3b4113c61a Update comments for TDB2::modify 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
18d60719e4 update comment for TDB2::get_changes 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
9df4c8156e remove TDB::commit 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
0882a08d18 Remove unnecessary TDB2::{modify,add} argument 2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
5bb9857984 Use Taskchampion to store Taskwarrior data
This replaces the TF2 task files with a TaskChampion replica.
2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
4b814bc602 [BREAKING] remove diff display from 'task undo'
TaskChampion does not make the necessary information available to
accomplish this, but see #2928.
2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
87467f72c7 [BREAKING] remove 'task purge' support
TaskChampion removes deleted tasks automatically when they expire, so
this subcommand is no longer required.
2023-06-11 17:37:03 -04:00
Dustin J. Mitchell
d47c70579f [BREAKING] Disable the 'sync' command
This will require support from TaskChampion.
2023-06-11 17:37:03 -04:00
dependabot[bot]
16c35a41d3 Bump tempfile from 3.5.0 to 3.6.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.5.0 to 3.6.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.5.0...v3.6.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-06-07 20:19:59 -04:00
dependabot[bot]
d28cdc39fa Bump proptest from 1.1.0 to 1.2.0
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/v1.1.0...v1.2.0)

---
updated-dependencies:
- dependency-name: proptest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-25 10:55:10 -04:00
dependabot[bot]
66b2db52f4 Bump clap from 4.2.1 to 4.3.0
Bumps [clap](https://github.com/clap-rs/clap) from 4.2.1 to 4.3.0.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.2.1...clap_complete-v4.3.0)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-22 19:09:04 -04:00
Dathan Bennett
41608dc35f Fork CMakeRust and add the aarch64-apple-darwin fix to it 2023-04-27 19:18:10 -04:00
Dathan Bennett
7492fc48bb Vendor CMakeRust 2023-04-27 19:18:10 -04:00
Dathan Bennett
37d7f3de8a Ignore IntelliJ artifacts and remove CMakeRust submodule 2023-04-27 19:18:10 -04:00
Dustin J. Mitchell
ddd367232e [BREAKING] Remove journal.info support
This support will require access to all of the operations ever performed
on a task, which is not currently exposed by TaskChampion (but see #2928)
2023-04-16 19:21:14 -04:00
dependabot[bot]
cf711f5eb1 Bump h2 from 0.3.16 to 0.3.17
Bumps [h2](https://github.com/hyperium/h2) from 0.3.16 to 0.3.17.
- [Release notes](https://github.com/hyperium/h2/releases)
- [Changelog](https://github.com/hyperium/h2/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/h2/compare/v0.3.16...v0.3.17)

---
updated-dependencies:
- dependency-name: h2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-13 17:16:10 -04:00
Dustin J. Mitchell
f0ced5287b bump MSRV 2023-04-09 16:17:16 -04:00
Dustin J. Mitchell
645c6bf13f update clap used in sync-server 2023-04-09 16:17:16 -04:00
Dustin J. Mitchell
5f2d82dc72 update MSRV 2023-04-09 15:44:26 -04:00
Dustin J. Mitchell
ae028983b6 clippy fixes 2023-04-09 15:44:26 -04:00
Dustin J. Mitchell
52fdc6a877 Update Actix crates to latest versions
This avoids a vulnerability in tokio (#3085). The major version updates
of both actix-web and actix-rt required some signficant changes. Chief
among those, it turns out we were relying on actix-rt to run the
HttpServer in a different thread from the rest of the test, so that we
could talk to it from sync code in the test thread. This no longer
works, so the sync code is now run in a dedicated thread with
`actix_rt::task::spawn_blocking`.
2023-04-09 15:44:26 -04:00
Dathan Bennett
33366e2f05 Ignore the aarch64-apple-darwin directory
This directory is generated instead of the x86_64-unknown-linux-gnu
directory when building on an ARM64/AArch64 Mac, so this change adds
that directory to the gitignore config.
2023-04-09 15:29:29 -04:00
Dustin J. Mitchell
ed674ec9e5 fix branch references in dev docs 2023-04-09 15:28:45 -04:00
dependabot[bot]
491941a55c Bump tempfile from 3.4.0 to 3.5.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/Stebalien/tempfile/releases)
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/NEWS)
- [Commits](https://github.com/Stebalien/tempfile/commits)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-29 17:51:08 -04:00
dependabot[bot]
77e1773b04 Bump rusqlite from 0.28.0 to 0.29.0
Bumps [rusqlite](https://github.com/rusqlite/rusqlite) from 0.28.0 to 0.29.0.
- [Release notes](https://github.com/rusqlite/rusqlite/releases)
- [Changelog](https://github.com/rusqlite/rusqlite/blob/master/Changelog.md)
- [Commits](https://github.com/rusqlite/rusqlite/compare/v0.28.0...v0.29.0)

---
updated-dependencies:
- dependency-name: rusqlite
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-27 17:37:40 -04:00
dependabot[bot]
d2f2e2b4a4 Bump rstest from 0.16.0 to 0.17.0
Bumps [rstest](https://github.com/la10736/rstest) from 0.16.0 to 0.17.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/0.16.0...0.17.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-21 15:23:16 -04:00
dependabot[bot]
e46533ef2b Bump tempfile from 3.3.0 to 3.4.0
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/Stebalien/tempfile/releases)
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/NEWS)
- [Commits](https://github.com/Stebalien/tempfile/commits)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-28 15:12:52 -05:00
dependabot[bot]
0adced74a1 Bump libsqlite3-sys from 0.25.0 to 0.25.2
Bumps [libsqlite3-sys](https://github.com/rusqlite/rusqlite) from 0.25.0 to 0.25.2.
- [Release notes](https://github.com/rusqlite/rusqlite/releases)
- [Changelog](https://github.com/rusqlite/rusqlite/blob/master/Changelog.md)
- [Commits](https://github.com/rusqlite/rusqlite/compare/v0.25.0...v0.25.2)

---
updated-dependencies:
- dependency-name: libsqlite3-sys
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-16 19:49:07 -05:00
ryneeverett
1c4e103904 taskchampion: Add time.utc_timestamp function.
Add a function that returns a Timestamp from an i64. One advantage is
improved readability since this function is guaranteed to return a
`LocalResult::Single`. Anther advantage is that it will panic if
something other than a LocalResult::Single is returned by chrono, which
shouldn't be possible for UTC timestamps which can't have DST ambiguity.
2023-02-06 08:23:27 -05:00
dependabot[bot]
5a4b981b6c Bump proptest from 1.0.0 to 1.1.0
Bumps [proptest](https://github.com/proptest-rs/proptest) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/1.0.0...v1.1.0)

---
updated-dependencies:
- dependency-name: proptest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-06 08:04:06 -05:00
Dustin J. Mitchell
d6475cc096 explicit type for cache value 2023-02-03 20:25:51 -05:00
Dustin J. Mitchell
c701a81699 make calculation of DependencyMap easier to read 2023-02-03 20:25:51 -05:00
Dustin J. Mitchell
7b0104e177 Only consider tasks dependent if both are pending
More specifically, consider them dependent if a task in the working set
(regardless of status) depends on a task with status "pending"
(regardless of presence in the working set).  This has the desired
user-visible effect of making a task no longer +BLOCKED when the task it
depends on is marked as done, without requiring a working-set rebuild in
the intervening time.
2023-02-03 20:25:51 -05:00
Dustin J. Mitchell
05c7f36b17 fix typo 2023-02-03 20:02:48 -05:00
Dustin J. Mitchell
f94df28226 Do not further update 'modified' if it's explicitly set 2023-02-03 20:02:48 -05:00
Dustin J. Mitchell
b963af9b4b use non-deprecated chrono functions 2023-02-02 20:00:15 -05:00
dependabot[bot]
6fc78209da Bump uuid from 1.2.1 to 1.3.0
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.2.1...1.3.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-02 19:42:39 -05:00
ryneeverett
3fdc6d3662 simpletap: simplify to use parent run method
Per the TODO, use `__init__` to override the stream. There don't seem to
be any other substantial changes to the `run` method needed for TAP and
I'm assuming the additional code in the upstream `run` has been added
since this class was written.

My primary motivation was to set `result.buffer = self.buffer` in the
`run` method, which fixes the runner enough to be able to use
`breakpoint()`.

In addition, I updated the shebang in `tw-2189.t` for portability.
2023-01-30 18:33:42 -05:00
dependabot[bot]
717e430f2e Bump bumpalo from 3.9.1 to 3.12.0
Bumps [bumpalo](https://github.com/fitzgen/bumpalo) from 3.9.1 to 3.12.0.
- [Release notes](https://github.com/fitzgen/bumpalo/releases)
- [Changelog](https://github.com/fitzgen/bumpalo/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fitzgen/bumpalo/compare/3.9.1...3.12.0)

---
updated-dependencies:
- dependency-name: bumpalo
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-22 22:30:07 -05:00
dependabot[bot]
84fb2f0d2f Bump bumpalo from 3.9.1 to 3.12.0 in /src/tc/rust
Bumps [bumpalo](https://github.com/fitzgen/bumpalo) from 3.9.1 to 3.12.0.
- [Release notes](https://github.com/fitzgen/bumpalo/releases)
- [Changelog](https://github.com/fitzgen/bumpalo/blob/main/CHANGELOG.md)
- [Commits](https://github.com/fitzgen/bumpalo/compare/3.9.1...3.12.0)

---
updated-dependencies:
- dependency-name: bumpalo
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-22 21:27:07 -05:00
ryneeverett
725dab681f fixup 2023-01-16 16:56:09 -05:00
ryneeverett
2f7196dbfc Don't expose third-party errors in public API. 2023-01-16 16:56:09 -05:00
ryneeverett
f56296ea93 Address inline review comments. 2023-01-16 16:56:09 -05:00
ryneeverett
c061d926bb taskchampion: use taskchampion::Error
Resolve #2878
2023-01-16 16:56:09 -05:00
dependabot[bot]
755100fd8a Bump actions-rs/cargo from 1.0.1 to 1.0.3
Bumps [actions-rs/cargo](https://github.com/actions-rs/cargo) from 1.0.1 to 1.0.3.
- [Release notes](https://github.com/actions-rs/cargo/releases)
- [Changelog](https://github.com/actions-rs/cargo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/actions-rs/cargo/compare/v1.0.1...v1.0.3)

---
updated-dependencies:
- dependency-name: actions-rs/cargo
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-15 15:29:59 -05:00
dependabot[bot]
e0e1d77744 Bump actions/cache from 2 to 3
Bumps [actions/cache](https://github.com/actions/cache) from 2 to 3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-15 15:29:50 -05:00
dependabot[bot]
33eab5632c Bump actions/checkout from 2 to 3
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-15 15:29:42 -05:00
ryneeverett
5c4fb01abf taskchampion: update docs
- update CI branch filters so workflows actually run on merge
- update CI docs deployment target
- update links
- fix typos
- remove references to `ta` cli which was removed
- remove build-docs.sh script which duplicates publish-docs.yml workflow
2023-01-14 11:25:46 -05:00
Saúl Nogueras
c2c803582a Add fish context completions
Fixes #3034
2023-01-11 00:11:04 -05:00
DBV
627dc79a7e Update CmdNews.cpp
typo
2023-01-11 00:09:28 -05:00
Thomas Lauf
c1ed70b63e Enable version updates for GitHub actions 2023-01-11 00:08:34 -05:00
dependabot[bot]
226df73c58 Bump ureq from 2.5.0 to 2.6.1
Bumps [ureq](https://github.com/algesten/ureq) from 2.5.0 to 2.6.1.
- [Release notes](https://github.com/algesten/ureq/releases)
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/commits)

---
updated-dependencies:
- dependency-name: ureq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-03 23:55:51 -05:00
Dustin J. Mitchell
f1e1095c0a apply clippy fixes 2022-12-26 17:49:04 -05:00
Dustin J. Mitchell
88333ac785 Expose is_* methods on tasks. 2022-12-21 16:36:23 -05:00
Dustin J. Mitchell
7c27f116ad Minor fixes to status in tc-lib 2022-12-19 20:01:38 -05:00
Tomas Babej
64aa1b1c7e osx: Set LDFLAGS to search Foundation and Security 2022-12-18 21:01:36 -05:00
Tomas Babej
3289f93073 tests: Adjust comment
The recurrence period is 1m=P30D.
2022-12-18 15:23:55 -05:00
Dustin J. Mitchell
e6f28bb7e6 include recurring tasks in working-set, but not +PENDING 2022-12-18 14:56:00 -05:00
Dustin J. Mitchell
9add31104b Add a Recurring status to TaskChampion 2022-12-18 14:56:00 -05:00
Dustin J. Mitchell
6e5d8b1dde fix recurrence test to avoid wasting a lot of time 2022-12-18 14:21:10 -05:00
Tomas Babej
19f183159e tests: Fail OS-X test workflow on error in the build process
This sets `set -e` to ensure any errors in the test script are
propagated upwards and noticed by the Github workflow.

Prior to these changes failures in the build process of the tests would
be ignored, and the success / failure would be determined purely by the
return code of the `./problems` script.
2022-12-18 14:19:56 -05:00
Dustin J. Mitchell
e4987ea7e0 use OpenFlags::default to avoid maintaining explicit defaults 2022-12-18 13:01:32 -05:00
Dustin J. Mitchell
015e8eac25 pass create_if_missing in Replica constructor 2022-12-18 13:01:32 -05:00
Dustin J. Mitchell
67fc422311 Add support for _not_ creating a DB if one does not exist 2022-12-18 13:01:32 -05:00
Dustin J. Mitchell
9e5c0001c4 Skip incorrectly-passing tests (see #2996) 2022-12-18 12:59:28 -05:00
Dustin J. Mitchell
6981aaccf2 Add a <vector> include in Replica.h
Replica.h refers to std::vector, so this header file must be included.
2022-12-18 12:58:38 -05:00
John Nguyen
591d6ccffb Bump libshared submodule 2022-12-18 12:33:36 -05:00
Tomas Babej
c483fdcc0e review-dockerfile: Setup Rust 2022-12-18 12:24:25 -05:00
Tomas Babej
7e45425075 review-dockerfile: Add workaround for a new location of CentOS repos 2022-12-18 12:24:25 -05:00
Dustin J. Mitchell
dbeee0640a Add a hint to 'make test' see test problems 2022-12-18 12:01:12 -05:00
dependabot[bot]
bfc220058f Bump rstest from 0.15.0 to 0.16.0
Bumps [rstest](https://github.com/la10736/rstest) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/0.15.0...0.16.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-28 18:40:29 -05:00
dependabot[bot]
06c3fbefd7 Bump env_logger from 0.9.1 to 0.10.0
Bumps [env_logger](https://github.com/rust-cli/env_logger) from 0.9.1 to 0.10.0.
- [Release notes](https://github.com/rust-cli/env_logger/releases)
- [Changelog](https://github.com/rust-cli/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-cli/env_logger/compare/v0.9.1...v0.10.0)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-27 12:08:44 -05:00
Dustin J. Mitchell
a93a3aa4f9 Update Cargo.lock (see #2994) 2022-11-12 17:49:42 -05:00
Matthew James Kraai
5d719ffb45 Add missing words to task documentation 2022-11-02 19:56:28 -04:00
Dustin J. Mitchell
e5ae01ea71 skip all patch updates 2022-10-26 17:22:12 -04:00
Dustin J. Mitchell
f5f37009cb Ignore patch updates for some noisy deps 2022-10-26 17:22:12 -04:00
dependabot[bot]
4af27903f9 Bump serde from 1.0.145 to 1.0.147
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.145 to 1.0.147.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.145...v1.0.147)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 14:42:44 -04:00
dependabot[bot]
c93039f1fd Bump libc from 0.2.135 to 0.2.136
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.135 to 0.2.136.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.135...0.2.136)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-25 14:42:33 -04:00
dependabot[bot]
cd6922ac39 Bump anyhow from 1.0.65 to 1.0.66
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.65 to 1.0.66.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.65...1.0.66)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-22 15:47:57 -04:00
dependabot[bot]
5b14f63dee Bump clap from 4.0.17 to 4.0.18
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.17 to 4.0.18.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.17...v4.0.18)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-22 15:47:43 -04:00
dependabot[bot]
6e5513d6f4 Bump futures from 0.3.24 to 0.3.25
Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.24 to 0.3.25.
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.24...0.3.25)

---
updated-dependencies:
- dependency-name: futures
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-22 15:47:35 -04:00
dependabot[bot]
2bd4c21e37 Bump serde_json from 1.0.86 to 1.0.87
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.86 to 1.0.87.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.86...v1.0.87)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-22 09:14:41 -04:00
dependabot[bot]
c6b13de344 Bump clap from 4.0.15 to 4.0.17
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.15 to 4.0.17.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.15...v4.0.17)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-19 18:35:46 -04:00
dependabot[bot]
1af43d505d Bump clap from 4.0.14 to 4.0.15
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.14 to 4.0.15.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.14...v4.0.15)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-17 18:55:33 -04:00
dependabot[bot]
be3fea8cd2 Bump clap from 4.0.13 to 4.0.14
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.13 to 4.0.14.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.13...v4.0.14)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-13 18:48:12 -04:00
dependabot[bot]
5588bcc2e8 Bump clap from 4.0.11 to 4.0.13
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.11 to 4.0.13.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.11...v4.0.13)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 20:09:45 -04:00
dependabot[bot]
b1d24e455b Bump libc from 0.2.134 to 0.2.135
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.134 to 0.2.135.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.134...0.2.135)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-12 20:09:35 -04:00
dependabot[bot]
5c518f9b90 Bump clap from 4.0.10 to 4.0.11
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.10 to 4.0.11.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.10...v4.0.11)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 08:49:17 -04:00
dependabot[bot]
0b54cbb89d Bump uuid from 1.1.2 to 1.2.1
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.1.2 to 1.2.1.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.1.2...1.2.1)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 08:48:55 -04:00
dependabot[bot]
75cdc6aa6f Bump serde_json from 1.0.85 to 1.0.86
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.85 to 1.0.86.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.85...v1.0.86)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 08:48:30 -04:00
dependabot[bot]
98ba98899e Bump clap from 4.0.9 to 4.0.10
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.9 to 4.0.10.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.9...v4.0.10)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-06 12:51:09 -04:00
Dustin J. Mitchell
41625f8b11 fix clippy warnings 2022-10-05 07:31:56 -04:00
dependabot[bot]
7b35121374 Bump clap from 4.0.4 to 4.0.9
Bumps [clap](https://github.com/clap-rs/clap) from 4.0.4 to 4.0.9.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.0.4...v4.0.9)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-04 14:39:25 -04:00
Dustin J. Mitchell
1b55e5b265 fix clippy lints 2022-10-02 15:27:25 -04:00
Dustin J. Mitchell
9e6be07e24 update to clap-4.x 2022-10-02 15:27:25 -04:00
dependabot[bot]
898ccd8797 Bump clap from 3.2.10 to 4.0.4
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.10 to 4.0.4.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.10...v4.0.4)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-02 15:27:25 -04:00
dependabot[bot]
b59581b6cc Bump libc from 0.2.133 to 0.2.134
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.133 to 0.2.134.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.133...0.2.134)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 09:11:26 -04:00
dependabot[bot]
8bda81e51e Bump thiserror from 1.0.36 to 1.0.37
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.36 to 1.0.37.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.36...1.0.37)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-01 09:11:14 -04:00
dependabot[bot]
d62435d421 Bump thiserror from 1.0.35 to 1.0.36
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.35 to 1.0.36.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.35...1.0.36)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-26 09:35:53 -04:00
dependabot[bot]
603ebb59c7 Bump serde from 1.0.144 to 1.0.145
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.144 to 1.0.145.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.144...v1.0.145)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-25 17:51:47 -04:00
dependabot[bot]
34be9b44bb Bump env_logger from 0.9.0 to 0.9.1
Bumps [env_logger](https://github.com/env-logger-rs/env_logger) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/env-logger-rs/env_logger/releases)
- [Changelog](https://github.com/env-logger-rs/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/env-logger-rs/env_logger/commits)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 16:25:55 -04:00
dependabot[bot]
78555c3014 Bump libc from 0.2.132 to 0.2.133
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.132 to 0.2.133.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.132...0.2.133)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-20 15:23:20 -04:00
dependabot[bot]
0bae7d9b65 Bump anyhow from 1.0.64 to 1.0.65
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.64 to 1.0.65.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.64...1.0.65)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 17:44:47 -04:00
dependabot[bot]
89f70e560d Bump thiserror from 1.0.34 to 1.0.35
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.34 to 1.0.35.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.34...1.0.35)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-15 17:44:16 -04:00
dependabot[bot]
74afa95145 Bump anyhow from 1.0.63 to 1.0.64
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.63 to 1.0.64.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.63...1.0.64)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-05 11:54:38 -04:00
dependabot[bot]
9421caf4ea Bump thiserror from 1.0.33 to 1.0.34
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.33 to 1.0.34.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.33...1.0.34)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-05 11:54:26 -04:00
dependabot[bot]
1337f8f2fa Bump pretty_assertions from 1.2.1 to 1.3.0
Bumps [pretty_assertions](https://github.com/rust-pretty-assertions/rust-pretty-assertions) from 1.2.1 to 1.3.0.
- [Release notes](https://github.com/rust-pretty-assertions/rust-pretty-assertions/releases)
- [Changelog](https://github.com/rust-pretty-assertions/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-pretty-assertions/rust-pretty-assertions/compare/v1.2.1...v1.3.0)

---
updated-dependencies:
- dependency-name: pretty_assertions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 20:05:54 -04:00
dependabot[bot]
889660537a Bump thiserror from 1.0.32 to 1.0.33
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.32 to 1.0.33.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.32...1.0.33)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 18:24:00 -04:00
dependabot[bot]
01c18edb8c Bump anyhow from 1.0.62 to 1.0.63
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.62 to 1.0.63.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.62...1.0.63)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-02 18:23:53 -04:00
dependabot[bot]
58497c17cd Bump iana-time-zone from 0.1.44 to 0.1.47
Bumps [iana-time-zone](https://github.com/strawlab/iana-time-zone) from 0.1.44 to 0.1.47.
- [Release notes](https://github.com/strawlab/iana-time-zone/releases)
- [Changelog](https://github.com/strawlab/iana-time-zone/blob/main/CHANGELOG.md)
- [Commits](https://github.com/strawlab/iana-time-zone/compare/0.1.44...v0.1.47)

---
updated-dependencies:
- dependency-name: iana-time-zone
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-01 19:18:49 -04:00
dependabot[bot]
a441418a5d Bump futures from 0.3.23 to 0.3.24
Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.23 to 0.3.24.
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.23...0.3.24)

---
updated-dependencies:
- dependency-name: futures
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-30 15:11:00 -04:00
dependabot[bot]
e96a89124d Bump serde from 1.0.143 to 1.0.144
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.143 to 1.0.144.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.143...v1.0.144)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-22 10:44:57 -04:00
dependabot[bot]
71b991a91f Bump serde_json from 1.0.83 to 1.0.85
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.83 to 1.0.85.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.83...v1.0.85)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-22 10:44:39 -04:00
Dustin J. Mitchell
4fdb46fd47 ffi for tc_task_get/set_value 2022-08-21 17:22:50 -04:00
dependabot[bot]
7cecac3328 Bump anyhow from 1.0.61 to 1.0.62
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.61 to 1.0.62.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.61...1.0.62)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-21 09:06:33 -04:00
dependabot[bot]
5c33e6c93c Bump libc from 0.2.131 to 0.2.132
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.131 to 0.2.132.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.131...0.2.132)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-20 21:16:48 -04:00
Dustin J. Mitchell
4a1556ccb9 Add Replica::num_undo_points and exclude undo points from num_operations 2022-08-20 21:12:44 -04:00
dependabot[bot]
17726ddfe4 Bump chrono from 0.4.21 to 0.4.22
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.21 to 0.4.22.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.21...v0.4.22)

---
updated-dependencies:
- dependency-name: chrono
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-15 19:12:42 -04:00
dependabot[bot]
fd98b188e2 Bump futures from 0.3.21 to 0.3.23
Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.21 to 0.3.23.
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.21...0.3.23)

---
updated-dependencies:
- dependency-name: futures
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-15 19:11:32 -04:00
dependabot[bot]
4651bd1bdb Bump libc from 0.2.129 to 0.2.131
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.129 to 0.2.131.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/commits)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-13 08:57:10 -04:00
dependabot[bot]
04c95ecc56 Bump anyhow from 1.0.60 to 1.0.61
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.60 to 1.0.61.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.60...1.0.61)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-11 17:47:04 -04:00
Dustin J. Mitchell
9c0bccd08a rustsec org is now hosting audit-check 2022-08-11 01:14:37 -04:00
Dustin J. Mitchell
38ad3bc14b spell audit-check repo correctly 2022-08-11 01:14:37 -04:00
Dustin J. Mitchell
69850e5f6a [tests] Make sure waiting task is still waiting
10s is gone in an instant in a busy CI box, which is probably why this
test is failing on Macs.
2022-08-10 23:38:04 -04:00
dependabot[bot]
c51478b81a Bump chrono from 0.4.20 to 0.4.21
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.20 to 0.4.21.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.20...v0.4.21)

---
updated-dependencies:
- dependency-name: chrono
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-10 18:02:51 -04:00
dependabot[bot]
d69359b63c Bump libc from 0.2.127 to 0.2.129
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.127 to 0.2.129.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.127...0.2.129)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-10 18:02:42 -04:00
dependabot[bot]
26fbbabe9b Bump serde from 1.0.142 to 1.0.143
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.142 to 1.0.143.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.142...v1.0.143)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-09 14:58:28 -04:00
dependabot[bot]
e3985c87b5 Bump strum_macros from 0.24.2 to 0.24.3
Bumps [strum_macros](https://github.com/Peternator7/strum) from 0.24.2 to 0.24.3.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum_macros
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-08 08:27:49 -04:00
Dustin J. Mitchell
4852b146a8 stop using forked audit action 2022-08-06 20:55:39 -04:00
Dustin J. Mitchell
bad3b3d700 use the (existing) .cargo/audit.toml to ignore some rust advisories 2022-08-06 20:55:39 -04:00
dependabot[bot]
152db46ce3 Bump chrono from 0.4.19 to 0.4.20
Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.19 to 0.4.20.
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.19...v0.4.20)

---
updated-dependencies:
- dependency-name: chrono
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-05 21:36:25 -04:00
dependabot[bot]
005aa817c6 Bump libc from 0.2.126 to 0.2.127
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.126 to 0.2.127.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.126...0.2.127)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 21:59:55 -04:00
dependabot[bot]
37f7ac4ffc Bump serde_json from 1.0.82 to 1.0.83
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.82 to 1.0.83.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.82...v1.0.83)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 21:59:24 -04:00
dependabot[bot]
848792fc5a Bump serde from 1.0.141 to 1.0.142
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.141 to 1.0.142.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.141...v1.0.142)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-04 21:59:12 -04:00
dependabot[bot]
79c1d88658 Bump anyhow from 1.0.59 to 1.0.60
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.59 to 1.0.60.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.59...1.0.60)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-03 12:59:17 -04:00
dependabot[bot]
aa8557a06f Bump thiserror from 1.0.31 to 1.0.32
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.31 to 1.0.32.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.31...1.0.32)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-03 12:59:00 -04:00
dependabot[bot]
2064a502ca Bump anyhow from 1.0.58 to 1.0.59
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.58 to 1.0.59.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.58...1.0.59)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 12:27:37 -04:00
dependabot[bot]
98fa4d207a Bump serde from 1.0.140 to 1.0.141
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.140 to 1.0.141.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.140...v1.0.141)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 12:27:17 -04:00
Dustin J. Mitchell
f5e976ae73 remove leftover src/taskchampion submodule 2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
7f686a7977 update Taskchampion README 2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
12ecfa2b1e rename rust/ to taskchampion/ 2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
ccb9a0fdfb Import taskchampion-lib into integration-tests as rust symbols
This allows Cargo to handle the linking peculiarities of platforms.
2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
6f7c5c31a9 install Rust on each push in docker images 2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
3dfd28586a fix linking for taskchampion-integration-tests 2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
6a42cf00a2 Update Taskwarrior workflows to include Rust 2022-07-29 21:41:41 -04:00
Dustin J. Mitchell
8c30400af3 Add a C++ wrapper around TC FFI
This uses CMake to build a simple Rust library (in `src/tc/rust`) that
just re-exports everything from the `taskchampion-lib` crate.

The C++ wrappers then wrap this into C++ objects with proper lifecycle
maintenance, in the `tc` namespace.

The C++ wrappers are incomplete, and missing methods are tagged with
"TODO".  These will be added as needed.
2022-07-29 21:41:41 -04:00
Tomas Babej
fd03169314 man: Make frequency abbreviation more clear 2022-07-25 19:51:59 -04:00
Dustin J. Mitchell
72a8be3340 Update .github/workflows/security.yml
Co-authored-by: Tomas Babej <tomas@tbabej.com>
2022-07-24 16:46:45 -04:00
Dustin J. Mitchell
56ea105e25 Ignore RUSTSEC-2020-0071
See discussion at
https://github.com/taskchampion/taskchampion/issues/304.  Note that
RUSTSEC-2020-0159 is the same bug as RUSTSEC-2020-0071.
2022-07-24 16:46:45 -04:00
Dustin J. Mitchell
3aa14b3efc ignore RUSTSEC-2021-0124
This is a vulnerability in tokio, which is required by Actix-web. For
the moment, ignore it, and then decide whether to upgrade actix to suit,
or switch to a different (simpler) web server package.
2022-07-24 16:46:45 -04:00
Dustin J. Mitchell
977ab11af2 Revert "temporarily remove cargo audit check"
This reverts commit 892efd0b1371b0a9d7ce973c30b18b0db6ca2854.
2022-07-24 16:46:45 -04:00
Dustin J. Mitchell
35c8ce2ccb Remove references to TDB2::read_only
A TC replica is always read-write.
2022-07-24 14:18:21 -04:00
Dustin J. Mitchell
f452100588 Remove references to TDB2::data_size
This value will is not relevant for TaskChampion.
2022-07-24 14:18:21 -04:00
Dustin J. Mitchell
e3ef6c504a remove TBD2::clear, only used in tests 2022-07-24 14:18:21 -04:00
Dustin J. Mitchell
271d06cd9c make TDB2.pending/completed non-public
References to methods on these fields are replaced with methods on TDB2,
several of which already existed.
2022-07-24 14:18:21 -04:00
Dustin J. Mitchell
4ebd0ffb39 make TDB2.undo non-public
The stats command calls an API to provide this information in a way that
will still be relevant for TaskChampion, while CmdInfo's access to the
data remains.  The TaskChampion interface for per-task hitsory is still
not ready.
2022-07-24 14:18:21 -04:00
Tomas Babej
2f30bc8cbf tests: Add dockerfile for Ubuntu 22.04 2022-07-24 13:58:10 -04:00
Tomas Babej
8845055abb tests: Add Ubuntu 22.04 into the test matrix 2022-07-24 13:58:10 -04:00
Tomas Babej
08d647102f tests: Remove Ubuntu 21.04 and 21.10 from the test matrix
Both releases are beyond their respective EoL [1].

[1]: https://wiki.ubuntu.com/Releases
2022-07-24 13:58:10 -04:00
Dustin J. Mitchell
4d84252012 Update pull_request_template for Rust code 2022-07-24 12:20:16 -04:00
dependabot[bot]
4d3c407db5 Bump serde from 1.0.139 to 1.0.140
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.139 to 1.0.140.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.139...v1.0.140)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-21 19:06:01 -04:00
dependabot[bot]
a47d08d2d9 Bump rusqlite from 0.27.0 to 0.28.0
Bumps [rusqlite](https://github.com/rusqlite/rusqlite) from 0.27.0 to 0.28.0.
- [Release notes](https://github.com/rusqlite/rusqlite/releases)
- [Changelog](https://github.com/rusqlite/rusqlite/blob/master/Changelog.md)
- [Commits](https://github.com/rusqlite/rusqlite/compare/v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: rusqlite
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-15 14:39:33 -04:00
Pablo Baeyens
dcc285bc4a [rust/taskchampion/src/task] Add Task::get_value and TaskMut::set_value 2022-07-13 20:49:21 -04:00
dependabot[bot]
2889e77d51 Bump clap from 3.2.8 to 3.2.10
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.8 to 3.2.10.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.8...v3.2.10)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-12 09:14:39 -04:00
dependabot[bot]
971c27ac47 Bump ureq from 2.4.0 to 2.5.0
Bumps [ureq](https://github.com/algesten/ureq) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/algesten/ureq/releases)
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/compare/2.4.0...2.5.0)

---
updated-dependencies:
- dependency-name: ureq
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-11 17:16:32 -04:00
dependabot[bot]
f3993c3004 Bump serde from 1.0.138 to 1.0.139
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.138 to 1.0.139.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.138...v1.0.139)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-11 17:16:11 -04:00
dependabot[bot]
4a81c1b23f Bump serde from 1.0.137 to 1.0.138
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.137 to 1.0.138.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.137...v1.0.138)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-04 09:36:04 -04:00
dependabot[bot]
0b61753220 Bump clap from 3.2.6 to 3.2.8
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.6 to 3.2.8.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.6...v3.2.8)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 10:25:00 -04:00
dependabot[bot]
4255b613bc Bump serde_json from 1.0.81 to 1.0.82
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.81 to 1.0.82.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.81...v1.0.82)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 10:24:48 -04:00
dependabot[bot]
fae77410fa Bump rstest from 0.14.0 to 0.15.0
Bumps [rstest](https://github.com/la10736/rstest) from 0.14.0 to 0.15.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/0.14.0...0.15.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-07-02 10:24:37 -04:00
dependabot[bot]
9bb2bc016a Bump strum_macros from 0.24.1 to 0.24.2
Bumps [strum_macros](https://github.com/Peternator7/strum) from 0.24.1 to 0.24.2.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum_macros
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-27 20:17:53 -04:00
dependabot[bot]
b88623f842 Bump anyhow from 1.0.57 to 1.0.58
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.57 to 1.0.58.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.57...1.0.58)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 09:02:33 -04:00
dependabot[bot]
c113a17924 Bump rstest from 0.13.0 to 0.14.0
Bumps [rstest](https://github.com/la10736/rstest) from 0.13.0 to 0.14.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/0.13.0...0.14.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 08:30:50 -04:00
dependabot[bot]
1350f41ab5 Bump clap from 3.2.5 to 3.2.6
Bumps [clap](https://github.com/clap-rs/clap) from 3.2.5 to 3.2.6.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.5...v3.2.6)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-23 08:13:33 -04:00
Dustin J. Mitchell
c8cfcec48b Make TDB2.backlog non-public
The stats command gets this information from an API that will also work
for TaskChampion.  The sync command still accesses the field directly,
as the command must be completely rewritten for TaskChampion.
2022-06-21 12:05:50 -04:00
Dustin J. Mitchell
d699ce8cba bump MSRV to the latest version 2022-06-21 12:02:25 -04:00
dependabot[bot]
bdc509bde7 Bump clap from 3.1.18 to 3.2.5
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.18 to 3.2.5.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.18...v3.2.5)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 12:02:25 -04:00
dependabot[bot]
8999cdbfc0 Bump strum_macros from 0.24.0 to 0.24.1
Bumps [strum_macros](https://github.com/Peternator7/strum) from 0.24.0 to 0.24.1.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum_macros
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 11:51:33 -04:00
dependabot[bot]
3f4420850a Bump uuid from 1.1.1 to 1.1.2
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.1.1 to 1.1.2.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.1.1...1.1.2)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 11:51:20 -04:00
dependabot[bot]
47c6d072ec Bump strum from 0.24.0 to 0.24.1
Bumps [strum](https://github.com/Peternator7/strum) from 0.24.0 to 0.24.1.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-21 11:51:09 -04:00
Raf Czlonka
92a9a716a8 Use 'speakers' instead of 'users'.
"Non-English users" sounds very much like "users who are not English".
Also, "Non-English speakers" is already a well established phrase.
2022-06-12 18:30:20 -04:00
Raf Czlonka
12bdc0d480 Fix typo: 'holday' -> 'holiday'
While there, be consistent when using hyphens.
2022-06-12 18:30:20 -04:00
sec65
0d63165ca5 TW-2763: added hooks.location to show command 2022-06-12 18:11:05 -04:00
Dustin J. Mitchell
d422db32ea temporarily remove cargo audit check 2022-06-12 18:07:44 -04:00
dependabot[bot]
63bb9fc7ee Bump cbindgen from 0.23.0 to 0.24.3
Bumps [cbindgen](https://github.com/eqrion/cbindgen) from 0.23.0 to 0.24.3.
- [Release notes](https://github.com/eqrion/cbindgen/releases)
- [Changelog](https://github.com/eqrion/cbindgen/blob/master/CHANGES)
- [Commits](https://github.com/eqrion/cbindgen/compare/v0.23.0...v0.24.3)

---
updated-dependencies:
- dependency-name: cbindgen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-11 22:20:00 -04:00
dependabot[bot]
ce6626459c Bump uuid from 1.1.0 to 1.1.1
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.1.0 to 1.1.1.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/1.1.0...1.1.1)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-01 17:24:50 -04:00
Nikos Koukis
4c179a427d Fix issue with filter not applied correctly during task _tags command
Also includes:

* Add cmake build directory + Session.vim files to .gitignore list
2022-05-31 01:31:28 -04:00
dependabot[bot]
9c4e0a43a0 Bump flate2 from 1.0.23 to 1.0.24
Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.23 to 1.0.24.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](https://github.com/rust-lang/flate2-rs/commits)

---
updated-dependencies:
- dependency-name: flate2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-30 12:35:18 -04:00
dependabot[bot]
e842b66e5c Bump clap from 2.34.0 to 3.1.18 (#2824)
* Bump clap from 2.34.0 to 3.1.18

Bumps [clap](https://github.com/clap-rs/clap) from 2.34.0 to 3.1.18.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v2.34.0...v3.1.18)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* update taskchampion-sync-server for clap 3.x

* bump MSRV to 1.54 for extended_key_value_attributes required by clap

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Dustin J. Mitchell <dustin@v.igoro.us>
2022-05-30 12:34:55 -04:00
Dustin J. Mitchell
a1bd08d6d1 bump MSRV to 1.54 for extended_key_value_attributes required by cbindgen 2022-05-29 21:52:48 -04:00
dependabot[bot]
368a6dde5f Bump cbindgen from 0.20.0 to 0.23.0
Bumps [cbindgen](https://github.com/eqrion/cbindgen) from 0.20.0 to 0.23.0.
- [Release notes](https://github.com/eqrion/cbindgen/releases)
- [Changelog](https://github.com/eqrion/cbindgen/blob/master/CHANGES)
- [Commits](https://github.com/eqrion/cbindgen/compare/v0.20.0...v0.23.0)

---
updated-dependencies:
- dependency-name: cbindgen
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-29 21:52:48 -04:00
dependabot[bot]
b1f13b29c3 Bump env_logger from 0.8.4 to 0.9.0
Bumps [env_logger](https://github.com/env-logger-rs/env_logger) from 0.8.4 to 0.9.0.
- [Release notes](https://github.com/env-logger-rs/env_logger/releases)
- [Changelog](https://github.com/env-logger-rs/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/env-logger-rs/env_logger/compare/v0.8.4...v0.9.0)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-29 21:00:27 -04:00
Tomas Babej
61f03a7d0a workflows: Fix a typo 2022-05-28 08:37:42 -04:00
Dustin J. Mitchell
3529ee9289 bump MSRV to 1.53 for debug_non_exhaustive 2022-05-28 08:37:00 -04:00
Dustin J. Mitchell
e5b23ef9a0 add missing unsafe block
The // SAFETY comment already exists -- only the unsafe { .. } was
omitted.
2022-05-28 08:37:00 -04:00
Dustin J. Mitchell
e6470f463f Update all Rust dependencies to their latest
Accomplished by removing Cargo.lock and running `cargo build`.
2022-05-28 08:37:00 -04:00
Dustin J. Mitchell
085da00b0c add write-all permission to the audit 2022-05-28 08:33:20 -04:00
Dustin J. Mitchell
3a675c67bf add Cargo.* to Rust CODEOWNERS 2022-05-27 22:47:59 -04:00
dependabot[bot]
13cfe1c7db Bump strum from 0.21.0 to 0.24.0
Bumps [strum](https://github.com/Peternator7/strum) from 0.21.0 to 0.24.0.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 18:13:10 -04:00
Dustin J. Mitchell
f9b19526f0 to_hyphenated -> as_hyphenated 2022-05-27 18:12:46 -04:00
dependabot[bot]
99dd74bef7 Bump uuid from 0.8.2 to 1.1.0
Bumps [uuid](https://github.com/uuid-rs/uuid) from 0.8.2 to 1.1.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/0.8.2...1.1.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-27 18:12:46 -04:00
dependabot[bot]
14a84af0db Bump rstest from 0.10.0 to 0.13.0
Bumps [rstest](https://github.com/la10736/rstest) from 0.10.0 to 0.13.0.
- [Release notes](https://github.com/la10736/rstest/releases)
- [Changelog](https://github.com/la10736/rstest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/la10736/rstest/compare/0.10.0...0.13.0)

---
updated-dependencies:
- dependency-name: rstest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-26 22:44:42 -04:00
dependabot[bot]
db416c9698 Bump flate2 from 1.0.20 to 1.0.23
Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.20 to 1.0.23.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.0.20...1.0.23)

---
updated-dependencies:
- dependency-name: flate2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-26 22:40:44 -04:00
dependabot[bot]
0d7ab56360 Bump pretty_assertions from 1.0.0 to 1.2.1
Bumps [pretty_assertions](https://github.com/colin-kiegel/rust-pretty-assertions) from 1.0.0 to 1.2.1.
- [Release notes](https://github.com/colin-kiegel/rust-pretty-assertions/releases)
- [Changelog](https://github.com/colin-kiegel/rust-pretty-assertions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/colin-kiegel/rust-pretty-assertions/compare/v1.0.0...v1.2.1)

---
updated-dependencies:
- dependency-name: pretty_assertions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-26 13:55:15 -04:00
dependabot[bot]
e30eae7dd7 Bump libc from 0.2.113 to 0.2.126
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.113 to 0.2.126.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.113...0.2.126)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-26 13:55:09 -04:00
dependabot[bot]
34b2e6a6b8 Bump strum_macros from 0.21.1 to 0.24.0
Bumps [strum_macros](https://github.com/Peternator7/strum) from 0.21.1 to 0.24.0.
- [Release notes](https://github.com/Peternator7/strum/releases)
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Peternator7/strum/commits)

---
updated-dependencies:
- dependency-name: strum_macros
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-26 13:55:02 -04:00
dependabot[bot]
e8fe3cda77 Bump rusqlite from 0.25.3 to 0.27.0
Bumps [rusqlite](https://github.com/rusqlite/rusqlite) from 0.25.3 to 0.27.0.
- [Release notes](https://github.com/rusqlite/rusqlite/releases)
- [Changelog](https://github.com/rusqlite/rusqlite/blob/master/Changelog.md)
- [Commits](https://github.com/rusqlite/rusqlite/compare/v0.25.3...v0.27.0)

---
updated-dependencies:
- dependency-name: rusqlite
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-25 23:40:33 -04:00
dependabot[bot]
b14d53fbc7 Bump thiserror from 1.0.25 to 1.0.31
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.25 to 1.0.31.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.25...1.0.31)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-25 22:55:53 -04:00
dependabot[bot]
c259e73f2a Bump termcolor from 1.1.2 to 1.1.3
Bumps [termcolor](https://github.com/BurntSushi/termcolor) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/BurntSushi/termcolor/releases)
- [Commits](https://github.com/BurntSushi/termcolor/compare/1.1.2...1.1.3)

---
updated-dependencies:
- dependency-name: termcolor
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-25 22:55:13 -04:00
Dustin J. Mitchell
04f4d3a68e include images for contrib/branching 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
18e11300fd eliminate unnecessary backslash-escaped quotes 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
b1ca5d4cf8 reformat to one sentence per line 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
ade706a72e convert html table to markdown in rfcs/task.md 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
c441315488 remove unused index 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
8747cc9f94 Import design docs (RFCs) 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
07493d5fa6 Bring contributing content from tw.org into dev docs 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
377f517154 Set up a basic Jekyll theme 2022-05-25 21:17:36 -04:00
Dustin J. Mitchell
e2ef45a06e rust: Update MSRV to 1.52
The bump of minimum rust version is required by some of the updated dependencies.

Closes #2802.
2022-05-25 21:01:04 -04:00
Dustin J. Mitchell
e4a881a4a6 remove usage-docs from workflows 2022-05-25 20:55:18 -04:00
Dustin J. Mitchell
2f57edee51 remove docs about taskchampion-cli 2022-05-25 20:55:18 -04:00
Dustin J. Mitchell
c0ce1fe059 Drop the 'taskchampion-cli' crate
It was fun while it lasted, but we'll be using TaskWarrior for the CLI!
2022-05-25 20:55:18 -04:00
dependabot[bot]
2b9a389636 Bump predicates from 1.0.8 to 2.1.1
Bumps [predicates](https://github.com/assert-rs/predicates-rs) from 1.0.8 to 2.1.1.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases)
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v1.0.8...v2.1.1)

---
updated-dependencies:
- dependency-name: predicates
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-21 20:44:56 -04:00
dependabot[bot]
47a91315df Bump log from 0.4.14 to 0.4.17
Bumps [log](https://github.com/rust-lang/log) from 0.4.14 to 0.4.17.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.14...0.4.17)

---
updated-dependencies:
- dependency-name: log
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-21 20:44:47 -04:00
dependabot[bot]
63e48b0a96 Bump dialoguer from 0.8.0 to 0.10.1
Bumps [dialoguer](https://github.com/mitsuhiko/dialoguer) from 0.8.0 to 0.10.1.
- [Release notes](https://github.com/mitsuhiko/dialoguer/releases)
- [Changelog](https://github.com/mitsuhiko/dialoguer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/dialoguer/compare/0.8.0...v0.10.1)

---
updated-dependencies:
- dependency-name: dialoguer
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-21 20:44:40 -04:00
Tomas Babej
b15732ed38 Merge pull request #2783
Merge development efforts of TaskChampion and Taskwarrior
2022-05-20 03:03:45 -04:00
Dustin J. Mitchell
1ed483ecde codegen taskchampion.h 2022-05-08 20:06:06 +00:00
Dustin J. Mitchell
5c7eeeb87e set up dependabot for rust/ 2022-05-08 20:06:06 +00:00
Dustin J. Mitchell
ea39968816 add codeowners for rust/ 2022-05-08 20:06:06 +00:00
Dustin J. Mitchell
9f5994bfd1 Update GitHub actions to work in Taskwarrior
This moves the workspace Cargo.toml to the root of the repository, so
that the "actions-rs/cargo" action can find it.
2022-05-08 20:06:05 +00:00
Dustin J. Mitchell
1df54125ea Import the TaskChampion repository at rust/ 2022-05-08 19:39:44 +00:00
Dustin J. Mitchell
2a92b2a4b9 move contents of taskchampion repo to tc/ 2022-05-08 19:39:02 +00:00
Tomas Babej
0a558ef7c8 Context: Add a reminder to mirror options in the vim syntax file 2022-05-07 21:52:22 -04:00
Dominik Rehák
e0c9561a8e vim: Add missing config options to taskrc syntax file
Sourced from taskrc(5) and default config (Context.cpp).
2022-05-07 21:49:31 -04:00
Dominik Rehák
27f3e95f12 ColTypeDate: Fix countdown style width 2022-05-07 21:48:07 -04:00
Dustin J. Mitchell
73baefa0a5 Merge pull request #354 from djmitche/tc-lib-rlib
export taskchampion-lib as an rlib, too
2022-04-24 19:17:22 -04:00
Dustin J. Mitchell
ac172b1008 Name the C library differently from the crate 2022-04-24 23:09:15 +00:00
Dustin J. Mitchell
716a558ba2 ignore a C code example 2022-04-24 22:49:31 +00:00
Dustin J. Mitchell
ae3851f5a6 export taskchampion-lib as an rlib, too 2022-04-24 22:49:31 +00:00
Dustin J. Mitchell
07929f327f Merge pull request #353 from djmitche/issue352
Add `Replica.num_local_operations`
2022-04-24 18:28:41 -04:00
Dustin J. Mitchell
20823b7a73 expose Replica::num_local_operations via FFI 2022-04-23 19:19:14 +00:00
Dustin J. Mitchell
fd504b7d66 add num_local_operations to Replica 2022-04-23 18:51:40 +00:00
Jackson Abascal
c3bb3810be Fix urgency inheritance for negative-urgency tasks 2022-04-13 11:38:30 -04:00
Dominik Rehák
8c3aa95224 CmdInfo: Fix leading spaces before urgency value
The minimal field width is set to 4, so if the value is shorter, it gets
prefixed with spaces, breaking the flow of the table.
2022-04-13 11:22:49 -04:00
Dustin J. Mitchell
6f8c734186 Merge pull request #350 from djmitche/issue78
Treat priority as an arbitrary string
2022-04-06 19:10:47 -04:00
Dustin J. Mitchell
1b586a425f Treat priority as an arbitrary string
This matches what TaskWarrior does: priority is a UDA, and can be
redefined by the user's local config.
2022-03-27 17:54:12 -04:00
Tomas Babej
7400e6ed6b README: Update version reference 2022-03-16 01:52:27 -04:00
Tomas Babej
93394e7054 meta: Update CMake version reference for 2.6.2 2022-03-16 01:52:16 -04:00
Tomas Babej
f030154ef6 docs: Document #2689 2022-03-16 01:39:02 -04:00
Tomas Babej
10a2225aae docs: Document #2707 2022-03-16 01:34:42 -04:00
Dustin J. Mitchell
0dd2d9cd30 Merge pull request #336 from djmitche/issue84
Add support for dependencies
2022-03-15 19:02:32 -04:00
Dustin J. Mitchell
6f48f715ac +BLOCKED, +UNBLOCKED, and +BLOCKING tags
These are somewhat expensive tags, as they require reference to values
outside of the task itself.

To accomplish this, the replica supplies a pre-computed DependencyMap
that is only calculated once per replica, and only from the working set.
2022-03-15 19:02:24 -04:00
Dustin J. Mitchell
47e213d6ec add support for dependencies to 'ta info' 2022-03-15 19:02:24 -04:00
Dustin J. Mitchell
47b1fed42a Add support for modifying dependencies
This requires "resolving" dependencies after the command-line parsing
phase is complete.
2022-03-15 19:02:23 -04:00
Dustin J. Mitchell
db1e1c9c96 Support parsing depends:.. in CLI 2022-03-15 18:01:49 -04:00
Dustin J. Mitchell
bf73cc4cc7 add dependency support to taskchampion 2022-03-15 18:01:48 -04:00
Dustin J. Mitchell
a030053dae Merge pull request #345 from djmitche/reexport-chrono
Re-export the chrono crate from taskchampion.
2022-03-15 17:59:03 -04:00
Dustin J. Mitchell
f8c4ece238 Re-export the chrono crate from taskchampion.
The chrono types are central to use of TC, so this will help consumers
of the TC crate to avoid dependency conflicts.
2022-03-15 17:58:54 -04:00
Dustin J. Mitchell
8e5ab78440 Merge pull request #347 from djmitche/take-from-lists
Allow taking from pointer lists
2022-03-15 17:57:48 -04:00
Dustin J. Mitchell
8c91b2c3db Merge pull request #346 from djmitche/include-guard
add an include guard to taskchampion.h
2022-03-15 17:57:36 -04:00
Tomas Babej
de793e5902 docs: Document #2748 2022-03-14 02:48:13 -04:00
Tomas Babej
1fc1884017 Context: Add parent column among default ones for the recurring report
This helps to identify parent-child relationships.
2022-03-14 02:48:13 -04:00
Tomas Babej
75ce386b44 Context: Adjust definition of the recurring report filter
Ensure the recurring report lists the recurring parent tasks as well as
the child tasks.
2022-03-14 02:48:13 -04:00
Dustin J. Mitchell
33a3b980d0 Allow taking from pointer lists
This introduces `tc_task_list_take`, supporting taking ownership of an
item in a task list.

TCTaskList is the only pointer list, but this is a generic and could be
used for other types.
2022-03-13 16:25:59 +00:00
Dustin J. Mitchell
3c6da4138f add an include guard to taskchampion.h 2022-03-12 21:38:59 +00:00
Dustin J. Mitchell
9355e1a728 Merge pull request #341 from djmitche/issue26
Add support for expiration
2022-03-10 15:35:50 -05:00
Dustin J. Mitchell
cb87206047 Merge pull request #344 from djmitche/regex-update
Address RUSTSEC-2022-0013.
2022-03-10 15:35:21 -05:00
Dustin J. Mitchell
889e1d1cdc Merge pull request #342 from djmitche/clippy-warnings
fix some clippy warnings, and make them errors for taskchampion-lib
2022-03-10 15:35:12 -05:00
Dustin J. Mitchell
bd9a5ad5ff Address RUSTSEC-2022-0013.
Note that the risk from this vulnerability was minimal for this project.
2022-03-09 17:52:57 -05:00
Dustin J. Mitchell
a5a8e3b7c8 fix some clippy warnings, and make them errors for taskchampion-lib 2022-03-07 23:49:37 +00:00
Dustin J. Mitchell
42238b5306 add an integration test for syncing task expirations 2022-03-07 23:37:31 +00:00
Dustin J. Mitchell
411bc19762 doc expiration 2022-03-07 23:37:30 +00:00
Dustin J. Mitchell
97bd2addc9 add a 'ta delete' subcommand 2022-03-07 23:37:27 +00:00
Dustin J. Mitchell
3cdc13aa37 expire tasks in 'ta gc' 2022-03-07 23:37:25 +00:00
Dustin J. Mitchell
919e91fd13 don't automatically update modified when updating it explicitly 2022-03-07 23:37:15 +00:00
Dustin J. Mitchell
2a6c91b3f9 Support expiring old, deleted tasks 2022-03-07 23:37:13 +00:00
Dustin J. Mitchell
fcdcebb1e0 Merge pull request #339 from djmitche/uuid-len-const
use TC_UUID_STRING_BYTES constant directly
2022-03-07 10:55:28 -05:00
Dustin J. Mitchell
43ab50db42 use TC_UUID_STRING_BYTES constant directly 2022-03-06 01:25:31 +00:00
Dustin J. Mitchell
a7f353bd6e Merge pull request #332 from djmitche/cdylib
build a C interface to taskchampion
2022-03-03 19:43:22 -05:00
Dustin J. Mitchell
3a4c417cee free replica in test 2022-03-02 20:58:36 -05:00
Dustin J. Mitchell
a525935008 import order fix 2022-02-27 18:14:21 +00:00
Dustin J. Mitchell
85153423be include BCrypt on Windows 2022-02-27 17:59:58 +00:00
Dustin J. Mitchell
1c5b01975c fix unused symbol on windows 2022-02-27 17:57:34 +00:00
Dustin J. Mitchell
aadd4a762f support generation of paths from TCString on Windows 2022-02-27 17:41:45 +00:00
Dustin J. Mitchell
5072ed7458 a bit of docs 2022-02-27 17:13:55 +00:00
Dustin J. Mitchell
8a96ca7273 fix formatting 2022-02-27 17:07:09 +00:00
Dustin J. Mitchell
2c9d74515e link to libtaskchampion separately from the unity tests 2022-02-27 17:03:04 +00:00
Dustin J. Mitchell
17ccaea096 try the latest 'cc' crate in hopes it fixes things 2022-02-26 23:05:36 +00:00
Dustin J. Mitchell
f0178d4fab don't use unsafe_op_in_unsafe_fn, as it's not in MSRV 2022-02-24 03:33:08 +00:00
Dustin J. Mitchell
471119dbdf TCString as PassByValue 2022-02-18 03:52:09 +00:00
Dustin J. Mitchell
2eee761644 fix xtask Cargo.toml 2022-02-16 01:03:46 +00:00
Dustin J. Mitchell
741cb84430 better docs for C 2022-02-16 01:01:35 +00:00
Dustin J. Mitchell
b1d537ac87 use codegen, instead of build.rs, to build header file 2022-02-16 00:28:07 +00:00
Dustin J. Mitchell
02055b122e find shared library on macos as well 2022-02-16 00:07:30 +00:00
Dustin J. Mitchell
8e34c107d5 update safety comments 2022-02-13 22:21:07 +00:00
Dustin J. Mitchell
ca904d6288 improve output of C tests 2022-02-13 21:02:18 +00:00
Dustin J. Mitchell
41a578ab2b add server support 2022-02-13 20:18:07 +00:00
Dustin J. Mitchell
c0403f3f38 fix bad test 2022-02-13 16:18:17 +00:00
Dustin J. Mitchell
fc73911cde fix some clippy::wrong_self_convention 2022-02-13 03:39:39 +00:00
Dustin J. Mitchell
ad464c4779 use Uda instead of UDA 2022-02-13 03:39:39 +00:00
Dustin J. Mitchell
51a854cfef address some clippy lints 2022-02-13 03:30:02 +00:00
Dustin J. Mitchell
bbb7b64842 review safety comments 2022-02-13 03:19:11 +00:00
Dustin J. Mitchell
c22182cc19 rename trait methods to avoid ambiguity 2022-02-13 02:30:17 +00:00
Dustin J. Mitchell
213da88b27 add tc_task_get_taskmap 2022-02-13 02:05:25 +00:00
Dustin J. Mitchell
1488355b89 add working-set support 2022-02-12 22:19:09 +00:00
Dustin J. Mitchell
ad560fdb79 add UDA support 2022-02-12 16:22:45 +00:00
Dustin J. Mitchell
f81c4eec90 rename array to list in rust types 2022-02-12 15:20:46 +00:00
Dustin J. Mitchell
e9cd6adc5b fix memory leak, remove blanket pointer-by-value impls 2022-02-12 01:21:05 +00:00
Dustin J. Mitchell
76cbc2880b refactor annotations to handle invalid strings 2022-02-12 00:26:57 +00:00
Dustin J. Mitchell
7ebdaa761c treat libc::time_t as a PassByValue 2022-02-12 00:18:01 +00:00
Dustin J. Mitchell
af51e0382a implement lists in the same files as singular data 2022-02-11 23:59:22 +00:00
Dustin J. Mitchell
7996a98908 add annotation support 2022-02-11 23:54:52 +00:00
Tomas Babej
e60fdafdaa centos8: Fix missing repo metadata 2022-02-11 00:40:31 -05:00
Jan Palus
d541e0da65 TLSClient: fix multiple issues with error handling
- do not check errno on successful function calls (it might not be
  cleared after previous failed one)
- GNUTLS_E_* are not passed through errno but as function return value
- therefore there's more error spectrum than -1
- do not assume whole header is received, check number of bytes fetched

small additional improvements:
- read as many bytes into buffer as possible before appending to data
- skip writing nul byte at the end of buffer and use append() instead
- additional sanity checks
2022-02-11 00:19:04 -05:00
Dustin J. Mitchell
b01285d780 add some simple replica functions 2022-02-10 01:18:50 +00:00
Dustin J. Mitchell
1c734851ae safety notes for new types 2022-02-10 01:10:40 +00:00
Dustin J. Mitchell
7a473d0eda simplify imports 2022-02-10 01:01:02 +00:00
Dustin J. Mitchell
a4d992012e TCUuidList, refactor traits 2022-02-10 00:55:34 +00:00
Dustin J. Mitchell
8cbd44544c remove commented-out code 2022-02-10 00:30:13 +00:00
Dustin J. Mitchell
914017b46c tc_replica_all_tasks 2022-02-10 00:11:30 +00:00
Dustin J. Mitchell
c9c72b4fd3 return TCResult from tc_uuid_from_str 2022-02-09 23:43:23 +00:00
Dustin J. Mitchell
28a4599a6a rename TCStrings to TCStringList 2022-02-09 23:37:32 +00:00
Dustin J. Mitchell
8caf442e3f mark all extern-C functions as unsafe 2022-02-09 23:26:39 +00:00
Dustin J. Mitchell
ae5afff4f7 fix another lint 2022-02-09 03:20:17 +00:00
Dustin J. Mitchell
5cf3ce4bc8 comment out failing clippy lint 2022-02-09 03:16:14 +00:00
Dustin J. Mitchell
f96b5415c8 fix some clippy warnings 2022-02-09 02:59:01 +00:00
Dustin J. Mitchell
a270b6c254 Simplify implementation of arrays 2022-02-07 00:15:09 +00:00
Dustin J. Mitchell
e11506ee6a always implement traits for C type 2022-02-06 23:05:33 +00:00
Dustin J. Mitchell
1e585ba0d9 comment updates 2022-02-06 16:50:43 +00:00
Dustin J. Mitchell
831eb0bb15 TCTags -> TCStrings to be more general 2022-02-06 16:40:17 +00:00
Dustin J. Mitchell
3d248b55fd factor out some utilities for pointer arrays 2022-02-06 16:38:31 +00:00
Dustin J. Mitchell
b0f7850711 trivially implement PassByValue for usize 2022-02-06 16:26:09 +00:00
Dustin J. Mitchell
dadc9473d3 unit tests for TCString 2022-02-06 16:21:42 +00:00
Dustin J. Mitchell
f4c6e04d44 TCTags as PassByValue 2022-02-06 05:27:30 +00:00
Dustin J. Mitchell
23ba6a57b3 switch to PassByValue and PassByPointer traits 2022-02-06 04:02:53 +00:00
Dustin J. Mitchell
a46a9d587a fix typo 2022-02-05 00:25:02 +00:00
Dustin J. Mitchell
3dd2ae5011 implement TCTags as an array 2022-02-04 02:49:55 +00:00
Dustin J. Mitchell
8b160c7ee8 more task functions 2022-02-01 03:01:09 +00:00
Dustin J. Mitchell
e5625e1597 entry and wait time support 2022-02-01 02:45:28 +00:00
Dustin J. Mitchell
f2b3e5fd0a tc_task_has_tag 2022-02-01 01:02:49 +00:00
Dustin J. Mitchell
03ffb6ce83 limit unsafe regions 2022-02-01 00:48:49 +00:00
Dustin J. Mitchell
22a6857c1b simplify TCResult to just two values 2022-02-01 00:46:04 +00:00
Dustin J. Mitchell
b675cef99c add error handling for tasks 2022-02-01 00:35:02 +00:00
Dustin J. Mitchell
2dc9358085 add warn(unsafe_op_in_unsafe_fn) 2022-01-31 19:57:05 +00:00
Dustin J. Mitchell
ce45c1004c add tc_task_add_tag and check errors 2022-01-31 19:44:00 +00:00
Dustin J. Mitchell
ef0bb2ced4 allow task setters to return error values 2022-01-31 19:34:21 +00:00
Dustin J. Mitchell
8bd9605b25 support starting and stopping tasks 2022-01-31 00:04:58 +00:00
Dustin J. Mitchell
d24319179c TCFoo::from_arg to take from a pointer 2022-01-30 23:53:12 +00:00
Dustin J. Mitchell
364ca57736 Slightly more ergonomic task mutation 2022-01-30 23:42:52 +00:00
Dustin J. Mitchell
452ae2074f implement task mutability 2022-01-29 03:08:45 +00:00
Dustin J. Mitchell
50aceb9696 use RefCell for replica, more consistent rust methods 2022-01-29 01:00:55 +00:00
Dustin J. Mitchell
82459e699c use a simple constant 2022-01-28 03:51:58 +00:00
Dustin J. Mitchell
b3cbec1af3 more unsafe notations 2022-01-28 02:11:13 +00:00
Patrick Flakus
59a1729a05 Cleanup: Fixed typo in docstring 2022-01-27 16:10:47 -05:00
Dustin J. Mitchell
1470bbf741 mark unsafe utils as such; add safety comments 2022-01-27 02:22:47 +00:00
Dustin J. Mitchell
633ea5cf47 correctly handle invalid utf-8 2022-01-27 02:22:47 +00:00
Dustin J. Mitchell
b5201a28c3 build bindings-test shared 2022-01-27 02:22:47 +00:00
Dustin J. Mitchell
e1c348b96e tc_replica_get_task 2022-01-26 02:15:57 +00:00
Dustin J. Mitchell
f3b73ca0e4 add task_import_with_uuid 2022-01-26 02:15:57 +00:00
Dustin J. Mitchell
96b59dd5b2 serialize C integration tests 2022-01-26 02:15:57 +00:00
Dustin J. Mitchell
8f703fd63a use TCString in UUIDs 2022-01-26 01:29:29 +00:00
Dustin J. Mitchell
dd87f7da1e simplify defining suites 2022-01-26 00:58:29 +00:00
Dustin J. Mitchell
f8cffb798c fix confusing doc string 2022-01-26 00:58:28 +00:00
Dustin J. Mitchell
c5ff2398f7 ignore test-db 2022-01-26 00:57:36 +00:00
Dustin J. Mitchell
0d68e65354 some polish on strings 2022-01-26 00:57:06 +00:00
Dustin J. Mitchell
ca0279a73f move existing integration tests into new crate 2022-01-26 00:57:06 +00:00
Dustin J. Mitchell
c006cbe8e5 test bindings in an integration-tests crate 2022-01-25 02:54:01 +00:00
Dustin J. Mitchell
56a805151d use 2018 edition like the other crates 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
017fb398be replace a clone with a copy 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
40f30c6d89 remove unnecessary string clone 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
65082c26e7 improved TCString support 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
bb722325fe more task functionality 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
821118106a add TC prefix to types, too 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
46e08bc040 add some UUID support 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
e590dc7c98 add tc_replica_undo 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
ce56127bbf create / free replicas, plus error handling 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
33f5f056b1 first bits of a dynamc lib 2022-01-25 02:26:04 +00:00
Dustin J. Mitchell
8576e7ffa7 Merge pull request #330 from djmitche/issue327
Support an 'end' key in task maps
2022-01-24 10:24:18 -05:00
Dustin J. Mitchell
e7d4e1e8f3 Merge pull request #329 from djmitche/issue94
Implement `ta import` and `ta import-tdb2`
2022-01-24 10:23:22 -05:00
Dustin J. Mitchell
50300c4ad7 remove empty conditional 2022-01-23 15:31:58 +00:00
Dustin J. Mitchell
a49e51defd Merge branch 'main' into issue327 2022-01-23 15:31:02 +00:00
Dustin J. Mitchell
210eb60c86 'ta import' -> 'ta import-tw' 2022-01-23 15:27:13 +00:00
Dustin J. Mitchell
656f7e9ea0 replica.create_task -> import_task_with_uuid 2022-01-23 15:22:41 +00:00
Dustin J. Mitchell
0308b7a4c7 Merge branch 'main' into issue94 2022-01-23 15:18:17 +00:00
Dustin J. Mitchell
e4399cde26 Merge pull request #331 from djmitche/issue326
add 'entry' key to tasks when created
2022-01-23 10:16:17 -05:00
Tomas Babej
112ac54a57 ColDepends: Support dependency removal for the same formats as dependency addition 2022-01-19 20:11:41 -05:00
Tomas Babej
0cc2de6179 tests: Add a test for handling short UUIDs in the depends column 2022-01-19 20:11:41 -05:00
Dustin J. Mitchell
28e268bd26 fix parsing invalid depends from server
The data from the server is read via Task::parseJSON, not Task::parse.

This also reverts the tests for Task::parse, and adds new tests for this
specific issue.
2022-01-19 19:34:45 -05:00
Dustin J. Mitchell
7321febe4f A more thorough fix to corruption of the depends property 2022-01-19 19:34:45 -05:00
Dustin J. Mitchell
96d6c1df9f Add special case for taskserver mis-formatting of depends 2022-01-16 15:36:21 -05:00
Dustin J. Mitchell
5019ecb4f8 allow windows newlines in TDB2 files 2022-01-08 22:34:32 +00:00
Dustin J. Mitchell
69d052603d ta import-tdb2 2022-01-08 22:28:33 +00:00
Dustin J. Mitchell
162a9eae95 Support parsing TDB2 files 2022-01-08 22:11:16 +00:00
Dustin J. Mitchell
9824ac1fd3 add 'entry' key to tasks when created 2022-01-06 02:18:32 +00:00
Dustin J. Mitchell
b663745892 Support an 'end' key in task maps
This definition matches how TaskWarrior uses the same key.
2022-01-06 02:02:13 +00:00
Tomas Babej
cb058f2e4b tests: Remove Ubuntu 20.10 (now beyond EOL) from the test matrix 2022-01-05 21:01:21 -05:00
Dustin J. Mitchell
4b2ef1913a use owned values to avoid unnecessary cloning 2022-01-06 00:17:01 +00:00
Dustin J. Mitchell
63804b5652 Implement 'ta import'
Tests include "TODO" notes for data not handled by TaskChampion,
including links to the associated GitHub issues.
2022-01-06 00:06:19 +00:00
Dustin J. Mitchell
e2e0951c81 Make a public method 2022-01-05 03:12:44 +00:00
Dustin J. Mitchell
e3f438d9fa make taskdb.apply for create/delete not fail if already exists/doesn't exist 2022-01-05 02:49:04 +00:00
Dustin J. Mitchell
d6efad06ee Merge pull request #320 from djmitche/issue318
use strum_macros::Display to display Status
2022-01-03 10:14:31 -05:00
Dustin J. Mitchell
9965d10736 Maintain unrecognized statuses 2022-01-03 02:35:19 +00:00
Dustin J. Mitchell
6a1d1a8c3c use strum_macros::Display to display Status 2022-01-03 02:35:19 +00:00
Dustin J. Mitchell
c564bbc0b7 fix test to pass at the end of the year 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
b066a17ebe use a reference in CurrentTask 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
277ce0e226 Update doc comment in src/Context.h
Co-authored-by: Tomas Babej <tomas@tbabej.com>
2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
65830dd705 replace the global contextTask with a Context field 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
53127bf844 add Context::withCurrentTask 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
2ea6dd627e Just set contextTask in Task::modify
Based on the observation that every command was setting contextTask
immediately before calling `task.modify(..)`.
2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
db26a28bf9 move domSource to Eval, as it's an Eval source 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
6e9ad1048d move use of contextTask out of columns, into commands 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
e98b61f2b5 test for dashes in proj without incidentally testing DOM references in 'task add' 2021-12-30 15:03:37 -05:00
Dustin J. Mitchell
1bc7b5f019 Merge pull request #316 from djmitche/issue90
Define UDAs
2021-12-27 17:06:47 -05:00
Dustin J. Mitchell
bc8bb52551 do not use str.split_once, as it is not in MSRV 2021-12-27 00:14:40 +00:00
Dustin J. Mitchell
e94c29ae2f use better trait bounds 2021-12-27 00:09:02 +00:00
Dustin J. Mitchell
829f67ee02 Merge branch 'main' into issue90 2021-12-26 19:04:10 -05:00
Dustin J. Mitchell
b255ad2a7d use namespace.key for UDAs in the API, with legacy support 2021-12-27 00:01:14 +00:00
Dustin J. Mitchell
d5f087bf9a Merge pull request #324 from djmitche/issue322
Update clippy toolchain to 1.57
2021-12-23 09:08:49 -05:00
Dustin J. Mitchell
cb1395ea32 Merge pull request #323 from taskchampion/issue92
Support 'undo'
2021-12-23 09:08:01 -05:00
Dustin J. Mitchell
8195b187c4 fix docs typo 2021-12-23 09:06:19 -05:00
Dustin J. Mitchell
691a3e49e8 Update clippy toolchain to 1.57 2021-12-22 00:43:15 +00:00
Dustin J. Mitchell
36c51d2d93 fix clippy 2021-12-22 00:31:46 +00:00
Dustin J. Mitchell
5fb3f700c0 add some logging for undo 2021-12-21 01:12:30 +00:00
Dustin J. Mitchell
e328b86d97 add user docs for 'ta undo' 2021-12-21 01:10:08 +00:00
Dustin J. Mitchell
caa62ba9a0 add a 'ta undo' subcommand 2021-12-21 01:05:52 +00:00
Dustin J. Mitchell
9d93928996 support undo operations 2021-12-21 00:43:26 +00:00
Dustin J. Mitchell
9e20935f04 Merge pull request #319 from djmitche/issue317
Fix application of modifications during 'ta add'
2021-12-20 19:28:32 -05:00
Dustin J. Mitchell
2b63a227d2 Merge pull request #321 from djmitche/clippy-1-57-fixes
fix a few lints in clippy 1.57
2021-12-20 18:29:14 -05:00
Dustin J. Mitchell
4fa1f9c6bc fix a few lints in clippy 1.57 2021-12-20 16:35:55 +00:00
Dustin J. Mitchell
2456012ed6 Fix application of modifications during 'ta add' 2021-12-20 16:16:25 +00:00
Dustin J. Mitchell
1647ba9144 insert UndoPoint appropriately into the replica operations 2021-12-20 00:33:32 +00:00
Dustin J. Mitchell
103bbcdf8f Store data necessary to undo ReplicaOps 2021-12-19 23:58:57 +00:00
Dustin J. Mitchell
1789344cd0 refactor sync to use SyncOps 2021-12-19 23:44:45 +00:00
Dustin J. Mitchell
cefdd83d94 Use the latest taskmap when modifying a task
The previous logic duplicated the action of applying an operation to the
TaskDb with a "manual" application to the Task's local TaskMap.  This
now uses the updated TaskMap fetched from the DB, which will help to
incorporate any other concurrent DB updates.
2021-12-19 23:29:16 +00:00
Dustin J. Mitchell
fee25fa742 Apply SyncOps, but keep a list of ReplicaOps
This changes a lot of function signatures, but basically:
 * TaskDB::apply now takes a SyncOp, not a ReplicaOp
 * Replica::update_task returns a TaskMap
2021-12-19 23:29:15 +00:00
Dustin J. Mitchell
0b29efab31 rename Operation to ReplicaOp for clarity 2021-12-19 22:55:24 +00:00
Dustin J. Mitchell
6f7794c7de introduce a new taskchampion::server::SyncOp type 2021-12-19 22:55:24 +00:00
Dustin J. Mitchell
ff9ad8185b undo docs 2021-12-19 22:55:24 +00:00
Dustin J. Mitchell
ef12e1a2f8 Define UDAs 2021-12-18 23:39:56 +00:00
Dustin J. Mitchell
4fa1c0bcfb remove temporary function 2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
e3dd91d45e use the existing (but misnamed) orphans method 2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
e768e2c100 compare Tasks directly, not their properties 2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
ac24ec1387 fixup and fix spelling for denotate 2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
3a61289f6c replace a use of Task::data in tests 2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
9f149a7f35 use Task::getAnnotations to get annotatoins 2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
70f83b34ef Move diff formatting into Task (simple refactor)
The Task class already included two forms of diff. This adds another
two.
2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
8d3953183a Only set contextTask if not adding a new task
When adding a new task, the current task is empty, so there is no
context in which to evaluate DOM references.  #2683 will address this in
a more robust fashion.
2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
2812a8c77a Refactor getDOM to use a pointer for the optional context
It's possible to call getDOM without a contextual task.  Previously,
this was done by referencing a "dummy" task which necessitated a way to
distinguish such dummy tasks.  This switches to using a pointer and
treating the NULL value as meaning there is no context.

Note that this cannot use `std::optional<&Task>`, as optional does not
support reference types.
2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
3af5ceadc1 Return early from getDOM if there is no contextual task (refactor)
Before this change, all conditionals checked `have_ref`; returning early
is clearer.
2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
0d9e402d3e Add Task.is_empty, needed to identify "dummy" tasks (simple refactor)
getDOM takes an &Task that may be a reference to a dummy, or may be a
real task.  The is_empty method replaces `task.data.size() == 0` as a
way to distinguish the two.
2021-12-16 23:03:44 -05:00
Dustin J. Mitchell
dede40bc4e Replace direct Task.data access with a temp getter (syntactic refactor)
Now this getter, `data_removeme`, can easily be grepped out and
replaced, one usage at a time in small PRs.
2021-12-16 23:03:44 -05:00
Tomas Babej
3a00956144 ColDepends: Allow specifying short(er) UUIDs 2021-12-03 03:57:37 -05:00
Siôn le Roux
01add8a34a docs: Fix typo in XDG news
This had XFG written in it, it's surely a typo of XDG since on the next
line it's written correctly.
2021-11-23 21:05:01 +01:00
Tomas Babej
a09712d5d2 docs: Document #2655 2021-11-22 15:51:27 +01:00
Tomas Babej
8074e509ba tests: Add bulk removal test for tags attribute 2021-11-22 15:51:27 +01:00
Tomas Babej
af10774aec tests: Add bulk removal test for depends attribute 2021-11-22 15:51:27 +01:00
Tomas Babej
d54c7e090e Task: Correctly handle bulk removal of virtual tags/depends attributes
This edge case would happen if a user issued a following command

    $ task 1 mod depends:
or

    $ task 1 mod tags:

which would not perform as expected for tasks with non-empty depends /
tags attributes.

The problem under the hood is the fact that current synchronization
between 'tags" attribute and its constituent decomposed `tag_X`
attributes is performed in a way where the set of tags obtained from
`tag_X` attributes is taken as the source of truth.

If the legacy 'tags:' attribute was set to empty, the fixTags() method
would then restore its previous value from the `tag_X` attributes,
effectively leading to a no-op.

The same happens with dependencies. The fix here is to detect removal of
depends and tags attributes, and instead of setting the legacy
attributes to empty values, we iteratively remove all tags/dependencies.

Closes #2655.
2021-11-22 15:51:27 +01:00
Dustin J. Mitchell
3937f1efb0 Don't look for a specific sha when testing task version
This allows tests to pass even with a dirty working copy or when running
tests via `git rebase`.
2021-11-21 23:34:46 +01:00
Tomas Babej
3e8190831c docs: Document #502 2021-11-20 15:19:34 -05:00
Tomas Babej
3c2b74a36f tests: Remove expected failure for ID-range based dependencies 2021-11-20 15:19:34 -05:00
Tomas Babej
0558b6c7aa ColDepends: Recognize and properly handle ID ranges 2021-11-20 15:19:34 -05:00
Tomas Babej
774f6df210 docs: Document #2671 2021-11-09 08:00:05 -05:00
Tomas Babej
1e1c0e8f04 libshared: Bump to include fix for soww
See https://github.com/GothenburgBitFactory/libshared/pull/66 for
reference. Closes #2671.
2021-11-09 07:57:37 -05:00
Tomas Babej
caf0f9db3e tests: Clarify we're testing OpenSUSE 15.x rolling 2021-11-06 13:08:51 -04:00
Tomas Babej
da43078eba tests: Add Ubuntu 21.10 into the test matrix 2021-11-06 12:59:16 -04:00
Tomas Babej
6fae705b43 tests: Add Ubuntu 20.10 into the test matrix 2021-11-06 12:57:26 -04:00
Tomas Babej
e4f1e05c1d tests: Add Fedora 35 into the test matrix 2021-11-06 12:54:46 -04:00
Tomas Babej
4559287d07 tests: Remove tests on F31
This distribution release is more than a year out of its support window.
2021-11-06 12:52:24 -04:00
Tomas Babej
2d4776586d README: Remove inacurrate badge
The commit count has been inacurrate for some time, undercounting
(perhaps due to aggreessive caching), but also overcounting at times
(due to merges).
2021-11-06 12:39:22 -04:00
Tomas Babej
ed4b932530 tests: Add test to cover invalid contexts due to tag exclusion 2021-11-06 11:58:47 -04:00
Tomas Babej
f0f704fc99 tests: Fix copy-paste error
The context name in these two tests was invalid in some assertions.
2021-11-06 11:58:46 -04:00
Tomas Babej
403c44b1fa docs: Document #2664 2021-11-06 11:58:45 -04:00
Tomas Babej
493f36ecdd CmdContext: Utilize new reason-providing validateWriteContext 2021-11-06 11:53:45 -04:00
Tomas Babej
5d8f8dac35 validateWriteContext: Refactor to return the underlying reason for invalidity directly 2021-11-06 11:53:44 -04:00
Tomas Babej
f5dce013ce CmdContext: Expand the definition of an invalid write context to incllude tag exclusion 2021-11-06 11:53:44 -04:00
Tomas Babej
531881f651 validateWriteContext: Tag exclusion should also be detected as invalid write context 2021-11-06 11:53:43 -04:00
Tomas Babej
7de681aa3b validateWriteContext: Apply early break when detected the OR operator 2021-11-06 11:53:42 -04:00
Jakub Wilk
04ef785eea Fix typo 2021-11-06 11:50:02 -04:00
Tomas Babej
e1cfb91d42 docs: Document #2648 2021-11-06 11:28:05 -04:00
Tomas Babej
72930708ec CmdNews: Support Mac OS-X url opener 2021-11-04 22:07:39 -04:00
Dustin J. Mitchell
acd4aefc17 Merge pull request #313 from djmitche/issue89
Add support for annotations
2021-10-31 09:49:25 -04:00
Dustin J. Mitchell
af56efdbd5 Merge pull request #314 from djmitche/issue312
Use `tag_<tag>` instead of `tag.<tag>`
2021-10-30 09:31:36 -04:00
Tomas Babej
58763fd49f reproduce: Make vim available in the reproduction image 2021-10-30 06:12:48 -04:00
Dustin J. Mitchell
e9b3611fd9 Use tag_<tag> instead of tag.<tag>
This aligns with the Taskwarrior data model.
2021-10-29 20:41:37 -04:00
Dustin J. Mitchell
4314b8bc2d Add support for annotations
This matches the taskwarrior task model for annotations.
2021-10-29 20:28:23 -04:00
Dustin J. Mitchell
7fe5553093 fix errors from merges 2021-10-26 22:37:51 -04:00
Dustin J. Mitchell
7c8c85f27f Merge pull request #301 from djmitche/issue299
Drop tindercrypt, document encryption
2021-10-26 22:05:59 -04:00
Dustin J. Mitchell
ae80cbef2a Merge pull request #309 from djmitche/issue286
use TW's semantics for `start`
2021-10-25 09:21:11 -04:00
Dustin J. Mitchell
5648d20bde add changelog 2021-10-25 09:20:44 -04:00
Dustin J. Mitchell
9ebff38277 Merge pull request #310 from djmitche/issue23-integration
Add integration tests for snapshots
2021-10-25 09:15:57 -04:00
Dustin J. Mitchell
5bae2b6464 remove debug print 2021-10-24 21:41:41 -04:00
Dustin J. Mitchell
2e65d172cd Add an integration test for snapshot syncing 2021-10-24 21:41:41 -04:00
Dustin J. Mitchell
8df3e4f2f8 use TW's semantics for start 2021-10-24 20:57:58 -04:00
Steven Kreuzer
a89c875c49 Fix typo in ChangeLog
Change 'precendence' to 'precedence'
2021-10-22 18:54:32 -04:00
Dustin J. Mitchell
43a21ba3a6 Merge pull request #306 from djmitche/no-audit-on-pr
do not run audit on PRs
2021-10-21 19:41:23 -04:00
dbr/Ben
c1c9b7f80b Merge pull request #307 from taskchampion/auditcfg
Add config for cargo-audit
2021-10-21 19:56:34 +11:00
dbr
ae244055f7 Also ignore time bug 2021-10-21 13:45:32 +11:00
dbr
6aa355b835 Add config for cargo-audit 2021-10-21 13:33:19 +11:00
Dustin J. Mitchell
642da4da3e do not run audit on PRs 2021-10-20 22:29:16 -04:00
Dustin J. Mitchell
2f7c11bcc3 Merge pull request #305 from djmitche/issue23-client-apply
Client initialization from snapshots
2021-10-20 22:22:51 -04:00
Dustin J. Mitchell
c63a21797a remove dbg!(..) 2021-10-20 21:25:28 -04:00
Dustin J. Mitchell
ec35d4fa20 use a distinct error for out-of-sync replica 2021-10-20 21:23:29 -04:00
Dustin J. Mitchell
c72cae648d Apply snapshots automatically on empty taskdbs 2021-10-20 21:23:29 -04:00
Dustin J. Mitchell
0af66fd6c8 Validate encryption using externally-generated data 2021-10-19 18:31:30 -04:00
Tomas Babej
e0f598f91c Changelog: Document 2.6.1 release commit hash 2021-10-19 00:30:53 -04:00
Tomas Babej
a696b6b155 cmake: Bump project version to 2.6.1 2021-10-19 00:23:40 -04:00
Tomas Babej
d8770133f0 docs: Update dev branch references in README 2021-10-19 00:23:16 -04:00
Tomas Babej
5c32372d42 docs: Update DEVELOPER.md 2021-10-19 00:20:07 -04:00
Tomas Babej
4d7c7531d0 docs: Document #2632 2021-10-18 23:56:38 -04:00
Tomas Babej
c99dab0dae meta: Ensure Cygwin compatibility 2021-10-18 23:53:26 -04:00
Tomas Babej
3dee86c997 docs: Document #2639 2021-10-18 23:48:37 -04:00
Tomas Babej
df75d1ce43 test: Add tests for parsing ID ranges of various sizes 2021-10-18 23:46:45 -04:00
Tomas Babej
2469943c98 meta: Bump libshared
This bumps libshared version to the one not suffering from
misidentification of certain ID ranges.

Closes #2639.
2021-10-18 23:15:03 -04:00
Tomas Babej
072b38d326 CmdCustom: Increase probability of displaying upgrade message
We have received reports from people that have upgraded, but seemingly
have not seen release notes in the `task news` command. One of the
causes here could be the fact that the probability of displaying the
footnote about running `task news` is `1/10`.

Increase the probability to 1/4.
2021-10-18 21:32:53 -04:00
Tomas Babej
dc81bf5fb5 CmdNews: Adjust for brevity 2021-10-18 21:31:41 -04:00
Dustin J. Mitchell
17f5521ea4 add an app_id to the encryption AAD 2021-10-17 18:06:16 -04:00
Dustin J. Mitchell
4300f7bdda use CHACHA20_POLY1305 instead of AES_256_GCM 2021-10-17 17:37:32 -04:00
Dustin J. Mitchell
97d1366b66 move taskchampion::server::remote::crypto to taskchampion::server::crypto 2021-10-16 22:37:28 +00:00
Dustin J. Mitchell
0f39a3f3b2 [BREAKING CHANGE] drop use of tindercrypt, and use ring directly 2021-10-16 22:34:33 +00:00
Tomas Babej
8e7401d2f4 docs: Document #2626 2021-10-16 11:28:36 -04:00
Tomas Babej
6a79e614da tests: Expand test for waiting report
Add tasks to test exclusion of completed and deleted tasks.
2021-10-16 11:11:45 -04:00
Tomas Babej
4287b33796 Task: Only consider pending tasks as waiting 2021-10-16 11:11:15 -04:00
Tomas Babej
3b37dc2480 tests: Adjust test description 2021-10-16 11:02:38 -04:00
Tomas Babej
dec99b0deb docs: Document #2622 2021-10-16 10:22:34 -04:00
Tomas Babej
3840c4e768 tests: Add test for UDA Orphan identification 2021-10-16 10:22:34 -04:00
Tomas Babej
793b23411a CmdUDAs: Do not identify tags and dependencies as orphan UDAs 2021-10-16 10:22:34 -04:00
Tomas Babej
fd549c764b Task: Do not identify tag and dependency attributes as orphans 2021-10-16 10:22:34 -04:00
Tomas Babej
339a4ddb51 Task: Make isTag/Dep/AnnotationAttr methods static
This allows usage of these helper methods outside of Task class.
2021-10-16 10:22:34 -04:00
Bent Witthold
3dbad09f72 consiered -> considered 2021-10-16 09:07:18 -04:00
Tomas Babej
d480f6a0db docs: Document #2629 2021-10-15 01:09:19 -04:00
Tomas Babej
e21ae0d7d8 docs: Document #2620 2021-10-15 00:56:13 -04:00
Dustin J. Mitchell
ddfb327292 WIP 2021-10-15 02:56:46 +00:00
Tomas Babej
f6d9837b07 tests: Add test for legacy context interpretation 2021-10-14 22:36:11 -04:00
Tomas Babej
d5a026d91a context: Interpret legacy-style context as read context only
This provides a better migration path than surprising users with the
write context functionality out of the blue.

Closes #2620.
2021-10-14 22:34:48 -04:00
Tomas Babej
1d4baca0d9 context: Do not interpret empty filter/mods as missing context definition
This is a corner case bug, when user has both old-style and new-style
context defined, where new-style is defined as empty string, the
old-style will (incorrectly) take precedence.

Closes #2629.
2021-10-14 17:47:11 -04:00
Dustin J. Mitchell
636862f8c5 update README with current relationship to TW 2021-10-13 17:59:58 -04:00
Dustin J. Mitchell
bd2189e589 Merge pull request #300 from djmitche/issue23-client
Client support for adding snapshots
2021-10-13 16:44:50 -04:00
Dustin J. Mitchell
1c6a5315c9 remove unused file 2021-10-11 21:29:49 -04:00
Dustin J. Mitchell
333cb37091 Support add_snapshots on cli 2021-10-11 21:00:08 -04:00
Dustin J. Mitchell
ed3475d9ea support avoiding snapshots 2021-10-11 21:00:08 -04:00
Dustin J. Mitchell
b97f6dc4d5 Send snapshots to server 2021-10-11 21:00:07 -04:00
Dustin J. Mitchell
13a96efacb Add snapshot encoding / decoding 2021-10-11 20:58:36 -04:00
Dustin J. Mitchell
bde19d7f07 Return SnapshotUrgency from AddVersion 2021-10-11 20:58:34 -04:00
Dustin J. Mitchell
b8d892878c document sync data formats 2021-10-11 20:56:45 -04:00
Dustin J. Mitchell
79f07b57ad more taskdb refactoring 2021-10-11 20:56:45 -04:00
Tomas Babej
887b04f7f4 docs: Document #2619 2021-10-11 15:50:42 -04:00
Alexandre Provencio
d4a9ce614b Fix fish completions
Closes #2619
2021-10-11 15:45:57 -04:00
Dustin J. Mitchell
f229715242 Merge pull request #295 from taskchampion/issue23-config
add server-side config --snapshot-{days,versions}
2021-10-10 15:24:18 -04:00
Dustin J. Mitchell
ef1d8f37a8 write config defaults once 2021-10-10 01:43:30 +00:00
Dustin J. Mitchell
329c0d0aef move ServerConfig to crate::server 2021-10-10 01:35:12 +00:00
Dustin J. Mitchell
4d19ca7bdb add server-side config --snapshot-{days,versions} 2021-10-10 01:28:05 +00:00
Dustin J. Mitchell
74aee49107 Merge pull request #297 from djmitche/versionid-nil
Replace NO_VERSION_ID with NIL_VERSION_ID
2021-10-09 21:14:43 -04:00
Dustin J. Mitchell
45e2f2cde8 Merge pull request #296 from djmitche/app-configure
Use App::configure to set up actix
2021-10-09 21:14:22 -04:00
Dustin J. Mitchell
dd9bef0a7b Merge pull request #294 from taskchampion/taskdb-refactor
factor taskdb into multiple modules
2021-10-09 21:13:56 -04:00
Dustin J. Mitchell
aaac1c3356 Use App::configure to set up actix
This avoids the need for the messy cache-control-header macro.
Otherwise, it has no effect.
2021-10-09 18:07:25 -04:00
Dustin J. Mitchell
536b88c8f4 Replace NO_VERSION_ID with NIL_VERSION_ID
The docs refer to this as the "nil version ID" so let's do the same.

This started out more ambitiously, to change this to `VersionId::NIL`,
but that required making VersionId a newtype and all of the implicit
conversions from VersionId to Uuid would have to be explicit.  That
didn't seem wortht the trouble.
2021-10-09 17:59:09 -04:00
Dustin J. Mitchell
a0a3f36a16 factor taskdb into multiple modules 2021-10-09 09:47:10 -04:00
Dustin J. Mitchell
f109056340 Merge pull request #289 from taskchampion/issue23
Add support for snapshots
2021-10-09 09:40:57 -04:00
Dustin J. Mitchell
7bb6ea6865 Request snapshots in AddVersion 2021-10-08 23:15:48 -04:00
Dustin J. Mitchell
d1da8eee52 Add add_snapshot API method 2021-10-08 23:15:48 -04:00
Dustin J. Mitchell
e2f79edad6 add get_snapshot API method 2021-10-08 23:15:48 -04:00
Dustin J. Mitchell
53d1f8dbc2 update get_child_version to distinguish gone and not-found 2021-10-08 23:15:48 -04:00
Dustin J. Mitchell
2570956710 [breaking] Add snapshot support to server storage
This refactors the storage API pretty substantially, and represents a
breaking change to the schema used by the sqlite storage
2021-10-08 23:15:48 -04:00
Dustin J. Mitchell
8d2be3b495 add get_version to server storage api 2021-10-08 23:15:48 -04:00
Dustin J. Mitchell
eadce9f15a Add documentation for snapshots 2021-10-08 23:15:48 -04:00
Orhun Parmaksız
db76a15ba5 changelog: mark 2.6.0 as current release 2021-10-04 21:07:44 -04:00
Tomas Babej
64ea936d7f README: Describe the new branch names 2021-10-04 20:56:27 -04:00
Dustin J. Mitchell
75fd0ff83a Remove cargo fmt error
This was added to test the 'Formatting' action.  It works :)
2021-10-03 22:26:03 +00:00
Dustin J. Mitchell
e2320fb9aa Merge pull request #293 from taskchampion/cargo-fmt
add a cargo-fmt job to CI
2021-10-02 22:16:06 -04:00
Tomas Babej
c010855bac Merge branch '2.6.0' 2021-10-02 22:04:54 -04:00
Tomas Babej
8174287f91 README: Mark GnuTLS as optional 2021-10-02 21:59:37 -04:00
Nathan Wyand
b6225adbd3 add library build dependencies to README 2021-10-02 21:55:02 -04:00
Tomas Babej
dbf641988e CmdTags: Update pointers to task enumeration lists 2021-10-02 21:38:47 -04:00
Tomas Janousek
8610268cd9 Add missing "QUARTER" to feedback_reserved_tags
A while ago I noticed that 630a1530e0 only
added the QUARTER virtual tag to src/Task.cpp, and when I checked that
again today, it was still missing from src/feedback.cpp, so I'm fixing
that.
2021-10-02 21:33:16 -04:00
Tomas Babej
ac309b4ff1 tests: Skip the diagnostics test on Ubuntu 16.04
This is a byproduct of recent bump to C++17 compliant compilers. Ubuntu
16.04 does not have C++17 compliant compiler, but it's still useful to
for us to test 2.5.3 there as the branch does not actually use any of
the C++17 features not available on gcc on Ubuntu.
2021-10-02 21:32:21 -04:00
Leo
57680f5bde Uncoditionally include errno.h instead of guessing
POSIX tells us that it is errno.h, musl fails to build with -Werror
because it redirects sys/errno.h->errno.h and uses #warning

(cherry picked from commit 041248e7cc)
2021-10-02 21:30:40 -04:00
Doron Behar
6873ff26a1 Truely remove priority from hardcoded attrributes 2021-10-02 21:27:10 -04:00
Doron Behar
4bdab32c12 Complete attributes dynamically incl UDAs
This is the major refinement of the completion: Most of it just moved
the global variables from up above to inside _task_filter so every array
of attributes will be calculated dynamically there.
2021-10-02 21:26:55 -04:00
Doron Behar
9d3bbe744d Fix small TODO and move main function to bottom 2021-10-02 21:18:58 -04:00
Doron Behar
ba1b6819a0 Add TODOs to make zsh completion awesome 2021-10-02 21:18:22 -04:00
Lionel Miller
e66f7fce50 Workaround for alias grep=rg in fish 2021-10-02 21:11:16 -04:00
John Nguyen
68bef0135f Fix typo in man page
The example for _unique has typo, should be using attribute for project.
Fixes #2277
2021-10-02 21:05:50 -04:00
Tomas Babej
c2ba93cb61 tests: Ensure the git tag version check does not run for tarball builds
Do not try to determine the latest git tag if we're not in a git
repository in the first place.
2021-10-02 18:27:58 -04:00
Tomas Babej
34c12a7b78 Context: Add news.version among configuration defaults
Otherwise news.version shows up as unrecognized variable.
2021-10-02 18:27:57 -04:00
Tomas Babej
4d85031b90 tests: Ensure tests are run with news.version set to 2.6.0
No tests were failing due to the footnote but its better to be safe than
sorry.
2021-10-02 18:06:12 -04:00
Tomas Babej
0ad1b681de CMakeLists: Use presence of src, not .git dir to determine libshared presence
This way the mechanism to determine the presence of libshared works for
tarball builds as well.
2021-10-02 17:57:38 -04:00
Tomas Babej
35794a57b5 CMakeLists: Ensure cmake.h.in is not excluded in the source build 2021-10-02 17:45:28 -04:00
Tomas Babej
a392983631 CmdNews: Minor adjustments 2021-10-02 17:10:59 -04:00
Tomas Babej
ef53c4fc75 CmdCustom: Generate notice about task news 2021-10-02 16:58:16 -04:00
Tomas Babej
5ccfece56d CmdNews: Improve footnote advertising of minor higlights 2021-10-02 16:25:27 -04:00
Tomas Babej
5e5a68e045 CmdNews: Mark more higlights as major 2021-10-02 16:24:57 -04:00
Tomas Babej
214890af26 CmdNews: Prevent double outro by reverting to defautl signal handler 2021-10-02 16:08:11 -04:00
Tomas Babej
bd39e6b2e0 CmdNews: Prevent compiler warning 2021-10-02 16:08:10 -04:00
Tomas Babej
cb4444098e CmdNews: Add short outro on interrupt 2021-10-02 16:08:09 -04:00
Tomas Babej
7e3ea4f47e CmdNews: Implement short outro section 2021-10-02 16:08:08 -04:00
Tomas Babej
8ef6aa4bce CmdNews: Guide users about minor highlights 2021-10-02 13:11:31 -04:00
Tomas Babej
f9f62d596a CmdNews: Dynamically construct the heading 2021-10-02 11:45:59 -04:00
Tomas Babej
333840062b CmdNews: Replace prompt at the beginning by defaulting to major items only 2021-10-02 11:40:47 -04:00
Tomas Babej
703594931a CmdNews: Add news item about updated holiday data 2021-10-02 11:14:14 -04:00
Dustin J. Mitchell
fbd140a706 add fmt error 2021-10-02 15:03:41 +00:00
Dustin J. Mitchell
de5d46d3c7 add a cargo-fmt job to CI 2021-10-02 14:57:47 +00:00
Dustin J. Mitchell
d01386f3ea Merge pull request #292 from taskchampion/issue291
Switch to pretty_assertions
2021-10-02 10:54:25 -04:00
Tomas Babej
d16bb6f084 CmdNews: Add news item about XDG support 2021-10-02 10:35:51 -04:00
Tomas Babej
1a79f0b99e CmdNews: Add news item about context-specific configuration overrides 2021-10-02 10:35:46 -04:00
Tomas Babej
2af2564fd9 CmdNews: Adjust header 2021-10-02 09:48:53 -04:00
Tomas Babej
130b2fe77c man: Fix spacing between headers 2021-10-02 09:48:35 -04:00
Tomas Babej
3f59b12512 CmdNews: Add news item about the .by attribute modifier 2021-10-02 09:48:34 -04:00
Tomas Babej
d7d2f938c5 man: Document the 'news' command 2021-10-02 09:47:23 -04:00
Tomas Babej
facf40b1b4 NEWS: Document the 'news' command 2021-10-02 09:47:22 -04:00
Tomas Babej
32cbff9254 CmdNews: Add news item about Unicode 12 support 2021-10-02 09:47:21 -04:00
Dustin J. Mitchell
bcef6bf392 remove redundant {..} 2021-10-01 22:18:24 -04:00
Dustin J. Mitchell
d923dc7bae Merge pull request #288 from taskchampion/docs-update
Docs update
2021-10-01 22:08:40 -04:00
Tomas Babej
9ed8835218 NEWS: Mention new locales 2021-10-01 22:01:13 -04:00
Tomas Babej
db6aeffd66 holidays: Update for 2022 2021-10-01 21:59:00 -04:00
Tomas Babej
1a8756e042 holidays: Add sv-FI locale 2021-10-01 21:58:43 -04:00
Tomas Babej
cb571f345a holidays: Add sk-SK locale 2021-10-01 21:58:34 -04:00
Tomas Babej
a2af5260cd holidays: Add pt-BR locale 2021-10-01 21:58:22 -04:00
Tomas Babej
10c049cff0 holidays: Add hr-HU locale 2021-10-01 21:58:10 -04:00
Tomas Babej
7e0d1aa902 holidays: Add fr-CA locale 2021-10-01 21:57:26 -04:00
Dustin J. Mitchell
a143660124 Switch to pretty_assertions 2021-10-02 01:08:26 +00:00
Dustin J. Mitchell
267288c9e6 Merge pull request #290 from taskchampion/update-cache
use actions/cache@v2
2021-09-29 08:42:16 -04:00
Dustin J. Mitchell
a95860b0d1 use actions/cache@v2 2021-09-29 12:24:02 +00:00
Tomas Babej
50eb00d542 NEWS: Correct the Unicode version
The currently supported Unicode character set is actually Unicode 12.
2021-09-29 00:59:44 -04:00
Tomas Babej
7848d25f18 CmdNews: Add news item about multi-day holidays 2021-09-29 00:16:35 -04:00
Tomas Babej
0d647f0218 CmdNews: Add news item about exportable reports 2021-09-29 00:16:20 -04:00
Tomas Babej
6f60f74739 CmdNews: Add news item for environment variable support in taskrc 2021-09-29 00:15:50 -04:00
Tomas Babej
f71d851703 CmdNews: Add news item about a waiting being now virtual status 2021-09-28 23:39:23 -04:00
Tomas Babej
36604c95d2 Context: Document the availability of environment variables in the taskrc 2021-09-28 23:38:33 -04:00
Tomas Babej
30c3893499 CmdNews: Describe context-less reports 2021-09-28 22:58:36 -04:00
Tomas Babej
51a5916339 NewsItem: Do not render _updates if not set 2021-09-28 22:58:07 -04:00
Tomas Babej
33d074e00c NewsItem: Fix typo 2021-09-28 22:57:53 -04:00
Tomas Babej
052444350e CmdNews: Add news item about 64-bit datetime support 2021-09-28 22:31:14 -04:00
Tomas Babej
189a253ef2 CmdNews: Add advice for writeable context 2021-09-28 21:47:54 -04:00
Tomas Babej
c69cbe8bfc CmdContext: Remove old-style context during re-definition
This makes it easier to migrate from old-style context.<name>=value
context definition to new context.<name>.read=value and
context.<name>.write=value variables.
2021-09-28 21:07:46 -04:00
Tomas Babej
c28aa2f7e2 CmdContext: Fix typo 2021-09-28 00:57:52 -04:00
Tomas Babej
5f8ec9bbe0 CmdConfig: Extract write context validation into a separate method 2021-09-28 00:52:56 -04:00
Tomas Babej
2b0730d905 CmdNews: Add NewsItem about writeteable contexts 2021-09-28 00:40:52 -04:00
Tomas Babej
ce77bdf830 CmdNews: Implement section-based rendering with a punchline 2021-09-28 00:33:49 -04:00
Tomas Babej
36e1f8c8ec NewsItem: Reorder arguments to follow rendering order 2021-09-27 23:42:03 -04:00
Tomas Babej
c574cbf948 NewsItem: Add punchline, background and bg_title attributes 2021-09-27 23:39:41 -04:00
Tomas Babej
c8240f1ad7 CmdNews: Add reasoning and actions subsections 2021-09-27 22:38:29 -04:00
Tomas Babej
e538e9199c CmdNews: Make it explicit enter has to be pressed to continue 2021-09-27 22:04:10 -04:00
Tomas Babej
506307fb87 CmdNews: Work around blending not supporting bold effect 2021-09-27 22:00:51 -04:00
Tomas Babej
4f1af72235 CmdNews: Filter out non-major news updates if displaying shortened summary 2021-09-27 21:04:20 -04:00
Tomas Babej
1935cd7e2d CmdNews: Obtain the NewsItems for 2.6.0 release 2021-09-26 21:28:12 -04:00
Tomas Babej
f3881ecbbe CmdNews: Version methods should generate all items, regardless of priority
Drop the flag about full/abbreviated report being passed to the version
methods. The methods shold just generate the NewsItem objects, the
CmdNews::execute will take care of displaying only the ones matching the
verbosity level the user selected.
2021-09-26 21:25:31 -04:00
Tomas Babej
636c8f50e0 CmdNews: Render all news items 2021-09-26 21:24:54 -04:00
Tomas Babej
946e489ad6 CmdNews: Add preliminary notes for version 2.6.0 2021-09-26 21:12:17 -04:00
Tomas Babej
3ed89393ec NewsItem: Add stub 2021-09-26 21:10:41 -04:00
Tomas Babej
36bdd81d46 CmdNews: Prompt user to determine whether to show abbreviated summary 2021-09-26 21:07:21 -04:00
Dustin J. Mitchell
a76d7580ce cargo fmt 2021-09-26 13:59:58 -04:00
Dustin J. Mitchell
255cf29d4f Update docs
* improve linking
* parallel construction for storage and servers
* clarify rationale for Task/TaskMut
2021-09-26 13:59:04 -04:00
Dustin J. Mitchell
7881b2993c update docs 2021-09-26 09:34:35 -04:00
Dustin J. Mitchell
bfb732947c more build-docs fixes 2021-09-26 09:33:37 -04:00
Dustin J. Mitchell
c62eeb4fcb v0.4.1 2021-09-26 09:26:38 -04:00
Dustin J. Mitchell
a122a28993 Add derive feature for serde
This feature had previously been indirectly required by a dependency,
and this is no longer the case.
2021-09-26 09:07:15 -04:00
Tomas Babej
d092aaa2e5 CmdNews: Set news.version configuration variable upon success 2021-09-25 23:24:26 -04:00
Tomas Babej
63c176ea0e CmdNews: Add plumbing to register the command 2021-09-25 22:05:46 -04:00
Tomas Babej
38fe7b6044 CmdNews: Add stub 2021-09-25 22:05:27 -04:00
Tomas Babej
b2a4da7874 Changelog: Change 2.6.0 log to use new format
This format correctly credits reporters and contributors and
distinguishes bugs from enhancements.
2021-09-25 20:48:08 -04:00
Tomas Babej
b04f3d1e99 docs: Document TW #2283 2021-09-25 20:25:53 -04:00
Tomas Babej
fb724dca4a NEWS: Add #2390 as a regression 2021-09-25 20:25:53 -04:00
Tomas Babej
967bf18188 tests: Add test for TW #2386 2021-09-25 20:25:53 -04:00
Tomas Babej
37f26be3ad tests: Add test for TW #2388 2021-09-25 20:25:53 -04:00
Tomas Babej
983b971a11 docs: Also list TW #2392 as a regression 2021-09-25 20:25:53 -04:00
Tomas Babej
9fc4870874 docs: List #2392 as a regression 2021-09-25 20:25:53 -04:00
Tomas Babej
d19ee12406 docs: Document TW #2422 2021-09-25 20:25:53 -04:00
Tomas Babej
2ad7321132 docs: Document #2403 2021-09-25 20:25:53 -04:00
Tomas Babej
95cfdb3efb docs: Document TW #2461 2021-09-25 20:25:53 -04:00
Tomas Babej
5b81eb0569 docs: Document TW #2160 2021-09-25 20:25:53 -04:00
Tomas Babej
040a894451 docs: Document TW #1847 2021-09-25 20:25:53 -04:00
Tomas Babej
33cc38ad16 docs: Document #1953 2021-09-25 20:25:53 -04:00
Tomas Babej
04966702fb docs: Document TW #2163 2021-09-25 20:25:53 -04:00
Tomas Babej
0edc6665c0 man: Mention new color.calendar.scheduled setting in the man page 2021-09-25 20:25:53 -04:00
Tomas Babej
bf34c65f4d docs: Document #2208 2021-09-25 20:25:53 -04:00
Tomas Babej
602e9edbbe docs: Document #1840 2021-09-25 20:25:53 -04:00
Tomas Babej
83863056d2 docs: Document #2532 2021-09-25 20:25:53 -04:00
Tomas Babej
b863bc6257 docs: Document TW #1960 2021-09-25 20:25:53 -04:00
Tomas Babej
70e5f51b59 docs: Document TW #1914 2021-09-25 20:25:53 -04:00
Tomas Babej
6908586899 docs: Fix documented default value of burndown.cumulative
The default is actually 1, not 0.
2021-09-25 20:25:53 -04:00
Tomas Babej
57fba23217 docs: Document #2575 in NEWS and Changelog 2021-09-25 20:25:53 -04:00
Tomas Babej
5516026400 docs: Document TW #2549 2021-09-25 20:25:53 -04:00
Tomas Babej
21c9e90b30 NEWS: Add info about #2442 improvement to nagging mechanism 2021-09-25 20:25:53 -04:00
Dustin J. Mitchell
e9dfcaaa44 more updates to build-docs.sh 2021-09-25 23:53:08 +00:00
Dustin J. Mitchell
67b2f261a1 fix build-docs to create gh-pages branch 2021-09-25 23:50:39 +00:00
Dustin J. Mitchell
fe7d421c21 v0.4.0 2021-09-25 23:42:16 +00:00
Dustin J. Mitchell
b1b17310e6 fix typo 2021-09-25 23:16:16 +00:00
Tomas Babej
f9ea89fb60 docs: Document #2023 2021-09-25 14:45:00 -04:00
Tomas Babej
4a993afb46 Task: Update versions of comments 2021-09-25 14:35:50 -04:00
Tomas Babej
bfc9cb752c Changelog: Document TW #2287 2021-09-25 13:41:26 -04:00
Tomas Babej
2127d21d8c NEWS: Add a small note about multi-day holiday support to features 2021-09-25 13:35:34 -04:00
Tomas Babej
f37a8abb86 doc: Strip trailing whitespace 2021-09-25 13:35:33 -04:00
Tomas Babej
d9861eb891 doc: Expand section about relative paths in taskrc 2021-09-25 13:35:32 -04:00
Tomas Babej
059ab577b8 man: Update taskrc manpage's description of context 2021-09-25 13:35:31 -04:00
Tomas Babej
78b5bd7391 NEWS: Document context-specific configuration overrides 2021-09-25 13:35:30 -04:00
Tomas Babej
de271d8e7a NEWS: Make notes about the updated compiler 2021-09-25 13:35:30 -04:00
Tomas Babej
9bed1eda99 DEVELOPER: Update IRC information 2021-09-25 13:35:29 -04:00
Tomas Babej
1c53539ce8 DEVELOPER: Update branch information 2021-09-25 13:35:28 -04:00
Tomas Babej
ba1f760b2f NEWS: Adjust wording 2021-09-25 13:35:27 -04:00
Tomas Babej
017053a2e1 NEWS: Deprecate monthsperline 2021-09-25 13:34:58 -04:00
Tomas Babej
cd2abc7132 Replace references to monthsperline with calendar.monthsperline 2021-09-25 13:34:58 -04:00
Tomas Babej
c22b233300 CmdCalendar: Respect calendar.monthsperline alongside monthsperline 2021-09-25 13:34:58 -04:00
Dustin J. Mitchell
56bcd24e37 Merge pull request #285 from taskchampion/issue99
Add cache-control headers to API responses
2021-09-25 10:26:38 -04:00
Tomas Babej
898a6d200d NEWS: Document support of env variables in the config file 2021-09-18 16:21:00 -04:00
Tomas Babej
eb9514ede3 docs: Document TW #1933 2021-09-18 16:09:46 -04:00
Tomas Babej
38a0a25374 libshared: Bump version
This includes rebased versions of changes originally introduced in
PR #2558.
2021-09-18 16:09:14 -04:00
Tomas Babej
16c5a58843 tests: Add test for detection of invalid write contexts 2021-09-18 14:15:47 -04:00
Tomas Babej
690d00c8c5 tests: Update test expectations in context.t to account for write context
These changes make the tests a bit more wholesome by checking
configuration variables for the write context as well.
2021-09-18 14:15:47 -04:00
Tomas Babej
03edf2e01c CmdContext: Analyze the context filter for validity as modification 2021-09-18 14:15:47 -04:00
Tomas Babej
96fe962604 CmdCompletionContext: Fix typo 2021-09-18 14:15:47 -04:00
Tomas Babej
4e00106c71 CLI2: Add method to get MISCELLANEOUS tokens 2021-09-18 14:15:47 -04:00
Tomas Babej
5bbb1697af tests: Remove expected failure
Hyphenation for long words now works as expected.
2021-09-16 07:33:53 -04:00
Tomas Babej
a8d4ce52c3 ViewTask: Handle negative overage by decreasing size of the largest columns 2021-09-16 07:33:53 -04:00
Tomas Babej
04e84cb06f refactoring: Reorder verbosity tokens 2021-09-16 07:15:54 -04:00
Tomas Babej
9a3b103861 Context: Override verbosity token should not imply header
Users might want to only opt-in into footnote override notifications,
without seeing header-based override information about TASKRC or
TASKDATA.
2021-09-16 07:15:54 -04:00
Tomas Babej
a5d5a025b7 tests: Make sure test accessing header output have correct verbosity tokens
This change was needed because the information about the default command
is no longer part of the default output.
2021-09-16 07:15:54 -04:00
Tomas Babej
e3e2c50c24 NEWS: Document the 'default' verbosity token 2021-09-16 07:15:54 -04:00
Tomas Babej
ed6249fee6 Context: Make default/override imply header 2021-09-16 07:15:54 -04:00
Tomas Babej
c5f6419dfd docs: Document the 'default' token 2021-09-16 07:15:54 -04:00
Tomas Babej
712f0080dd Context: Introduce 'default' verbosity token
The purpose of this token is to control the display of information
messages about taskwarrior choosing a default action of some sort.
2021-09-16 07:15:54 -04:00
Tomas Babej
867efe3928 Context: Update the list of verbosity tokens
- Add the "context" token to the default tokens..
- Remove the "filter" token from the default list.
2021-09-16 07:15:54 -04:00
Tomas Babej
235c6614af feedback: Remove redundant variable 2021-09-16 07:15:54 -04:00
Dustin J. Mitchell
217f3bf28a Add cache-control headers to API responses 2021-09-15 22:32:35 +00:00
Jasha
5ad8f47000 fix a typo in the help commnad 2021-09-14 20:36:11 -04:00
Dustin J. Mitchell
3837a61b6f Merge pull request #284 from taskchampion/issue128
Add integration test for replica/server interactions
2021-09-14 09:36:57 -04:00
Dustin J. Mitchell
7d3aae4555 allow publishing taskchampion-cli, to allow 'cargo install' 2021-09-14 09:26:44 -04:00
Dustin J. Mitchell
757f923c66 reword README 2021-09-13 17:42:16 -04:00
Dustin J. Mitchell
fb39c90592 Add an integration test combining replica and server
This confirms that task changes are replicated via the server.
2021-09-12 21:30:05 +00:00
Dustin J. Mitchell
ebcf9527dc refactor sync-server into a lib crate with a binary 2021-09-12 21:30:04 +00:00
DanielMowitz
c1e811a4fe Fixed error with tasks that were completed instantly not rendering. 2021-09-11 13:56:03 -04:00
DanielMowitz
c6be724a96 Changed burndown test so it doesn't block forever 2021-09-11 13:56:03 -04:00
DanielMowitz
bad672dc0a Update burndown.t
Fixed indentation error.
2021-09-11 13:56:03 -04:00
DanielMowitz
cb07e93ddd Changed configuration option name and added documentation. 2021-09-11 13:56:03 -04:00
DanielMowitz
1d804ae7c8 Implemented non-cumulative burndown reports and added a test for them. 2021-09-11 13:56:03 -04:00
dbr/Ben
4690cf7fc8 Merge pull request #206 from dbr/sqlstore
Switch to SQLite storage backend
2021-09-10 10:04:08 +09:30
dbr
11a3b7882b Changelog entry! 2021-09-10 10:03:46 +10:00
dbr
43ca0623b1 Merge branch 'main' into sqlstore 2021-09-10 09:59:35 +10:00
dbr/Ben
4cbc9a805f Merge pull request #279 from taskchampion/changelog
Basic changelog infrastructure
2021-09-10 09:26:24 +09:30
Dustin J. Mitchell
1ee07de6a9 Merge pull request #282 from taskchampion/issue281
Fix clippy and only run it with the MSRV
2021-09-06 10:12:39 -04:00
Dustin J. Mitchell
91b2e1164f run clippy on the MSRV 2021-09-05 22:14:21 +00:00
Dustin J. Mitchell
72b4941485 fix new clippy warnings 2021-09-05 21:55:09 +00:00
Tomas Babej
0bc92d6115 meta: Adjust copyright headers 2021-09-05 12:02:07 -04:00
dbr
8ca7f70cef Store changelog snippets as .md 2021-09-05 17:02:48 +10:00
Tomas Babej
7d5c82e3e7 meta: Expand review build target to allow specifying PR reference for libshared
This allows us to conveniently review PRs for libshared using

    make LIBPR=62 review

and taskwarrior PRs that require libshared PRs as well using

    make PR=2189 LIBPR=63 review
2021-09-04 12:13:25 -04:00
Tomas Babej
2bd0d8ebd3 Task: Make sure tag and dependency attributes are not identified as orphan UDAs 2021-09-04 11:15:37 -04:00
Dustin J. Mitchell
309e99d49e Refactor task diffs to handle new attributes
This refactors task(Info)Differences to be methods of Task and to
correctly handle the `annotation_`, `tags_`, and `dep_` attributes.
2021-09-04 10:49:45 -04:00
dbr
a4b67d9f4e Remove unused error variant 2021-09-04 13:29:03 +10:00
dbr
f8ed4cecdd Reset operation auto-increment ID 2021-09-04 13:05:21 +10:00
dbr
5db04ee1af Tidying 2021-09-04 13:05:10 +10:00
dbr
89e9a42374 Refactor calculation of next working set ID
As per Dustin's code-review comment
2021-09-04 13:02:03 +10:00
dbr
1d62799437 Deduplicate StoredUuid wrapper 2021-09-04 12:53:37 +10:00
dbr/Ben
477bf9e328 Tweaks from code review
Co-authored-by: Dustin J. Mitchell <dustin@v.igoro.us>
2021-09-04 12:05:30 +09:30
Tomas Babej
7aee9567a3 Task: Fix extra whitespace typo 2021-09-03 21:15:07 -04:00
Tomas Babej
505bbf60bb colors: Do not provide any color for color.tagged by default
The simple fact that the task has a single or more tags of any value
does not convey a lot of information. As such, we should not color tasks
based on this property by default.

Users can still configure the color.tagged configuration variable if the
color rule makes sense in their system.
2021-08-31 18:28:54 -04:00
Tomas Babej
99f4929dc5 CmdExport: Throw an exception when the report is not found
The Context::getContext ().error only issues a log message, but allows
the execution of the program. In order to interrupt the execution, an
exception must be raised.
2021-08-31 18:27:45 -04:00
Dheepak Krishnamurthy
9ce366ddab task <filter> export [<report>] 2021-08-29 12:48:18 -04:00
Tomas Babej
ef176478e9 ci: Temporarily disable CentOS 7 tests
Suspend the CI runs on CentOS 7, which fail due to a cryptic git error
connected with checking out the libshared submodule version. Might be
just a bug that is fixed in more recent git versions, which would
explain why other CI runs work fine.
2021-08-29 12:31:07 -04:00
Tomas Babej
7a9c8eaf4a Merge pull request #2543 from sebu06/getFromContext
Allow overriding configuration variables per context
2021-08-29 00:00:10 -04:00
Tomas Babej
d91e30ee13 Merge branch '2.6.0' into getFromContext 2021-08-28 23:53:40 -04:00
Tomas Babej
8b30046d0a CLI2: Simplify code by using const quote string
The "\'" string is equal to "'", which is already stored in the quote
variable, so we might as well use that.

Thanks to Sebastian Uharek for the review suggestion.
2021-08-28 21:01:29 -04:00
Tomas Babej
2619435148 tests: Add test for TW-2189 2021-08-28 21:01:29 -04:00
Tomas Babej
ddf2f122a2 CLI2: Pre-reserve the size of the escaped string 2021-08-28 21:01:29 -04:00
Tomas Babej
c119b6d1de CLI2: Support escaped utf-8 characters 2021-08-28 21:01:29 -04:00
sebu06
0523ada9fc Fixed bug with double escaped single quotes
Before, the parser always escaped single quotes, independent of the quotes being escaped already. This is now fixed.
2021-08-28 21:01:29 -04:00
Dustin J. Mitchell
fd2add5dea Merge pull request #280 from gravityvi/feature/support-more-timestamps
added common business date acronyms
2021-08-28 16:14:57 -04:00
Ravi Sawlani
037807e3ac update image ref 2021-08-28 02:06:33 +05:30
Ravi Sawlani
3edf45d238 added ref pic 2021-08-28 01:47:50 +05:30
Ravi Sawlani
d001b5dbc9 update doc 2021-08-28 01:01:02 +05:30
Ravi Sawlani
f013233c88 document changes 2021-08-28 00:59:09 +05:30
dbr
e8a4d8029b Update contribute+release docs regarding changelog 2021-08-26 19:56:53 +10:00
Ravi Sawlani
f824d6123c added tests 2021-08-25 12:42:37 +05:30
Ravi Sawlani
c5e18aec31 lint issue 2021-08-24 22:41:45 +05:30
Ravi Sawlani
90b06df30f refactor 2021-08-24 22:38:27 +05:30
Ravi Sawlani
4a3b19bba6 added common business date acronyms 2021-08-24 22:26:30 +05:30
Tomas Babej
d270ef31a4 docs: Document report.X.context in the man page 2021-08-21 12:39:17 -04:00
Tomas Babej
d515326fba docs: Add Jake C. among AUTHORS 2021-08-21 10:09:59 -04:00
Tomas Babej
08dab41d48 docs: Document TW #2560 2021-08-21 10:09:45 -04:00
Tomas Babej
55f38bd48e docs: Document TW #2580 2021-08-21 10:01:26 -04:00
Tomas Babej
3471e1cdaa docs: Add bharatvaj among AUTHORS 2021-08-21 09:57:26 -04:00
Tomas Babej
4f14c529b0 tests: Add test for TW #2577
This is already fixed on 2.6.0 thanks to #2405, but it never hurts to
have more tests.

Closes #2577.
2021-08-21 09:53:46 -04:00
Bharatvaj H
05904549a0 Fixes #2580
Check annotations field before parsing

Add test case for annotations
2021-08-21 08:28:43 -04:00
Tomas Babej
48bf64a501 tests: Add test for report.<name>.context variable 2021-08-21 08:25:06 -04:00
Tomas Babej
8cad6487c7 CLI2: Call uses_context from child classes, if applicable 2021-08-21 08:25:06 -04:00
Tomas Babej
21f1086f3d Context: Add default values for report.<name>.context variables 2021-08-21 08:25:06 -04:00
Tomas Babej
5309132add CmdTimesheet: Add ability to specify if context should be used
This makes timesheet consistent with other report commands.
2021-08-21 08:25:06 -04:00
Tomas Babej
ab29ef8326 CmdCustom: Respect report.<name>.context configuration variable
This allows the user to configure if a specific report should (or should
not) adhere to the currently active context.

Closes #2560.
2021-08-21 08:25:06 -04:00
Tomas Babej
c195c59494 docs: Document TW #2581 2021-08-21 01:06:55 -04:00
Tomas Babej
1f76856579 tests: Add test for TW #2581 2021-08-21 01:06:55 -04:00
Tomas Babej
a464324617 CmdConfig: Properly preserve comments at the end of the line
Trailing comments previously caused crash of the application.

Closes #2581.
2021-08-21 01:06:55 -04:00
Tomas Babej
e2e184b8d4 CmdConfig: Be more strict when matching confiuration variables
Allow only leading spaces in front of configuration variables, as
opposed to arbitrary strings.

This prevents matching variables like "report.list.context=" when one is
seeking to modify "context=".
2021-08-21 01:06:55 -04:00
Tomas Babej
9768fb8bca docs: Sort ChangeLog entries 2021-08-17 20:52:12 -04:00
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
Tomas Babej
9e67f4f946 docs: Add information about waiting status to NEWS 2021-08-15 22:50:55 -04:00
Tomas Babej
54aef35b57 docs: Document #2550 2021-08-15 22:50:55 -04:00
Tomas Babej
d3fdb2baf9 changelog: Adjust formatting 2021-08-15 22:50:55 -04:00
Tomas Babej
7fb457d892 test: Add tests for TW #2550 2021-08-15 22:50:55 -04:00
Tomas Babej
89a6f2b629 CLI2: Apply UUID/ID context break only for readable context
The purpose of this break is to not apply the context on commands like

    task 4 info

so that we can still refer to tasks directly (using their ID/UUID
references) even if they fall outside of the currectly active context.

However, this break should not be applied for writeable context. This is
because the lexer can (a bit misleadingly) label parts of the desription
of the new task as number/identifier tokens

   task add Replace 3 parts of the puzzle abc123
                    ^                     ^
                    type::number          type:uuid

which would trigger the break unnecessarily.

Closes #2550.
2021-08-15 22:50:55 -04:00
Tomas Babej
5a86a40220 tests: Temporarily disable testing on Debian stable 2021-08-14 18:09:54 -04:00
Tomas Babej
b4fe317896 docs: Document TW #1913 2021-08-14 18:09:54 -04:00
Tomas Babej
b467049720 tests: Add tests for TW #1913 2021-08-14 18:09:54 -04:00
Dustin J. Mitchell
9a9ede7878 update built-in reports to use +WAITING, and doc 2021-08-08 14:27:25 -04:00
Tomas Babej
f8ca8cff81 Task: Make COMPLETED and DELETED virtual tags use getStatus()
This is now consistent with how PENDING is defined since recent commit
520d7e979b17c90e91d29325be8294905b338ee6.
2021-08-08 14:27:25 -04:00
Tomas Babej
91517151ad docs: Add removal comments 2021-08-08 14:27:25 -04:00
Tomas Babej
2c44f79277 tests: Make sed/wc calls in tw-2563 compatible with OS-X'
The sed does not support -i flag in the same way. The wc -l prints
whitespace in front, which needs to be stripped.
2021-08-08 14:27:25 -04:00
Tomas Babej
b6ce51e83d tests: Reverse expectations for wait attribute removal uponn done/delete
The wait attribute is no longer expected to be removed by the
done/delete commands.
2021-08-08 14:27:25 -04:00
Tomas Babej
861e8a6414 commands: Do not remove wait attribute upon task completion/deletion 2021-08-08 14:27:25 -04:00
Tomas Babej
ea008380db Task: Use getStatus () call to determine if task is pending 2021-08-08 14:27:25 -04:00
Tomas Babej
0c22823771 tests: Ensure virtual tags +PENDING and +WAITING are working as before TW-2563 2021-08-08 14:27:25 -04:00
Tomas Babej
582bee66e9 DOM: Implement special-cased status handling
This is required for status:pending filters not matching the tasks with
the virutal waiting tag.
2021-08-08 14:27:25 -04:00
Tomas Babej
7d81eadd5a tests: Add test for the migration path from 2.5.3 2021-08-08 14:27:25 -04:00
Tomas Babej
db324c41e3 TF2: Upgrade waiting tasks to pending, if applicable
This can be safely removed in one of the later releases (likely 3.1 or
later).
2021-08-08 14:27:25 -04:00
Dustin J. Mitchell
901283c79f [WIP] make 'waiting' status a 'virtual' status 2021-08-08 14:27:25 -04:00
sebu06
1d81e5e3ee Configuration override of settings for context
Every configuration parameter can be overwritten for the
current context by setting the parameter:

context.<name>.rc.<parameter> = <value>

in the config file. This allows for example to set a custom
report for each context.
2021-08-05 13:22:17 +02: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
Rosen Penev
17e6257e07 more emplace
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-08-05 02:03:59 -04:00
Rosen Penev
5c137f5c8f use emplace
Allows removing the constructor name as emplace forwards the arguments
directly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-08-05 02:03:59 -04:00
Tomas Babej
bf93c28919 docs: Document #2247 2021-07-31 14:23:22 -04:00
Tomas Babej
9b8cbace45 tests: Add test for TW #2247 2021-07-31 14:23:22 -04:00
Korrat
b33a99a748 Nag based on task state before modification
With this patch, taskwarrior uses the urgency of tasks before any
modifications are applied when deciding whether to show nag messages.

Previously, taskwarrior would apply modifications before deciding
whether to show nag messages, which could lead to spurious nag messages
when completing an active task.
2021-07-30 18:56:25 -04:00
Scott Mcdermott
607baa081d CmdInfo: fix missing spaces causing run-on in virtual tag list
without the fix, when listing out the tags we would see output like:

    Virtual tags  PENDING PROJECTREADY TAGGED UDA UNBLOCKED

there isn't a PROJECTREADY tag of course, but rather a missing space
2021-07-23 17:07:11 -04:00
sebu06
3d61966831 Added coloring of dates with scheduled tasks
Color can be changed using color.calendar.scheduled
2021-07-20 07:38:14 -04:00
sebu06
90bc7f4b23 Fixed rendering of countdown columns
Countdown columns were counting up days instead of down.
2021-07-19 20:07:30 -04:00
sebu06
69b34dcef3 using convenience function for paying attention to verbosity tokens 2021-07-18 15:09:52 -04:00
Sebastian Uharek
bd2ad97ccb Added output of number of tasks to be modified in batch mode 2021-07-18 15:09:52 -04:00
Scott Mcdermott
178c17d032 tests: Add tests for bug #2519 2021-07-18 09:45:00 -04:00
Scott Mcdermott
07e2c23a91 tests: Add test cases for 'by' date attribute modifier 2021-07-18 09:45:00 -04:00
Scott Mcdermott
4738f25d59 AUTHORS: Add Scott Mcdermott among authors
Scott added date attribute filter modifier 'by'
2021-07-18 09:45:00 -04:00
Scott Mcdermott
3948484cf5 docs: Document TW #2536 2021-07-18 09:45:00 -04:00
Scott Mcdermott
ac3572a4f5 CLI2: New filter attribute modifier "by", uses '<=' for comparison
This patch allows e.g. due.by:tomorrow that includes all of tomorrow,
because it uses less than or equal to, rather than just less than, like
'before' modifier does.  This allows matching the last second of the day
when filtering by "due.by:eod", and more generally allows date filters
with an inclusive end-interval specification.

Closes #2536
2021-07-18 09:45:00 -04:00
Vladyslav Tronko
af6f2b55ec Fix matching project name during urgency calculation 2021-07-17 16:21:59 -04:00
Tomas Babej
9c2affa0cb libshared: Bump to fix build on OS-X
See [0] and [1] for reference.

[0]: https://github.com/GothenburgBitFactory/libshared/pull/43
[1]: https://github.com/GothenburgBitFactory/libshared/pull/44
2021-07-12 23:02:01 -04:00
Tomas Babej
171a586a3f libshared: Bump version to enforce safer file writes
Part of a solution for #152.
2021-07-11 20:28:21 -04:00
Tomas Babej
bc9888fc5e Changelog: Document TW #2530 2021-07-10 07:24:57 -04:00
Tomas Babej
79c860053b tests: Add a regression test for #2530 2021-07-10 07:24:57 -04:00
Tomas Babej
85a6c90c2b AUTHORS: Add Pablo among authors
Pablo reported regression TW #2519.
2021-07-03 10:47:38 -04:00
Tomas Babej
dc5e925b43 docs: Document TW #2519 2021-07-03 10:47:38 -04:00
Tomas Babej
fb208cf494 tests: Fix incorrect test constant 2021-07-03 10:47:38 -04:00
Tomas Babej
11b85373ee tests: 'eoy' is the last second of the year 2021-07-03 10:47:38 -04:00
Tomas Babej
9d80570073 libshared: Bump version
This brings back behaviour of "end of" named dates to point to the last
second of the given date.

Closes #2519.
2021-07-03 10:47:38 -04:00
Tomas Babej
8b1cc98d05 Changelog: Document TW #2514 2021-06-26 14:38:18 -04:00
Tomas Babej
3cbbe7e701 docs: Add reportaman to authors 2021-06-26 14:38:18 -04:00
Tomas Babej
d76b4e0d86 tests: Add test for TW #2514 2021-06-26 14:38:18 -04:00
Tomas Babej
cc0ba46873 feedback: Consider start and end attributes when reporting task durations
Instead of relying on the modification times, we can use the values of
the start and end attributes, if available.

This allows us to perform historical changes that result in correct
duration intervals reported by task info.

Closes #2514
2021-06-26 14:38:18 -04:00
Tomas Babej
a519cf59f2 docs: Document TW #1804 2021-06-23 00:13:03 -04:00
Tomas Babej
88eca5f535 tests: Add test for TW #1804 2021-06-23 00:13:03 -04:00
Tomas Babej
8f7e41b392 parseJSON: Allow annotations with missing entry values
This relaxes previous stringent requirements on the input values during
import.

Closes #1804.
2021-06-23 00:13:03 -04:00
Tomas Babej
6d81acd355 parseJSON: Ensure NULL values from failed lookups do not persist
The operator[] insets values if the lookup fails, which creates null
pointers.

See: https://en.cppreference.com/w/cpp/container/map/operator_at
2021-06-23 00:13:03 -04:00
Tomas Babej
75422e80e3 reproduce: Add gdb into the image 2021-06-23 00:13:03 -04:00
dbr
cae03c6d7e Initial changelog
Also simple process/script to manage entries in PR's without merge conflicts:

1. Unreleased entries area stored as text files in ".changelogs/"
2. On release these are concatenated together and put in CHANGELOG.md

Script basically just add line of text to a "YYYY-MM-DD-branch.txt" formatted file
2021-06-20 22:13:57 +10:00
Tomas Babej
388a8917ba ChangeLog: Document #1938 2021-06-19 12:29:41 -04:00
Tomas Babej
3bf714e715 tests: Add test for TW #1938 2021-06-19 12:29:41 -04:00
Tomas Babej
c8560a8c96 test: Make all tests executable 2021-06-19 12:29:41 -04:00
Tomas Babej
a219bd30cf Task: Bump annotations with duplicate entry values
Since annotations are stored as a map, duplicate entry values lead to
data loss (i.e. annotations overriding each other on import). Perhaps
the choice of using a map internally should be reconsidered.

Closes #1938.
2021-06-19 12:29:41 -04:00
Tomas Babej
3fed9e9abb README: Add sponsoring section 2021-06-19 11:48:17 -04:00
Tomas Babej
dbcf2c4fe0 README: Add sponsors badge 2021-06-19 07:42:59 -04:00
Dustin J. Mitchell
c8533c86f5 Merge pull request #273 from taskchampion/issue269
Create a new doc if necessary in `ta config set`
2021-06-16 21:29:46 -04:00
Dustin J. Mitchell
cc5240eeec Create config directory if necessary 2021-06-16 13:45:00 +00:00
Dustin J. Mitchell
8e84bf0446 Create a new doc if necessary in ta config set 2021-06-16 13:44:42 +00:00
dbr
86deed3197 Remove unused Transaction from Txn
Also note about why StorageTxn isn't implemented
2021-06-16 11:22:17 +10:00
dbr/Ben
53cba2b31e Merge pull request #276 from taskchampion/ci-platforms
CI tests on Windows+macOS
2021-06-16 10:55:43 +10:00
Dustin J. Mitchell
a709f8a132 Merge remote-tracking branch 'upstream/main' into ci-platforms 2021-06-15 10:13:51 -04:00
Dustin J. Mitchell
9c35b31fbe Merge pull request #275 from taskchampion/issue274
Fix arg parsing on Windows
2021-06-15 10:13:00 -04:00
dbr
75f0447c7b Fix empty-dir problem with server also, and add tests 2021-06-15 22:09:54 +10:00
dbr
c3bc93f631 Clipplease 2021-06-15 22:02:32 +10:00
dbr
e72b990ea2 Avoid error if DB folder does not exist 2021-06-15 20:01:47 +10:00
dbr
2f533d2f3a Merge remote-tracking branch 'origin/main' into sqlstore
# Conflicts:
#	Cargo.lock
#	taskchampion/Cargo.toml
2021-06-15 19:49:36 +10:00
dbr
2a2aef2b25 Maybe this time 2021-06-15 12:25:04 +10:00
dbr
5769b20702 Important missing line to make CI actually run on matrix.os 2021-06-15 12:20:55 +10:00
dbr
41c5cc842d Typo 2021-06-15 12:16:09 +10:00
dbr
fbc97c871b Test on Windows+macOS 2021-06-15 12:13:15 +10:00
Dustin J. Mitchell
62c17ab411 Fix arg parsing on Windows 2021-06-14 10:57:44 -04:00
Tomas Babej
b77bbaa988 Changelog: Document TW #1788 2021-06-12 17:00:11 -04:00
Tomas Babej
2d5c506d5e README: Link more badges to sources of information 2021-06-12 15:49:53 -04:00
Tomas Babej
f4a31620f1 Changelog: Document TW #2502 2021-06-12 15:49:06 -04:00
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
Dustin J. Mitchell
4917d49331 Merge pull request #267 from taskchampion/issue179
Add confirmation prompts for modifications of lots of tasks
2021-06-10 21:16:28 -04:00
Dustin J. Mitchell
0de4fc1dee Add confirmation prompts for modifications of lots of tasks 2021-06-10 10:55:42 -04:00
Dustin J. Mitchell
31ff46bee6 pin mdbook version 2021-06-09 15:38:36 -04:00
Dustin J. Mitchell
ebdae1f44a Merge pull request #266 from taskchampion/issue80
Add support for synthetic tags
2021-06-09 15:28:10 -04:00
Dustin J. Mitchell
4ccd33bc0c Merge pull request #265 from taskchampion/issue264
Treat partially-matched arguments as an error
2021-06-09 15:27:10 -04:00
dbr/Ben
5c7d9330fd Merge pull request #263 from taskchampion/actionnames
Tidy up CI actions names
2021-06-09 11:37:59 +10:00
Dustin J. Mitchell
64b319bd20 Merge pull request #268 from taskchampion/use-built
Use `built` to determine version information
2021-06-08 11:10:18 -04:00
Dustin J. Mitchell
6c9ba48674 Use built to determine version information 2021-06-07 15:29:12 -04:00
Tomas Babej
496773b386 README: Update Discord badge with an invite link 2021-06-06 01:19:51 -04:00
dbr/Ben
0c43f82176 Merge pull request #262 from taskchampion/usagecmdname
Remove path from ta command in usage text
2021-06-06 15:00:35 +10: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
Dustin J. Mitchell
7956f6a34b implement FromStr instead of just from_str 2021-06-05 21:30:28 -04:00
Dustin J. Mitchell
cf3a053a0e Add PENDING, COMPLETED, DELETED synthetic tags
Note that DELETED is not tested since we don't yet support deleting
tasks.
2021-06-05 21:30:27 -04:00
Dustin J. Mitchell
0e60bcedaf hide the implementation of Tag 2021-06-05 21:20:36 -04:00
Dustin J. Mitchell
ff23c9148b refactor taskchampion::task into submodules 2021-06-05 21:20:10 -04:00
Dustin J. Mitchell
3d698f7939 add support for synthetic tags 2021-06-05 20:27:02 -04:00
Dustin J. Mitchell
2b3383842e Treat partially-matched arguments as an error 2021-06-05 09:15:24 -04:00
Dustin J. Mitchell
21c4f95fd9 fix clippy 2021-06-05 09:03:59 -04:00
dbr
4b0ceb31ac Tweak clippy job names 2021-06-05 13:50:59 +10:00
dbr
2a928e05b3 Check to see if the two clippy's can be merged into one 2021-06-05 12:24:57 +10:00
dbr
52d5500687 Make security more consistent 2021-06-05 12:22:09 +10:00
dbr
9cbe245fc1 First pass at tidying action names 2021-06-05 12:19:12 +10:00
dbr
4cc41a8731 Clippy the Pendant 2021-06-05 12:05:56 +10:00
dbr
8069d1badc Remove path from ta command in usage text
Previously would show things like "target/bin/ta [filter] list"
2021-06-05 11:54:30 +10:00
Dustin J. Mitchell
5f28eb3a74 produce Tag instances in the parser (#260)
and..
* fix usage-docs plugin
* upgrade mdbook
2021-06-04 09:26:12 -04:00
Dustin J. Mitchell
5a454a5dfd Merge pull request #250 from taskchampion/issue83
Support "wait"
2021-06-03 17:51:57 -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
Dustin J. Mitchell
ac6b020b6d minor updates from review 2021-06-01 09:24:40 -04:00
Dustin J. Mitchell
b18701c3cb remove many duration strings to simplify 2021-06-01 09:20:14 -04:00
Dustin J. Mitchell
0259a5e2e2 parse durations and timestamps 2021-05-31 08:49:37 -04:00
Dustin J. Mitchell
288f29d9d5 refactor argparse::args into submodules 2021-05-31 08:49:37 -04:00
Dustin J. Mitchell
1aae7e059d Add wait to reports, for display and sorting 2021-05-31 08:49:37 -04:00
Dustin J. Mitchell
cf078e1233 add 'wait' to the info output 2021-05-31 08:49:37 -04:00
Dustin J. Mitchell
e977fb294c Implement modifying tasks' "wait" value 2021-05-31 08:49:35 -04:00
Dustin J. Mitchell
d7d703f135 Merge pull request #256 from taskchampion/issue233
Summarize tasks nicely in console output
2021-05-31 08:47:17 -04:00
Dustin J. Mitchell
1bd97fd15d Merge pull request #254 from taskchampion/issue216
Define and test an MSRV
2021-05-31 08:39:01 -04:00
Dustin J. Mitchell
ae56313162 Merge pull request #257 from taskchampion/sec-md
Create SECURITY.md based on POLICY.md
2021-05-30 22:00:36 -04:00
Dustin J. Mitchell
e81a078506 Create SECURITY.md based on POLICY.md 2021-05-30 21:41:35 -04:00
Dustin J. Mitchell
9e3646bf84 Summarize tasks nicely in console output 2021-05-30 16:36:20 -04:00
Dustin J. Mitchell
d4f669ed6e Define and test an MSRV 2021-05-30 16:07:41 -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
dbr
7c665c9a77 Clippy things 2021-05-28 20:41:03 +10:00
dbr
0f6323e2de Unused 2021-05-28 20:35:57 +10:00
dbr
3c8c7d4888 Updated Cargo.lock 2021-05-28 12:19:49 +10:00
dbr
aa2340965e Merge branch 'main' into sqlstore 2021-05-28 12:17:09 +10:00
dbr
baa6b59e39 Remove KvStorage 2021-05-28 12:10:18 +10:00
dbr
98f2ab51cb Functional sqlite backend
..but not too efficient, creating a new connection pretty much per-query
2021-05-28 12:09:36 +10:00
dbr
f91f797244 Implement storage for local server 2021-05-28 11:38:46 +10:00
Dustin J. Mitchell
adfde8be15 Merge pull request #236 from taskchampion/issue140
Generate usage documentation
2021-05-26 11:03:49 -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
dbr/Ben
1d14737e30 Merge pull request #247 from taskchampion/defaultrun
Make 'cargo run' run ta binary
2021-05-25 15:21:21 +10:00
Dustin J. Mitchell
09558f9329 Substitute usage information into the documentation
This will simplify keeping documentation in sync with the code.
2021-05-24 08:51:05 -04:00
dbr
b944e27880 Make 'cargo run' run ta binary 2021-05-24 19:44:32 +10:00
Dustin J. Mitchell
e9dc6e987d Merge pull request #245 from taskchampion/issue138
add 'ta config path'
2021-05-23 09:12:44 -04:00
Dustin J. Mitchell
45db886f2a add 'ta config path' 2021-05-23 09:12:04 -04:00
Dustin J. Mitchell
7f046a8e27 Merge pull request #225 from taskchampion/issue217
Support multiple exit codes
2021-05-21 10:26:24 -04:00
Dustin J. Mitchell
ae5511623c Merge pull request #244 from taskchampion/codeowners
Add CODEOWNERS pointing to @dbr and me
2021-05-21 10:26:16 -04:00
Dustin J. Mitchell
9d78654573 Merge pull request #221 from taskchampion/issue177
Require a filter be specified for modifications
2021-05-21 10:25:45 -04:00
dbr/Ben
3e4437ab14 Merge pull request #242 from dbr/betterversion
Include git HEAD rev in version output
2021-05-21 23:11:02 +10:00
Dustin J. Mitchell
8ba72d19df Add CODEOWNERS pointing to @dbr and me 2021-05-21 09:07:35 -04:00
dbr
00089639fe Include git HEAD rev in version output
Closes #241
2021-05-21 16:31:25 +10:00
dbr
991b29da6c WIP 2021-05-21 15:52:07 +10:00
Dustin J. Mitchell
bb7130f960 Support multiple exit codes
..with more specific error enums.
2021-05-18 18:57:55 +00:00
Dustin J. Mitchell
0852bfd195 Require a filter be specified for modifications
This filter can either be `*` or some "real" filter.  But an empty set
of arguments no longer automatically matches all tasks.
2021-05-18 18:57:46 +00:00
Dustin J. Mitchell
2345a57940 fix clippy warning 2021-05-18 18:57:29 +00:00
Dustin J. Mitchell
023e638335 Merge pull request #231 from taskchampion/working_set_rebuild_bug
Fix a working set rebuild bug
2021-05-17 21:36:56 -04:00
Dustin J. Mitchell
fd4b35f3fe Merge pull request #228 from taskchampion/issue164-edit
Support editing config file from the command line
2021-05-17 21:35:54 -04:00
Dustin J. Mitchell
47b3148a38 Merge pull request #239 from taskchampion/fix-new-clippy
fix new clippy warnings
2021-05-17 21:34:03 -04:00
Dustin J. Mitchell
3bb198425c Use ta config set in documentation 2021-05-16 09:53:41 -04:00
Dustin J. Mitchell
fd62c8327b Add a ta config set subcommand
This uses `toml_edit` to edit the config file in-place.  For the moment,
it only supports top-level arguments, but can be extended to do other
things later.
2021-05-16 09:53:41 -04:00
Dustin J. Mitchell
a778423cbc store the filename of the loaded config file 2021-05-16 09:53:41 -04:00
Dustin J. Mitchell
09efb33073 move Settings to its own module
..and add some tests for it
2021-05-16 09:53:40 -04:00
Dustin J. Mitchell
73b6648d06 assert that working-set element 0 is None 2021-05-16 09:42:18 -04:00
Dustin J. Mitchell
5f6918fbc7 Skip element 0 when rebuilding the working set
The existing code was correct, assuming that element 0 is always None,
but this is clearer.
2021-05-16 09:42:17 -04:00
Dustin J. Mitchell
fa7623ebe7 Handle setting a working set item to None twice
Without this, setting an item to None that did not already exist failed,
because the kv delete operation did not find the referenced key.

This also checks that the index is not 0, which is not allowed as the
working set is 1-indexed.
2021-05-16 09:40:35 -04:00
Dustin J. Mitchell
3a2450cb23 provide context for errors to help debugging 2021-05-16 09:40:35 -04:00
Dustin J. Mitchell
fa9e6ddcd5 Don't unwrap in production code 2021-05-16 09:40:35 -04:00
Dustin J. Mitchell
cbe11a1d3d fix new clippy warnings 2021-05-16 09:38:40 -04:00
Dustin J. Mitchell
cea5ae87c7 Merge pull request #237 from taskchampion/issue151
[breaking] Include /v1/ in the sync-server paths
2021-05-16 09:18:19 -04:00
Dustin J. Mitchell
373cef9d33 [breaking] Include /v1/ in the sync-server paths
This is an incompatible change to the sync-server protocol.
2021-05-14 12:51:24 -04:00
begasus
4fff27f4bc Fix reference for errno.h on Haiku 2021-05-14 00:04:48 -04:00
Dustin J. Mitchell
febe6d8b68 sort the 'next' repot by id 2021-05-11 14:58:57 -04:00
Dustin J. Mitchell
ac53383aea remove debugging prints 2021-05-09 21:30:58 -04:00
Dustin J. Mitchell
3f1453b70b Merge pull request #230 from taskchampion/issue100
Document environment variables all in one place
2021-05-08 09:56:57 -04:00
dbr
027225d2a3 More WIP.
Workaround for !Send SQLite causing problems as each get_txn creates a new transaction
2021-05-08 22:09:48 +10:00
Dustin J. Mitchell
7aea34c7a3 Document environment variables all in one place 2021-05-07 11:16:10 -04:00
dbr
7ff54ed0de WIP. Open new connection for each transaction as workaround 2021-05-07 22:24:55 +10:00
Dustin J. Mitchell
1d0ed132df remove spurious dependency from mdbook-deploy workflow
Fixes #227.
2021-05-05 16:55:21 +00:00
Dustin J. Mitchell
f30264b77f Merge pull request #223 from taskchampion/issue222
rename CLI to `ta`
2021-05-04 17:19:42 -04:00
Dustin J. Mitchell
0f0f2b0e75 rename CLI to ta 2021-05-04 17:09:47 -04:00
Dustin J. Mitchell
73ad035bed Merge pull request #220 from taskchampion/issue120
Fix doc links
2021-05-03 09:41:11 -04:00
Dustin J. Mitchell
5d8a1f50d4 Merge pull request #224 from taskchampion/issue164
Switch to TOML for configuration
2021-05-03 09:36:37 -04:00
Dustin J. Mitchell
94d1217d81 Switch to TOML for configuration 2021-05-02 17:04:26 -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
Dustin J. Mitchell
c696bf35d4 Fix doc links
`installation.md` was not being included due to using `-` instead of `*`
in `SUMMARY.md`.  The usage link was just incorrect.
2021-05-01 12:25:19 -04:00
Dustin J. Mitchell
b4a8b150a8 Merge pull request #218 from taskchampion/graphics
Add CGI assets
2021-05-01 10:43:03 -04:00
dbr
60ff0a8d11 Very WIP (i.e broken) start of SQLite storage in server 2021-04-29 16:00:22 +10:00
dbr
ff894f6ff6 Comments and rustfmt 2021-04-29 11:01:46 +10:00
dbr
a3c9a76f1d Explicit check that rusqlite::Transaction isn't auto-commited on drop 2021-04-29 10:58:34 +10:00
dbr
23531d73c4 Remove debug junk 2021-04-29 10:57:43 +10:00
dbr
e479c25c34 Tidier 2021-04-29 10:41:17 +10:00
dbr
cefd6fd6cc Serialize Uuid as string for nicer debugging
Also implement ToSql/FromSql for Operation/TaskMap so errors are handled properly
2021-04-29 10:39:29 +10:00
dbr
d5724c4dc2 Unused 2021-04-29 10:37:04 +10:00
Dustin J. Mitchell
24011b5e8d Merge pull request #212 from savchenko/main
Compatibility, deprecation and security policies
2021-04-28 13:55:27 -04:00
dbr
e06e33bee4 Remove kv storage backend
Now uses sqlite by default
2021-04-29 00:20:13 +10:00
dbr
cf70ef49ed Minor tidying 2021-04-29 00:10:53 +10:00
dbr
5ae828b1eb Implement working set methods 2021-04-29 00:09:54 +10:00
Andrew Savchenko
aad0496620 Add CGI assets
- Closes https://github.com/taskchampion/taskchampion/issues/207
2021-04-28 14:02:08 +09:30
Andrew Savchenko
8f0f8bf31b Add CGI assets
- Closes https://github.com/taskchampion/taskchampion/issues/207
2021-04-28 13:56:29 +09:30
Andrew Savchenko
db9d5483e8 Update Policy
- Closes https://github.com/taskchampion/taskchampion/pull/212
2021-04-28 13:43:06 +09:30
Andrew Savchenko
990c540563 Update Policy
- https://github.com/taskchampion/taskchampion/pull/212#discussion_r621457029
2021-04-28 13:37:11 +09:30
Andrew Savchenko
62f3dab049 Update Policy
- https://github.com/taskchampion/taskchampion/pull/212#discussion_r621458637
2021-04-28 12:20:34 +09:30
dbr
2b7e121e7e Implement operations storage for SQLite 2021-04-28 12:35:50 +10:00
dbr
1959f0c63a Implement all_task_uuids and base version methods 2021-04-27 19:35:45 +10:00
Andrew Savchenko
215fda0539 [ABI] Add notice about backend upgrade 2021-04-27 16:00:22 +09:30
Andrew Savchenko
c81d61dfa6 Removed SECURITY.md in favour of POLICY.md 2021-04-27 15:41:29 +09:30
Andrew Savchenko
8aa6b50969 Add POLICY.md
- https://github.com/taskchampion/taskchampion/issues/210
- https://github.com/taskchampion/taskchampion/milestone/1
2021-04-27 15:40:11 +09:30
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
dbr
305e6e2ede Appease clippy 2021-04-22 14:16:07 +10:00
dbr
11d0172bf8 fmt 2021-04-22 14:15:50 +10:00
Tomas Babej
b1e70fd780 NEWS: Update tested confiurations 2021-04-22 00:02:37 -04:00
Tomas Babej
6aa46e7d1a ci: Test on Ubuntu 21.04 2021-04-22 00:02:37 -04:00
Tomas Babej
70815edb8a ci: Test on Fedora 34 2021-04-22 00:02:37 -04:00
Tomas Babej
44220287c4 CmdCalendar: Only display relevant parts of the legend 2021-04-21 23:44:36 -04:00
dbr
a9b93e7c20 Use names for row.get(...) 2021-04-22 13:33:54 +10:00
dbr
4bd6c40daf Use uuid feature of rusqlite 2021-04-22 13:31:15 +10:00
Tomas Babej
d4c6b0d2d9 AUTHORS: Add Daniel Mowitz 2021-04-21 23:13:23 -04:00
Tomas Babej
02a60b096c docs: Document TW #1911 2021-04-21 23:12:38 -04:00
Tomas Babej
282f3d344a CmdCalendar: Adjust styling 2021-04-21 23:09:08 -04:00
Tomas Babej
14fd8ea673 man: Adjust wording 2021-04-21 22:58:47 -04:00
dbr
0f3729d4c8 sqlite: Get all rows
Needs some improvement to error handling
2021-04-22 12:54:34 +10:00
DanielMowitz
7a07e09733 Added documentation for multi-day holidays. 2021-04-21 22:23:00 -04:00
DanielMowitz
277373ba89 Added tests for single and multiday holidays. 2021-04-21 22:23:00 -04:00
DanielMowitz
a16f3addc7 Made CmdCalendar.cpp even less redundant by only calling
config.get ("dateformat.holiday") once for every method.
2021-04-21 22:23:00 -04:00
DanielMowitz
23244e61a5 Renamed variables to be more consistent and improved readability. 2021-04-21 22:23:00 -04:00
DanielMowitz
f703bd5a74 Made CmdCalendar.cpp less redundant by only calling
Context::getContext().config once per method.
2021-04-21 22:23:00 -04:00
DanielMowitz
45c67fef6e Update CmdCalendar.cpp
Converted some tabs to spaces and added braces to a for loop.
2021-04-21 22:23:00 -04:00
DanielMowitz
374b97bb66 Implemented multi-day holidays. 2021-04-21 22:23:00 -04:00
DanielMowitz
dc5ebfa612 Made the code for colorizing the calendar a little more dry. 2021-04-21 22:23:00 -04:00
dbr
e40724b381 Start of SQLite backed storage #131 2021-04-22 11:48:05 +10:00
Dustin J. Mitchell
6a0bddab38 Merge pull request #205 from taskchampion/issue201
Replace tempfile with tempdir
2021-04-17 09:09:56 -04:00
Dustin J. Mitchell
f6550233e6 Merge pull request #204 from taskchampion/audit-fix-2021-04-16
run 'git audit fix'
2021-04-17 09:09:47 -04:00
Dustin J. Mitchell
c8d6619d71 Replace tempfile with tempdir 2021-04-16 19:29:27 -04:00
Dustin J. Mitchell
27c20074e3 run 'git audit fix' 2021-04-16 19:22:08 -04:00
Dustin J. Mitchell
9c54985fac Merge pull request #203 from taskchampion/issue198
Use `dirs-next` instead of `dirs`
2021-04-16 13:26:45 -04:00
Dustin J. Mitchell
6c0f7a736f Use dirs-next instead of dirs 2021-04-16 09:21:59 -04:00
Dustin J. Mitchell
10536f024d use audit action from the README 2021-04-15 16:45:22 -04:00
Tomas Babej
affcd82466 ci: Re-enable testing on Arch Linux
This reverts commit 17ab0dfcf4.

The underlying issue with the archlinux was fixed, see references in the
above commit for more details.
2021-04-14 03:10:21 -04:00
Tomas Babej
e70c2b7c7d docs: Add reference about TW #2451 to ChangeLog 2021-04-14 02:44:33 -04:00
Tomas Babej
d20631beb0 tests: Add regression test for TW #2451 2021-04-14 02:44:33 -04:00
Tomas Babej
bd0d907335 CLI2: Apply desugaring of plain filter args to date args
This ensures that commands like `task marc` perform description
substring search on `marc`.

Closes #2451.
2021-04-14 02:44:33 -04:00
Tomas Babej
475a16b3d4 CLI2: Fix docstring for desugarFilterPlainArgs
Desugaring is applied also for tokens of Lexer::type::identifier, make
sure the docstring correctly documents that.
2021-04-14 02:44:33 -04:00
Dustin J. Mitchell
8d15ce896f try cargo audit at main 2021-04-12 11:16:24 -04:00
Paolo Capriotti
856b589bac Parse 'context' verbose token correctly 2021-04-11 20:32:42 -04:00
Dustin J. Mitchell
1b8672ffc9 fix audit cron 2021-04-11 19:55:35 +00:00
Max Rossmannek
6546c050c5 Un-wait a waiting task when deleted 2021-04-06 23:34:32 -04:00
Max Rossmannek
33dcea68f5 Un-wait a waiting task when done
Implements #2322
2021-04-06 23:34:32 -04:00
Tomas Babej
5c92dea674 ChangeLog: Document TW #2442
Closes #2442.
2021-04-04 22:14:15 -04:00
Tomas Babej
506cb4fc8a tests: Add regression test for TW #2429 2021-04-04 22:14:14 -04:00
DanielMowitz
fb6c42f375 Change nagging behavior
Don't nag if the specified set of tasks consists only of highest urgency tasks.
2021-04-04 22:06:07 -04:00
Tomas Babej
4dea5dd944 README: Highlight our new discussion forum 2021-04-03 20:44:05 -04:00
Tomas Babej
e86f2591ba docs: Update README 2021-04-03 20:37:33 -04:00
Dustin J. Mitchell
6bfa77e29d Merge pull request #195 from taskchampion/issue174-actions
add taskchampion-tests action
2021-04-03 20:17:57 -04:00
Dustin J. Mitchell
d20884281b add security audit 2021-04-03 20:16:12 -04:00
Dustin J. Mitchell
e4e40b3e5e Add actions
These will be more easily maintained by others than a Taskcluster
configuration.
2021-04-03 20:11:08 -04:00
Dustin J. Mitchell
c767718ac9 Merge pull request #194 from taskchampion/issue174
Update links ot point to new org
2021-04-03 19:46:21 -04:00
Dustin J. Mitchell
c2349cf708 Update links to point to new org 2021-04-03 19:44:31 -04:00
Tomas Babej
e8c38b75e7 ChangeLog: Document TW #2428 2021-04-03 17:57:08 -04:00
Tomas Babej
693f2f74cd CmdEdit: Respect bulk option
Since 'task edit' is a data-modification operation (that is particularly
hard to cancel mid-way), it should also respect the 'bulk' option like
all the other modification operations (mod, start...).

Closes #2428.
2021-04-03 17:57:08 -04:00
Tomas Babej
d95b64c5a0 docs: Add info about writeable contexts to NEWS 2021-04-03 15:01:39 -04:00
Tomas Babej
c80869875d docs: Update changelog 2021-04-03 15:01:39 -04:00
Tomas Babej
8bf2aec0ae docs: Promote myself 2021-04-03 15:01:39 -04:00
Tomas Babej
4a726175f5 docs: Expand the manpage to explain writeable context 2021-04-03 15:01:39 -04:00
Tomas Babej
fe6a6ca93b compatibility: Explicitly specify template type to support older compilers
This makes curret development branch buildable on Ubuntu 18 / Centos 7 /
SUSE 15.
2021-04-03 15:01:39 -04:00
Tomas Babej
80490b625e tests: Fix context-related tests 2021-04-03 15:01:39 -04:00
Tomas Babej
c701137313 CmdContext: Report context as not found if nothing was deleted 2021-04-03 15:01:39 -04:00
Tomas Babej
1bba59e972 CLI2: Move the recursion block to the right place in addContext 2021-04-03 15:01:39 -04:00
Tomas Babej
87c05c4c6d tests: Context definition now requires answering two questions 2021-04-03 15:01:39 -04:00
Tomas Babej
201b1c37b4 CmdContext: Allow user to define read-only / write-only contexts 2021-04-03 15:01:39 -04:00
Tomas Babej
4de23a3e20 CmdContext: Remove all types of context when deleting 2021-04-03 15:01:39 -04:00
Tomas Babej
062878022b CmdContext: Expand information provided in 'context show' 2021-04-03 15:01:39 -04:00
Tomas Babej
a558ffcd42 CmdContext: List info about both read and write context 2021-04-03 15:01:39 -04:00
Tomas Babej
351c3b025c getTaskContext: Allow getting context info for a non-active context 2021-04-03 15:01:39 -04:00
Tomas Babej
c0ded37f91 CmdContext: Discard .read/.write suffix when discovering contexts 2021-04-03 15:01:39 -04:00
Tomas Babej
41823c7939 CmdContext: Expand description 2021-04-03 15:01:39 -04:00
Tomas Babej
9a380887ee CLI2: Simplify context determination
Simlifies by offloading portion of the logic into the singleton Context
class (which has nothing to do with the task context per se, just a
implementation singleton).
2021-04-03 15:01:39 -04:00
Tomas Babej
985aab0541 CmdContext: Define both read and write context 2021-04-03 15:01:39 -04:00
Tomas Babej
26fb4521fe tests: Update commands.t to reflect new signature of CmdAdd
The 'task add' command now accepts context.
2021-04-03 15:01:39 -04:00
Tomas Babej
5716f5abb7 CLI2: Generalize method to add context to support writeable context 2021-04-03 15:01:39 -04:00
Tomas Babej
5c3cf0f438 CLI2: Implement inserting modification arguments
Method to inject mods into the command, to be used by writeable context.
2021-04-03 15:01:39 -04:00
Tomas Babej
9128798fee CLI2: Generalize 'add' to insert arguments at arbitrary position 2021-04-03 15:01:39 -04:00
Tomas Babej
9bc726ba61 commands: Modify CmdAdd and CmdLog to use context
This only sets the command properties.
2021-04-03 15:01:39 -04:00
Tomas Babej
a2c3d224d3 CLI2: Generalize _context_filter_added latch name 2021-04-03 15:01:39 -04:00
Dustin J. Mitchell
ed576a8c6c Merge pull request #193 from djmitche/dependabot/cargo/serde_json-1.0.64
Bump serde_json from 1.0.59 to 1.0.64
2021-03-31 18:29:39 -04:00
Dustin J. Mitchell
51f9a1093e Merge pull request #192 from djmitche/dependabot/cargo/textwrap-0.13.4
Bump textwrap from 0.12.1 to 0.13.4
2021-03-31 18:29:32 -04:00
Dustin J. Mitchell
ad878b7b29 Merge pull request #191 from djmitche/dependabot/cargo/actix-web-3.3.2
Bump actix-web from 3.3.0 to 3.3.2
2021-03-31 18:29:19 -04:00
Dustin J. Mitchell
b9ad3ea9a0 Merge pull request #190 from djmitche/dependabot/cargo/anyhow-1.0.40
Bump anyhow from 1.0.39 to 1.0.40
2021-03-31 18:28:39 -04:00
dependabot[bot]
35ae3420b8 Bump serde_json from 1.0.59 to 1.0.64
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.59 to 1.0.64.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.59...v1.0.64)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-31 07:30:38 +00:00
dependabot[bot]
e69efe79d0 Bump textwrap from 0.12.1 to 0.13.4
Bumps [textwrap](https://github.com/mgeisler/textwrap) from 0.12.1 to 0.13.4.
- [Release notes](https://github.com/mgeisler/textwrap/releases)
- [Changelog](https://github.com/mgeisler/textwrap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mgeisler/textwrap/compare/0.12.1...0.13.4)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-31 07:30:25 +00:00
dependabot[bot]
5b28993be0 Bump actix-web from 3.3.0 to 3.3.2
Bumps [actix-web](https://github.com/actix/actix-web) from 3.3.0 to 3.3.2.
- [Release notes](https://github.com/actix/actix-web/releases)
- [Changelog](https://github.com/actix/actix-web/blob/master/CHANGES.md)
- [Commits](https://github.com/actix/actix-web/compare/web-v3.3.0...web-v3.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-31 07:30:16 +00:00
dependabot[bot]
a21c85a872 Bump anyhow from 1.0.39 to 1.0.40
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.39 to 1.0.40.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.39...1.0.40)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-31 07:30:05 +00:00
dependabot[bot]
0e982a52d7 Merge pull request #188 from djmitche/dependabot/cargo/config-0.11.0 2021-03-30 12:15:32 +00:00
dependabot[bot]
82fc8dcd97 Bump config from 0.10.1 to 0.11.0
Bumps [config](https://github.com/mehcode/config-rs) from 0.10.1 to 0.11.0.
- [Release notes](https://github.com/mehcode/config-rs/releases)
- [Changelog](https://github.com/mehcode/config-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mehcode/config-rs/commits/0.11.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 12:09:05 +00:00
Dustin J. Mitchell
2f3ee17e0b Merge pull request #189 from djmitche/dependabot/cargo/nom-6.1.2
Bump nom from 6.0.1 to 6.1.2
2021-03-30 08:08:16 -04:00
Dustin J. Mitchell
b003332ba0 Merge pull request #187 from djmitche/dependabot/cargo/lmdb-rkv-0.14.0
Bump lmdb-rkv from 0.12.3 to 0.14.0
2021-03-30 08:07:20 -04:00
Dustin J. Mitchell
f2b79026b6 Merge pull request #186 from djmitche/dependabot/cargo/thiserror-1.0.24
Bump thiserror from 1.0.22 to 1.0.24
2021-03-30 08:06:59 -04:00
Dustin J. Mitchell
ef995d7cac Merge pull request #185 from djmitche/dependabot/cargo/actix-rt-2.2.0
Bump actix-rt from 1.1.1 to 2.2.0
2021-03-30 08:06:37 -04:00
dependabot[bot]
cc7f522e2a Bump nom from 6.0.1 to 6.1.2
Bumps [nom](https://github.com/Geal/nom) from 6.0.1 to 6.1.2.
- [Release notes](https://github.com/Geal/nom/releases)
- [Changelog](https://github.com/Geal/nom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Geal/nom/compare/6.0.1...6.1.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 07:43:37 +00:00
dependabot[bot]
af39be175c Bump lmdb-rkv from 0.12.3 to 0.14.0
Bumps [lmdb-rkv](https://github.com/mozilla/lmdb-rs) from 0.12.3 to 0.14.0.
- [Release notes](https://github.com/mozilla/lmdb-rs/releases)
- [Commits](https://github.com/mozilla/lmdb-rs/compare/0.12.3...0.14.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 07:43:23 +00:00
dependabot[bot]
c89b646fdc Bump thiserror from 1.0.22 to 1.0.24
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.22 to 1.0.24.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.22...1.0.24)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 07:43:17 +00:00
dependabot[bot]
695785116d Bump actix-rt from 1.1.1 to 2.2.0
Bumps [actix-rt](https://github.com/actix/actix-net) from 1.1.1 to 2.2.0.
- [Release notes](https://github.com/actix/actix-net/releases)
- [Commits](https://github.com/actix/actix-net/compare/rt-1.1.1...rt-v2.2.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-30 07:43:11 +00:00
dependabot[bot]
74041221e7 Merge pull request #184 from djmitche/dependabot/cargo/assert_cmd-1.0.3 2021-03-29 23:51:58 +00:00
Dustin J. Mitchell
3fc07c9e83 Merge pull request #170 from djmitche/dependabot/cargo/ureq-2.1.0
Bump ureq from 1.5.2 to 2.1.0
2021-03-29 19:51:16 -04:00
dependabot[bot]
def67c81b6 Bump assert_cmd from 1.0.2 to 1.0.3
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 1.0.2 to 1.0.3.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases)
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v1.0.2...v1.0.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 23:45:28 +00:00
dependabot[bot]
55f8d1c7c0 Merge pull request #182 from djmitche/dependabot/cargo/uuid-0.8.2 2021-03-29 23:40:59 +00:00
dependabot[bot]
1bc881b1a5 Merge pull request #183 from djmitche/dependabot/cargo/predicates-1.0.7 2021-03-29 23:39:56 +00:00
dependabot[bot]
357bbcad01 Bump uuid from 0.8.1 to 0.8.2
Bumps [uuid](https://github.com/uuid-rs/uuid) from 0.8.1 to 0.8.2.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/0.8.1...0.8.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 23:34:12 +00:00
dependabot[bot]
ff58711b2d Bump predicates from 1.0.5 to 1.0.7
Bumps [predicates](https://github.com/assert-rs/predicates-rs) from 1.0.5 to 1.0.7.
- [Release notes](https://github.com/assert-rs/predicates-rs/releases)
- [Changelog](https://github.com/assert-rs/predicates-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/predicates-rs/compare/v1.0.5...v1.0.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 23:34:08 +00:00
Dustin J. Mitchell
98fdb15b75 Merge pull request #176 from djmitche/ignore-clippy-identifier-caps
fix some clippy stuff
2021-03-29 19:33:02 -04:00
Dustin J. Mitchell
bbceed41f9 fix needless_question_mark 2021-03-29 19:25:12 -04:00
Dustin J. Mitchell
dba50ae60b Merge pull request #181 from djmitche/dependabot/cargo/proptest-1.0.0
Bump proptest from 0.9.6 to 1.0.0
2021-03-29 09:28:03 -04:00
Dustin J. Mitchell
fdeadfd981 Fix upper_case_acronyms lint 2021-03-29 13:26:02 +00:00
dependabot[bot]
959c4f47f7 Bump proptest from 0.9.6 to 1.0.0
Bumps [proptest](https://github.com/altsysrq/proptest) from 0.9.6 to 1.0.0.
- [Release notes](https://github.com/altsysrq/proptest/releases)
- [Changelog](https://github.com/AltSysrq/proptest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/altsysrq/proptest/compare/0.9.6...1.0.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-29 09:49:46 +00:00
Dustin J. Mitchell
0f02b38fd8 Modify ureq usage for new version 2021-03-28 17:48:31 -04:00
dependabot[bot]
1de0816661 Bump ureq from 1.5.2 to 2.1.0
Bumps [ureq](https://github.com/algesten/ureq) from 1.5.2 to 2.1.0.
- [Release notes](https://github.com/algesten/ureq/releases)
- [Changelog](https://github.com/algesten/ureq/blob/main/CHANGELOG.md)
- [Commits](https://github.com/algesten/ureq/commits/2.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-28 17:48:31 -04:00
Dustin J. Mitchell
c42cc3bdcb fix new clippy warnings 2021-03-27 23:38:51 -04:00
Dustin J. Mitchell
7ed2bf4441 Merge pull request #172 from djmitche/dependabot/cargo/env_logger-0.8.3
Bump env_logger from 0.8.2 to 0.8.3
2021-03-27 19:12:57 -04:00
dependabot[bot]
718f16154c Bump env_logger from 0.8.2 to 0.8.3
Bumps [env_logger](https://github.com/env-logger-rs/env_logger) from 0.8.2 to 0.8.3.
- [Release notes](https://github.com/env-logger-rs/env_logger/releases)
- [Changelog](https://github.com/env-logger-rs/env_logger/blob/master/CHANGELOG.md)
- [Commits](https://github.com/env-logger-rs/env_logger/compare/v0.8.2...v0.8.3)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-27 23:05:56 +00:00
Dustin J. Mitchell
e8566df3a7 Merge pull request #169 from djmitche/dependabot/cargo/log-0.4.14
Bump log from 0.4.11 to 0.4.14
2021-03-27 19:03:56 -04:00
dependabot[bot]
e0dbeb2763 Bump log from 0.4.11 to 0.4.14
Bumps [log](https://github.com/rust-lang/log) from 0.4.11 to 0.4.14.
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.11...0.4.14)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-27 22:50:56 +00:00
Dustin J. Mitchell
ded325c1be Merge pull request #168 from djmitche/dependabot/cargo/serde-1.0.125
Bump serde from 1.0.117 to 1.0.125
2021-03-27 18:48:54 -04:00
Dustin J. Mitchell
0724c4b02d Merge pull request #156 from dbr/remove-failure
Replace 'failure' with anyhow + thiserror
2021-03-27 18:48:35 -04:00
Dustin J. Mitchell
bb821feaa9 use clippy stable, not preview 2021-03-27 18:47:49 -04:00
dependabot[bot]
ae46f82d94 Bump serde from 1.0.117 to 1.0.125
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.117 to 1.0.125.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.117...v1.0.125)

Signed-off-by: dependabot[bot] <support@github.com>
2021-03-27 22:04:30 +00:00
Dustin J. Mitchell
0f2002663d Merge pull request #166 from djmitche/issue165
use the correct 'package-ecosystem' config
2021-03-27 18:03:36 -04:00
Dustin J. Mitchell
5745e9b396 use the correct 'package-ecosystem' config 2021-03-26 09:00:17 -04:00
dbr
5ee67d65e2 Remove whitespace in comment to avoid cargo fmt doing weird things 2021-03-25 18:29:53 +11:00
dbr
c04ece0e90 Fix one actual clippy lint: remove an unnecessary clone 2021-03-25 18:21:18 +11:00
dbr
b5b9e63a4f Disable "unnecessary_wraps" linter as it is almost entirely false-positives
Was added in 1.50 and will be reduced in severity in next release as per https://github.com/rust-lang/rust-clippy/pull/6765
2021-03-25 18:20:47 +11:00
dbr
6d77b9a319 cargo fmt 2021-03-25 17:10:11 +11:00
dbr
0e7a4c2c33 Fix minor typo in doc comment 2021-03-25 16:34:53 +11:00
dbr
4d9755c43b Replace 'failure' crate with anyhow+thiserror
Closes #148
2021-03-25 16:33:35 +11:00
Jonas DOREL
510786ff91 Hooks readme : mention task diagnotics debug 2021-03-18 21:59:42 -04:00
Tomas Babej
60bce31df1 tests: Fix TW URL in the version.t test 2021-03-17 22:05:27 -04:00
Tomas Babej
339397f836 meta: Fish shell domain is fishshell.com 2021-03-12 07:58:05 -05:00
Tomas Babej
0d1542ccd7 meta: Update various links to https 2021-03-12 07:58:04 -05:00
Jonas DOREL
b4a36d942e Document verbose key: context 2021-03-08 19:35:02 -05:00
Tomas Babej
e221ea6571 meta: Bump libshared version 2021-03-07 12:50:04 -05:00
Tomas Babej
17ab0dfcf4 ci: Temporarily disable Archlinux testing
The build of the docker image currently fails due to a bug unrelated to
TW [1]. This will be reverted once the issue is fixed.

[1] https://bugs.archlinux.org/task/69563
2021-03-02 20:40:15 -05:00
Tomas Babej
d215bc52b1 tests: Update styling 2021-03-02 20:39:32 -05:00
Rosen Penev
04454a995f clang-tidy: use raw string literals
Found with modernize-raw-string-literals

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2021-03-02 20:36:02 -05:00
Tomas Babej
cdbab698e3 tests: Add tests for TW #2124 2021-01-31 05:04:43 -05:00
Tomas Babej
5317f7c795 bash_tap: Implement mechanism to mark a test as expected failure
Test author can now mark a bash tap test as expected failure by setting
EXPFAIL environment variable to a non-zero value.
2021-01-31 05:04:43 -05:00
Tomas Babej
a5eee5fcc6 tests: Expand tests for #2392 2021-01-30 21:53:37 -05:00
Tomas Babej
bf11ef3f12 docs: Document resolved issues 2021-01-30 21:40:41 -05:00
Tomas Babej
456dfdc8cf CLI2: Handle empty parentheses expressions
Since taskwarrior is a CLI tool, it is likely that it is interacted with
programmatically. As such, expressions that a human would not type, but
are syntactically correct are bound to occur. In particular, task
currently is not able to handle empty parentheses expressions:

    task +PENDING '(' ')'

This is due to "and" operator being injected between +PENDING (which
translates to '( status = pending )' and '('.

Modify the insertJunctions to not insert the 'and' operator between two
sub-expressions if one of them is an empty parentheses expression.

Closes #1896.
2021-01-30 21:40:41 -05:00
Tomas Babej
c6fdb7e590 tests: Add test for TW-1883 (#1896) 2021-01-30 21:40:41 -05:00
Tomas Babej
5525460bdf tests: Add test for TW #2257 2021-01-30 21:40:41 -05:00
Tomas Babej
f96e78b721 tests: Unmark two expectedFailure tests that are now working 2021-01-30 21:40:41 -05:00
Tomas Babej
b2fa368afa tests: Expect failure for another test with project:B) syntax
It could be argued we should not support this syntax (i.e. the ')'
character needs to be surrounded by a space. Note that the ability to
contain ')' as part of the attribute value was explicitly requested (as
a bug report) in TW-1455 (#1481).
2021-01-30 21:40:41 -05:00
Tomas Babej
64b6784f69 ColumnTypeString: Only input of single DOM token should be attempted to be evaluated
Attribute names are often words from natural language (such as start,
end or entry). The ColumnTypeString supports resolving DOM references,
such that task commands like 'task add proj:3.proj' work.

However, the current implementation of the ColumnTypeString::modify
only looks at the first token to determine whether the input is a DOM
reference or not. This mischaracterizes inputs like 'task add
"description:start something"', where the first token of the attribute
value looks like a DOM reference (the 'start' attribute), but is in
fact, a part of larger string.

Since all DOM references are single tokens, only interpret the input as
a possible DOM reference if and only if one token was found.

Closes #1908.
2021-01-30 21:40:41 -05:00
Tomas Babej
fac48e5e93 tests: Add test for TW-1895 (#1908) 2021-01-30 21:40:41 -05:00
Tomas Babej
13cf6decd3 tests: Add test for TW #2386 2021-01-30 21:40:41 -05:00
Tomas Babej
a1471b67fb CLI2: Do not attempt to evaluate values of string attributes 2021-01-30 21:40:41 -05:00
Jan Palus
9548bfdaba build: make sure internal libs are built as static
these libararies are not installed so don't leave the decision up to
enviroment which might build shared libraries resulting in binary
with missing deps after installation

Fixes #2403
2021-01-29 23:05:02 -05:00
Nate Wheeler
9be55fc070 Fixes issue where bash paths were not correctly deconstructed, leading to unit tests failing when the path had a space in it 2021-01-27 21:22:50 -05:00
Tomas Babej
5f39b368b6 docs: Documentation updates related to #2393 2021-01-24 10:51:14 -05:00
Tomas Babej
2df80aac01 CmdCalendar: Default to current month if no due date is present
Previously, if no due date was set on any pending/waiting task, the
calendar output would start at the end of the currently supported date
period.

Default to current month instead.
2021-01-24 10:51:14 -05:00
Tomas Babej
0234cd8122 CmdCalendar: Support due dates up to year 9999 2021-01-24 10:51:14 -05:00
Tomas Babej
22228547ca CmdCalendar: Consider waiting status equivalent to pending for purposes of display
The purpose of displaying due dates on the calendar is to convey the
relative business of any given day. Waiting status signifies a task
should not be displayed in reports yet, but for the purposes of
planning, it should be displayed in the calendar overview.

Closes #2393.
2021-01-24 10:51:14 -05:00
Tomas Babej
89ffe13677 docs: Document TW #2392 2021-01-24 03:08:10 -05:00
Tomas Babej
63383698da tests: Fix dependencies.t test
Fix minor implementation problems and only skip the undeterministic
portion of the tests.
2021-01-24 03:08:10 -05:00
Tomas Babej
7d2fb18e5d tests: Add test for TW #2392 2021-01-24 03:08:10 -05:00
Tomas Babej
05e7c2aff2 Lexer: Do not allow leading zero for two and more digit integers 2021-01-24 03:08:10 -05:00
Tomas Babej
6a33bb8656 Lexer: Do not allow leading zero for number type 2021-01-24 03:08:10 -05:00
Tomas Babej
b9bc0f8c87 tests: expectedFailure decorator takes no arguments 2021-01-24 03:08:10 -05:00
Thomas Lauf
a2384eadde Move licence URL up
This way Github's licensee tool recognizes the MIT license correctly
2021-01-22 20:34:00 +01:00
Tomas Babej
368e323d80 tests: Mark tests as expected failure instead of skip
That way we are notified by the test suite if the underlying issue gets
fixed.
2021-01-18 02:59:11 -05:00
Tomas Babej
5928604752 tests: Remove expected failure marks for relative date resolution
The tests now no longer fail.
2021-01-18 02:59:11 -05:00
Tomas Babej
15a5ced0e1 docs: Document TW #1654 / #2390 2021-01-18 02:59:11 -05:00
Tomas Babej
e46bcf3ab4 NEWS: Document extended Duration values 2021-01-18 02:59:11 -05:00
Tomas Babej
5aa3073703 libshared: Bump libshared to extend Duration value support 2021-01-18 02:59:11 -05:00
Tomas Babej
7935364fce tests: Adjust tests for recent variant changes 2021-01-18 02:59:11 -05:00
Tomas Babej
ef1e889262 ColTypeDate: Do not explicitly add now to relative dates
Relative dates are now implicitly anchored around now datetime point
during casting, hence there is no reason to do this anymore.
2021-01-18 02:59:11 -05:00
Tomas Babej
5e0fc1caab Variant: Ensure implmentation of addition/subtraction of dates/durations does not involve casting
Implicit casting of a duration anchors it around the 'now' point in
time, which would throw off the conversion.
2021-01-18 02:59:11 -05:00
Tomas Babej
7242accb58 Variant: Convert durations into dates as implicitly anchored around now
The _period attribute holds the number of seconds that the Duration
holds, while _date attribute holds the number of seconds since the
beginning of unix epoch (also known as epoch time). As such, it does not
make sense to convert _period directly into _date.

Interpret _period as offset relative to current unix epoch time.

Closes #2390.
2021-01-18 02:59:11 -05:00
Tomas Babej
5e68165556 changelog: Document TW #2389 2021-01-16 18:55:01 -05:00
Tomas Babej
6aed73ee99 scripts: Use full hostname in the PS1 variable for reproduction environment 2021-01-16 18:50:16 -05:00
Tomas Babej
d9c4621e33 cmake: Limit containers to 1GB of memory
This helps debugging issues when task ends up OOMKilled, without having
to exhaust memory of the host machine.
2021-01-16 18:49:12 -05:00
Tomas Babej
1855d2c729 libshared: Bump version 2021-01-16 18:47:40 -05:00
Tomas Babej
71f477e013 cmake: Make builds of make review/reproduce quiet
Reduce noise on the output. The build process still outputs the build
log in case it fails.
2021-01-16 12:43:23 -05:00
Tomas Babej
c72e1ea379 cmake: Do not send local context when for make review/reproduce
The Dockerfiles for make review and make reproduce targets do not use
any information from the local taskwarrior git repository. Use
STDIN-based syntax to ensure local context is not sent to the daemon.

See: https://docs.docker.com/engine/reference/commandline/build/#build-with--
2021-01-16 12:40:56 -05:00
Tomas Babej
94a06ed38a cmake: Add a custom target for reproducing issue reports
Use by issuing command "make RELEASE=v2.5.2 reproduce" where v2.5.2 can
be substituted by other (tagged) release.
2021-01-16 12:29:35 -05:00
Tomas Babej
35cab8845a changelog: Document TW #2292 2021-01-14 18:21:44 -05:00
indev
098be0747d fix: remove lock file on interruption of 'task edit' (#2292) 2021-01-14 18:16:34 -05:00
Dustin J. Mitchell
3cccdc7e32 v0.3.0 2021-01-10 22:45:12 -05:00
Dustin J. Mitchell
9cfbe01271 Merge pull request #147 from djmitche/issue144
Reorganize the 'taskchampion' crate
2021-01-10 22:31:40 -05:00
Dustin J. Mitchell
ae4cee1ac3 add docs for the 'server' and 'storage' modules 2021-01-10 22:22:18 -05:00
Dustin J. Mitchell
02d9c577ab use StorageConfig instead of ReplicaConfig 2021-01-10 22:22:18 -05:00
Dustin J. Mitchell
b004b6cb93 use ServerConfig::into_server instead of server::from_config 2021-01-10 22:22:18 -05:00
Dustin J. Mitchell
15ffc62279 rename taskstorage to storage 2021-01-10 22:22:17 -05:00
Dustin J. Mitchell
a318ceebe2 Merge pull request #146 from djmitche/issue106
Adjust Tag syntax to match TaskWarrior
2021-01-09 23:00:52 -05:00
Dustin J. Mitchell
824c14b5b8 Notes about active development of TW 2021-01-10 03:51:46 +00:00
Dustin J. Mitchell
b95c146a7e Adjust Tag syntax to match TaskWarrior 2021-01-10 03:47:38 +00:00
Dustin J. Mitchell
2bacc05ced Merge pull request #145 from djmitche/issue123
Centralize API for working set to a single struct
2021-01-09 18:42:36 -05:00
Dustin J. Mitchell
087769146e Centralize API for working set to a single struct
Rather than allow addressing tasks either by working set ID or uuid,
with attendant performance issues, this moves the API for the working
set to a single struct that just serves as a 1-1 mapping of indexes to
UUIDs.  It's up to the caller to use this information.
2021-01-09 23:42:27 +00:00
Dustin J. Mitchell
d06f2e5aeb Merge pull request #143 from djmitche/issue125
Always pass Uuids by value
2021-01-09 17:57:29 -05:00
Dustin J. Mitchell
45d3e38c63 Always pass Uuids by value
Rust handles this well.  Fixes #125.
2021-01-09 22:09:06 +00:00
Jochen Sprickerhof
663c6575ce Use str_replace from libshared 2021-01-07 22:37:04 -05:00
Jochen Sprickerhof
a95205357c Support editing multi-line annotations (Closes: #2283)
Since e4b9c1f annotations where JSON encoded in task edit to escape
new lines (\n). But other strings where mangled as well, like https://
becoming https:\/\/, making it hard to edit.

This patch removes the JSON encoding and indents new lines instead.
2021-01-07 22:37:04 -05:00
Tomas Babej
1cbcdf0969 docs: Update ChangeLog with info about the 2.5.3 release 2021-01-04 01:06:04 -05:00
Tomas Babej
09ae7ce44d NEWS: Update tested configurations 2021-01-04 01:01:10 -05:00
Tomas Babej
2f47226f91 cmake: Prevent nested tarballs (or other archives) in the release
This happened dring the release of the version 2.5.2.
2021-01-04 00:20:08 -05:00
Tomas Babej
d26f79a458 docs: Update copyright 2021-01-03 22:58:02 -05:00
Tomas Babej
ce6ff451b0 cmake: Update list of ignored source files 2021-01-03 22:52:50 -05:00
Tomas Babej
5466f19441 README: Update build status badge prior to the release 2021-01-03 22:52:02 -05:00
Tomas Babej
0db0ab1b3c ci: Pass CONTAINER variable to the test execution step 2021-01-03 22:48:56 -05:00
Tomas Babej
fd34737330 ci: Remove rednudant declaration of runs-on 2021-01-03 22:48:44 -05:00
Tomas Babej
f48f89fbd9 ci: Remove integration with Travis 2021-01-03 22:48:37 -05:00
Tomas Babej
7de0a3afa4 ci: Add Github-workflow based CI pipeline 2021-01-03 22:47:08 -05:00
Tomas Babej
c5aba94233 NEWS: Update tested configurations 2021-01-03 22:35:21 -05:00
Tomas Babej
b7500776fe docs: Document TW #2375 2021-01-03 22:34:54 -05:00
Dustin J. Mitchell
ca1b7da9bf Merge pull request #142 from djmitche/issue68
Automatically add new pending tasks to working set after sync
2021-01-02 14:59:56 -05:00
Dustin J. Mitchell
5e92770eb8 Automatically rebuild working set after sync 2021-01-02 14:47:36 -05:00
Dustin J. Mitchell
dc2df10158 Control whether to renumber the working set when rebuilding it 2021-01-02 14:47:36 -05:00
Dustin J. Mitchell
b62370c150 Rename replica.gc to replica.rebuild_working_set
The command-line operation is still `gc`, but we'll break that down into
finer pieces in the replica.
2021-01-02 13:23:48 -05:00
Tomas Babej
620461766e doc: Document TW #2101 2021-01-02 03:01:33 -05:00
Tomas Babej
9017cd6e53 doc: Update copyright to 2021 2021-01-02 02:48:22 -05:00
Tomas Babej
2ebf4b864d ColTypeNumeric: Support date and duration variants
If the lexer identifies an expression as an date or a duration, it
should be re-cast into integer value.

Closes #2101.
2021-01-02 00:21:02 -05:00
Tomas Babej
a641e4315f Variant: Support 64-bit numeric values
Closes #2101.
2021-01-01 23:57:34 -05:00
Dustin J. Mitchell
da63d77d9d Merge pull request #141 from djmitche/issue102
Update documentation for reports, new CLI
2021-01-01 16:49:55 -05:00
Dustin J. Mitchell
8b4f345387 Update documentation for reports, new CLI
This is basically a redraft of the documentation to be more complete and
better cover some of the features added since it was written.
2021-01-01 21:18:49 +00:00
Tomas Babej
c4cdfdae64 tests: Simplify quote and escape tests to make them more transparent
Remove excessive escaping of backslashes with usage of raw strings. This
makes it more obvious what is the test input and expected output.

One test is currently failing after editing and was marked as expected
failure.
2020-12-31 18:10:52 -05:00
Tomas Babej
9753e22d0c tests: Adjust tests enforcing incorrect behaviour
In 1a001cae, double json-decoding of the attribute values was removed,
and as such we need to adjust tests to actually enforce correct
behaviour.
2020-12-31 14:45:46 -05:00
Tomas Babej
1a001caedd Task: Prevent double json-decoding of attribute values
In bd4a7081, json-decoding of attribute values was introduced as a
workaround to properly handle blackslashes in description and
annotations (see TW-880).

However, this behaviour is no longer present with the new parser and
introduces its own suite of issues (i.e. see #2140).

Closes #2140.
2020-12-31 14:23:55 -05:00
Tomas Babej
942f43d195 tests: Fix TW bug reference number 2020-12-31 14:20:02 -05:00
Dustin J. Mitchell
b29f75a075 fix to tc.yml to only build on pushes to main 2020-12-30 21:46:23 +00:00
Dustin J. Mitchell
d57efbec5d Merge pull request #136 from djmitche/issue120
Parse reports from config, with defaults
2020-12-30 16:45:05 -05:00
Dustin J. Mitchell
46c3b31208 Parse reports from config, with defaults 2020-12-30 21:18:45 +00:00
Dustin J. Mitchell
2928bab41c Merge pull request #133 from djmitche/issue121
Use named reports
2020-12-29 20:06:19 -05:00
Dustin J. Mitchell
705edce82b only run CI on pushes to main, not to topic branches 2020-12-30 01:02:00 +00:00
Dustin J. Mitchell
b7c12eec1e Allow filtering by status 2020-12-30 00:52:53 +00:00
Dustin J. Mitchell
83d8fc3b4e Factor out the unnecessary ModArg struct 2020-12-30 00:28:48 +00:00
Dustin J. Mitchell
fc977a0fe6 Limit Filter "universes" to invocation::filter
Universes are really an optimization of filtering tasks, so let's define
them there, and derive them from the set of conditions.  This means that
complex filters might get missed and end up doing a full task scan, but
that's probably OK.

Note that this does not fix the working-set API issues (#108 and #123).
2020-12-30 00:26:53 +00:00
Dustin J. Mitchell
0a458b5f5b Treat any bare word in the command line as a report name 2020-12-29 22:54:07 +00:00
Dustin J. Mitchell
21684666a6 Merge pull request #132 from djmitche/issue60
Use a single secret value to identify clients
2020-12-28 20:51:08 -05:00
Tomas Babej
bcc08c8135 docs: Update changelog 2020-12-28 20:48:20 -05:00
Tomas Babej
3b863382b3 tests: Add tests for TW #2060 2020-12-28 20:46:51 -05:00
Tomas Babej
6ff63286b5 CmdInfo: Properly format date and duration UDAs
The 'type' variable was never assigned value, hence the checking for
'date' and/or 'duration' always failed. Use col->type() instead.

Closes #2060.
2020-12-28 20:36:32 -05:00
Tomas Babej
3b978ce265 cmake: Update list of ignored source files
Update after removal of the Travis CI.
2020-12-28 19:35:50 -05:00
Tomas Babej
cf419fda34 README: Update build status badge 2020-12-28 19:34:52 -05:00
Tomas Babej
f8a0ebe504 ci: Pass CONTAINER variable to the test execution step 2020-12-28 19:31:38 -05:00
Tomas Babej
6cf3352b5d ci: Remove rednudant declaration of runs-on 2020-12-28 19:23:09 -05:00
Tomas Babej
cbdd7afea4 ci: Remove integration with Travis 2020-12-28 19:20:19 -05:00
Tomas Babej
c1ed896a53 ci: Add Github-workflow based CI pipeline 2020-12-28 19:19:20 -05:00
Dustin J. Mitchell
31378cb8d4 Include client key in a header, not the URL
Since this value is used both for identification and authentication, it
shouldn't be in the URL where it might be logged or otherwise
discovered.
2020-12-28 23:08:42 +00:00
Dustin J. Mitchell
92d629522b rename client id -> client key 2020-12-28 21:32:59 +00:00
Tomas Babej
16529694eb doc: Document change in semantics for someday/later 2020-12-28 02:32:50 -05:00
Tomas Babej
7a8ea633f8 docs: Update NEWS and Changelog with expanded support for Datetime ranges 2020-12-28 02:30:54 -05:00
Tomas Babej
6bbfcba738 libshared: Support Datetime values until year 9999
Closes #2373.
2020-12-28 01:34:41 -05:00
Tomas Babej
59c20a782d tests: Definition of someday is in year 9999 now 2020-12-28 01:33:49 -05:00
Tomas Babej
9ed047d46d Task: Support setting 64-bit integer values
Thanks to Stephan Rieche.
2020-12-27 21:29:15 -05:00
Dustin J. Mitchell
e555af8895 add request logging 2020-12-28 00:25:26 +00:00
Dustin J. Mitchell
812b49587f Merge pull request #130 from djmitche/issue25
Encrypt content sent to the server.
2020-12-27 13:59:24 -05:00
Dustin J. Mitchell
a8d45c67c6 Encrypt content sent to the server
This implements client-side encryption, so that users' task information
is not availble to the server (or to anyone who does not have the
`encryption_secret`).
2020-12-27 18:51:41 +00:00
Dustin J. Mitchell
6b70b47aa0 specify version ranges 2020-12-26 16:03:57 +00:00
Dustin J. Mitchell
c472e04a09 Merge pull request #127 from djmitche/issue76
Default to a local server, so `task sync` works out of the box
2020-12-26 10:45:15 -05:00
Dustin J. Mitchell
64b38ee814 add some debug logging 2020-12-26 15:34:00 +00:00
Dustin J. Mitchell
57834848f2 Default to a local server, so task sync works out of the box 2020-12-26 15:29:48 +00:00
Dustin J. Mitchell
db85ff86a1 Merge pull request #126 from djmitche/issue119
implement generic report generation
2020-12-26 09:59:12 -05:00
Dustin J. Mitchell
00f548c713 implement generic report generation 2020-12-26 04:11:20 +00:00
Dustin J. Mitchell
f264e74288 specify nom version 2020-12-25 04:18:24 +00:00
Dustin J. Mitchell
e7b7e88bc9 convert unrwap to expect and add testing 2020-12-25 02:52:49 +00:00
Dustin J. Mitchell
8a10fa8335 fix some more pedantic lints 2020-12-25 02:43:51 +00:00
Dustin J. Mitchell
46512b78d7 Merge pull request #118 from djmitche/issue112
use a s!(..) shorthand in CLI tests
2020-12-24 21:37:48 -05:00
Dustin J. Mitchell
922e71cd4d use a s!(..) shorthand in CLI tests 2020-12-24 21:15:56 +00:00
Dustin J. Mitchell
7e906ced22 Merge pull request #117 from djmitche/issue113
use static strings for usage
2020-12-24 16:15:51 -05:00
Dustin J. Mitchell
75aaf8d4ab use static strings for usage 2020-12-24 21:07:27 +00:00
Dustin J. Mitchell
7594144a2d Merge pull request #115 from djmitche/issue110
Fix clippy warnings and make them all errors
2020-12-24 13:30:39 -05:00
Dustin J. Mitchell
8989b0d2e3 Fix clippy warnings and make them all errors 2020-12-24 17:39:49 +00:00
Dustin J. Mitchell
c75d07df94 Merge pull request #114 from djmitche/issue11
Support filtering by tags
2020-12-24 12:14:10 -05:00
Dustin J. Mitchell
8c9e240e97 Document filter and modification syntax 2020-12-24 17:04:51 +00:00
Dustin J. Mitchell
9c94a7b753 support filtering by tags 2020-12-24 16:38:08 +00:00
Dustin J. Mitchell
161c38807d Merge pull request #109 from djmitche/issue11-filter-refactor
Refactor filtering to start with a universe
2020-12-24 11:05:32 -05:00
Dustin J. Mitchell
a0568f017c Refactor filtering to start with a universe 2020-12-23 03:50:34 +00:00
Dustin J. Mitchell
e6d60524fa Merge pull request #107 from djmitche/issue103
Implement tags in the Replica API and the CLI
2020-12-22 21:06:37 -05:00
Dustin J. Mitchell
5ea72f878a display tags in 'task info' 2020-12-21 20:43:09 +00:00
Dustin J. Mitchell
54e8484bc2 Support CLI syntax for changing tags 2020-12-21 20:43:09 +00:00
Dustin J. Mitchell
28c5fb2268 Add support for task tags
Based on properties named `tag.<tag>` as already documented
2020-12-21 20:43:09 +00:00
Dustin J. Mitchell
141752bd4b Merge pull request #98 from djmitche/issue44
Switch to a command-line API closer to TaskWarrior
2020-12-21 10:20:55 -05:00
Dustin J. Mitchell
8ba6277cce use 'atty' to detect when colors can be used 2020-12-20 19:54:38 -05:00
Dustin J. Mitchell
7d17740ca8 use a generic Write instance for command output 2020-12-20 19:45:24 -05:00
Dustin J. Mitchell
6b550e7516 implement cli help 2020-12-20 18:42:21 -05:00
Tomas Babej
3964e7f3de Changelog: Fix attribution 2020-12-20 17:04:07 -05:00
Tomas Babej
9d32b34b49 docs: Add information about unicode characters 2020-12-20 15:37:01 -05:00
Tomas Babej
e6edac7edd build: Update libshared to version supporting Unicode 11
Closes #2333.
2020-12-20 15:27:28 -05:00
Dustin J. Mitchell
2c579b9f01 Switch to a command-line API closer to TaskWarrior
* Use a parser (rather than clap) to process the command line
* Outline some generic support for filtering, reporting, modifying, etc.
* Break argument parsing strictly from invocation, to allow independent testing
2020-12-19 16:40:09 -05:00
Dustin J. Mitchell
87bb829634 Merge pull request #96 from srfraser/i88_append
subcommands: prepend and append to description
2020-12-18 16:38:38 -05:00
Simon Fraser
ee341ac7d5 subcommands: prepend and append to description
This currently uses format!() which may not be the best
option. Fixes #88
2020-12-17 12:59:50 +00:00
Tomas Babej
7dfff13b06 tests: Allow match for 8 bit color code in color.rules.t
The test proper coloring for overdue task from an hour ago fails,
even though the task is properly colored. This is because the blue color
gets upgraded to blue color in 256-color scheme, and hence is
represented with 38;5;4m instead of 34m.

Support both representations of the blue color in the given test.
2020-12-14 23:13:44 -05:00
Tomas Babej
982308412d libshared: Updated to 418a1873aea42f0ed719218628b0ee166b2c281c 2020-12-14 22:37:13 -05:00
Tomas Babej
e37ab8a9ed rules: Reduce code duplication 2020-12-14 22:35:38 -05:00
Tomas Babej
2336c4039d rules: Mark coloring implementations that are not consistent with their corresponding virtual tags 2020-12-14 22:35:37 -05:00
Tomas Babej
2adc5994d5 rules: Make colorizeOverdue properly process dateEarlierToday date state
This makes the coloring implementation consistent with the
Task::is_overdue() method.

Closes #1998.
2020-12-14 22:35:37 -05:00
Tomas Babej
fbf8fe688e CmdCalendar: Properly colorize overdue task from today
Even if task is due today, but the due time is in the past, it is
considered overdue according to the implementation of Task::is_overdue
method.

Make coloring in the calendar output consistent.
2020-12-14 22:35:36 -05:00
Tomas Babej
bfae79eac7 CmdCalendar: Remove accidental repeated blending 2020-12-14 22:35:35 -05:00
Tomas Babej
83a55ccfe5 tests: Add test for coloring an overdue task from earlier today 2020-12-14 22:35:34 -05:00
Tomas Babej
eb32c9d8d7 Context: Correctly handle XDG_CONFIG_HOME paths ending with '/' 2020-12-10 23:49:00 -05:00
Tomas Babej
f0e34a7ef7 Context: Do not append .config if XDG_CONFIG_HOME is defined
- Thanks to Julien Rabinow.
2020-12-10 23:34:59 -05:00
Tomas Babej
b64e754000 cmake: Bring back commit.h.in and cmake.h.in 2020-12-10 22:14:04 -05:00
Tomas Babej
8013654577 cmake: Add additional ignored files for make_package
Closes #2369.

- Thanks to Heiko Becker.
2020-12-10 21:52:56 -05:00
Tomas Babej
1a52c59356 tests: Add test to ensure 64 bit time_t 2020-12-10 00:51:41 -05:00
Tomas Babej
af5e81434f tests: Parallelize more when compiling TW 2020-12-10 00:08:44 -05:00
Tomas Babej
6d74b62dc4 docs: Add entries for alternate location of taskrc to ChangeLog/NEWS 2020-12-09 22:57:57 -05:00
Tomas Babej
1b14ee80bc docs: Clean up ChangeLog and NEWS with duplicated entries from 2.5.2
Many changes made in the 2.6.0 were cherry-picked into 2.5.2 release,
make sure those are not duplicated in 2.6.0 changelog / news.
2020-12-09 22:49:32 -05:00
Tomas Babej
962a8fbe9a AUTHORS: Add Julien among authors 2020-12-09 22:14:28 -05:00
Tomas Babej
5dc42df7d0 Context: Correctly respect empty XDG_CONFIG_HOME 2020-12-09 21:21:17 -05:00
Tomas Babej
1f98b9d128 Context: Adjust styling 2020-12-09 20:35:13 -05:00
Julien Rabinow
dea098d155 update docs to specify XDG_CONFIG_HOME is a valid option 2020-12-09 20:15:22 -05:00
Julien Rabinow
5256797ea9 add support for XDG_CONFIG_HOME 2020-12-09 20:15:22 -05:00
Julien Rabinow
46b553dd8c reorder code to be in same order as comments (intuitive order) 2020-12-09 20:15:22 -05:00
Julien Rabinow
1aa77c9ede fix home_dir variable definition 2020-12-09 20:15:22 -05:00
Tomas Babej
d29ddec34f NEWS: Fix URL for issue submission 2020-12-08 00:44:33 -05:00
Tomas Babej
4d5d901214 NEWS: Fix URL for issue submission 2020-12-08 00:43:14 -05:00
Tomas Babej
fcfe01f301 recur: Prevent infinite loops with 0 periods
Specifying a recurrence interval that amounts to a zero, like 'P0M', 0q
or 0m causes task to fall into an infinite loop when trying to determine
next recurrence dates.

Detect scenarios with zero-length recurrence interval and throw an
exception.

Closes #2262.
2020-12-06 20:58:26 -05:00
Tomas Babej
ccb222a31b tests: Make faketime tests less susceptible to race conditions
The duration can be 10:01 if the original task call happened a split
second before the faketime fixation of +10 minutes.

Use more relaxed regular expresison to check.
2020-12-06 12:02:17 -05:00
Tomas Babej
83f71520d2 tests: Make faketime tests less susceptible to race conditions
The duration can be 10:01 if the original task call happened a split
second before the faketime fixation of +10 minutes.

Use more relaxed regular expresison to check.
2020-12-06 12:00:38 -05:00
Tomas Babej
ee15bfa1db tests: Skip the diagnostics test on Ubuntu 16.04
This is a byproduct of recent bump to C++17 compliant compilers. Ubuntu
16.04 does not have C++17 compliant compiler, but it's still useful to
for us to test 2.5.3 there as the branch does not actually use any of
the C++17 features not available on gcc on Ubuntu.
2020-12-06 11:48:41 -05:00
Tomas Babej
54cfc6cab9 DEVELOPER: Change current release branch version 2020-12-06 11:13:30 -05:00
Tomas Babej
36594df1a9 docs: Update test suite requirements 2020-12-06 11:13:15 -05:00
Tomas Babej
c223b0694c docs: Update compiler requirements 2020-12-06 11:12:58 -05:00
Max Rossmannek
fdaabcf956 Update diag.t to correct C++ version
The default C++ version was updated in 4729876 and this commit reflects
this change in the test.
2020-12-06 10:50:30 -05:00
Paul Beckingham
0202898732 Updated build to use C++17 by default 2020-12-06 10:50:13 -05:00
Tomas Babej
f2abee3606 travis: Preserve Ubuntu 16.04 2020-12-06 10:11:03 -05:00
Tomas Babej
c6ec416e30 ci: Rename Arch container to make it clear we're testing on rolling base 2020-12-06 10:09:53 -05:00
Tomas Babej
9a193e26ec ci: Add support for CentOS 8 2020-12-06 10:09:46 -05:00
Tomas Babej
2657880ff3 ci: Replace F28 and F29 with F31, F32 and F33 2020-12-06 10:09:39 -05:00
Tomas Babej
497262d23c ci: Add Ubuntu 20.04 2020-12-06 10:09:31 -05:00
Tomas Babej
1b745bc505 ci: Properly setup en_US.UTF-8 locale for Ubuntu containers 2020-12-06 10:09:20 -05:00
Max Rossmannek
2620714b43 Fix Arch docker image 2020-12-06 10:01:54 -05:00
Max Rossmannek
4ebf611b91 Fix faketime packages 2020-12-06 10:01:45 -05:00
Max Rossmannek
862ae0b969 Replace libfaketime with faketime in debianstable
I verified locally that this avoids skipping all of the
faketime-dependent unittests. The Travis CI logs will have to be
investigated for all of the other docker images on which distros we may
need to apply a similar fix.
2020-12-06 10:01:30 -05:00
Max Rossmannek
b634dea7ab Attempt greedy docker config update
This is an attempt at updating all docker configurations by simply
replacing the `python` packages with `python3`. The Travis CI will let
us know if this works.
2020-12-06 10:01:19 -05:00
Max Rossmannek
2931be613b Enforce Python 3 in test_hooks/wrapper
This change was not included in the previous commit because the sed
command I used included the `/usr/bin/env` path to ensure I don't
replace any occurences of the word `python` which I did not wish to
replace.
2020-12-06 10:01:09 -05:00
Max Rossmannek
6d2ecaa15c Enforce Python 3 for unittests
This commit updates all tests to enforce the Python3 executable. This is
necessary because the `assertRegex` function we use was renamed to this
name only in Python 3.2 [1]

For reference:
s;/usr/bin/env python;/usr/bin/env python3;g

[1]: https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertRegex
2020-12-06 10:00:59 -05:00
Tomas Babej
a8c215774b tests: Implement mechanism for expected failures in C++ tests
Implements detection of unexpected successes and expected failures. Both
classes are represented in the TAP output as 'not ok', unexpected
successes with '# FIXED' metadata and expected failures as '# TODO'.

This brings C++ tests to feature parity with Python-based ones when it
comes to expected failures and unexpected successes.
2020-12-06 09:56:37 -05:00
Max Rossmannek
0ae2f2a5fd Revert "Poor implementation of linewrap restored to task"
This reverts commit 64243e6ec1.
2020-12-06 09:45:30 -05:00
Tomas Babej
af49667adb ci: Rename Arch container to make it clear we're testing on rolling base 2020-12-06 02:42:10 -05:00
Tomas Babej
a6bbeeaab5 ci: Add support for CentOS 8 2020-12-06 01:55:17 -05:00
Tomas Babej
53e39760ab ci: Replace F28 and F29 with F31, F32 and F33 2020-12-06 01:35:47 -05:00
Tomas Babej
88ea8544f6 ci: Add Ubuntu 20.04 2020-12-06 00:53:34 -05:00
Tomas Babej
2b9525980e ci: Removing support for Ubuntu 16.04
Ubuntu 16.04 has reached EOL and the 2.6.0 branch does not compile
there.
2020-12-06 00:28:59 -05:00
Tomas Babej
bf99dedc07 ci: Properly setup en_US.UTF-8 locale for Ubuntu containers 2020-12-06 00:22:32 -05:00
Tomas Babej
9e9ef6a210 tests: Allow specifying lexer tests as expected failures 2020-12-05 21:22:42 -05:00
Tomas Babej
efc56d3ab6 tests: Implement mechanism for expected failures in C++ tests
Implements detection of unexpected successes and expected failures. Both
classes are represented in the TAP output as 'not ok', unexpected
successes with '# FIXED' metadata and expected failures as '# TODO'.

This brings C++ tests to feature parity with Python-based ones when it
comes to expected failures and unexpected successes.
2020-12-05 21:22:24 -05:00
Tomas Babej
d25d930ada tests: Unmark unexpected successes
These tests are passing on 2.6.0.
2020-12-05 19:35:45 -05:00
Tomas Babej
095d51e479 tests: Properly label and detect unexpected successes
Unexpected successes were being labeled as failures, which might be
related to [1]. This behaviour is indeed welcome - we want to detect if
tests are unexpectedly succeeding via test pipeline failures, however,
the current implementation of the simpletap did not properly implement
this.

[1] https://bugs.python.org/issue20165
2020-12-05 19:28:47 -05:00
Tomas Babej
aa97cc7108 holidays: Update holidays using newest holidata.net data
Remove outdated holiday files that could not be updated.
2020-12-05 18:24:32 -05:00
Tomas Babej
a186d9f73f CMake: Also ignore .travis for the tarball build 2020-12-05 18:24:31 -05:00
Tomas Babej
7402f00981 CMake: Exclude .github directory 2020-12-05 18:24:30 -05:00
Tomas Babej
642f250f72 tests: Mark failing corner case tests as expected for 2.6.0
These are still important problems, but it will allow us to fully
leverage CI while waiting for the fixes.
2020-12-05 18:24:29 -05:00
Tomas Babej
9f5a38df60 NEWS: Remove 2.5.2 content, put placeholders for 2.5.3 2020-12-05 18:19:24 -05:00
Tomas Babej
5e30a65689 CMake: Bump version number to 2.5.3 2020-12-05 18:16:58 -05:00
Tomas Babej
c1de01d594 ChangeLog: Update the current release 2020-12-05 17:48:45 -05:00
Tomas Babej
2dd21de678 Merge branch '2.5.2' into master 2020-12-05 17:46:20 -05:00
Tomas Babej
b0c17d1163 holidays: Update holidays using newest holidata.net data
Remove outdated holiday files that could not be updated.
2020-12-05 17:11:36 -05:00
Tomas Babej
36d13508d4 CMake: Also ignore .travis for the tarball build 2020-12-05 16:59:14 -05:00
Tomas Babej
fdc290c546 CMake: Exclude .github directory 2020-12-05 16:51:54 -05:00
Tomas Babej
cd1d42bc9d tests: Mark failing corner case tests as expected for 2.5.2 2020-12-05 16:40:28 -05:00
Paul Beckingham
3e0a428185 Revert "[clang-tidy] Use .empty instead of comparing size"
This reverts commit a331cceded.
2020-12-05 16:18:37 -05:00
Paul Beckingham
b2d46a1eba Revert "[clang-tidy] Use auto where the type is known"
This reverts commit 6ce2a129dd.
2020-12-05 16:18:37 -05:00
Paul Beckingham
0a3a4d364d Revert "[clang-tidy] Use new range based loops"
This reverts commit a468537c1b.
2020-12-05 16:18:37 -05:00
Paul Beckingham
e3e158bf6a Revert "[clang-tidy] Replace push_back with emplace_back"
This reverts commit 897759e4dc.
2020-12-05 16:18:37 -05:00
Paul Beckingham
ead50d4d6e Revert "[clang-tidy] Use default to initialize constructors"
This reverts commit bf40ea8816.
2020-12-05 16:18:37 -05:00
Paul Beckingham
aa841f98c9 Revert "[clang-tidy] Add const where it makes sense"
This reverts commit defd49b13d.
2020-12-05 16:18:37 -05:00
Paul Beckingham
2652a9d3f1 Revert "[clang-tidy] Add const references where useful"
This reverts commit 37b641259c.
2020-12-05 16:18:37 -05:00
Paul Beckingham
8cf4e3de08 Revert "[clang-tidy] Access static member through qualified-id"
This reverts commit 6cd15235be.
2020-12-05 16:18:37 -05:00
Paul Beckingham
504aacd244 Revert "[clang-tidy] Pass by value with std::move"
This reverts commit e46039efb1.
2020-12-05 16:18:37 -05:00
Paul Beckingham
5502729131 Revert "[clang-tidy] Switch C headers to C++ ones"
This reverts commit 0344856d65.
2020-12-05 16:18:37 -05:00
Paul Beckingham
444e5955ac Revert "[clang-tidy] Convert 0/1 to false/true"
This reverts commit 54e40008c9.
2020-12-05 16:18:37 -05:00
Paul Beckingham
0b828be4aa Revert "[clang-tidy] Remove redundant init"
This reverts commit cc6826fc3a.
2020-12-05 16:18:37 -05:00
Paul Beckingham
9016c26828 Revert "[cl;ang-tidy] Don't initialize strings"
This reverts commit 426e067f43.
2020-12-05 16:18:37 -05:00
Paul Beckingham
3eb209f248 Revert "[clang-tidy] Use '' for single characters"
This reverts commit e3ceda9ce1.
2020-12-05 16:18:37 -05:00
Paul Beckingham
c3ecfac4f5 Revert "[clang-tidy] Use const reference instead of initializing string"
This reverts commit ab170e34df.
2020-12-05 16:18:37 -05:00
Paul Beckingham
7d8fff418e Revert "[clang-tidy] Reserve memory for vector loop"
This reverts commit 7f86b29aa9.
2020-12-05 16:18:37 -05:00
Paul Beckingham
702af00435 Revert "[clang-tidy] Remove redundant const"
This reverts commit 55d103c491.
2020-12-05 16:18:37 -05:00
Paul Beckingham
c43a513158 Revert "[clang-tidy] Replace C style casts with C++ ones"
This reverts commit 13e1bf7204.
2020-12-05 16:18:37 -05:00
Paul Beckingham
364b4ea8bd Revert "[clang-tidy] Simplify boolean expressions"
This reverts commit 51870dff34.
2020-12-05 16:18:37 -05:00
Paul Beckingham
623d5ceb59 Revert "[clang-tidy] using dynamic_cast for derived classes"
This reverts commit a02754159c.
2020-12-05 16:18:37 -05:00
Paul Beckingham
6ad1b7d0da Revert "[clang-tidy] match loop size with size()"
This reverts commit 68c446ea08.
2020-12-05 16:18:37 -05:00
Paul Beckingham
c02e369fbc Revert "[clang-tidy] Cast integer to string"
This reverts commit da75c159ca.
2020-12-05 16:18:37 -05:00
Rosen Penev
da75c159ca [clang-tidy] Cast integer to string
Found with bugprone-string-integer-assignment

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
68c446ea08 [clang-tidy] match loop size with size()
Found with bugprone-too-small-loop-variable

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
a02754159c [clang-tidy] using dynamic_cast for derived classes
Found with cppcoreguidelines-pro-type-cstyle-cast

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
51870dff34 [clang-tidy] Simplify boolean expressions
Found with readability-simplify-boolean-expr

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
13e1bf7204 [clang-tidy] Replace C style casts with C++ ones
Found with google-readability-casting

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -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
Rosen Penev
7f86b29aa9 [clang-tidy] Reserve memory for vector loop
Found with performance-inefficient-vector-operation

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
ab170e34df [clang-tidy] Use const reference instead of initializing string
Found with performance-unnecessary-copy-initialization

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
e3ceda9ce1 [clang-tidy] Use '' for single characters
Found with performance-faster-string-find

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
426e067f43 [cl;ang-tidy] Don't initialize strings
Found with readability-redundant-string-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
cc6826fc3a [clang-tidy] Remove redundant init
Found with modernize-use-default-member-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
54e40008c9 [clang-tidy] Convert 0/1 to false/true
Found with modernize-use-bool-literals

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
0344856d65 [clang-tidy] Switch C headers to C++ ones
Found using modernize-return-braced-init-list

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
e46039efb1 [clang-tidy] Pass by value with std::move
Found with modernize-pass-by-value

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
6cd15235be [clang-tidy] Access static member through qualified-id
Found readability-static-accessed-through-instance

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
37b641259c [clang-tidy] Add const references where useful
Found with performance-for-range-copy

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
defd49b13d [clang-tidy] Add const where it makes sense
Found with readability-redundant-string-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
bf40ea8816 [clang-tidy] Use default to initialize constructors
Found with modernize-use-equals-default

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
897759e4dc [clang-tidy] Replace push_back with emplace_back
Found with modernize-use-emplace

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
a468537c1b [clang-tidy] Use new range based loops
Found with modernize-loop-convert

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
6ce2a129dd [clang-tidy] Use auto where the type is known
Found with modernize-use-auto

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Rosen Penev
a331cceded [clang-tidy] Use .empty instead of comparing size
Found with readability-container-size-empty

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-12-05 15:03:43 -05:00
Tomas Babej
d43fa66489 CmdPurge: Detect the failure mode of trying to purge non-deleted tasks
Prompted by the failure mode described by Glen Solsberry in #2254.
2020-12-05 14:31:27 -05:00
Julien Rabinow
e37d932208 bump libshared submodule version 2020-12-05 14:30:58 -05:00
Tomas Babej
ab12e3fafd CMake: Add custom review target
Use with Github PR ids as follows:
make PR=2358 review
2020-12-04 00:20:30 -05:00
Tomas Babej
522ef20a85 scripts: Add a dockerfile to build review images
This automates the review process of a given PR by checking out the
current HEAD of the given PR and installing TW in a container.
2020-12-04 00:20:29 -05:00
Max Rossmannek
3d850715f4 Make virtual tags consistent across commands.
- the DUETODAY tag was deprecated in b2d49f397
- the QUARTER tag was added in 630a1530e and 4711dd9e1
- the PROJECT, PRIORITY and LATEST tags were added in 4008a64

Note: the documentation in the man page is already up-to-date.

Fixes #2359
2020-12-03 01:45:07 -05:00
Max Rossmannek
4663ca840f Mark failing tests as expected failures
Related issues:
- TW-1630 (#1654) needs to be re-opened!
- TW-1915 (#1928)
2020-11-30 01:01:26 -05:00
Max Rossmannek
d85901e7ff Properly escape filters including spaces
This adds a note to the man page to properly escape filters containing
spaces. It also fixes the unittests to reflect this.

One of the unittests contained an alternative syntax as discussed in
TW-1479 (#1505). It has been extracted into its own unittest and marked
as an expected failure because it is currently not supported.
2020-11-30 01:01:26 -05:00
Max Rossmannek
09e2cb46d6 Simplify task construction 2020-11-30 01:01:26 -05:00
Max Rossmannek
44bcd58051 Fix Undo command
The Undo command broke in 48dff11 when the `onModify` hook got added to
its execution in order to fix #2213. The reason for it begin broke is
that a Task object is created in an unsafe manner because the `prior`
task may be empty.
Catching this case fixes the bug.
2020-11-30 01:01:26 -05:00
Leo
643166a337 Uncoditionally include errno.h instead of guessing
POSIX tells us that it is errno.h, musl fails to build with -Werror
because it redirects sys/errno.h->errno.h and uses #warning

(cherry picked from commit 041248e7cc)
2020-11-30 00:53:20 -05:00
John Nguyen
4c714e10a3 Fix typo in man page
The example for _unique has typo, should be using attribute for project.
Fixes #2277

(cherry picked from commit cf45f28cc0)
2020-11-30 00:53:20 -05:00
Max Rossmannek
50cfd92ad5 Fix Arch docker image 2020-11-30 00:51:54 -05:00
Max Rossmannek
596d681be7 Fix faketime packages 2020-11-30 00:51:54 -05:00
Max Rossmannek
07a27cbd3b Replace libfaketime with faketime in debianstable
I verified locally that this avoids skipping all of the
faketime-dependent unittests. The Travis CI logs will have to be
investigated for all of the other docker images on which distros we may
need to apply a similar fix.
2020-11-30 00:51:54 -05:00
Max Rossmannek
61a78d0a6f Attempt greedy docker config update
This is an attempt at updating all docker configurations by simply
replacing the `python` packages with `python3`. The Travis CI will let
us know if this works.
2020-11-30 00:51:54 -05:00
Max Rossmannek
8b91cd97a8 Enforce Python 3 in test_hooks/wrapper
This change was not included in the previous commit because the sed
command I used included the `/usr/bin/env` path to ensure I don't
replace any occurences of the word `python` which I did not wish to
replace.
2020-11-30 00:51:54 -05:00
Max Rossmannek
f35989be0e Enforce Python 3 for unittests
This commit updates all tests to enforce the Python3 executable. This is
necessary because the `assertRegex` function we use was renamed to this
name only in Python 3.2 [1]

For reference:
s;/usr/bin/env python;/usr/bin/env python3;g

[1]: https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertRegex
2020-11-30 00:51:54 -05:00
Dustin J. Mitchell
8f5e299077 Merge remote-tracking branch 'upstream/main' into main 2020-11-29 21:27:35 -05:00
Dustin J. Mitchell
de03209285 bits of docs 2020-11-29 21:26:39 -05:00
Dustin J. Mitchell
0d5635f092 Update RELEASING.md 2020-11-29 21:10:49 -05:00
Dustin J. Mitchell
8601c0cb67 update Cargo.lock 2020-11-29 21:09:28 -05:00
Dustin J. Mitchell
a1747546d6 Update RELEASING.md 2020-11-29 21:09:22 -05:00
Dustin J. Mitchell
e6abfc5f56 more RELEASING stuff 2020-11-29 20:59:52 -05:00
Dustin J. Mitchell
451690afb7 v0.2.0 2020-11-29 20:59:09 -05:00
Dustin J. Mitchell
17a13e0de9 Merge pull request #78 from djmitche/issue49
Add release stuff
2020-11-29 20:49:18 -05:00
Dustin J. Mitchell
0e2e60372d release process 2020-11-29 20:42:10 -05:00
Dustin J. Mitchell
95ada3d2bb Add metadata for the taskchampion crate 2020-11-29 20:35:25 -05:00
Dustin J. Mitchell
81cee8d375 use CARGO_PKG_VERSION for version 2020-11-29 20:35:25 -05:00
Dustin J. Mitchell
dd01c985ec fix typo 2020-11-29 20:34:59 -05:00
Dustin J. Mitchell
8f361c28b7 remove unnecessary warning suppression 2020-11-29 20:34:43 -05:00
Dustin J. Mitchell
89a0071136 Merge pull request #77 from djmitche/issue49
Add a getting-started section
2020-11-29 20:24:47 -05:00
Dustin J. Mitchell
08faac957a Add a getting-started section 2020-11-29 20:14:06 -05:00
Dustin J. Mitchell
33283658d5 Merge pull request #75 from djmitche/issue54
use log and env_logger, and add some logging around sync
2020-11-29 18:34:01 -05:00
Dustin J. Mitchell
0a1ee470f7 use log and env_logger, and add some logging around sync 2020-11-29 18:18:28 -05:00
Dustin J. Mitchell
c117494ce6 Merge pull request #74 from djmitche/issue66
Implement actual on-disk storage for sync-server.
2020-11-29 17:47:11 -05:00
Dustin J. Mitchell
8b233de46e Merge pull request #73 from djmitche/issue72
Add done and delete subcommands
2020-11-29 17:42:02 -05:00
Dustin J. Mitchell
786d5b6a17 Implement actual on-disk storage for sync-server. 2020-11-29 17:41:28 -05:00
Dustin J. Mitchell
1b7dbd0715 remove delete_task from the Replica API so it's not misused 2020-11-29 14:26:47 -05:00
Dustin J. Mitchell
af7363f3aa add delete subcommand 2020-11-29 14:07:16 -05:00
Dustin J. Mitchell
29ab993397 add done 2020-11-29 14:07:16 -05:00
Dustin J. Mitchell
42d988d601 fix clippy warnings 2020-11-29 14:05:51 -05:00
Dustin J. Mitchell
d832b0b859 fix merge error 2020-11-29 11:18:29 -05:00
Dustin J. Mitchell
47cd051bd7 Merge pull request #71 from djmitche/issue7
Add start and stop commands
2020-11-28 23:19:21 -05:00
Dustin J. Mitchell
0e4ab4b88f Add start and stop commands 2020-11-28 23:12:37 -05:00
Dustin J. Mitchell
7a2857e814 Merge pull request #70 from djmitche/issue9
Support configuration of the cli
2020-11-28 22:02:07 -05:00
Dustin J. Mitchell
6d08eacd98 limit config file usage to just yaml 2020-11-28 19:43:30 -05:00
Dustin J. Mitchell
0e926df578 Add configuration-file support to the 'task' command 2020-11-28 18:18:43 -05:00
Dustin J. Mitchell
8af7ba286d Factor replica and sync configuration into simple owned structs 2020-11-28 16:57:32 -05:00
Dustin J. Mitchell
87596bb1f0 update Cargo.lock to latest 2020-11-28 15:14:49 -05:00
Dustin J. Mitchell
091f5b5b17 use semver ranges for dependencies 2020-11-28 15:13:30 -05:00
Dustin J. Mitchell
3c976a324e Create dependabot.yml 2020-11-28 11:31:12 -05:00
Dustin J. Mitchell
383f77b5c6 Merge pull request #69 from djmitche/issue6
add 'task modify' (that can only modify description right now)
2020-11-28 11:26:02 -05:00
Dustin J. Mitchell
a665ff83de add 'task modify' (that can only modify description right now) 2020-11-28 11:17:38 -05:00
Dustin J. Mitchell
b34ef34b2a Merge pull request #67 from djmitche/issue58
take configuration in env vars temporarily
2020-11-28 10:16:56 -05:00
Dustin J. Mitchell
1a92613ddc take configuration in env vars temporarily 2020-11-28 10:02:17 -05:00
Dustin J. Mitchell
97a8a87c24 Merge pull request #64 from djmitche/issue57
Add RemoteServer to the taskchampion crate
2020-11-27 20:23:39 -05:00
Dustin J. Mitchell
a02f864b87 Merge pull request #65 from djmitche/issue63
do not require taskchampion from sync-server
2020-11-27 20:15:25 -05:00
Dustin J. Mitchell
2a37f090a5 Add RemoteServer to the taskchampion crate 2020-11-27 20:15:17 -05:00
Dustin J. Mitchell
3092a6bb7f do not require taskchampion from sync-server 2020-11-27 20:08:54 -05:00
Dustin J. Mitchell
d46f20e75a adjust visibility, comment 2020-11-27 18:16:42 -05:00
Dustin J. Mitchell
f59355f827 set default theme to ayu 2020-11-26 23:38:14 -05:00
Dustin J. Mitchell
f5859bc45c fix docs to include all files 2020-11-26 23:38:14 -05:00
Dustin J. Mitchell
efb1bc6a39 Create CONTRIBUTING.md 2020-11-26 23:36:54 -05:00
Dustin J. Mitchell
367c2fa2bd Create LICENSE 2020-11-26 23:20:45 -05:00
Dustin J. Mitchell
b10dc01213 Create CODE_OF_CONDUCT.md 2020-11-26 23:18:32 -05:00
Dustin J. Mitchell
c96e40e494 Create SECURITY.md 2020-11-26 23:16:39 -05:00
Dustin J. Mitchell
d53d83d06e Merge pull request #62 from djmitche/issue37
replica.new_task now invents its own uuid
2020-11-26 23:13:15 -05:00
Dustin J. Mitchell
eb47cf4e7f scrpit to push docs 2020-11-26 23:02:15 -05:00
Dustin J. Mitchell
0f98727d9b replica.new_task now invents its own uuid 2020-11-26 22:44:13 -05:00
Dustin J. Mitchell
2064057688 fix clippy warnings
I don't know why these are "intermittent"
2020-11-26 22:36:31 -05:00
Dustin J. Mitchell
26b17c6dbc Revert "add signing support"
It turns out we don't need this.

This reverts commit e92fc0628b.
2020-11-26 22:34:20 -05:00
Dustin J. Mitchell
b0dd3905e7 fix crate name for tc-sync-server 2020-11-26 22:30:07 -05:00
Dustin J. Mitchell
e32b9d1bf6 Merge pull request #61 from djmitche/issue55
Implement the sync server
2020-11-26 20:00:22 -05:00
Dustin J. Mitchell
5b1b911bf7 Move add_version and get_child_version to server module
..and add some tests specifically for those functions, in the absence of
all the HTTP nonsense.
2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
fb22b9686f refactor sync server to use pluggable storage
..with a fixed implementation of the replica / server protocol logic.
There isn't much logic yet, and there's a lot of boilerplate to take
care of, so this looks a little lopsided, but I'm confident this is the
right structure for this code's future.
2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
7472749fee add tests for API methods 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
3fb2327a5b add docs for replica/server protocol 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
2dae271851 build an in-memory sync server implementation 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
2457d8bc43 move types in crate::types to crate::server 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
e84871931f Refactor HTTP implementation of API methods 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
a5c06008b3 use a trait object for the server, for dynamic dispatch 2020-11-26 19:59:52 -05:00
Dustin J. Mitchell
087333a227 refactor sync server into modules 2020-11-26 19:59:49 -05:00
Dustin J. Mitchell
d0bfbbb7f0 Merge pull request #59 from djmitche/issue8
Refactor synchronization
2020-11-25 20:12:46 -05:00
Dustin J. Mitchell
1511a0e38e update docs based on modified sync designs 2020-11-25 19:46:23 -05:00
Dustin J. Mitchell
3537db9bbe implement a local sync server 2020-11-25 19:13:32 -05:00
Dustin J. Mitchell
8f7e2e2790 add a 'task sync' command using a copy of the test server 2020-11-25 18:07:04 -05:00
Dustin J. Mitchell
a81c84d7c7 refactor sync to new model 2020-11-25 17:58:03 -05:00
Dustin J. Mitchell
e92fc0628b add signing support 2020-11-25 17:58:02 -05:00
Dustin J. Mitchell
75edd2773f make server operations fallible 2020-11-25 17:53:23 -05:00
Dustin J. Mitchell
549d3b9f6d refactor taskchampion::server into a module with submodules 2020-11-25 17:53:23 -05:00
Tomas Janousek
b6910b9428 Add missing "QUARTER" to feedback_reserved_tags
A while ago I noticed that 630a1530e0 only
added the QUARTER virtual tag to src/Task.cpp, and when I checked that
again today, it was still missing from src/feedback.cpp, so I'm fixing
that.
2020-11-24 18:46:53 -05:00
Dustin J. Mitchell
7cfa27fc7e Merge pull request #51 from djmitche/issue34
Remove `remove_from_working_set` method.
2020-11-24 13:14:12 -05:00
Dustin J. Mitchell
fc4fcc9e5d Remove remove_from_working_set method.
Items are only removed from the working set when it is rebuilt, so this
method is unnecessary.
2020-11-24 13:11:40 -05:00
Dustin J. Mitchell
a0573e2dbe Merge pull request #50 from djmitche/issue18
add cargo clippy to CI
2020-11-24 13:08:48 -05:00
Dustin J. Mitchell
ca70d2c914 add cargo clippy to CI 2020-11-24 13:02:14 -05:00
Dustin J. Mitchell
2232aa8083 Merge pull request #47 from djmitche/issue43
Update handling of working set and show id's more widely
2020-11-24 12:19:47 -05:00
Dustin J. Mitchell
122abf4c5b Merge pull request #46 from djmitche/issue40
export the Uuid type from taskchampion
2020-11-24 12:06:46 -05:00
Dustin J. Mitchell
1c5e9b009b Add Replica::get_working_set_index and use it
This is probably ridiculously inefficient, as it will load the working
set for each and every task listed.  Optimize later!
2020-11-24 12:05:30 -05:00
Dustin J. Mitchell
2dd86edd4a use Replica::get_working_set_task 2020-11-24 11:54:48 -05:00
Dustin J. Mitchell
fc668e5ca8 use usize to index working set 2020-11-24 11:53:11 -05:00
Dustin J. Mitchell
c8f14d68cb export the Uuid type from taskchampion 2020-11-24 11:44:21 -05:00
Dustin J. Mitchell
d84c156782 Merge pull request #45 from djmitche/issue30
add an 'info' subcommand
2020-11-24 11:42:34 -05:00
Dustin J. Mitchell
8233763295 add an 'info' subcommand 2020-11-24 11:31:56 -05:00
Dustin J. Mitchell
888b38fd79 Merge pull request #42 from djmitche/issue28
use prettytable for tabular outputs
2020-11-24 09:47:48 -05:00
mrossinek
4f14b8923f Fix variant_subtract test case after PR #2095 2020-11-24 08:12:39 -05:00
Tomas Babej
1417be626f TW-1511: Interpret string subtraction as concanetation with a dash
Fixes #1537 (previously known as TW-1511).
2020-11-24 08:12:39 -05:00
Max Rossmannek
cad9a4f834 Update diag.t to correct C++ version
The default C++ version was updated in 4729876 and this commit reflects
this change in the test.
2020-11-24 08:12:39 -05:00
mrossinek
ca1e2a5a6b Mark project.t 1455 as expected failure 2020-11-24 08:12:39 -05:00
Tomas Babej
79e076c3c0 tests: Use updated unittest method 2020-11-24 08:12:39 -05:00
mrossinek
7d567c3ac9 Fix wait.t to correct expected output 2020-11-24 08:12:39 -05:00
Tomas Janousek
2c4d4ad649 Test: Add UUID test demonstrating a "Cannot subtract strings" bug
$ task 0000000d-000a-0000-0000-000000000000 export
Cannot subtract strings
$ task 0000000d-0000-0000-0000-000000000000 export
The expression could not be evaluated.
2020-11-24 02:42:32 -05:00
Dustin J. Mitchell
f31a96176d use prettytable for tabular outputs 2020-11-23 21:58:45 -05:00
Dustin J. Mitchell
f7f5c379ea Merge pull request #41 from djmitche/refactor-cli
Refactor command-line handling
2020-11-23 21:35:04 -05:00
Dustin J. Mitchell
fe4183c3ca Refactor command-line handling into modules per subcommands 2020-11-23 21:29:46 -05:00
Dustin J. Mitchell
e0b69a62b1 fix --help metadata 2020-11-23 16:18:24 -05:00
Dustin J. Mitchell
1de24f66dc restore README to top level 2020-11-23 16:12:46 -05:00
Dustin J. Mitchell
635852c6d9 Merge pull request #39 from djmitche/issue14
Refactor into several crates
2020-11-23 16:10:18 -05:00
Dustin J. Mitchell
084c978b31 move docs back to top level 2020-11-23 16:07:38 -05:00
Dustin J. Mitchell
2296d0fa35 rename DB to TaskDB for consistency 2020-11-23 16:03:04 -05:00
Dustin J. Mitchell
8e2b4c3f6c Reorganize taskchampion crate for docs and tests
The public API of the taskchampion crate now contains the expected parts
and no more, and has some better documentation.

This moves the crate's external `tests/` into internal tests, as the
TaskDB is no longer exposed as part of the crate API.
2020-11-23 15:59:37 -05:00
Dustin J. Mitchell
8f4924f903 remove unnecessary 'extern crate' 2020-11-23 15:02:37 -05:00
Dustin J. Mitchell
ba55d298ce stop ignoring dead code and unused variables 2020-11-23 14:29:51 -05:00
Dustin J. Mitchell
779a331003 reorganize into separate crates
- taskchampion -- core implementation of a replica
 - taskchampion-cli -- command-line interface
 - taskchampion-sync-server -- server implementation (not much yet!)
2020-11-23 14:27:47 -05:00
Dustin J. Mitchell
2830043e13 Merge pull request #38 from djmitche/issue21
Reorganize the Task API
2020-11-23 13:46:16 -05:00
Dustin J. Mitchell
245969e390 make task a simple top-level module 2020-11-23 12:53:58 -05:00
Dustin J. Mitchell
634aaadb73 Reorganize handling of task data
This abandons field-by-field compatibility with the TaskWarrior TDB2
format, which wasn't a sustainable strategy anyway.

Instead, tasks are represented as a TaskMap with custom key formats.  In
this commit, there are only a few allowed keys, with room to grow.

Replica returns convenience wrappers Task (read-only) and TaskMut
(read-write) with getters and setters to make modifying tasks easier.
2020-11-23 12:53:58 -05:00
Dustin J. Mitchell
c2c2a00ed5 Merge pull request #36 from djmitche/issue20
refactor working-set support, improve data model docs
2020-11-22 19:48:52 -05:00
Dustin J. Mitchell
03e4fc7cee Refactor working-set support, add pending tasks
This refactors the working-set support so that taskdb knows how to
rebuild the working set (in a single transaction) but replica knows what
tasks should be in that set.

This also adds support for automatically adding tasks to the working set
when they are marked pending.  Note that tasks are not *removed* from
the working set automatically, but only on a gc operation.
2020-11-22 18:19:05 -05:00
Dustin J. Mitchell
39a0dfe798 revise and expand docs about storage / taskdb / replica 2020-11-22 17:30:42 -05:00
Dustin J. Mitchell
ffbf272afc Merge pull request #32 from djmitche/issue22
fix up some TODOs in replica.rs
2020-11-22 00:56:10 -05:00
Dustin J. Mitchell
1a2c17ab8c Merge branch 'main' into issue22 2020-11-22 00:55:58 -05:00
Dustin J. Mitchell
4074db7729 Merge pull request #31 from djmitche/issue15-more
remove more taskwarrior compatibility stuff
2020-11-22 00:55:39 -05:00
Dustin J. Mitchell
f45292d049 remove more taskwarrior compatibility stuff 2020-11-22 00:51:41 -05:00
Dustin J. Mitchell
74fb3c3c41 fix up some TODOs in replica.rs 2020-11-21 23:46:53 -05:00
Dustin J. Mitchell
b3a0fe9f20 Merge pull request #27 from djmitche/issue12
add an mdbook
2020-11-21 21:32:09 -05:00
Dustin J. Mitchell
17fe90c8d0 poor excuse for documentation 2020-11-21 21:27:58 -05:00
Dustin J. Mitchell
ae8872d51e add an mdbook 2020-11-21 21:27:58 -05:00
Dustin J. Mitchell
1e28289b8b Merge pull request #19 from djmitche/issue3
use a v1 .taskcluster.yml
2020-11-21 19:15:57 -05:00
Dustin J. Mitchell
c8a28b5ab3 install rustfmt 2020-11-21 19:09:55 -05:00
Dustin J. Mitchell
2bd68e85d3 remove TODO (now moved to issues) 2020-11-21 19:06:15 -05:00
Dustin J. Mitchell
0e792ad584 use a v1 .taskcluster.yml 2020-11-21 18:55:29 -05:00
Dustin J. Mitchell
785f3940c5 Merge pull request #17 from djmitche/issue13
rename to taskchampion
2020-11-21 18:01:44 -05:00
Dustin J. Mitchell
1fa6155b22 rename to taskchampion 2020-11-21 18:01:25 -05:00
Dustin J. Mitchell
8ed54e9728 Merge pull request #16 from djmitche/issue15
remove taskwarrior compatibility stuff
2020-11-21 17:54:01 -05:00
Dustin J. Mitchell
3ddaff07ca remove taskwarrior compatibility stuff 2020-11-21 17:52:09 -05:00
Tomas Babej
351965a87b Update copyright to 2020 2020-11-21 12:43:40 -05:00
Tomas Babej
d1b867f7b5 tests: Do not require line buffering
Test runner complains about it not being supported with binary files and
it does not look like it affects any tests in the first place anyway.
2020-11-21 12:41:18 -05:00
Tomas Babej
52c49169b4 tests: Use updated unittest methods 2020-11-21 12:39:03 -05:00
Tomas Babej
720c561b75 tests: Use updated Thread object API
Replace isAlive with is_alive as the former is no longer supported in
Python 3.9.
2020-11-21 12:38:14 -05:00
Leo
041248e7cc Uncoditionally include errno.h instead of guessing
POSIX tells us that it is errno.h, musl fails to build with -Werror
because it redirects sys/errno.h->errno.h and uses #warning
2020-11-21 12:27:29 -05:00
Tomas Babej
a09f9d48ab Update copyright to 2020 2020-11-21 12:27:05 -05:00
Tomas Babej
d81b999fa9 tests: Do not require line buffering
Test runner complains about it not being supported with binary files and
it does not look like it affects any tests in the first place anyway.
2020-11-21 12:27:05 -05:00
Tomas Babej
02db131fa1 tests: Use updated unittest method 2020-11-21 12:27:05 -05:00
Tomas Babej
407d66d681 tests: Use updated Thread object API
Replace isAlive with is_alive as the former is no longer supported in
Python 3.9.
2020-11-21 12:27:05 -05:00
HTunne
75c0e41fcc Make modify and delete commands respect rc.recurrence.confirmation config option. 2020-11-21 12:26:41 -05:00
Tomas Babej
3855ba9136 travis: Disable testing on gentoo
We would love to test on gentoo, but this currently breaks CI. Open to
community contributions to improve our coverage of this distrubition.
2020-11-21 00:59:35 -05:00
Tomas Babej
c47c7536f5 travis: Disable testing on gentoo
We would love to test on gentoo, but this currently breaks CI. Open to
community contributions to improve our coverage of this distrubition.
2020-11-21 00:27:36 -05:00
Paul Beckingham
4729876714 Updated build to use C++17 by default 2020-11-20 17:47:13 -05:00
Paul Beckingham
4ae73ba871 Updated libshared for bug fix 2020-11-20 17:36:01 -05:00
Michał Mirosław
7b2e68d176 Fix parsing of "PnM" recurrence periods
Due to not accounting for the leading "P", getNextRecurrence would always return the same datetime, breaking all generic "PnM" periods and leading to an infinite loop in generateDueDates.
2020-11-17 10:52:47 -05:00
Tin Lai
e0f24c0b19 speed up fish autocompletion and more features in completion options 2020-11-17 10:51:40 -05:00
Tom Dörr
07856c2d33 Update LICENSE
By changing the first line to `The MIT License`, users can see the license on the Github Taskwarrior main page.
2020-11-17 10:49:58 -05:00
Martin Michlmayr
174507e7ad Fix typos 2020-11-17 10:41:13 -05:00
javabird25
81183ae7d1 Fix SIGSEGV when substituting sequence with shorter one 2020-11-17 10:40:38 -05:00
Yoichi Hirai
ab443a8ecf Fix one test about backslash
The test was failing because it expected "Created task 1"
but it saw "Created task 0a436fd8-7f06-4168-a66d-bbc940498af9".

Instead, the new code looks at the description of task 1.
2020-11-17 10:39:37 -05:00
Tomas Babej
6727d08da0 Context: Do not set new-uuid by default
This reverts part of f6b2a6541c, which
(likely accidentally) re-introduced the new-uuid verbosity setting as a
default.
2020-09-18 21:33:54 -04:00
Tomas Babej
b1c95ec1d2 docs: Document changes to new-uuid behaviour
The behaviour of new-uuid was altered in
4e80d5d5fd but not documented.
2020-09-18 21:26:37 -04:00
Tomas Babej
6bfb275dcc CmdAdd: Make sure a UUID is printed if ID does not exist
This fixes a regression was introduced in
4e80d5d5fd.

Currently, if a user (with default configuration) adds a completed or
deleted task, they do not get a confirmation message ("Created task
..."). This is due to the fact that:
a) new-uuid is not set by default
b) new-id is set by default, but only prints message if the added task
   is in pending or waiting state

Make sure to print a message containing UUID reference if the newly
added task is in completed or deleted state.
2020-09-18 21:10:59 -04:00
Tomas Babej
10b64adb58 CmdAdd: Make sure a UUID is printed if ID does not exist
This fixes a regression was introduced in
4e80d5d5fd.

Currently, if a user (with default configuration) adds a completed or
deleted task, they do not get a confirmation message ("Created task
..."). This is due to the fact that:
a) new-uuid is not set by default
b) new-id is set by default, but only prints message if the added task
   is in pending or waiting state

Make sure to print a message containing UUID reference if the newly
added task is in completed or deleted state.
2020-09-18 00:24:50 -04:00
John Nguyen
cf45f28cc0 Fix typo in man page
The example for _unique has typo, should be using attribute for project.
Fixes #2277
2020-05-17 09:48:24 +02:00
Matthew Martin
4b67f10cb1 Install zsh completer to site-functions 2020-03-12 10:43:34 -04:00
Jochen Sprickerhof
48dff115c2 hook onModify into task undo (Closes: #2213) 2020-03-12 10:42:52 -04:00
0xACE
64243e6ec1 Poor implementation of linewrap restored to task
This addresses #2023

For many years linewrap has been broken in taskwarrior, rendering the
application basically useless in terminals with short widths and tasks
containing URLs in them... This janky line wrap patch sort of works but
introduces other minor graphical glitches.

But seeing as no one took the time to fix it over the years, here some a
small salvation to those who suffer as much as me.

One problem of this patch is, when a line is wrapped, it may be 1 column
smaller than the terminal width, resulting in each line not fully
utilizing the terminal width.

This patch is not polished and could probably need to be tended by
someone who cares more.
2020-03-12 10:40:24 -04:00
Marc Cornellà
dcdf7127e0 Correctly parse projects with spaces in zsh completion
This is the same as how the `_task_zshids` array is created.
See https://github.com/robbyrussell/oh-my-zsh/issues/8249
2020-03-12 10:39:24 -04:00
timbuntu
938e9130d6 Fixed report colors in calendar 2020-03-12 10:38:03 -04:00
Vladimir Rusinov
abddb1ea8e Fix add.t Test1549 test failure.
The test was failing on my machine on fresh checkout. It failed because
somehow both new-id and new-uuid verbosity were set during the test, so
TW defaulted to printing out uuid, which did not match the assertion.

Test fixed by explicitly setting verbosity to new-id.
2020-03-12 10:37:14 -04:00
Dustin J. Mitchell
ae93d91b6e more CLI compatibility WIP 2020-02-02 18:46:27 -05:00
Dustin J. Mitchell
cfdb266800 add some cli parsing stuff 2020-02-02 15:11:14 -05:00
Dustin J. Mitchell
61b2de132b support rebuilding the working set 2020-01-19 15:55:15 -05:00
Dustin J. Mitchell
12980da5fd add working_set support to taskstorage 2020-01-19 14:56:09 -05:00
Dustin J. Mitchell
ad08991292 Start on making replica higher-level, with some TODO's 2020-01-19 14:03:03 -05:00
Dustin J. Mitchell
4203f232ad docs 2020-01-12 16:00:40 -05:00
Dustin J. Mitchell
f8977c9ce3 use kv in cli 2020-01-12 13:51:58 -05:00
Dustin J. Mitchell
4172c7012c simplify the taskstorage methods 2020-01-12 13:48:16 -05:00
Dustin J. Mitchell
2f973d3e62 task storge implementation based on kv / LMDB 2020-01-12 13:36:02 -05:00
Dustin J. Mitchell
afd11d08a7 make the TaskStorage API fallible everywhere 2020-01-05 15:39:34 -05:00
Dustin J. Mitchell
611b1cd68f factor storage out to a trait object 2020-01-05 15:00:08 -05:00
Dustin J. Mitchell
e228c99b83 partial refactor to separate taskdb and storage 2020-01-05 13:17:07 -05:00
Dustin J. Mitchell
727db7f669 name taskwarrior-rest 2020-01-02 21:08:17 -05:00
Dustin J. Mitchell
752d05e96b merge README 2020-01-01 19:57:01 -05:00
Dustin J. Mitchell
2d000fdeb9 merge ot with rask 2020-01-01 19:54:26 -05:00
Dustin J. Mitchell
e17943d878 add a simple CLI 2020-01-01 18:53:12 -05:00
Dustin J. Mitchell
b898ec1fde add a Replica 2020-01-01 18:22:01 -05:00
Dustin J. Mitchell
f6ffcc7039 add proptest for action sequences 2020-01-01 17:45:50 -05:00
Dustin J. Mitchell
04f6b1d421 add test for syncing deletes and creates 2019-12-29 13:38:36 -05:00
Dustin J. Mitchell
41acb1fa1e Add support for Delete operations 2019-12-29 13:16:42 -05:00
Dustin J. Mitchell
e83bdc28cd use strings as values, with option to allow removing 2019-12-29 11:54:59 -05:00
Dustin J. Mitchell
e5bd258e84 comments about applying 2019-12-29 11:09:37 -05:00
Dustin J. Mitchell
4a62413e21 add TODO 2019-12-29 11:09:05 -05:00
Dustin J. Mitchell
59f4e6abd7 actually support synchronization 2019-12-28 22:46:10 -05:00
Dustin J. Mitchell
0a2293a9c5 use proptest to check invariants 2019-12-28 14:31:37 -05:00
Dustin J. Mitchell
8799636c1a add a transform function for operations 2019-12-28 12:17:42 -05:00
Dustin J. Mitchell
72a12c751e remove text operations 2019-12-28 11:45:26 -05:00
Dustin J. Mitchell
0c3e4d5c2e add a tasks method to db 2019-12-28 11:44:45 -05:00
Dustin J. Mitchell
83b2318a06 backup scheme 2019-12-28 11:24:20 -05:00
Dustin J. Mitchell
e5a92826f6 add taskdb 2019-12-28 11:20:35 -05:00
Dustin J. Mitchell
10c7dd28b9 add README 2019-12-25 17:44:40 -05:00
Dustin J. Mitchell
05d26285e3 implement TextOperation 2019-12-25 10:51:44 -05:00
Paul Beckingham
e186d375dc Issue 2091: duration of task is set to a wrong and extremely big value
- Thanks to Wray Zheng.
2019-08-11 19:57:52 -04:00
Paul Beckingham
04bc1a7998 - Thanks to Adrien Lemaire. 2019-08-11 14:01:22 -04:00
Anthony VB
cad8bec8b6 Fix a typo. 2019-07-20 14:24:16 -04:00
Anthony VB
352161d3a8 Proofreading to give default values.
Per the beginning of the man page, the summary line should give the default value. This isn't the case in a few places, so I changed them. (No guarantees I found them all.)
2019-07-20 14:24:16 -04:00
Paul Beckingham
3bdc28fdb3 Added Anthony VB to AUTHORS 2019-07-20 14:21:18 -04:00
Anthony VB
0ec12860c1 Reorganise calendar section. 2019-07-20 14:18:54 -04:00
Doron Behar
82ed5d35b7 Truely remove priority from hardcoded attrributes 2019-05-20 09:43:24 -04:00
Doron Behar
e1998346e1 Complete attributes dynamically incl UDAs
This is the major refinement of the completion: Most of it just moved
the global variables from up above to inside _task_filter so every array
of attributes will be calculated dynamically there.
2019-05-20 09:43:24 -04:00
Doron Behar
f04d66e10b Fix small TODO and move main function to bottom 2019-05-20 09:43:24 -04:00
Doron Behar
da49dbdd84 Add TODOs to make zsh completion awesome 2019-05-20 09:43:24 -04:00
Paul Beckingham
4bbde50d9f Docs: Added Florian 2019-04-28 14:57:48 -04:00
Florian Heiderich
3ec8ace7d1 fix typo ("tests" -> "test") 2019-04-28 14:40:42 -04:00
Chad Phillips
8ebf79e1df fix stale reference to empty priority color config
color.pri.none is now color.uda.priority.none
2019-04-28 14:19:54 -04:00
Paul Beckingham
ac97523275 libshared: Upgraded to 4178b49db1c5fed5006a4ab6aa2df3f9937f770b 2019-04-26 20:54:16 -04:00
Paul Beckingham
fb97883bef Build: Do not set CMP0037 on CMake 3.11.0 and above
- This policy is no longer necessary because CMake issue #16062, which caused
  incorrect warnings to be shown, has been resolved in 3.11.0.
- Thanks to Janik Rabe
2019-04-26 20:45:46 -04:00
Paul Beckingham
415ce36861 Updated AUTHOR and Changelog 2019-04-14 19:47:52 -04:00
Paul Beckingham
18395a8dc0 - Thanks to Chad Phillips 2019-04-14 19:47:41 -04:00
Chad Phillips
2ac1787dae JSON encode/decode string UDAs
Previously, multiline string UDAs were not preserved when editing
a task via 'task X edit'. String UDAs are now JSON encoded/decoded
during the edit cycle to allow preservation of multiline
2019-04-14 19:45:58 -04:00
Lionel Miller
62944f3c7d Workaround for alias grep=rg in fish 2019-04-14 19:45:54 -04:00
mrossinek
f06eb12d10 Add unit test 2019-04-14 19:45:13 -04:00
mrossinek
0e58226f3b Fix #1999 2019-04-14 19:45:11 -04:00
mrossinek
2821c5ac44 Add missing newline 2019-04-14 19:45:04 -04:00
mrossinek
b0c9bf6c8d Fix #2002 2019-04-14 19:44:35 -04:00
Paul Beckingham
d01000e255 Updated AUTHOR and Changelog 2019-04-14 19:40:55 -04:00
Paul Beckingham
66f013ac13 - Thanks to Chad Phillips 2019-04-14 19:38:01 -04:00
Chad Phillips
cd62e65a13 JSON encode/decode string UDAs
Previously, multiline string UDAs were not preserved when editing
a task via 'task X edit'. String UDAs are now JSON encoded/decoded
during the edit cycle to allow preservation of multiline
2019-04-14 19:34:57 -04:00
Paul Beckingham
b87703eb39 Tests: REmoved check for absence of a segfault
- Testing for the absence of a segfault is not a good test.
2019-03-03 10:50:49 -05:00
Paul Beckingham
863038905c Tests: Version test removed
- Veriying that the diag  command emits the correct commit SHA1 creates
  sporadic failures when CMake has not been run against the current
  commit, and this is not a good test.
2019-03-03 10:34:09 -05:00
Paul Beckingham
2eb488359d Certs: Updated test certs 2019-03-03 10:03:42 -05:00
Paul Beckingham
9030d90894 Docs: Updated to add Lionel and remove dev comment 2019-03-03 09:57:36 -05:00
Lionel Miller
e961181b64 Workaround for alias grep=rg in fish 2019-03-03 08:55:28 -05:00
Janik Rabe
cb7f603b89 Fix rc.verbose default value in taskrc(5) 2019-03-02 19:52:49 -05:00
Paul Beckingham
473eb628bc Revert "Workaround for alias grep=rg in fish"
This reverts commit 672611435a.
2019-03-02 19:48:09 -05:00
Lionel Miller
672611435a Workaround for alias grep=rg in fish 2019-03-02 19:45:21 -05:00
mrossinek
5aaee7678f Add unit test 2019-03-02 19:44:18 -05:00
mrossinek
6fbd400e77 Fix #1999 2019-03-02 19:44:18 -05:00
mrossinek
16d967ad01 Add missing newline 2019-03-02 19:43:13 -05:00
mrossinek
254e737e00 Fix #2002 2019-03-02 19:43:13 -05:00
Paul Beckingham
3c73af7964 Updated Copyright 2019-03-02 14:33:04 -05:00
Paul Beckingham
e8f183b403 libshared: Upgraded to aa4471478a88ad53ee8f087700726341a8a80157 2019-03-02 14:21:00 -05:00
Paul Beckingham
3313e1f6cc Updated copyright 2019-03-02 14:13:31 -05:00
Paul Beckingham
9fd12498ed CmdVersion: Updated YYYY 2019-03-02 14:06:39 -05:00
Paul Beckingham
49a5937ace Test: Updated diag test expectation 2019-03-02 14:03:34 -05:00
Paul Beckingham
bf8fa9a504 libshared: Upgraded to 4c0d722188a5362695064e443df505d23c524170 2019-03-02 14:01:12 -05:00
Janik Rabe
f6b2a6541c Fix rc.verbose documentation in taskrc(5) 2019-02-14 08:02:58 -05:00
Paul Beckingham
e97146a463 Added taiyu-len 2019-02-07 08:42:44 -05:00
taiyu
7c7400b367 Update man pages to reflect changes 2019-02-07 08:41:25 -05:00
taiyu
5150eb4b0f update tests for changes 2019-02-07 08:41:25 -05:00
taiyu
fd441bdd62 increase cli priority, respect override verbosity. 2019-02-07 08:41:25 -05:00
taiyu
d2b1662a39 Simplify CLI2::get* methods. allow rc=... 2019-02-07 08:41:25 -05:00
taiyu
8514071f19 applyOverrides: add messages after overrides 2019-02-07 08:41:25 -05:00
Tomas Babej
a6405e8935 README: Make the build badge point to 2.5.2 branch 2019-02-07 08:37:59 -05:00
Tomas Babej
d457bca59a tests: Add CentOS7 CI testing support 2019-02-07 08:37:59 -05:00
Tomas Babej
8f8a04fdb5 tests: Install libfaketime in all containers 2019-02-07 08:37:59 -05:00
Tomas Babej
a4ce40add4 tests: Improve bytes python3 compatibility 2019-02-07 08:37:59 -05:00
Tomas Babej
b8347821c4 tests: due:yesterday does not match current year on 1st of January 2019-02-07 08:37:59 -05:00
Tomas Babej
3f97a034c7 tests: mkstemp_exec needs argument in bytes 2019-02-07 08:37:59 -05:00
Tomas Babej
74949bb049 tests: Fix incorrect assert method 2019-02-07 08:37:59 -05:00
Tomas Babej
9e7f259d03 tests: Do not use filter objects
The filter objects are not well handled by the unittest framework, pass
a concrete number of occurences instead.
2019-02-07 08:37:59 -05:00
Tomas Babej
b8b06e6680 tests: Encode input data for the subprocess
Needed for Python2/3 compatibility.
2019-02-07 08:37:59 -05:00
Tomas Babej
928befeea2 tests: Use verbose output when running the tests 2019-02-07 08:37:59 -05:00
Tomas Babej
e171c0aa9b travis: Reorder platform entries, move Gentoo to the top
Since the Gentoo build takes the longest, it makes sense to start
executing it as first.
2019-02-07 08:37:59 -05:00
Tomas Babej
2140298af2 tests: Do not explicitly require Python 2.7 2019-02-07 08:37:59 -05:00
Tomas Babej
adece30891 tests: Add Archlinux 2018 platform 2019-02-07 08:37:59 -05:00
Tomas Babej
012430cfb6 tests: Add OpenSUSE platform 2019-02-07 08:37:59 -05:00
Tomas Babej
0b20a7eef8 tests: Add Debian Testing as a platform 2019-02-07 08:37:59 -05:00
Tomas Babej
82102f59ba tests: Add gentoo platform 2019-02-07 08:37:59 -05:00
Tomas Babej
539dae2148 travis: Be explicit about Mac OS X version 2019-02-07 08:37:59 -05:00
Tomas Babej
d3d7055103 travis: Use docker run instead of docker up 2019-02-07 08:37:59 -05:00
Tomas Babej
ea2c4d96b4 tests: Add support for Fedora 29 2019-02-07 08:37:59 -05:00
Tomas Babej
9518cdc1e9 tests: Add testing support for Ubuntu 18.04 2019-02-07 08:37:59 -05:00
Tomas Babej
290fb4380c travis: Use travis_terminate instead of exit 2019-02-07 08:37:59 -05:00
Tomas Babej
420892d7a9 travis: Make sure error codes propagate outside of the if clause 2019-02-07 08:37:59 -05:00
Tomas Babej
7153a03a5f tests: Properly set the xtrace flag 2019-02-07 08:37:59 -05:00
Tomas Babej
53b5e5c8ee travis: Execute tests instead of rebuilding the container again in the script phase 2019-02-07 08:37:59 -05:00
Tomas Babej
d748650691 tests: Add OS X test sript 2019-02-07 08:37:59 -05:00
Tomas Babej
e850823809 travis: Set generic language to avoid Ruby default 2019-02-07 08:37:59 -05:00
Tomas Babej
d19b3aa837 travis: Remove syntax errors 2019-02-07 08:37:59 -05:00
Tomas Babej
534303795a travis: Remove language 2019-02-07 08:37:59 -05:00
Tomas Babej
d543b4c625 travis: Fix bash syntax error 2019-02-07 08:37:59 -05:00
Tomas Babej
4fdb042ad4 travis: Specify test matrix explicitly and add OS X 2019-02-07 08:37:59 -05:00
Tomas Babej
276039cf35 README: Move badges below the heading 2019-02-07 08:37:59 -05:00
Tomas Babej
0ef837bc19 README: Add travis badge 2019-02-07 08:37:59 -05:00
Tomas Babej
f6e7ac2e5e tests: Add intial version of the Travis CI file 2019-02-07 08:37:59 -05:00
Tomas Babej
cf9f6e958c tests: Add test container for Debian Stable 2019-02-07 08:37:59 -05:00
Tomas Babej
c2e1a9216d tests: Rename docker-compose service to keep naming consistent 2019-02-07 08:37:59 -05:00
Tomas Babej
a1b3cfece4 tests: Add docker-compose file 2019-02-07 08:37:59 -05:00
Tomas Babej
b5cf4ca56e tests: Change default command of the test containers to end with ./problems
This makes sure that non-zero return code is propagated out of the
container.
2019-02-07 08:37:59 -05:00
Tomas Babej
a071694324 test: Workaround the cyclic dependencies between the libraries 2019-02-07 08:37:59 -05:00
Tomas Babej
3c4b27608e test: Add fedora28 and ubuntu1604 dockerfiles
These dockerfiles can be used to run taskwarrior's test suite on the
respective platforms using the following commands:

$ cd taskwarrior.git
$ docker build -t test-tw-fedora28 -f test/docker/fedora28 .
$ docker run test-tw-fedora28

For ubuntu, replace fedora28 with ubuntu1604.
2019-02-07 08:37:59 -05:00
Paul Beckingham
306c628c34 Updated Changelog 2019-02-07 08:36:07 -05:00
Janik Rabe
a8acff9f7f CmdHistory: repeat unit if a larger unit changes
In history and ghistory commands, repeat the smaller units when a larger unit
changes.  For example, if January 2019 is displayed immediately after January
2018, re-show the "January" label instead of only showing the year change.
2019-02-07 08:33:09 -05:00
Paul Beckingham
16d55ed102 Added Beka and mrossinek 2019-02-07 08:31:14 -05:00
Paul Beckingham
b6da775958 Update summary.t 2019-02-07 08:20:14 -05:00
Paul Beckingham
2e72ae5068 Update project.t 2019-02-07 08:20:14 -05:00
Paul Beckingham
8df69597f6 Update sort.cpp 2019-02-07 08:20:14 -05:00
Paul Beckingham
32d14bc085 Update sort.cpp 2019-02-07 08:20:14 -05:00
Paul Beckingham
803f4a5017 Update CmdProjects.cpp 2019-02-07 08:20:14 -05:00
mrossinek
6a8beed7f5 Extract project sorting function 2019-02-07 08:20:14 -05:00
mrossinek
7cb341ee05 Extend bug fix of #1917 to summary command 2019-02-07 08:20:14 -05:00
mrossinek
f5cd9cde05 Properly sort projects into an ordered list in project command 2019-02-07 08:20:14 -05:00
mrossinek
9c89870c71 Add unit-tests to verify fix for 1904 2019-02-07 08:20:14 -05:00
mrossinek
28974cd794 Extend bug fix of #1917 to summary command 2019-02-07 08:20:14 -05:00
mrossinek
54a57e9954 Fix bug #1917 (previously known as TW-1904) 2019-02-07 08:20:14 -05:00
Laurence
f580cc5f6f Update description of command uuids 2019-02-04 12:30:23 +01:00
mrossinek
76e355c602 Add documentation on context usage 2019-02-04 12:27:30 +01:00
Tomas Babej
5ae4ed1076 README: Make the travis badge point to correct repository 2019-01-02 19:45:43 -05:00
Tomas Babej
f95d1d0472 tests: Add CentOS7 CI testing support 2019-01-02 13:24:11 -05:00
Tomas Babej
fa84dce496 Merge pull request #2097 from mrossinek/test_fixes
Fix variant_subtract test case after #2095
2019-01-02 13:10:18 -05:00
mrossinek
517ea11c4c Mark project.t 1455 as expected failure 2019-01-02 17:32:03 +01:00
mrossinek
447830dc68 Fix wait.t to correct expected output 2019-01-02 16:36:45 +01:00
mrossinek
fc3b336f1a Fix variant_subtract test case after PR #2095 2019-01-02 16:32:16 +01:00
Paul Beckingham
6fcbe2efbd Merge pull request #2080 from corbolais/2.6.0
add (shortened) ID column to timesheet output
2019-01-02 08:03:50 -05:00
Paul Beckingham
24943a441d Merge pull request #2076 from djmitche/task-decode-comment
Docs: make comment on Task::decode match reality
2019-01-02 08:02:58 -05:00
Paul Beckingham
660b7c09af Merge pull request #2095 from tbabej/test_fixes
TW-1511: Interpret string subtraction as concanetation with a dash
2019-01-02 08:02:12 -05:00
Paul Beckingham
01696a307b Merge pull request #2094 from tbabej/2.6.0
Multi-OS Travis-based CI service
2019-01-02 08:00:41 -05:00
Tomas Babej
bf2cd0f5e4 TW-1511: Interpret string subtraction as concanetation with a dash
Fixes #1537 (previously known as TW-1511).
2019-01-01 21:56:06 -05:00
Tomas Babej
9fa94516ad tests: Make sure expected message is printed out
Information about newly logged task is only printed if new-uuid
verbosity flag is configured.
2019-01-01 21:31:00 -05:00
Tomas Babej
55ee8c9233 tests: Install libfaketime in all containers 2019-01-01 20:19:52 -05:00
Tomas Babej
9b690fca57 tests: Improve bytes python3 compatibility 2019-01-01 20:11:13 -05:00
Tomas Babej
7aac91f29f tests: due:yesterday does not match current year on 1st of January 2019-01-01 20:02:20 -05:00
Tomas Babej
0e052b6415 tests: We are enforcing C++14 compliance
From the 2.6.0 version onwards we are enforcing C++14 compliance. Test
accordingly.
2019-01-01 19:46:32 -05:00
Tomas Babej
ef3c1bc090 tests: mkstemp_exec needs argument in bytes 2019-01-01 19:44:39 -05:00
Tomas Babej
cd52782d2f tests: Fix incorrect assert method 2019-01-01 19:44:39 -05:00
Tomas Babej
07c21e79ad tests: Do not use filter objects
The filter objects are not well handled by the unittest framework, pass
a concrete number of occurences instead.
2019-01-01 19:44:39 -05:00
Tomas Babej
7c37940549 tests: Encode input data for the subprocess
Needed for Python2/3 compatibility.
2019-01-01 19:09:54 -05:00
Tomas Babej
f55468d5aa tests: Use verbose output when running the tests 2019-01-01 15:44:19 -05:00
Tomas Babej
2f247c712c travis: Reorder platform entries, move Gentoo to the top
Since the Gentoo build takes the longest, it makes sense to start
executing it as first.
2019-01-01 14:59:44 -05:00
Tomas Babej
675b8e2798 tests: Do not explicitly require Python 2.7 2019-01-01 14:53:44 -05:00
Tomas Babej
8ae7e1677b tests: Add Archlinux 2018 platform 2019-01-01 14:25:57 -05:00
Tomas Babej
86c7c84fec tests: Add OpenSUSE platform 2019-01-01 14:10:23 -05:00
Tomas Babej
dcbefe51bb tests: Add Debian Testing as a platform 2019-01-01 13:51:47 -05:00
Tomas Babej
a50f442c10 tests: Add gentoo platform 2019-01-01 13:25:07 -05:00
Tomas Babej
84b481b374 travis: Be explicit about Mac OS X version 2019-01-01 12:19:05 -05:00
Tomas Babej
6af6894d14 travis: Use docker run instead of docker up 2019-01-01 12:12:11 -05:00
Tomas Babej
eed5a30ecc tests: Add support for Fedora 29 2019-01-01 12:01:24 -05:00
Tomas Babej
4dbad4c1e2 tests: Add testing support for Ubuntu 18.04 2019-01-01 12:00:19 -05:00
Tomas Babej
8c8ffa1173 travis: Use travis_terminate instead of exit 2019-01-01 11:53:21 -05:00
Tomas Babej
1d7d86e709 travis: Make sure error codes propagate outside of the if clause 2019-01-01 11:19:36 -05:00
Tomas Babej
043bcbfb2f tests: Properly set the xtrace flag 2019-01-01 11:12:02 -05:00
Tomas Babej
311334f4eb travis: Execute tests instead of rebuilding the container again in the script phase 2019-01-01 11:07:02 -05:00
Tomas Babej
90170a5820 tests: Add OS X test sript 2019-01-01 11:04:24 -05:00
Tomas Babej
9222e80439 travis: Set generic language to avoid Ruby default 2019-01-01 10:55:46 -05:00
Tomas Babej
27443493e0 travis: Remove syntax errors 2019-01-01 10:54:02 -05:00
Tomas Babej
754583a552 travis: Remove language 2019-01-01 10:49:56 -05:00
Tomas Babej
bc6a0156df travis: Fix bash syntax error 2019-01-01 10:49:05 -05:00
Tomas Babej
7270167aca travis: Specify test matrix explicitly and add OS X 2019-01-01 10:38:16 -05:00
Tomas Babej
ca124fc030 README: Move badges below the heading 2019-01-01 10:23:19 -05:00
Tomas Babej
ebd320b063 README: Add travis badge 2019-01-01 10:22:34 -05:00
Tomas Babej
6d0f17620f tests: Add intial version of the Travis CI file 2019-01-01 10:19:45 -05:00
Tomas Babej
c11f0da7df tests: Rename docker-compose service to keep naming consistent 2019-01-01 10:19:32 -05:00
Tomas Babej
156f9c5270 tests: Add docker-compose file 2019-01-01 10:13:31 -05:00
Tomas Babej
a7baa9fef2 tests: Add test container for Debian Stable 2019-01-01 09:34:09 -05:00
Tomas Babej
ac8c6d52fc tests: Change default command of the test containers to end with ./problems
This makes sure that non-zero return code is propagated out of the
container.
2019-01-01 09:33:29 -05:00
Tomas Babej
9a8890f479 test: Workaround the cyclic dependencies between the libraries 2019-01-01 08:59:46 -05:00
Tomas Babej
3e41a4b01f test: Add fedora28 and ubuntu1604 dockerfiles
These dockerfiles can be used to run taskwarrior's test suite on the
respective platforms using the following commands:

$ cd taskwarrior.git
$ docker build -t test-tw-fedora28 -f test/docker/fedora28 .
$ docker run test-tw-fedora28

For ubuntu, replace fedora28 with ubuntu1604.
2019-01-01 08:48:36 -05:00
Tomas Babej
8066e4e6e2 meta: Update copyright year 2019-01-01 08:46:21 -05:00
Tomas Babej
b5d7845c6d libshared: Update submodule 2019-01-01 08:45:37 -05:00
Me
0b04f74a9a add (shortened) ID column to timesheet output
Signed-off-by: Me <corbolais@gmail.com>
2018-12-08 03:34:28 +01:00
Dustin J. Mitchell
93ce28ed15 add README 2018-11-24 17:00:44 -05:00
Dustin J. Mitchell
1809fe3674 build on push 2018-11-24 16:55:53 -05:00
Dustin J. Mitchell
63d5f78cb8 add .taskcluster.yml 2018-11-24 16:55:01 -05:00
Paul Beckingham
493bbadb18 Create index.html 2018-11-21 12:14:15 -05:00
Dustin J. Mitchell
d0744d5178 refactor to a library, add integration tests 2018-11-12 18:25:47 -05:00
Dustin J. Mitchell
9f310c76bd use a distinct error_chain for the tdb submodule 2018-11-12 17:42:19 -05:00
Dustin J. Mitchell
7fd94f6495 Remove unused methods from Pig 2018-11-12 09:39:59 -05:00
Dustin J. Mitchell
1272acb893 Use error_chain 2018-11-11 21:09:53 -05:00
Dustin J. Mitchell
f9d950e621 rename Nibbler to Pig as per latest code in Taskwarrior 2018-11-10 19:46:32 -05:00
Dustin J. Mitchell
f1599d8029 Docs: make comment on Task::decode match reality 2018-11-10 19:42:15 -05:00
Dustin J. Mitchell
6a66b7a84b parse all defined fields in tasks 2018-11-10 19:34:23 -05:00
Dustin J. Mitchell
de5e4e134c parse into tasks 2018-11-09 20:48:29 -05:00
Dustin J. Mitchell
d1c09f2561 parse a TDB2 file 2018-11-09 19:34:55 -05:00
Simon Désaulniers
df70bb0173 doc/man: ready tasks sorted with started tasks 1st 2018-08-19 09:24:07 -04:00
Alexandre Provencio
78033ea2d3 Updates vim's ftdetect
As described on issue #2032.
2018-08-19 09:21:27 -04:00
Paul Beckingham
bd221a5adc TW #2004: "shell" should not be expand to "exec tasksh"
- Thanks to Arvedui
2018-08-12 10:28:40 -04:00
Paul Beckingham
1c4647708a TW #2047: Exiting the task editor with an error code doesn't remove the lock file
- Thanks to coaxial
2018-08-12 09:57:32 -04:00
Paul Beckingham
96f9c3ef45 TW #2053: Do not set CMP0037 on CMake 3.11.0 and above
- Thanks to Janik Rabe
2018-08-12 09:49:39 -04:00
Paul Beckingham
252a3cea8a Merge pull request #2053 from janikrabe/cmake-cmp0037-fix
Do not set CMP0037 on CMake 3.11.0 and above
2018-08-12 09:48:50 -04:00
Paul Beckingham
9c89a229fa TW #2007: Compute number of current tasks correctly
- Thanks to Janik Rabe
2018-08-12 09:46:51 -04:00
Paul Beckingham
e0adb4536c Merge pull request #2052 from janikrabe/burndown-current
TW #2007: Compute number of current tasks correctly
2018-08-12 09:45:34 -04:00
Paul Beckingham
5d0a577deb TW #2051: doc/man: ready tasks sorted with started tasks 1st
- Thanks to Simon Désaulniers
2018-08-12 09:43:36 -04:00
Paul Beckingham
d571483410 Merge pull request #2051 from sim590/man-ready-sort-method
doc/man: ready tasks sorted with started tasks 1st
2018-08-12 09:40:03 -04:00
Janik Rabe
32b3afc8d0 Do not set CMP0037 on CMake 3.11.0 and above
This policy is no longer necessary because CMake issue #16062, which
caused incorrect warnings to be shown, has been resolved in 3.11.0.
2018-08-11 15:38:28 +03:00
Janik Rabe
e2573d4516 TW #2007: Compute number of current tasks correctly
Closes #2007
2018-08-08 16:47:33 +03:00
Simon Désaulniers
0c89f98967 doc/man: ready tasks sorted with started tasks 1st 2018-07-27 17:37:54 -04:00
Paul Beckingham
8e20c48df4 Merge pull request #2041 from aleprovencio/2.6.0
Updates vim's ftdetect
2018-07-07 09:06:54 -04:00
Alexandre Provencio
07e612a8c2 Updates vim's ftdetect
As described on issue #2032.
2018-06-17 20:14:59 -03:00
Vladimir Shulyak
08d985f40c Display task ID when unwaiting task 2018-06-03 14:16:35 -04:00
Paul Beckingham
4a42364775 Merge pull request #2033 from kraetzin/2.6.0
Display task ID when unwaiting task
2018-06-03 14:15:47 -04:00
Vladimir Shulyak
ca55624286 Display task ID when unwaiting task 2018-05-27 23:17:30 +01:00
Paul Beckingham
376d336525 libshared: Upgraded to 230c63bd385b2a5a6ee5eb431df54b0c5c229b4d 2018-05-26 10:00:05 -04:00
Paul Beckingham
edfa8ed4ea Cleanup: Removed file that was accidentally cherry-picked 2018-05-26 09:50:50 -04:00
Paul Beckingham
543251da21 Merge pull request #2031 from laurence6/2.6.0
Update copyright
2018-05-24 09:26:21 -04:00
Laurence
78bbcd25c6 Update copyright 2018-05-24 00:11:33 -04:00
Paul Beckingham
09f9b9e625 Build: Fixed missed context reference 2018-05-14 01:12:19 -04:00
Paul Beckingham
27055ea1b9 TW #2020: reserved.lines is not affecting the burndown height
- Thanks to ad₋si.
2018-05-14 01:04:59 -04:00
Paul Beckingham
9fefe4a378 Docs: Removed incorrect URL 2018-05-14 01:04:45 -04:00
Simon Ruderich
c5ac2e2d00 Docs: mention "urgency" as possible attribute for filters 2018-05-14 01:04:35 -04:00
Paul Beckingham
75ad38f244 TW #1922: Can't find export scripts
- Thanks to tom-doerr
2018-05-14 01:04:26 -04:00
Paul Beckingham
1133f02df7 TW #1986: [Nit] Update DEVELOPER.md after migration to Github
- Thanks to Kirill Bobyrev
2018-05-14 01:04:15 -04:00
Paul Beckingham
ce924349c1 Code cleanup: used auto 2018-05-14 01:04:02 -04:00
Paul Beckingham
24a68b2ad8 TW #1973: Don't nag when no tasks are READY
- Thanks to Martin F. Krafft
2018-05-14 01:03:54 -04:00
Kirill Bobyrev
06521a1b55 Update notes regarding C++14 support
4a929197ae introduced C++14 support.
The build will now terminate unless the compiler supports C++14
dialect. The documentation does not reflect that: this commit updates
few reference files to actually say that the building process requires
a C++14-compliant compiler.
2018-05-14 01:03:31 -04:00
Paul Beckingham
3594e1886f libshared: Upgraded to 999c824cf1139d208e884042eddef87a1d76fb7e 2018-05-14 01:03:17 -04:00
Paul Beckingham
aacf75d414 Updated AUTHORS 2018-05-14 01:03:08 -04:00
Kirill Bobyrev
511a235215 Use nullptr instead lf C-styled NULL 2018-05-14 01:02:57 -04:00
Simon Ruderich
6f19a3fbae Docs: remove duplication in task-color.5
In the example there are more than the three listed wildcard patterns.
Instead of listing them all, list just one. This is enough to describe
the idea.
2018-05-14 01:02:24 -04:00
Simon Ruderich
c6267c526d Docs: fix incorrect value in task-color.5 2018-05-14 01:02:16 -04:00
Simon Ruderich
90cc2a441d Context: remove duplicate default value for rule.precedence.color 2018-05-14 01:02:07 -04:00
Simon Ruderich
286fca3935 Docs: fix outdated link in task-sync.5 2018-05-14 01:01:51 -04:00
Paul Beckingham
9bfc8c2ff6 Docs: Updated AUTHORS 2018-05-14 01:01:42 -04:00
Paul Beckingham
e3dab66ad1 Update task-sync.5.in
Downgraded 'Always secure' to 'Secure communication', for accuracy.
2018-05-14 01:01:32 -04:00
Simon Ruderich
eabda340ef Docs: remove instructions which are already default in task-color.5
The text even mentions, that it might not be necessary. So just remove
this section.
2018-05-14 01:01:22 -04:00
Simon Ruderich
d0bbe2a0e8 Docs: don't mark cloud provides as "always secure" in task-sync.5
The data is stored remotely and possibly (depending on the provider) not
transfered securely.
2018-05-14 01:01:14 -04:00
Simon Ruderich
7441e6cf74 Docs: remove insecure CA configuration from task-sync.5
The option taskd.trust is documented in taskrc.5 if the user really
needs it. But we shouldn't suggest an insecure configuration in the
default setup instructions.
2018-05-14 01:01:06 -04:00
Simon Ruderich
a87dfe62ad Docs: sync "SEE ALSO" sections of task-color.5 and task-sync.5 2018-05-14 01:00:56 -04:00
Simon Ruderich
02470c5647 Docs: always use https:// link for taskwarrior.org 2018-05-14 01:00:44 -04:00
Simon Ruderich
c7edf914e1 Always use https:// link for opensource.org
It was already used in a few places, make this consistent.
2018-05-14 01:00:23 -04:00
Simon Ruderich
f98084bbd3 Docs: always use <> tags for placeholders in man pages 2018-05-14 00:57:53 -04:00
Simon Ruderich
ef538ef9da Docs: use unabbreviated "task colors" command in taskrc.5 2018-05-14 00:57:45 -04:00
Simon Ruderich
f492d423dd Docs: quote values for calendar.details in taskrc.5 2018-05-14 00:57:33 -04:00
Simon Ruderich
abc00ab6ca Docs: try to clarify what falls under header/footnote verbose settings 2018-05-14 00:57:00 -04:00
Simon Ruderich
243f613444 Docs: "recur" also implies "footnote" 2018-05-14 00:56:49 -04:00
Simon Ruderich
8fdd18f897 Docs: fix typos in taskrc man page 2018-05-14 00:56:33 -04:00
Paul Beckingham
822909d046 Docs: Added Tiago 2018-05-14 00:56:25 -04:00
Tiago Matias
95becc4f6f typo -> very simply syntax -> very simple syntax 2018-05-14 00:56:08 -04:00
Federico Hernandez
11a281b862 Changed to a more generic URL for testing 2018-05-14 00:55:57 -04:00
Federico Hernandez
b97e1400e6 Updated URL references 2018-05-14 00:55:45 -04:00
Federico Hernandez
a8c0646d18 Updated URLs and copyright year 2018-05-14 00:55:30 -04:00
Federico Hernandez
98175bac4b Udated URL in .gitmodules to point to GH 2018-05-14 00:54:42 -04:00
Paul Beckingham
81e65b43bf Docs: Updated Changelog with pull request info 2018-05-14 00:54:33 -04:00
Jakub Wilk
23d63ccb44 Tests: Don't hardcode errno constants
The values of ENOENT and ESRCH are architecture-dependent, so don't
assume they're always 2 and 3.
2018-05-14 00:54:10 -04:00
Paul Beckingham
59342bc10f TW-54/#115: Reduce output for timesheet
- Thanks to Aikido guy.
2018-05-14 00:53:49 -04:00
Paul Beckingham
ea81976ee9 TW-1917/#1930: "above" does a string comparison, even when the value is numeric
- Thanks to Dirk Deimeke.
2018-05-14 00:53:40 -04:00
Paul Beckingham
53088dae65 Build: C++14 support added 2018-05-14 00:53:32 -04:00
Paul Beckingham
2623d101e7 - Thanks to php-coder 2018-05-14 00:53:09 -04:00
Paul Beckingham
4f7ca3f2d1 TW-1906/#1919: sync sub-command is missing from task(1) manual page
- Thanks to rjc.
2018-05-14 00:52:45 -04:00
Dirk Deimeke
0411fd1ddc README.md
- Added instructions for failing clone of libshared.git
2018-05-14 00:52:07 -04:00
Paul Beckingham
eed9664173 Docs: Updated URLs 2018-05-14 00:51:53 -04:00
Paul Beckingham
7410b01cad Docs: Fixed md 2018-05-14 00:51:00 -04:00
Paul Beckingham
a9a60c4f9c Docs: Fixed md 2018-05-14 00:50:49 -04:00
Paul Beckingham
3a79bd908a Docs: Updated README.md
- Thanks to Thomas Lauf
2018-05-14 00:50:25 -04:00
Paul Beckingham
573ad560b6 Templates: Combined two sentences for readability 2018-05-14 00:50:10 -04:00
Federico Hernandez
e09699a029 Reformatting 2018-05-14 00:49:59 -04:00
Federico Hernandez
a6833c62f8 Made the question a checkbox
To be checked off by the submitter.
2018-05-14 00:49:47 -04:00
Dirk Deimeke
3585d21a41 Added Link to "How to request a feature" 2018-05-14 00:49:32 -04:00
Paul Beckingham
f34b2e23cb Github: typo 2018-05-14 00:45:06 -04:00
Paul Beckingham
0e38cdc4a9 Github: Added pull request template 2018-05-14 00:44:57 -04:00
Paul Beckingham
683141d14a Issues: /Updated template for feature requests 2018-05-14 00:44:48 -04:00
Paul Beckingham
36fac4efe1 Docs: Updated URLs 2018-05-14 00:44:34 -04:00
Paul Beckingham
ea4a23654f Issues: Create issue-template.md 2018-05-14 00:43:32 -04:00
Lynoure Braakman
cf42496970 Update and rename DEVELOPER to DEVELOPER.md
Rough markdownification, no content changes
2018-05-14 00:43:16 -04:00
buhtz
6db06524b1 URL formating 2018-05-14 00:42:04 -04:00
Paul Beckingham
a4c72238d0 Docs: Updated man page discussing rc.recurrence 2018-05-14 00:41:54 -04:00
Paul Beckingham
ae27a1b343 Eval: Eliminated string def 2018-05-14 00:41:45 -04:00
Mark Scannell
c7f2739dda Portability: Updated to make main re-entrant()
- New INSTALL instructions to emscripten, and AUTHORS for contribution.
2018-05-14 00:40:59 -04:00
Paul Beckingham
3d7c681ed0 Lexer: Migrated to unicodeLatinDigit 2018-05-14 00:36:16 -04:00
Paul Beckingham
0086a51311 Lexer: Migrated to unicodeLatinAlpha 2018-05-14 00:35:38 -04:00
Paul Beckingham
ea26369f80 Lexer: Migrated to unicodeHexDigit 2018-05-14 00:35:27 -04:00
Paul Beckingham
49dedfbc86 Lexer: Migrated to unicodeWhitespace 2018-05-14 00:35:17 -04:00
Paul Beckingham
2c89688b46 TW-1947: "urgency.over" filter seems to not work correct
- Thanks to Marc Richter.
2018-05-14 00:34:46 -04:00
Paul Beckingham
d5a0b616e1 Lexer: Fixed DOM missing lookahead 2018-05-14 00:34:32 -04:00
Paul Beckingham
e0dbf4b691 Tests: Fixed broken color merge tests 2018-05-14 00:34:22 -04:00
Paul Beckingham
41491843de Tests: Fixed brokend color.footnote test 2018-05-14 00:34:10 -04:00
Paul Beckingham
34c5a68635 I18N: Removed language build settings 2018-05-14 00:34:00 -04:00
Paul Beckingham
7be5b86618 l10n: Eliminated i18n.h 2018-05-14 00:33:43 -04:00
Paul Beckingham
1ea9721e90 l10n: Eliminated some column labels 2018-05-14 00:33:20 -04:00
Paul Beckingham
0ffadafe3c l10n: Eliminated some column labels 2018-05-14 00:33:08 -04:00
Paul Beckingham
a9adf06d98 l10n: Eliminated some column labels 2018-05-14 00:32:54 -04:00
Paul Beckingham
540484f92f l10n: Eliminated some column labels 2018-05-14 00:32:44 -04:00
Paul Beckingham
238f81f621 l10n: Eliminated some column labels 2018-05-14 00:32:34 -04:00
Paul Beckingham
20508c45f2 l10n: Eliminated some column labels 2018-05-14 00:32:07 -04:00
Paul Beckingham
ef58767834 l10n: Eliminated some column labels 2018-05-14 00:31:43 -04:00
Paul Beckingham
0ef1166b0b DOM: No more I18N 2018-05-14 00:30:10 -04:00
Paul Beckingham
6e3c556d0b l10n: Eliminated some column labels 2018-05-14 00:30:01 -04:00
Paul Beckingham
02f786694e l10n: Eliminated some column labels 2018-05-14 00:29:47 -04:00
Paul Beckingham
4b485ad570 l10n: Eliminated some column labels 2018-05-14 00:29:34 -04:00
Paul Beckingham
3df06e6482 l10n: Eliminated some column labels 2018-05-14 00:29:16 -04:00
Paul Beckingham
c94f481f2a l10n: Eliminated some column labels 2018-05-14 00:28:45 -04:00
Paul Beckingham
41f2133693 l10n: Eliminated some column labels 2018-05-14 00:26:40 -04:00
Paul Beckingham
2872b44b45 l10n: Eliminated some column labels 2018-05-14 00:22:16 -04:00
Paul Beckingham
5c9d96d5a8 l10n: Eliminated some column labels 2018-05-14 00:20:44 -04:00
Paul Beckingham
3d8be2119e l10n: Eliminated some column labels 2018-05-14 00:20:32 -04:00
Paul Beckingham
569522b007 l10n: Eliminated some column labels 2018-05-14 00:20:20 -04:00
Paul Beckingham
dccb8081bc l10n: Eliminated some column labels 2018-05-14 00:20:06 -04:00
Paul Beckingham
df5cf4ff9c l10n: Eliminated some column labels 2018-05-14 00:19:56 -04:00
Paul Beckingham
03ede837e4 l10n: Eliminated some column labels 2018-05-14 00:19:42 -04:00
Paul Beckingham
e6fd4efd08 l10n: Eliminated some column labels 2018-05-14 00:19:22 -04:00
Paul Beckingham
1cd810f8f6 l10n: Eliminated some column labels 2018-05-14 00:19:10 -04:00
Paul Beckingham
ce1c98ec52 l10n: Eliminated some column labels 2018-05-14 00:18:58 -04:00
Paul Beckingham
42a9352f48 l10n: Eliminated some column labels 2018-05-14 00:18:41 -04:00
Paul Beckingham
a7b915299a l10n: Eliminated STRING_COLUMN_LABEL_ADDED, STRING_COLUMN_LABEL_AGE 2018-05-14 00:18:27 -04:00
Paul Beckingham
4819584714 l10n: Eliminated STRING_COLUMN_LABEL_ACTIVE, STRING_COLUMN_LABEL_STARTED 2018-05-14 00:18:16 -04:00
Paul Beckingham
d58184efa1 l10n: Eliminated STRING_COLUMN_EXAMPLES_* 2018-05-14 00:18:04 -04:00
Paul Beckingham
1f833dcae2 l10n: Eliminated STRING_COLUMN_LABEL_DESC 2018-05-14 00:17:54 -04:00
Paul Beckingham
c66e8917c8 l10n: Eliminated some STRING_COLUMN_EXAMPLES_* 2018-05-14 00:17:41 -04:00
Paul Beckingham
247355f15b l10n: Eliminated STRING_CMD_UNDO_* 2018-05-14 00:17:31 -04:00
Paul Beckingham
5112479372 l10n: Eliminated STRING_CMD_UDAS_* 2018-05-14 00:17:17 -04:00
Paul Beckingham
5dd5de0d76 l10n: Eliminated STRING_CMD_COMTAGS_USAGE 2018-05-14 00:17:01 -04:00
Paul Beckingham
0339feecda l10n: Eliminated STRING_CMD_*IDS_* 2018-05-14 00:16:48 -04:00
Paul Beckingham
2098b0166f l10n: Eliminated STRING_CMD_CUSTOM_* 2018-05-14 00:16:35 -04:00
Paul Beckingham
28d60d8b10 l10n: Eliminated STRING_CMD_ZSHATTS_USAGE 2018-05-14 00:16:21 -04:00
Paul Beckingham
a730a482c3 l10n: Eliminated STRING_CMD_*COMMANDS_* 2018-05-14 00:16:09 -04:00
Paul Beckingham
bd836d763c l10n: Eliminated STRING_CMD_EXEC_* 2018-05-14 00:15:51 -04:00
Paul Beckingham
a7d75c9071 l10n: Eliminated STRING_CMD_URGENCY_* 2018-05-14 00:15:37 -04:00
Paul Beckingham
fdc045a230 l10n: Eliminated STRING_CMD_TAGS_* 2018-05-14 00:15:20 -04:00
Paul Beckingham
faf6ecceda l10n: Eliminated STRING_CMD_CAL_* 2018-05-14 00:14:59 -04:00
Paul Beckingham
3a2b5df05d l10n: Eliminated STRING_CMD_ALIASES_* 2018-05-14 00:14:38 -04:00
Paul Beckingham
6c4e861eac l10n: Eliminated STRING_CMD_INFO_* 2018-05-14 00:14:11 -04:00
Paul Beckingham
a21a523896 l10n: Eliminated STRING_CMD_REPORTS_* 2018-05-14 00:13:52 -04:00
Paul Beckingham
4b77ee5c25 Code cleanup: Removed unnecessary include 2018-05-14 00:13:34 -04:00
Paul Beckingham
8badebca26 l10n: Eliminated STRING_CMD_IMPORT_* 2018-05-14 00:13:27 -04:00
Paul Beckingham
b5388cb3a4 Code cleanup: Removed unnecessary include 2018-05-14 00:13:13 -04:00
Paul Beckingham
4b75865e47 l10n: Eliminated STRING_CMD_ADD_* 2018-05-14 00:13:04 -04:00
Paul Beckingham
9640f5a02b Code cleanup: Removed unnecessary include 2018-05-14 00:12:47 -04:00
Paul Beckingham
881c38e301 L10N: Normalized files 2018-05-14 00:10:55 -04:00
Paul Beckingham
20b9ead82a l10n: Eliminated STRING_CMD_UNIQUE_* 2018-05-14 00:07:43 -04:00
Paul Beckingham
fb62263871 Code cleanup: Removed unnecessary include 2018-05-14 00:07:29 -04:00
Paul Beckingham
c5f24f6481 l10n: Eliminated STRING_CMD_LOG_* 2018-05-14 00:07:17 -04:00
Paul Beckingham
c2fad1fa90 L10N: Eliminated check_translations.sh 2018-05-14 00:06:55 -04:00
Paul Beckingham
02f3ce74d7 l10n: Eliminated STRING_CMD_{G,}HISTORY_* 2018-05-14 00:06:36 -04:00
Paul Beckingham
489515968c l10n: Eliminated STRING_CMD_CALC_* 2018-05-14 00:06:16 -04:00
Paul Beckingham
76b7dc3820 Code cleanup: Removed unnecessary include 2018-05-14 00:06:03 -04:00
Paul Beckingham
7f23fe3f64 l10n: Eliminated STRING_CMD_VERSION_* 2018-05-14 00:05:53 -04:00
Paul Beckingham
e269626982 CmdVersion: Uses libshared osName 2018-05-14 00:05:41 -04:00
Paul Beckingham
92adb55c7a l10n: Eliminated STRING_CMD_PREPEND_* 2018-05-14 00:05:30 -04:00
Paul Beckingham
8e01baa49a l10n: Eliminated STRING_CMD_TIMESHEET_* 2018-05-14 00:05:17 -04:00
Paul Beckingham
375294a56c l10n: Eliminated STRING_CMD_CONFIG_* 2018-05-14 00:04:55 -04:00
Paul Beckingham
765c12a2d1 l10n: Eliminated STRING_CMD_CONTEXT_* 2018-05-14 00:04:44 -04:00
Paul Beckingham
5d08b64c23 l10n: Eliminated STRING_CMD_COLOR_* 2018-05-14 00:04:24 -04:00
Paul Beckingham
86f260672b l10n: Eliminated STRING_FEEDBACK_NO_TASKS_SP 2018-05-14 00:04:12 -04:00
Paul Beckingham
98f02b62b2 l10n: Eliminated STRING_CMD_APPEND_* 2018-05-14 00:03:46 -04:00
Paul Beckingham
44a94b0b50 l10n: Eliminated STRING_CMD_PURGE_* 2018-05-14 00:03:34 -04:00
Paul Beckingham
12171e3318 l10n: Eliminated STRING_CMD_PROJECTS_* 2018-05-14 00:03:18 -04:00
Paul Beckingham
cafe1478e6 l10n: Eliminated STRING_CMD_DENO_* 2018-05-14 00:03:07 -04:00
Paul Beckingham
bbc9c0bb47 l10n: Eliminated STRING_CMD_ANNO_* 2018-05-14 00:02:53 -04:00
Paul Beckingham
df7967c6f8 l10n: Eliminated STRING_CMD_COUNT_* 2018-05-14 00:02:40 -04:00
Paul Beckingham
7c5dca0553 l10n: Eliminated STRING_CMD_STATS_* 2018-05-14 00:02:25 -04:00
Paul Beckingham
b3aa531f4a l10n: Eliminated STRING_CMD_SUMMARY_* 2018-05-14 00:02:12 -04:00
Paul Beckingham
e830176d13 l10n: Eliminated STRING_CMD_BURN_* 2018-05-14 00:01:55 -04:00
Paul Beckingham
23cc9b23e3 l10n: Eliminated STRING_CMD_GET_* 2018-05-14 00:01:29 -04:00
Paul Beckingham
dbf76874b9 l10n: Eliminated STRING_CMD_SHOW* 2018-05-14 00:01:15 -04:00
Paul Beckingham
cf1395afd8 l10n: Eliminated STRING_CMD_DELETE_* 2018-05-14 00:01:00 -04:00
Paul Beckingham
7b2e45692e l10n: Eliminated STRING_CMD_UDAS_* 2018-05-14 00:00:48 -04:00
Paul Beckingham
0e2cb5866c l10n: Eliminated STRING_COLUMN_LABEL_DEP* 2018-05-14 00:00:34 -04:00
Paul Beckingham
c44a6433fd calc: Fixed string param 2018-05-14 00:00:21 -04:00
Paul Beckingham
a66fe6de73 l10n: Eliminated STRING_CMD_DUPLICATE_* 2018-05-13 23:59:48 -04:00
Paul Beckingham
026ac59326 l10n: Eliminated STRING_CMD_MODIFY_* 2018-05-13 23:59:30 -04:00
Paul Beckingham
4e9267eed2 l10n: Eliminated STRING_CMD_SYNC_* 2018-05-13 23:59:15 -04:00
Paul Beckingham
0daaf05782 l10n: Eliminated STRING_CMD_DIAG_* 2018-05-13 23:58:59 -04:00
Paul Beckingham
9244828618 l10n: Eliminated STRING_CMD_DONE_* 2018-05-13 23:58:25 -04:00
Paul Beckingham
3d1a430b62 l10n: Eliminated STRING_CMD_STOP_* 2018-05-13 23:58:00 -04:00
Paul Beckingham
4f08212415 l10n: Eliminated STRING_CMD_LOGO_* 2018-05-13 23:57:42 -04:00
Paul Beckingham
58ff0e74f4 l10n: Eliminated STRING_CMD_START_* 2018-05-13 23:57:29 -04:00
Paul Beckingham
61a377cc29 l10n: Eliminated STRING_TASK_VALID_DESC 2018-05-13 23:57:09 -04:00
Paul Beckingham
a3bf98deff l10n: Eliminated STRING_COLUMN_LABEL_ID 2018-05-13 23:56:54 -04:00
Paul Beckingham
083efc265b l10n: Eliminated STRING_COLUMN_LABEL_TASKS 2018-05-13 23:56:36 -04:00
Paul Beckingham
bbb00ac7ef l10n: Eliminated STRING_COLUMN_BAD_FORMAT 2018-05-13 23:56:22 -04:00
Paul Beckingham
78c2c1c2da l10n: Eliminated STRING_COLUMN_BAD_NAME 2018-05-13 23:56:10 -04:00
Paul Beckingham
7123784734 l10n: Eliminated STRING_ERROR_NO_FILTER 2018-05-13 23:55:46 -04:00
Paul Beckingham
47ef45ee38 l10n: Eliminated STRING_ERROR_DETAILS 2018-05-13 23:55:30 -04:00
Paul Beckingham
ead5322340 l10n: Eliminated STRING_INVALID_MOD 2018-05-13 23:55:17 -04:00
Paul Beckingham
67c5bc97ce l10n: Eliminated STRING_UDA_COLLISION 2018-05-13 23:55:02 -04:00
Paul Beckingham
5301e98942 l10n: Eliminated STRING_LOCALIZATION_* 2018-05-13 23:54:51 -04:00
Paul Beckingham
cece9201bb l10n: Eliminated STRING_UDA_TYPE 2018-05-13 23:54:36 -04:00
Paul Beckingham
1857882d9e l10n: Eliminated STRING_CMD_COLUMNS_* 2018-05-13 23:54:23 -04:00
Paul Beckingham
e1fda18164 l10n: Eliminated STRING_HELPER_PROJECT_* 2018-05-13 23:54:06 -04:00
Paul Beckingham
977e2a3c35 l10n: Eliminated STRING_ERROR_BAD_STATUS 2018-05-13 23:53:50 -04:00
Paul Beckingham
92ecc4d7fd l10n: Eliminated STRING_INFINITE_LOOP 2018-05-13 23:53:37 -04:00
Paul Beckingham
a432cec468 l10n: Eliminated STRING_TRIVIAL_INPUT 2018-05-13 23:53:23 -04:00
Paul Beckingham
f27ddea013 l10n: Eliminated STRING_ERROR_PREFIX 2018-05-13 23:53:11 -04:00
Paul Beckingham
e2ffcbd3d6 l10n: Eliminated STRING_PARSER_* 2018-05-13 23:52:59 -04:00
Paul Beckingham
e65f1ecffe l10n: Eliminated STRING_EDIT_* 2018-05-13 23:52:43 -04:00
Paul Beckingham
51241c5a95 l10n: Eliminated STRING_RECORD_* 2018-05-13 23:52:11 -04:00
Paul Beckingham
9925b4e3a9 l10n: Eliminated STRING_COLOR_UNRECOGNIZED 2018-05-13 23:51:57 -04:00
Paul Beckingham
cdb1326219 l10n: Eliminated STRING_EDIT_TABLE_HEADER 2018-05-13 23:51:44 -04:00
Paul Beckingham
d8bd32aee8 l10n: Eliminated STRING_DEPEND_* 2018-05-13 23:51:31 -04:00
Paul Beckingham
7b3d2e5cd6 l10n: Eliminated STRING_CONFIG_* 2018-05-13 23:51:14 -04:00
Paul Beckingham
58dce57b7e l10n: Eliminated STRING_CONFIG_DEPRECATED_COL 2018-05-13 23:50:57 -04:00
Paul Beckingham
c0281b21f0 l10n: Eliminated STRING_CONFIG_DEPRECATED_VAR 2018-05-13 23:50:46 -04:00
Paul Beckingham
a43ec0189a l10n: Eliminated STRING_DATE_BAD_WEEKSTART 2018-05-13 23:50:32 -04:00
Paul Beckingham
f6d2fe6093 l10n: Eliminated STRING_DATE_INVALID_FORMAT 2018-05-13 23:50:18 -04:00
Paul Beckingham
d56487e509 l10n: Eliminated STRING_DATE_<month> 2018-05-13 23:50:04 -04:00
Paul Beckingham
4763b1da6e l10n: Eliminated STRING_DATE_*DAY 2018-05-13 23:49:41 -04:00
Paul Beckingham
8eec5c82c2 l10n: Eliminated STRING_CMD_CONFIG_NO_CHANGE 2018-05-13 23:49:27 -04:00
Paul Beckingham
2854aba5e3 l10n: Eliminated STRING_TDB2_* 2018-05-13 23:49:05 -04:00
Paul Beckingham
b1a593d27e l10n: Eliminated STRING_VIEW_TOO_SMALL 2018-05-13 23:48:41 -04:00
Paul Beckingham
61d4cb2a6e l10n: Eliminated STRING_RECUR_CREATE 2018-05-13 23:48:27 -04:00
Paul Beckingham
72383a7d7f l10n: Eliminated STRING_TASK_VALID_RECUR 2018-05-13 23:48:06 -04:00
Paul Beckingham
1fc7dc3951 l10n: Eliminated STRING_CMD_EXPORT_USAGE 2018-05-13 23:46:42 -04:00
Paul Beckingham
8e87f3f969 l10n: Eliminated STRING_LEGACY_PRIORITY 2018-05-13 23:46:28 -04:00
Paul Beckingham
bc90b9a4e1 l10n: Eliminated STRING_UTIL_CONFIRM_* 2018-05-13 23:46:17 -04:00
Paul Beckingham
ff02cf8613 l10n: Eliminated STRING_ERROR_CONFIRM_SIGINT 2018-05-13 23:45:58 -04:00
Paul Beckingham
7361431799 l10n: Eliminated STRING_DOM_UNREC 2018-05-13 23:42:42 -04:00
Paul Beckingham
bd41582b97 l10n: Eliminated STRING_EVAL_* 2018-05-13 23:42:20 -04:00
Paul Beckingham
d4edf577eb l10n: Eliminated translation instructions 2018-05-13 23:42:00 -04:00
Paul Beckingham
12865e3b85 l10n: Eliminated STRING_CMD_VERSION_* 2018-05-13 23:41:37 -04:00
Paul Beckingham
f2e725b3c9 l10n: Eliminated STRING_HOOKS_* 2018-05-13 23:41:18 -04:00
Paul Beckingham
f1049b4a7a l10n: Eliminated STRING_TASK_INVALID_DUR 2018-05-13 23:41:00 -04:00
Paul Beckingham
fe93e72f0b l10n: Eliminated STRING_COLUMN_LABEL_PARENT 2018-05-13 23:40:41 -04:00
Paul Beckingham
8d1f66cd41 Utils: Removed l10n utility 2018-05-13 23:38:24 -04:00
Paul Beckingham
06734487ee Docs: Added note about translations no longer being supported 2018-05-13 23:38:01 -04:00
Paul Beckingham
aefe06b296 l10n: Eliminated STRING_CMD_HELP_USAGE_LABEL 2018-05-13 23:37:20 -04:00
Paul Beckingham
3576e8f784 l10n: Eliminated STRING_CMD_HELP_USAGE_DESC 2018-05-13 23:37:05 -04:00
Paul Beckingham
5cf7c12dc9 l10n: Eliminated STRING_CMD_HELP_ALIASED 2018-05-13 23:36:53 -04:00
Paul Beckingham
fc418d1195 l10n: Eliminated STRING_CMD_HELP_TEXT 2018-05-13 23:36:41 -04:00
Paul Beckingham
b942cae98e l10n: Eliminated STRING_CMD_HELP_TEXT 2018-05-13 23:36:24 -04:00
Paul Beckingham
3987828294 l10n: Eliminated STRING_CONTEXT_CREATE_RC 2018-05-13 23:35:42 -04:00
Paul Beckingham
e25a64af9b l10n: Eliminated STRING_CONTEXT_DATA_OVERRIDE 2018-05-13 23:35:27 -04:00
Paul Beckingham
4ce0113395 l10n: Eliminated STRING_CONTEXT_RC_OVERRIDE 2018-05-13 23:35:11 -04:00
Paul Beckingham
efff69bc49 l10n: Eliminated STRING_CONTEXT_NEED_RC 2018-05-13 23:34:56 -04:00
Paul Beckingham
487d504486 l10n: Eliminated STRING_CONFIG_BAD_WRITE 2018-05-13 23:34:38 -04:00
Paul Beckingham
47e9aa9abb l10n: Eliminated STRING_ASSUME_INFO 2018-05-13 23:34:26 -04:00
Paul Beckingham
4ad3c48f2d l10n: Eliminated STRING_DATE_SUNDAY 2018-05-13 23:34:12 -04:00
Paul Beckingham
bfcb3eac49 l10n: Eliminated STRING_INVALID_SORT_COL 2018-05-13 23:33:59 -04:00
Paul Beckingham
b30e19b23c l10n removal of STRING_COLUMN_LABEL_MASK, STRING_COLUMN_LABEL_MASK_IDX 2018-05-13 23:33:39 -04:00
Paul Beckingham
3f14491e31 l10n removal of STRING_UDA_NUMERIC 2018-05-13 23:31:28 -04:00
Paul Beckingham
798cd5b658 l10n removal of STRING_UNKNOWN_ERROR 2018-05-13 23:31:15 -04:00
Paul Beckingham
f24ea5e56c libshared: Updated to 1fa5dcbf53a280857e35436aef6beb6a37266e33 2018-05-13 23:30:53 -04:00
Paul Beckingham
216d4d63bc Copyright 2018 2018-05-13 23:30:21 -04:00
Paul Beckingham
018770e894 TI-91: Timewarrior does not compile on DragonFly
- Thanks to Michael Neumann.
2018-05-13 23:27:51 -04:00
Paul Beckingham
2e2bdb0d0d Docs: Updated ChangeLog 2018-05-13 23:27:36 -04:00
Paul Beckingham
3ad683a370 Test: Improved C+ Core Guidelines compliance 2018-05-13 23:27:25 -04:00
Paul Beckingham
ad21e86f06 TW-1938: Adjust behaviour of new-uuid and new-id verbosity levels
- Thanks to Paul J. Fenwick.
2018-05-13 23:27:03 -04:00
Paul Fenwick
4e80d5d5fd [TW-1938] Resolve conflicts between new-id and new-uuid
- new-uuid is *not* set by default
- new-uuid overrides new-id when set

The reasoning is that new-uuid is mostly used by code (eg: Python's
taskw module), whereas new-id is mostly used by humans.

By making new-uuid not set by default, calling code can set it to
receive UUIDs (preserving 2.5.x behaviour), but humans can continue to
use integer task IDs.
2018-05-13 23:26:48 -04:00
Paul Beckingham
f7dc21d24d TW-1930: Typo in help
- Thanks to Kai HTML.
2018-05-13 23:26:28 -04:00
Paul Beckingham
5e93134ea4 TW-1935: Separate verbosity category for rc overrides
- Thanks to Paul J. Fenwick.
2018-05-13 23:26:11 -04:00
Paul Fenwick
8baf544040 CLI2/Context: Add vim hints
No need for vim to guess indent style with these handy vim hints!
2018-05-13 23:26:02 -04:00
Paul Fenwick
ec31b93447 CLI2,Config: Add 'override' verbosity option
This allows for 'override' messages to be silenced without requiring
footnotes be completely disabled.

The 'override' verbosity implies 'footnotes'.
2018-05-13 23:25:52 -04:00
Paul Fenwick
aefe16a6e2 Docs/CLI2: Additional dev docs for applyOverrides 2018-05-13 23:25:32 -04:00
Paul Beckingham
9d26327ae4 TW-1936: Tweak tests to have fuller TAP compliance
- Thanks to Paul J. Fenwick.
2018-05-13 23:25:20 -04:00
Paul Fenwick
f767ef2f19 test/problems: Updated to handle TAP spec output 2018-05-13 23:25:11 -04:00
Paul Fenwick
3b46553f47 Improve TAP compliance in test suite
This allows tools like `prove` to operate on our test-suite, allowing us
to do things like run recently-failing tests first, randomising test
order, and fancier reporting options.

Changes made:

- TAP output always goes to STDOUT, never to STDERR
- Skipped tests signaled as `ok 1 # skip` as per standard
- Expected failures signaled as `not ok 1 # TODO` as per standard
- `.prove` added to .gitignore
2018-05-13 23:24:57 -04:00
Paul Beckingham
b3192b94b4 Docs: Removed obsolete URL 2018-05-13 23:24:36 -04:00
Paul Beckingham
878256306c Error: Changed (1) error format 2018-05-13 23:24:26 -04:00
Tomas Babej
87bcbeda37 DEVELOPER: Update git repo url 2018-05-13 23:24:10 -04:00
Tomas Babej
7465410c5a context: Do not allow show, list or none as new context names
- Thanks to silviof.
2018-05-13 23:23:53 -04:00
Paul Beckingham
d987c9f5cd Scripts: Updated URLs 2018-05-13 23:22:41 -04:00
Tomas Babej
bb8092a5e4 tests: Add tests for complex and-or queries 2018-05-13 23:22:15 -04:00
Tomas Babej
f10d1432f3 tests: Add tests for complex and-or queries 2018-05-13 23:21:34 -04:00
Paul Beckingham
1f8eae0071 Reapplying include removal without libshared update 2018-05-13 23:21:22 -04:00
Paul Beckingham
9c5e3750c4 Revert "TLSClient: Remove double include"
This reverts commit 2321c17d8d.
2018-05-13 23:21:13 -04:00
Tomas Babej
3c1157fe5d TLSClient: Remove double include 2018-05-13 23:20:56 -04:00
Tomas Babej
de0b54cfb6 Update AUTHORS and ChangeLog file 2018-05-13 23:20:47 -04:00
Tomas Babej
7fc6d7c5bf TW-1910: Remove unreachable statement
- Thanks to Martin Strunz.
2018-05-13 23:20:35 -04:00
Paul Beckingham
bbd764d249 Tests: Added dom tests 2018-05-13 23:20:14 -04:00
Paul Beckingham
4c53da5be1 DOM: Implemented DOM::Node object 2018-05-13 23:19:59 -04:00
Paul Beckingham
eba68ac2ff DOM: Added dtor that delegate to DOM::Node 2018-05-13 23:19:20 -04:00
Paul Beckingham
0742e5fbbd Tests: Added tw.version DOM test 2018-05-13 23:18:59 -04:00
Paul Beckingham
8bbc35560f DOM: New reference tw.version. 2018-05-13 23:18:49 -04:00
Paul Beckingham
0ea3215e7a DOM: Fixed ::count bug 2018-05-13 23:18:30 -04:00
Paul Beckingham
d5a7769b4f Tests: Added first DOM test 2018-05-13 23:18:17 -04:00
Paul Beckingham
ba372e106f Tests: Renamed dom.t to make way for new DOM object tests 2018-05-13 23:18:00 -04:00
Paul Beckingham
f6566838f6 DOM: Added framework 2018-05-13 23:17:50 -04:00
Paul Beckingham
ee3e8c46dc DOM: Stubbed DOM tree 2018-05-13 23:17:26 -04:00
Paul Beckingham
4afe912f84 Docs: Added to AUTHORS file 2018-05-13 23:16:06 -04:00
Øyvind A. Holm
ac392561c1 Docs: Typo fix in task.1.in 2018-05-13 23:15:53 -04:00
Paul Beckingham
a1bdb8f99d Docs: Updated platform list 2018-05-13 23:15:41 -04:00
Tomas Babej
5e52acf63a INSTALL: Use https link for cmake.org 2018-05-13 23:13:39 -04:00
Tomas Babej
d6930e89ef LICENSE: Use https link instead of http 2018-05-13 23:13:29 -04:00
Paul Beckingham
be594918a9 libshared: Updated URL 2018-05-13 23:12:59 -04:00
Paul Beckingham
d81fb1d17f Recurrence: Relocate nag function out of the way 2018-05-13 23:11:39 -04:00
Paul Beckingham
66e3dc8218 TW-1903: grammar error -- There are 1 local changes.
- Thanks to Eric Hymowitz.
2018-05-13 23:10:59 -04:00
Paul Beckingham
5a1b069b73 CmdHistory: Corrected date label justification 2018-05-13 23:10:24 -04:00
Paul Beckingham
71ca9e8c4c Tests: Added WAITING tests 2018-05-13 23:10:06 -04:00
Paul Beckingham
9078ce5976 Tests: Added UNTIL tests 2018-05-13 23:09:05 -04:00
Paul Beckingham
91b45925e9 Tests: Added SCHEDULED tests 2018-05-13 23:08:10 -04:00
Paul Beckingham
45dda0c9fd Tests: Added READY tests 2018-05-13 23:08:02 -04:00
Paul Beckingham
79fc4f2d47 Tests: Made history tests independent of TZ 2018-05-13 23:07:53 -04:00
Paul Beckingham
0d6fee4053 Tests: Fixed bad regexes 2018-05-13 23:07:40 -04:00
Paul Beckingham
1bb34cb165 Tests: Fixed bad duplicate class/method name 2018-05-13 23:07:29 -04:00
Paul Beckingham
fdc37c037f CmdHistory: Formatting 2018-05-13 23:07:19 -04:00
Paul Beckingham
7490663d9e CmdHistory: Fixed bug where all strategies were rendered in the wrong width 2018-05-13 23:07:01 -04:00
Paul Beckingham
0b4fa9472d Tests: Fixed spaing issue in history test 2018-05-13 23:06:49 -04:00
Paul Beckingham
203ee9f1c2 CmdHistory: Set no-wrap for ghistory output 2018-05-13 23:06:39 -04:00
Paul Beckingham
3b97209663 CmdHistory: Removed table header coloring which is handled elsewhere 2018-05-13 23:06:30 -04:00
Paul Beckingham
2929c46d68 CmdHistory: Formatting 2018-05-13 23:06:19 -04:00
Paul Beckingham
f640dbb34e CmdHistory: Formatting 2018-05-13 23:06:06 -04:00
Paul Beckingham
315c455314 CmdSummary: Set no-wrap for progress bar column 2018-05-13 23:05:58 -04:00
Paul Beckingham
9295fa49e4 libshared: Updated to f1a3cd6bfabfb083fe3c26f580a15c0d60a92ee9 2018-05-13 23:05:43 -04:00
Paul Beckingham
8f2059a4c4 util: Removed unused strippedLength() function 2018-05-13 23:05:35 -04:00
Paul Beckingham
129fea0a76 Tests: Removed strippedLength() tests 2018-05-13 23:05:22 -04:00
Tomas Babej
dd1633f453 Remove unused auxiliary script task_functions.sh
The definitions contained in this file were used only by the already
removed 'context' bash script, see: fc6507803b
2018-05-13 23:05:09 -04:00
Paul Beckingham
a9ff077046 calc: Uses same configuration setting for Datetime/Duration as task 2018-05-13 23:04:57 -04:00
Paul Beckingham
2949a7e86a Tests: Removed taskd group features from test framework 2018-05-13 23:04:47 -04:00
Paul Beckingham
b9699bb93e CmdUDAs: Table headers consistent 2018-05-13 23:04:30 -04:00
Paul Beckingham
1f9bd897a7 CmdTimesheet: Table headers consistent 2018-05-13 23:04:19 -04:00
Paul Beckingham
c1445b3859 CmdTags: Table headers consistent 2018-05-13 23:04:10 -04:00
Paul Beckingham
44b3082234 CmdSummary: Table headers consistent 2018-05-13 23:04:02 -04:00
Paul Beckingham
3442e17f83 CmdStats: Table headers consistent 2018-05-13 23:03:46 -04:00
Paul Beckingham
5d3f97819b CmdShow: Table headers consistent 2018-05-13 23:03:36 -04:00
Paul Beckingham
9218462477 CmdReports: Table headers consistent 2018-05-13 23:03:27 -04:00
Paul Beckingham
4c802a6ff7 CmdProjects: Table headers consistent 2018-05-13 23:03:19 -04:00
Paul Beckingham
35f4681929 CmdInfo: Table headers consistent 2018-05-13 23:03:10 -04:00
Paul Beckingham
943b73b287 CmdHistory: Formatting 2018-05-13 23:02:56 -04:00
Paul Beckingham
15da5fc702 CmdHistory: Table headers consistent 2018-05-13 23:02:45 -04:00
Paul Beckingham
717e8c3be5 CmdContext: Table headers consistent 2018-05-13 23:02:36 -04:00
Paul Beckingham
d6b989c837 CmdCommands: Table headers consistent 2018-05-13 23:02:29 -04:00
Paul Beckingham
6703992cf3 CmdColumns: Table headers consistent 2018-05-13 23:02:16 -04:00
Paul Beckingham
412e804b93 CmdCalendar: Table headers consistent 2018-05-13 23:02:07 -04:00
Paul Beckingham
b162748e26 TDB2: Table headers consistent 2018-05-13 23:01:57 -04:00
Paul Beckingham
b6d65a434b util: Added helper function to properly manage table header color/underline 2018-05-13 23:01:45 -04:00
Paul Beckingham
78922d8433 Tests: Disabled ambiguous test (matching libshared) 2018-05-13 23:01:25 -04:00
Paul Beckingham
14474170f0 CmdInfo: Fixed header underline problem 2018-05-13 23:01:16 -04:00
Paul Beckingham
23c6950692 Tests: Syntax error in Python that went unnoticed 2018-05-13 23:01:00 -04:00
Paul Beckingham
55ba3b11cb libshared: Updated to 9a05fb5040008aa5f2c95e7ad060aa249367fe92 2018-05-13 23:00:40 -04:00
Paul Beckingham
67dc65a67d Tests: Lexer tests now stable with Datetime/duration features disabled 2018-05-13 23:00:30 -04:00
Paul Beckingham
70ce4eef7e Context: Selects Datetime/Duration features to match expectations 2018-05-13 23:00:19 -04:00
Paul Beckingham
82935c585a libshared: Updated to f2ac7ef9cc9f33f634f9aacd65ca9c1f828f50e3 2018-05-13 23:00:08 -04:00
Paul Beckingham
60fc24ce2b Cleanup: Formatting 2018-05-13 23:00:00 -04:00
Paul Beckingham
b3c1d94e75 libshared: Updated to b1686ad3e14c766faa3bdec3d5afe7152ace5e71 2018-05-13 22:59:47 -04:00
Paul Beckingham
2dba81e460 libshared: Updated to 6f0900d86743405f24d52f9eafe6c8e941d40ec3 2018-05-13 22:59:39 -04:00
Paul Beckingham
99f92beac9 libshared: Updated to 320f65961505019d276e5b36316bd11bdd0025b1 2018-05-13 22:59:31 -04:00
Paul Beckingham
f06ca50df9 Task: Uses named dates for YEAR virtual tag 2018-05-13 22:59:24 -04:00
Paul Beckingham
2485efa5f3 Task: Uses named dates for QUARTER virtual tag 2018-05-13 22:59:18 -04:00
Paul Beckingham
2e1e295ba4 Task: Uses named dates for MONTH virtual tag 2018-05-13 22:59:00 -04:00
Paul Beckingham
ec3e14c8f6 Task: Uses named dates to WEEK virtual tag 2018-05-13 22:58:51 -04:00
Paul Beckingham
9841ce1107 libshared: Updated to cbe3fd84a8950a42ed271a0dd8e7c4e1564b1333 2018-05-13 22:58:42 -04:00
Paul Beckingham
5c56f9008c libshared: Updated to 5bd493494fe2b1f0ab208e1edb4854316eeb5423 2018-05-13 22:58:31 -04:00
Paul Beckingham
6009e20aa4 Tests: Named date tests migrated to libshared 2018-05-13 22:58:25 -04:00
Paul Beckingham
850ef84b0b CMake: Eliminated Dates.cpp 2018-05-13 22:58:06 -04:00
Paul Beckingham
0143ced07c Task: Eliminated namedDates 2018-05-13 22:57:43 -04:00
Paul Beckingham
ce7f2e799e Tests: Eliminated old-style EOD math 2018-05-13 22:57:31 -04:00
Paul Beckingham
f030333766 Tests: Corrected lexer data type for newly-supported date types 2018-05-13 22:57:22 -04:00
Paul Beckingham
1039320a9c Tests: Eliminated namedDates 2018-05-13 22:57:12 -04:00
Paul Beckingham
d8526a388d CmdCalc: Eliminated namedDates 2018-05-13 22:56:53 -04:00
Paul Beckingham
06a78e1aff ColTypeString: Eliminated namedDates 2018-05-13 22:56:42 -04:00
Paul Beckingham
d6bbdb90b9 ColTypeNumeric: Eliminated namedDates 2018-05-13 22:56:31 -04:00
Paul Beckingham
2e34d9ffd4 ColTypeDuration: Eliminated namedDates 2018-05-13 22:56:22 -04:00
Paul Beckingham
8269a3a235 ColTypeDate: Eliminated namedDates 2018-05-13 22:56:11 -04:00
Paul Beckingham
c4b41734a9 ColTags: Eliminated namedDates 2018-05-13 22:56:02 -04:00
Paul Beckingham
23569ad5e7 ColRecur: Eliminated namedDates 2018-05-13 22:55:53 -04:00
Paul Beckingham
d390b02be5 ColProject: Eliminated namedDates 2018-05-13 22:55:45 -04:00
Paul Beckingham
fa71f846ae calc: Eliminated namedDates 2018-05-13 22:55:36 -04:00
Paul Beckingham
8f3d6c575d Filter: Eliminated namedDates 2018-05-13 22:55:27 -04:00
Paul Beckingham
d424a885bd Nibbler: Elimnated, migrated to Pig 2018-05-13 22:55:17 -04:00
Paul Beckingham
f2483538d2 Tests: Removed unused Nibbler tests 2018-05-13 22:54:58 -04:00
Paul Beckingham
15ceb61d96 ISO8601: Migrated all to Datetime/Duration 2018-05-13 22:54:39 -04:00
Paul Beckingham
c5f5b4a1f0 Tests: Eliminated ISO8601d tests 2018-05-13 22:53:10 -04:00
Paul Beckingham
c488e1d45c Tests: Eliminated ISO8601p tests 2018-05-13 22:52:31 -04:00
Paul Beckingham
6f727d3a39 Context: Eliminated ISO8601 2018-05-13 22:52:07 -04:00
Paul Beckingham
dfde9ba4b8 Variant: Migraded from ISO8601d to Datetime 2018-05-13 22:51:51 -04:00
Paul Beckingham
1571981b57 Lexer: Migrated from ISO8601p to Duration 2018-05-13 22:51:30 -04:00
Paul Beckingham
e20fb95a43 Lexer: Migrated from ISO8601d to Datetime 2018-05-13 22:51:18 -04:00
Paul Beckingham
3421f5bc18 libshared: Updated to 0dbe6c2818d4dc99f5d0089d6afb1559ed05ebf7 2018-05-13 22:51:08 -04:00
Paul Beckingham
88968af20b dependency: CPP Core Guidlines compliance 2018-05-13 22:51:02 -04:00
Paul Beckingham
42e0c17de7 sort: Greater use of auto 2018-05-13 22:50:51 -04:00
Paul Beckingham
4cbbaec833 CmdEdit: Properly captures an unmodified errno 2018-05-13 22:50:33 -04:00
Paul Beckingham
180e018a36 util: Removed unused header 2018-05-13 22:50:21 -04:00
Paul Beckingham
113358fa50 Docs: Typo 2018-05-13 22:50:11 -04:00
Paul Beckingham
37d65a6296 Docs: Typo 2018-05-13 22:50:02 -04:00
Paul Beckingham
ecd0646f41 Docs: Typo 2018-05-13 22:49:22 -04:00
Paul Beckingham
eb6cc1fa77 Docs: Typo 2018-05-13 22:47:42 -04:00
Paul Beckingham
6dffdaa471 Docs: Typo 2018-05-13 22:47:35 -04:00
Paul Beckingham
4dab89f7e6 Docs: Typo 2018-05-13 22:47:26 -04:00
Paul Beckingham
16ac2c70ab Docs: Updated build parallelism 2018-05-13 22:46:41 -04:00
Paul Beckingham
e7d9aaec4e Docs: Updated requirements 2018-05-13 22:46:28 -04:00
Paul Beckingham
2297b2d3a1 Feedback: Sync message now indicates how many local changes will be synced 2018-05-13 22:45:55 -04:00
Paul Beckingham
de8d9d88ff Lexer: Typo 2018-05-13 22:45:38 -04:00
Paul Beckingham
e2e9725812 Variant: Reduced dependence on ISO8601 2018-05-13 22:45:30 -04:00
Paul Beckingham
60e5c488ac DOM: tw.syncneeded should be 0/1, not false/true 2018-05-13 22:45:18 -04:00
Paul Beckingham
146a72b331 DOM: Partial DOM match is no longer an error 2018-05-13 22:45:07 -04:00
Paul Beckingham
65c351f50e Docs: Updated dev file 2018-05-13 22:44:47 -04:00
Paul Beckingham
18c8b41f3f Config: Eliminated 2018-05-13 22:44:21 -04:00
Paul Beckingham
f28b68661d Docs: Removed references to $TERM, which is irrelevant anyway 2018-05-13 22:43:58 -04:00
Paul Beckingham
1751bbaea6 Context: Added local config load timing 2018-05-13 22:43:45 -04:00
Paul Beckingham
b57a734625 Config: Migrated to libshared Configuration 2018-05-13 22:43:33 -04:00
Paul Beckingham
00bbca275c Config: Separated configuration from defaults 2018-05-13 22:43:06 -04:00
Paul Beckingham
e2271f9a03 Docs: Updated man page for DOM ref changes 2018-05-13 22:42:17 -04:00
Paul Beckingham
3eff3d2704 Config: Removed unused ::clear method
- This was used back when shadow file support needed to reset CLI parsing.
2018-05-13 22:42:05 -04:00
Paul Beckingham
bc517cecf3 libshared: Updated to d009b1de631c576510841593c85b257e96371b40 2018-05-13 22:41:55 -04:00
Paul Beckingham
2210528581 Docs: Updated test platform list 2018-05-13 22:41:46 -04:00
Paul Beckingham
e458c17f4f Tests: Added new DOM reference tests 2018-05-13 22:41:38 -04:00
Paul Beckingham
3a69609ffd DOM: New references: tw.syncneeded, tw.program, tw.args, tw.width, tw.height
- And deprecating context.program, context.args, context.width, context.height
2018-05-13 22:41:19 -04:00
Paul Beckingham
6641ca13a1 DOM: Typo 2018-05-13 22:40:10 -04:00
Paul Beckingham
6d1857c253 Docs: Typo 2018-05-13 22:39:55 -04:00
Paul Beckingham
29ec7d6bf3 Docs: Typo 2018-05-13 22:39:47 -04:00
Paul Beckingham
fd45b7f93f Docs: Typo 2018-05-13 22:39:40 -04:00
Paul Beckingham
3fb591714a Docs: Typo 2018-05-13 22:39:29 -04:00
Paul Beckingham
c5e0577aee Docs: Typo 2018-05-13 22:39:16 -04:00
Paul Beckingham
95ca400826 Docs: Typo 2018-05-13 22:38:34 -04:00
Paul Beckingham
5125bb840d Docs: Typo 2018-05-13 22:38:11 -04:00
Paul Beckingham
89fffbb4da Docs: Typo 2018-05-13 22:36:51 -04:00
Paul Beckingham
a190fb447d Docs: Typo 2018-05-13 22:36:42 -04:00
Paul Beckingham
06f91ed4b9 Docs: Typo 2018-05-13 22:36:33 -04:00
Paul Beckingham
187ae4b938 Docs: Update for testing flod2 2018-05-13 22:36:20 -04:00
Paul Beckingham
a1abc46138 TW-1885: Task Sync does not send TLS SNI headers
- Thanks to Dan Callahan.
2018-05-13 22:36:10 -04:00
Tomas Babej
5c243b6c4c TLSClient: Improve diagnostics
Task now correctly distinguishes the situation where CA file is present,
but not valid in some sense (empty file, not valid PEM, ..). In this
case the gnutls_certificate_set_x509_trust_file returns 0, as the number
of certificates detected in the file.

The method returns negative numbers for other errors, such as the CA
file itself missing.

Also clarify that when validating client cert/key pair, each of them can
be the source of the problem, not only the cliet certificate file.
2018-05-13 22:35:42 -04:00
Tomas Babej
4f28f26626 TLSClient: Respect 'allow all' and 'ignore hostname' trust settings 2018-05-13 22:35:18 -04:00
Tomas Babej
0907fbf906 style: Remove doubled spaces in the error message 2018-05-13 22:35:04 -04:00
Tomas Babej
4a27ba8bce TLSClient: Free error data after extracting error message 2018-05-13 22:34:53 -04:00
Tomas Babej
f2177e1254 docs: Update the build toolchain requirements 2018-05-13 22:34:41 -04:00
Tomas Babej
be4ca80842 build: Fix linking problem on non-OS-X platforms 2018-05-13 22:34:23 -04:00
Federico Hernandez
18001a9d2d Mentioned cmake handling of submodule in DEVELOPER file 2018-05-13 22:34:02 -04:00
Federico Hernandez
7d2ce304c4 Mentioned cmake handling of submodule in DEVELOPER file 2018-05-13 22:33:08 -04:00
Federico Hernandez
24538da200 Handling of git submodule in cmake 2018-05-13 22:31:40 -04:00
Paul Beckingham
0a2f6caba0 TLS: Now uses SNI 2018-05-13 22:31:27 -04:00
Paul Beckingham
eb6af955c3 libshared: Updated to 6aa2b315c476bac3fdb7bf2bc259af55eee89f83 2018-05-13 22:31:15 -04:00
Paul Beckingham
dbfab0a535 Docs: Updated docs with new history/ghistory commands. 2018-05-13 22:31:02 -04:00
Lukas Barth
d2a1b9f18e Add localized strings 2018-05-13 22:30:45 -04:00
Lukas Barth
80a3f74852 Add unit tests for new history commands 2018-05-13 22:30:28 -04:00
Lukas Barth
e934065cf8 Update manpage for history commands 2018-05-13 22:30:18 -04:00
Lukas Barth
7ef0287467 Adding weekly/daily history commands 2018-05-13 22:30:09 -04:00
Paul Beckingham
5b42cb37c7 libshared: Updated to 09ddc067c8db2d19472283d037ff38d76d63eff8 2018-05-13 22:29:47 -04:00
Paul Beckingham
a5d7f1093e CmdTimesheet: Rewrote the command
- Updated the 'timesheet' command with a more compact report that accepts a
  filter, and has a default filter showing the last four weeks of completed and
  started tasks.
2018-05-13 22:29:36 -04:00
Paul Beckingham
01c095cac7 Tests: Improved documenation in template 2018-05-13 22:28:56 -04:00
Paul Beckingham
fa654473c9 TLSClient: Removed test code 2018-05-13 22:28:46 -04:00
Paul Beckingham
1f0df70ac3 TLSClient: Typo 2018-05-13 22:28:38 -04:00
Paul Beckingham
c5024ddea4 Doc: Test change 2018-05-13 22:28:30 -04:00
Paul Beckingham
2e0c7418e4 calc: Fixed Dirk 2018-05-13 22:28:17 -04:00
Paul Beckingham
a598dc4d3f CmdCalc: 'auto infix{true}' doesn't compile 2018-05-13 22:28:04 -04:00
Paul Beckingham
77077fb5f4 Doc: Test change 2018-05-13 22:27:56 -04:00
Paul Beckingham
84f371ca51 Doc: Test change 2018-05-13 22:27:47 -04:00
Paul Beckingham
dd92f7004d Doc: Test change 2018-05-13 22:27:38 -04:00
Paul Beckingham
adea891229 Doc: Test change 2018-05-13 22:27:28 -04:00
Lukas Barth
c4f060413e Move strategies to cpp file 2018-05-13 22:26:51 -04:00
Paul Beckingham
29f2bce64d CmdModify: Code cleanup 2018-05-13 22:26:25 -04:00
Paul Beckingham
5915d3834d CmdInfo: Code cleanup 2018-05-13 22:26:01 -04:00
Paul Beckingham
8f7ec80666 CmdImport: Code cleanup 2018-05-13 22:25:46 -04:00
Paul Beckingham
0a6d606342 CmdIDs: Code cleanup 2018-05-13 22:25:32 -04:00
Paul Beckingham
24882e4ce5 CmdHistory: Code cleanup 2018-05-13 22:25:21 -04:00
Paul Beckingham
595fcef9bb CmdHelp: Code cleanup 2018-05-13 22:25:08 -04:00
Paul Beckingham
98fd46549c CmdEdit: Code cleanup 2018-05-13 22:25:00 -04:00
Paul Beckingham
45ecb72c16 CmdDuplicate: Code cleanup 2018-05-13 22:24:43 -04:00
Paul Beckingham
b5aadd0899 CmdDone: Code cleanup 2018-05-13 22:24:29 -04:00
Paul Beckingham
acd61f14fd CmdDiagnostics: Code cleanup 2018-05-13 22:24:11 -04:00
Paul Beckingham
613911dc10 CmdDenotate: Code cleanup 2018-05-13 22:23:56 -04:00
Paul Beckingham
24d5be3e14 CmdDelete: Code cleanup 2018-05-13 22:23:40 -04:00
Paul Beckingham
cd4e406dc9 CmdCustom: Code cleanup 2018-05-13 22:23:22 -04:00
Paul Beckingham
6671861e54 CmdCount: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
bc2b8cca52 CmdConfig: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
0aa7b4c3e3 CmdCommands: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
9e28c62730 CmdCalendar: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
5806cddfd3 CmdColumns: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
6828ce30f5 CmdColor: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
8ea7a88281 CmdCalc: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
a206d9405b CmdBurndown: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
4a0c6995ed CmdAttributes: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
396e923f22 CmdAppend: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
cefc287986 CmdAnnotate: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
fe24e078a4 CmdUnique: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
b2beb34e9a CmdAliases: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
087cee5425 CmdLogo: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
91132a42c8 CmdHistory: Code Cleanup
- Fixed formatting inconsistencies.
- Added Lukas to AUTHORS.
2018-05-13 22:22:42 -04:00
Lukas Barth
9bf0bf7a39 Also refactor ghistory 2018-05-13 22:22:42 -04:00
Lukas Barth
4f6c3afa3e Refactor history.monthly and history.annual 2018-05-13 22:22:42 -04:00
Paul Beckingham
f337bb6458 recur: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
e99786e726 recur: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
819dbc5285 recur: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
02efddca75 recur: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
809a1ff357 recur: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
952a299914 recur: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
67af4137af main: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
9a88084edc legacy: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
95bac8b612 Calc: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
7894e16e43 Calc: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
0c19c3cde1 Calc: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
b2188abb5d Context: Code cleanup 2018-05-13 22:22:42 -04:00
Paul Beckingham
8ace57bbef Context: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
8b766894b7 Context: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
5ecb00fe0e Context: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
04453f5f24 Context: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
dd54c26f9a Context: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
fa3abfad2e Dependency: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
28948fc7b2 Dependency: Code cleanup 2018-05-13 22:22:41 -04:00
Paul Beckingham
792a4e1445 Themes: Updated readme 2018-05-13 22:22:41 -04:00
Paul Beckingham
dc7efab0ab Docs: Updated man page 2018-05-13 22:22:41 -04:00
Paul Beckingham
899547dcc8 Docs: Updated exposition 2018-05-13 22:22:41 -04:00
Paul Beckingham
728390b6e5 Color: Now uses libshared 2018-05-13 22:22:41 -04:00
Paul Beckingham
ffb7f94e2a Docs: Updated compiler version 2018-05-13 22:22:41 -04:00
Paul Beckingham
e8517e748d Docs: Removed untested platform 2018-05-13 22:22:23 -04:00
Paul Beckingham
02fde10c12 Variant: Removed uneeded header 2018-05-13 22:22:23 -04:00
Paul Beckingham
b0c60f1c08 Variant: Relocate strings 2018-05-13 22:22:23 -04:00
Paul Beckingham
9ccb83be57 PKI: Updated test_client 2018-05-13 22:22:23 -04:00
Paul Beckingham
424592b873 PKI: Updated CRL 2018-05-13 22:22:23 -04:00
Paul Beckingham
d772eb6add PKI: Updated server 2018-05-13 22:22:23 -04:00
Paul Beckingham
a9651883cd PKI: Updated client 2018-05-13 22:22:23 -04:00
Paul Beckingham
ff67f8c791 PKI: Updated CA 2018-05-13 22:22:23 -04:00
Paul Beckingham
c690a3d58d TW-1869 segmentation fault (on unusual installation)
- Thanks to Eric Hymowitz.
2018-05-13 22:22:23 -04:00
Paul Beckingham
3e7958619a TW-1877: task done, task edit, task is now pending
- Thanks to Eric Hymowitz.
2018-05-13 22:22:23 -04:00
Paul Beckingham
54c1ca0786 Docs: Updated NEWS 2018-05-13 22:22:23 -04:00
Paul Beckingham
241fbe0581 TW-1881: Missing last character(s) in Description field
- Thanks to Hubert Toullec.
2018-05-13 22:22:04 -04:00
Paul Beckingham
5ff5a5c1ae TW-1881: default.scheduled seems not to work
- Thanks to Onion.
2018-05-13 22:22:04 -04:00
Paul Beckingham
a60c373caf TW-1861: Truncated description when adding annotation
- Thanks to eezewaek.
2018-05-13 22:22:04 -04:00
Paul Beckingham
8dcf0d0c72 TW-1823: Incorrect unicode text wrapping / justifying.
- Thanks to Sergey Trofimov.
2018-05-13 22:22:04 -04:00
Paul Beckingham
ce97fd5901 TW-1827: Extract annotations from a task
- Thanks to Ryan.
2018-05-13 22:22:04 -04:00
Paul Beckingham
e71be41e72 Tests: Added debug info, which makes it look like TW-1837 it working 2018-05-13 22:22:04 -04:00
Paul Beckingham
ee49ce3165 Tests: Added TW-1837 test 2018-05-13 22:22:04 -04:00
Paul Beckingham
b21e0baa47 TW-1667: hooks: upon failure indicate which hook failed
- Thanks to Daniel Shahaf.
2018-05-13 22:22:04 -04:00
Paul Beckingham
444e16fdd2 TW-1572: Alternative approach to urgency inheritance
- Thanks to Jens Erat, Wim Schuermann.
2018-05-13 22:22:03 -04:00
Paul Beckingham
5e98ac943b TW-213: Align countdown column on boundary between number and text.
- Thanks to Eric Fluger.
2018-05-13 22:22:03 -04:00
Paul Beckingham
116d192584 libshared: Updated to 2daeeb7e6e0716ce42f7a3d0e4400aee71531d6e 2018-05-13 22:22:03 -04:00
Paul Beckingham
3ec14a8844 Docs: Updated NEWS 2018-05-13 22:22:03 -04:00
Antonio Huete Jimenez
bdd5bc90c4 task: Fix build in SunOS-like environments.
Tested in:
 - OpenIndiana 2816291
 - OmniOS bed3013
 - SmartOS 20161129T003638Z
2018-05-13 22:21:16 -04:00
Paul Beckingham
e096462005 Docs: Added Antonion to AUTHORS 2018-05-13 22:21:16 -04:00
Antonio Huete Jimenez
24ae19b8e5 Add missing cast to double 2018-05-13 22:21:16 -04:00
Paul Beckingham
61685714c6 TLS: Aligned source with Taskserver 2018-05-13 22:21:16 -04:00
Paul Beckingham
53310d1ea0 CmdDiagnostics: Uses libshared cppCompliance call 2018-05-13 22:21:16 -04:00
Paul Beckingham
12e30bf969 libshared: Updated to bfb0e90e0c94918b86dd16d8b0e05a74bab8fb75 2018-05-13 22:21:16 -04:00
Paul Beckingham
264cc7e2fe Tests: Combined two almost identical tests into one 2018-05-13 22:21:16 -04:00
Paul Beckingham
14e047e7c4 util: Migrated osName to libshared 2018-05-13 22:21:16 -04:00
Paul Beckingham
f5bcec66e5 libshared: Updated to aff911bd080a05e5e12a240e13adb27f435b5bb2 2018-05-13 22:21:16 -04:00
Paul Beckingham
9dd2365485 docs: Add missing submodule init step to the DEVELOPER file 2018-05-13 22:21:16 -04:00
Paul Beckingham
bb45ed3fce Columns: Removed redundant format checking 2018-05-13 22:20:50 -04:00
Paul Beckingham
a951332367 Columns: Attribute objects properly delegate to Column::setStyle to validate formats 2018-05-13 22:20:50 -04:00
Paul Beckingham
f8578ecc28 Columns: Consistency 2018-05-13 22:20:50 -04:00
Paul Beckingham
8c0bfb030a Task: Improved method signature 2018-05-13 22:20:50 -04:00
Paul Beckingham
04043d267f Task: Improved method signature 2018-05-13 22:20:50 -04:00
Paul Beckingham
7e629ef30a Task: Improved method signature 2018-05-13 22:20:50 -04:00
Paul Beckingham
fab2979b87 Task: Improved method signature 2018-05-13 22:20:50 -04:00
Paul Beckingham
6c9660aee8 Task: Renamed ::getUDAOrphans to ::getUDAOrphanUUIDs 2018-05-13 22:20:50 -04:00
Paul Beckingham
fdcb084df6 ColString: Removed obsolete column for ViewText 2018-05-13 22:20:50 -04:00
Paul Beckingham
5fb7b24011 CmdCommands: Removed obsolete include 2018-05-13 22:20:50 -04:00
Paul Beckingham
1fa467aa9f ColUDA: Removed redundant code 2018-05-13 22:20:50 -04:00
Paul Beckingham
0fc6b46c4c ColTags: Removed redundant code 2018-05-13 22:20:50 -04:00
Paul Beckingham
e18b4b2063 ColRecur: Removed redundant code 2018-05-13 22:20:50 -04:00
Paul Beckingham
f4b2589149 ColID: Documented ID 0 case 2018-05-13 22:20:50 -04:00
Paul Beckingham
d99eb3c970 ColDepends: Removed redundant code 2018-05-13 22:20:50 -04:00
Paul Beckingham
3fa0e7c1ad ColTags: Corrected use of _name 2018-05-13 22:20:50 -04:00
Paul Beckingham
92e289cb3d ColStart: Removed redundant code 2018-05-13 22:20:50 -04:00
Paul Beckingham
0e4f11afc5 ColRecur: Corrected use of _name 2018-05-13 22:20:50 -04:00
Paul Beckingham
49d5a16db3 ColRecur: Added _modifiable 2018-05-13 22:20:50 -04:00
Paul Beckingham
33d7ea6569 ColMask: Corrected use of _name 2018-05-13 22:20:50 -04:00
Paul Beckingham
b55ef724f6 ColIMask: Corrected use of _name 2018-05-13 22:20:50 -04:00
Paul Beckingham
6057ecc83a ColEntry: Added _modifiable 2018-05-13 22:20:50 -04:00
Paul Beckingham
0150df0b05 ColDue: Added _modifiable 2018-05-13 22:20:50 -04:00
Paul Beckingham
df8e951324 ColDescription: Added _modifiable 2018-05-13 22:20:50 -04:00
Paul Beckingham
e2d9ae379b ColUDA: Removed redundant code 2018-05-13 22:20:50 -04:00
Paul Beckingham
a2684a6a12 ColUDA: Added _modifiable 2018-05-13 22:20:50 -04:00
Paul Beckingham
b8641d7d5e ColUUID: Removed unnecessary header 2018-05-13 22:20:50 -04:00
Paul Beckingham
14b632f1a5 ColUrgency: Marked column as unmodifiable 2018-05-13 22:20:50 -04:00
Paul Beckingham
7470af24a9 ColWait: Formatting cleanup 2018-05-13 22:20:50 -04:00
Paul Beckingham
b45e226db9 ColDepends: Corrected use of _name 2018-05-13 22:20:50 -04:00
Paul Beckingham
e1e21f30fe ColUntil: Formatting cleanup 2018-05-13 22:20:50 -04:00
Paul Beckingham
29e4b21a8b ColScheduled: Fixed bug where the wrong column label was used 2018-05-13 22:20:50 -04:00
Paul Beckingham
19e5ed6313 ColScheduled: Formatting cleanup 2018-05-13 22:20:50 -04:00
Paul Beckingham
a91cd72829 ColType*: Push the ::validate and ::modify methods down from Column 2018-05-13 22:20:50 -04:00
Paul Beckingham
56530a1f24 Improved certificate validation diagnostics
- Thanks to Jelle van der Waa.
2018-05-13 22:20:50 -04:00
Paul Beckingham
daabfcaf91 Tests: Fixed test harness for Python 3.x.
- Thanks to jrabbit.
2018-05-13 22:19:56 -04:00
Paul Beckingham
97400df68d Config: Changed to 0/1 boolean values for the defaults.
- Deprecated use of alternate Boolean configuration settings. Use values "0" for
  off, and "1" for on. Avoid used of "on", "off", "true", "t", "false", "f",
  "yes", "y", "no", "n".
2018-05-13 22:19:33 -04:00
Paul Beckingham
79ffa53ace Docs: Added Ran Benita 2018-05-13 22:18:18 -04:00
Paul Beckingham
25e326c55c Docs: Added QUARTER virtual tag 2018-05-13 22:18:03 -04:00
Paul Beckingham
5dfc367420 Task: Corrected false-positive warning about relative dates 2018-05-13 22:17:46 -04:00
Tomas Babej
e1deef327f NEWS: Deprecate new-uuid verbosity option 2018-05-13 22:17:46 -04:00
Paul Beckingham
7747cf07e7 L10N: Fixed ambiguity in the esp-ESP localization
- Thanks to Fidel Mato.
2018-05-13 22:17:23 -04:00
Paul Beckingham
5fc5fbc8e7 Task: Deprecated the 'DUETODAY' virtual tag, which is a synonym for the 'TODAY'
virtual tag.

- Thanks to Tomas Babej
2018-05-13 22:15:37 -04:00
Lynoure Braakman
8470763c31 juhannus as an alternative name for midsommarafton 2018-05-13 22:15:12 -04:00
Tomas Babej
546357662f TW-1788: Closing a reopened task does not update the end time
- Thanks to Ralph Bean.
2018-05-13 22:14:50 -04:00
Tomas Babej
5f8de9fd2c TW-1772: Implementation of circular dependency detection is inefficient
- Thanks to Michael Meier.
2018-05-13 22:14:50 -04:00
Tomas Babej
1264ffa4b4 docs: Update ChangeLog and NEWS 2018-05-13 22:14:24 -04:00
Paul Beckingham
35421403cf TD-64: sync conflict deleted all annotations of the task
- Thanks to Markus Beppler, Konstantin Vorobyev.
2018-05-13 22:14:24 -04:00
Paul Beckingham
13b8283666 Cleanup: Removed deprecated 'alias._query' setting 2018-05-13 22:13:55 -04:00
Federico Hernandez
1016dd4a40 Bumped documentation to 2.6.0 2018-05-13 22:10:48 -04:00
Paul Beckingham
88516acdaa Copyright update 2018-05-13 20:50:26 -04:00
Paul Beckingham
ea0fa20579 TW-1878: uuids subcommand produces a space-delimited list, not comma-delimited
- Thanks to Scott Kostyshak.
2018-05-13 20:48:31 -04:00
Paul Beckingham
778d2af36e Config: 'debug.tls' was missing from 'show' command 2018-05-13 20:48:19 -04:00
Paul Beckingham
934f6aeada TW-1855: "Well-known" CA certificates not properly auto-loaded
- Thanks to Flavio Poletti.
2018-05-13 20:48:09 -04:00
Paul Beckingham
72463f414c Improved certificate validation diagnostics
- Thanks to Jelle van der Waa.
2018-05-13 20:47:57 -04:00
Paul Beckingham
a67ce9db0e TLSClient: Added GnuTLS 3.4.6 API support
- This greatly simplifies cert validation.
2018-05-13 20:47:44 -04:00
Paul Beckingham
55854907a2 TLSClient: Corrected version number for API call 2018-05-13 20:47:24 -04:00
Paul Beckingham
304a6f7a33 TLSClient: Added handshake timeout 2018-05-13 20:47:13 -04:00
Paul Beckingham
41234c4f97 TLSClient: Commented possible need for version protection 2018-05-13 20:47:00 -04:00
Paul Beckingham
40b8aab7d4 TLSClient: Labelled GnuTLS calls with version numbers 2018-05-13 20:46:50 -04:00
Paul Beckingham
44522b11bc TW-1873: Specify different path to extensions/hooks directory
- Thanks to Eli.
2018-05-13 20:46:27 -04:00
Paul Beckingham
3c879e868a Docs: Updated dev docs 2018-05-13 20:46:08 -04:00
Paul Beckingham
c64e019f29 recur: Migrated from ISO8601d to Datetime 2018-05-13 20:45:52 -04:00
Paul Beckingham
afe6bdbfb3 Context: Migrated from ISO8601d to Datetime 2018-05-13 20:45:33 -04:00
Paul Beckingham
73e373527f Task: Migrated from ISO8601d to Datetime 2018-05-13 20:45:24 -04:00
Paul Beckingham
d8d5b14e66 CmdHistory: Migrated from ISO8601d to Datetime 2018-05-13 20:45:02 -04:00
Paul Beckingham
70ad78d234 CmdCalendar: Migrated from ISO8601d to Datetime 2018-05-13 20:44:45 -04:00
Paul Beckingham
57f6e0c1a5 CmdBurndown: Migrated from ISO8601d to Datetime 2018-05-13 20:44:28 -04:00
Paul Beckingham
d455d2b9bf Dates: Migrated from ISO8601d to Datetime 2018-05-13 20:44:11 -04:00
Paul Beckingham
af4222d7d2 CmdTimesheet: Migrated from ISO8601d to Datetime 2018-05-13 20:43:51 -04:00
Paul Beckingham
e15bf5105c ColDescription: Migrated from ISO8601d to Datetime 2018-05-13 20:43:35 -04:00
Paul Beckingham
c3d47f02d3 rules: Migrated from ISO8601d to Datetime 2018-05-13 20:43:25 -04:00
Paul Beckingham
4c8456a86d TDB2: Migrated from ISO8601d to Datetime 2018-05-13 20:43:17 -04:00
Paul Beckingham
29300ea9e1 Config: Migrated form ISO8601d to Datetime 2018-05-13 20:43:02 -04:00
Paul Beckingham
cdac253556 ViewText: Eliminated 2018-05-13 20:42:52 -04:00
Paul Beckingham
7001e38c30 CmdSummary: Migrated from ViewText to Table 2018-05-13 20:42:15 -04:00
Paul Beckingham
6c90de1974 TDB2: Migrated from ViewText to Table 2018-05-13 20:42:00 -04:00
Paul Beckingham
17fc9e5a91 CmdHistory: Migrated from ViewText to Table 2018-05-13 20:41:39 -04:00
Paul Beckingham
cc438b4411 CmdCalendar: Migrated from ViewText to Table 2018-05-13 20:41:23 -04:00
Paul Beckingham
d8d5a15321 Tests: Broke one tests into eight, so it is clear which one fails 2018-05-13 20:41:12 -04:00
Paul Beckingham
9be1494357 CmdInfo: Added Table::forceColor 2018-05-13 20:41:02 -04:00
Paul Beckingham
2c07858bd3 CmdInfo: Migrated from ViewText to Table 2018-05-13 20:40:47 -04:00
Paul Beckingham
74e50359b5 util: Migrated obfuscateText calls to libshared 2018-05-13 20:40:34 -04:00
Paul Beckingham
31eb477a0e libshared: Updated to 6d35bef52da4b881fcfb9946dddb01f603e225c8 2018-05-13 20:40:21 -04:00
Paul Beckingham
142d097ef0 libshared: Updated to 1aa5c92f925a1eeec16639766994f2e6f70bcf8f 2018-05-13 20:40:13 -04:00
Paul Beckingham
c69dfba6bb CmdProjects: Migrated from ViewText to Table 2018-05-13 20:40:04 -04:00
Paul Beckingham
c1d4cea638 CmdCommands: Migrated from ViewText to Table 2018-05-13 20:39:54 -04:00
Paul Beckingham
245b0c58c6 CmdColumns: Migrated from ViewText to Table 2018-05-13 20:39:45 -04:00
Paul Beckingham
9042477415 CmdShow: Migrated from ViewText to Table 2018-05-13 20:39:34 -04:00
Paul Beckingham
d551dff4cf CmdTimesheet: Migrated from ViewText to Table 2018-05-13 20:39:21 -04:00
Paul Beckingham
2ec89e68ba CmdColor: Conencted rc.color to Table::forceColor 2018-05-13 20:39:10 -04:00
Paul Beckingham
ff6dcee84c CmdColor: Migrated from ViewText to Table 2018-05-13 20:39:01 -04:00
Paul Beckingham
8db15d143b CmdStats: Migrated from ViewText to Table 2018-05-13 20:38:52 -04:00
Paul Beckingham
a4c2ec0440 CmdReports: Migrated from ViewText to Table 2018-05-13 20:38:41 -04:00
Paul Beckingham
cd2fe40a59 CmdHelp: Migrated from ViewText to Table 2018-05-13 20:38:29 -04:00
Paul Beckingham
7a0707342b CmdTags: Migrated from ViewText to Table 2018-05-13 20:38:20 -04:00
Paul Beckingham
624ccd12fc CmdVersion: Migrated from ViewText to Table 2018-05-13 20:38:05 -04:00
Paul Beckingham
a79e1d65a7 libshared: Updated to c3f1919945bd370b397314dc1ec245960a401820 2018-05-13 20:37:56 -04:00
Paul Beckingham
0721aae353 L10N: Removed unused strings 2018-05-13 20:37:45 -04:00
Paul Beckingham
abac5bdf48 util: Added missing include 2018-05-13 20:37:08 -04:00
Paul Beckingham
b463c56c93 Context: Removed unused class global 2018-05-13 20:36:56 -04:00
Paul Beckingham
2fb589b131 CmdStats: Converted from ISO8601 to Datetime/Duration 2018-05-13 20:36:46 -04:00
Paul Beckingham
b53a585756 CmdSummary: Converted from ISO8601 to Duration 2018-05-13 20:36:19 -04:00
Paul Beckingham
6b55c54af9 CmdBurndown: Converted from ISO8601 to Duration 2018-05-13 20:36:04 -04:00
Paul Beckingham
86d3ec5cee CmdInfo: Converted from ISO8601 to Datetime/Duration 2018-05-13 20:35:54 -04:00
Paul Beckingham
d26fa9b04b ColUDA: Converted from ISO8601 to Datetime/Duration 2018-05-13 20:35:34 -04:00
Paul Beckingham
0467637500 ColRecur: Converted from ISO8601 to Duration 2018-05-13 20:35:24 -04:00
Paul Beckingham
1a4db03d5e CmdEdit: Converted from ISO8601 to Datetime/Duration 2018-05-13 20:35:12 -04:00
Paul Beckingham
28bcb7e491 ColTypeDate: Converted fomr ISO8601 to Datetime/Duration 2018-05-13 20:34:53 -04:00
Paul Beckingham
c0c476e53d DOM: Converted from ISO8601 to Datetime/Duration
- In addition fixed the week number of 2011-09-01 to 35, therefore the
  tests change also.
2018-05-13 20:34:39 -04:00
Paul Beckingham
26aa2761c0 feedback: Migrated from ISO8601 to Datetime/Duration 2018-05-13 20:34:24 -04:00
Paul Beckingham
cf4bd29d44 recur: Converted from ISO8601p to Duration 2018-05-13 20:34:05 -04:00
Paul Beckingham
12459e8c8b Task: Converted from ISO8601p to Duration 2018-05-13 20:33:53 -04:00
Paul Beckingham
43d49d17d0 sort: Converted from ISO8601p to Duration 2018-05-13 20:33:34 -04:00
Paul Beckingham
b344f95e97 Variant: Converted from ISO8601p to Duration 2018-05-13 20:33:21 -04:00
Paul Beckingham
6bfb3fab3c DOM: Migrated from Nibbler to Lexer 2018-05-13 20:33:08 -04:00
Paul Beckingham
c571f6b4fb Msg: Migrated to use libshared 2018-05-13 20:32:56 -04:00
Paul Beckingham
f684e821d4 Task: Migrated from Nibbler to Pig 2018-05-13 20:32:29 -04:00
Paul Beckingham
06f177534d libshared: Updated to 9685a22c90ca6f832748f8c71bae3cfad352bc64 2018-05-13 20:32:16 -04:00
Paul Beckingham
a6c8303839 text: Eliminated module 2018-05-13 20:32:05 -04:00
Paul Beckingham
ec84d0f372 util: Migrated optionalBlankLine from text 2018-05-13 20:31:47 -04:00
Paul Beckingham
026a8aa9a1 Tests: Eliminated empty text.t test 2018-05-13 20:31:26 -04:00
Paul Beckingham
b4e4727887 util: Migrated strippedLength from text 2018-05-13 20:31:11 -04:00
Paul Beckingham
14e3038571 util: Migrated nontrivial from text 2018-05-13 20:30:51 -04:00
Paul Beckingham
9ae171f57c util: Migrated obfuscateText from text 2018-05-13 20:30:34 -04:00
Paul Beckingham
b9f55997ae Context: GC timing correction not always needed 2018-05-13 20:30:15 -04:00
Paul Beckingham
ecd0ae1b16 libshared: Updated to dfb31a41ced0fe48d98efa2b55689201d8e19667 2018-05-13 20:29:58 -04:00
Paul Beckingham
98278eff2a Task: Corrected str_replace calls 2018-05-13 20:29:49 -04:00
Paul Beckingham
f0988b52d0 CLI2: Corrected str_replace calls 2018-05-13 20:29:38 -04:00
Paul Beckingham
4232f1a599 Task: Migrated unquoteText to Lexer::dequote 2018-05-13 20:29:26 -04:00
Paul Beckingham
8462120c0a Tests: Removed migrated autoComplete tests 2018-05-13 20:29:14 -04:00
Paul Beckingham
a79d4cb803 Tests: Removed migrated text tests 2018-05-13 20:29:00 -04:00
Paul Beckingham
8c35f0a4ce Tests: Removed migrated util tests 2018-05-13 20:28:39 -04:00
Paul Beckingham
232d266fb5 text: Removed local join/split implementation 2018-05-13 20:28:24 -04:00
Paul Beckingham
db0f8d33e1 util: Removed confirm 2018-05-13 20:27:57 -04:00
Paul Beckingham
f99fc16e14 util: Removed execute 2018-05-13 20:27:42 -04:00
Paul Beckingham
4bbb5fadb3 util: Removed formatBytes 2018-05-13 20:27:23 -04:00
Paul Beckingham
488673ea9a text: Removed replace_positional 2018-05-13 20:27:10 -04:00
Paul Beckingham
060787a5db calc: Migration to libshared 2018-05-13 20:26:57 -04:00
Paul Beckingham
8a43f4902d libhsared: migrating from local to libshared 2018-05-13 20:26:34 -04:00
Paul Beckingham
0e56abd0f9 libshared: Updated to 2af7d037559f84450fffa812829fc553498a7ae4 2018-05-13 20:25:05 -04:00
Paul Beckingham
2e06bb6561 libshared: Updated to 9473050234dd3a90bff5400a081ee54881b6b0f5 2018-05-13 20:24:56 -04:00
Paul Beckingham
3d3ad553a6 Docs: Typos in ref PDF
- Thanks to eldios.
2018-05-13 20:24:39 -04:00
Paul Beckingham
a821c886b3 Tests: Set sys.stdout as utf8 2018-05-13 20:23:05 -04:00
Paul Beckingham
b323069419 Tests: Fixed test harness for Python 3.x.
- Thanks to jrabbit.
2018-05-13 20:22:52 -04:00
Paul Beckingham
992b41b82a TLSClient: Improved C++ core guidelines 2018-05-13 20:22:37 -04:00
Paul Beckingham
3be7803d30 libshared: Updated to ce5c3414de56a2d1390893bbdc46e7116c38cd90 2018-05-13 20:22:24 -04:00
Paul Beckingham
80ea2bb51d TDB2: Made sure file exists before checking readability 2018-05-13 20:22:04 -04:00
Paul Beckingham
764ada3a17 CmdDiagnostics: Made sure file existence is checked before readability 2018-05-13 20:21:52 -04:00
Paul Beckingham
570cd3d810 Context: Eliminated load timer 2018-05-13 20:21:36 -04:00
Paul Beckingham
197f130593 Context: Eliminated render timer 2018-05-13 20:21:22 -04:00
Paul Beckingham
e3d006f867 Context: Eliminated hooks timer 2018-05-13 20:21:07 -04:00
Paul Beckingham
ae128f587d Context: Eliminated sort timer 2018-05-13 20:20:49 -04:00
Paul Beckingham
ff36a87551 Context: Eliminated commit timer 2018-05-13 20:20:35 -04:00
Paul Beckingham
14f1002680 Context: Eliminated filter timer 2018-05-13 20:20:22 -04:00
Paul Beckingham
89b8c9f198 Context: Eliminated gc timer 2018-05-13 20:20:06 -04:00
Paul Beckingham
c7cb2f26ff Context: Uses inline member initialization 2018-05-13 20:19:49 -04:00
Paul Beckingham
0849501ef5 Context: Migrated to libshared Timer 2018-05-13 20:19:35 -04:00
Paul Beckingham
ced7490df6 TDB2: Migrated to libshared Timer 2018-05-13 20:19:22 -04:00
Paul Beckingham
d5cb31922e Hooks: Migrated to libshared Timer 2018-05-13 20:19:09 -04:00
Paul Beckingham
d9c72e8f58 Config: Migrated to libshared Timer 2018-05-13 20:18:56 -04:00
Paul Beckingham
a50dc97332 Context: Added ::debugTiming to wrap Timer formatting 2018-05-13 20:18:45 -04:00
Paul Beckingham
c4909ac657 libshared: Updated to 200f8c699b3011dbe49483e6343affad86e0ac96 2018-05-13 20:18:31 -04:00
Paul Beckingham
e1adf6766b Test: Removed binary output from test 2018-05-13 20:18:21 -04:00
Paul Beckingham
772c68ff62 Test: Removed binary output from test 2018-05-13 20:18:08 -04:00
Paul Beckingham
952171337c Tests: Fixed unit test that emitted unicode, that 'run_all' dislikes 2018-05-13 20:17:55 -04:00
Paul Beckingham
660cd61da7 Test: Fixed bad typo in test framework 2018-05-13 20:17:40 -04:00
Paul Beckingham
cf66c2a191 TLSClient: Improved C+ Core Guidelines compliance 2018-05-13 20:17:27 -04:00
Paul Beckingham
9a85c45bf7 TLSClient: No longer calls gnutls_global_{de,}init for 3.3.0+ 2018-05-13 20:17:12 -04:00
Tomas Babej
7ab0e9c722 l10n: Make safete valve message more explicit about completed/deleted tasks 2018-05-13 20:17:00 -04:00
Paul Beckingham
4079fb2326 Tests: Removed unnecessary imports 2018-05-13 20:16:33 -04:00
Paul Beckingham
6bf05083bd Timer: Migrated to libshared 2018-05-13 20:16:18 -04:00
Paul Beckingham
a9061dc299 ViewTask: Removed unused include 2018-05-13 20:15:54 -04:00
Paul Beckingham
161ebc1166 CmdEdit: Migrated from Nibbler to Pig 2018-05-13 20:15:41 -04:00
Paul Beckingham
6345b0c7de CmdUDAs: Migrated from ViewText to Table 2018-05-13 20:15:25 -04:00
Paul Beckingham
6ad736346f CmdContext: Migrated from ViewText to Table 2018-05-13 20:15:07 -04:00
Paul Beckingham
4792bc8c3a Dependency: Don't use string literals when character literals are needed 2018-05-13 20:14:54 -04:00
Paul Beckingham
6c62617fd0 Docs: Updated regarding TW-1857 2018-05-13 20:14:36 -04:00
inbinder
67feb5bab7 Src: rules.cpp changed Task::get to Task::has in colorizeProjectNone function 2018-05-13 20:14:23 -04:00
Paul Beckingham
814d7d69fa Cleanup: Don't use string literals when character literals are needed 2018-05-13 20:14:11 -04:00
Paul Beckingham
35e518cbc2 Cleanup: Don't use string literals when character literals are needed 2018-05-13 20:11:49 -04:00
Paul Beckingham
99a7cfceac libshared: Updated to d84d1bc70b14c85af771bb5cc7299c290d5372b5 2018-05-13 20:09:37 -04:00
Paul Beckingham
1ebf75e7d0 ColScheduled: Removed unused includes 2018-05-13 20:09:29 -04:00
Paul Beckingham
b3fe15dc41 ColParent: Removed unused includes 2018-05-13 20:09:20 -04:00
Paul Beckingham
67d4510e9b ColMask: Removed unused includes 2018-05-13 20:09:09 -04:00
Paul Beckingham
7ad546504c ColIMask: Removed unused includes 2018-05-13 20:08:53 -04:00
Paul Beckingham
d9b528351c ColDue: Removed unused includes 2018-05-13 20:08:42 -04:00
Paul Beckingham
4f003cdb60 ColDescription: Don't use string literals when character literals are needed 2018-05-13 20:08:29 -04:00
Paul Beckingham
f04cc0c9e6 Build: Eliminated compiler warning 2018-05-13 20:08:05 -04:00
Paul Beckingham
1fad357f26 Docs: Removed old reference to support forums 2018-05-13 20:07:56 -04:00
Paul Beckingham
43e1a2c991 Tests: Updated to non-deprecated Boolean values 2018-05-13 20:07:43 -04:00
Paul Beckingham
2e11c3c104 Config: Changed to 0/1 boolean values for the defaults.
- Deprecated use of alternate Boolean configuration settings. Use values "0" for
  off, and "1" for on. Avoid used of "on", "off", "true", "t", "false", "f",
  "yes", "y", "no", "n".
2018-05-13 20:07:01 -04:00
Paul Beckingham
b7e71a1c3c Docs: Updated dev build instructions 2018-05-13 20:06:12 -04:00
Paul Beckingham
c5d32c58f9 TW-1778: Unicode strings are truncated in task description
- Thanks to Andrew, bjonnh, OKOMPer, Vladimir.
2018-05-13 20:06:00 -04:00
Paul Beckingham
98611888af L10N: Updated error message to not refer to only pending tasks 2018-05-13 20:05:45 -04:00
Paul Beckingham
e0aea4a5f5 Docs: Added Ran Benita 2018-05-13 20:05:33 -04:00
Ran Benita
1f2c5bfed7 Scripts: Quoted regular expression to avoid bash glob expansion
The quote is needed, otherwise it is treated as a bash glob first, which
causes trouble if there actually happens to be matching files, and
fails entirely if `shopt -s failglob` is set.
2018-05-13 20:05:19 -04:00
Paul Beckingham
04c068e514 Docs: ChangeLog had wrong bug id 2018-05-13 20:05:08 -04:00
Paul Beckingham
555dc98f5b Tests: Removed redundant FS tests 2018-05-13 20:04:55 -04:00
Paul Beckingham
61763f278f libshared: Integrated FS 2018-05-13 20:04:25 -04:00
Paul Beckingham
b6ef010595 DOM: Eiminated Nibbler 2018-05-13 20:03:17 -04:00
Paul Beckingham
5de313272f libshared: Added Table 2018-05-13 20:03:06 -04:00
Paul Beckingham
d0251642bc Tests: Removed redundant utf8 tests 2018-05-13 20:02:56 -04:00
Paul Beckingham
1ca91b9e0c libshared: Integrated utf8, wcwidth 2018-05-13 20:02:39 -04:00
Paul Beckingham
9a63bd5d6f Tests: Removed redundant listt tests 2018-05-13 20:02:03 -04:00
Paul Beckingham
a7900205e5 Tests: Removed redundant format tests 2018-05-13 20:01:45 -04:00
Paul Beckingham
dbb22f506d Tests: Removed JSON tests 2018-05-13 20:01:27 -04:00
Paul Beckingham
3cf4f337e7 Git: Now ignores liblibshared.a 2018-05-13 20:00:14 -04:00
Paul Beckingham
22baaecd14 libshared: Integrated JSON 2018-05-13 19:59:53 -04:00
Paul Beckingham
db182f4612 Tests: Removed RX tests 2018-05-13 19:59:09 -04:00
Paul Beckingham
d33a62ffa6 libshared: Integrated the submodule
- Integrated RX.
2018-05-13 19:58:52 -04:00
Paul Beckingham
83ddb3f99f libshared: Added libshared 2018-05-13 19:58:05 -04:00
Paul Beckingham
35ab335cb2 Docs: Removed one suggestion for reporting bugs 2018-05-13 19:57:40 -04:00
Paul Beckingham
395329fb6c TW-1820: Install with -DLANGUAGE=2 flag not work.
- Thanks to E. Manuel Cerr'on Angeles
2018-05-13 19:57:25 -04:00
Paul Beckingham
1efeea3884 L10N: Removed unused strings 2018-05-13 19:57:10 -04:00
Tomas Babej
54aaac9964 TW-61: Extract only tasks with annotations
- Thanks to Aikido Guy.
- Note: This is just bookkeeping commit, the solution (+ANNOTATED
  virtual tag) is present since 2.3.0.
2018-05-13 19:56:42 -04:00
Paul Beckingham
071adeeba4 TW-1813: Range filter doesn't work
- Thanks to george js.
2018-05-13 19:56:11 -04:00
Paul Beckingham
6358b22289 Docs: Added QUARTER virtual tag 2018-05-13 19:55:52 -04:00
Paul Beckingham
edeac7e6a2 Task: Made better use of ::sameN methods 2018-05-13 19:55:06 -04:00
Paul Beckingham
62944cdf6f Task: Added QUARTER virtual tag 2018-05-13 19:54:52 -04:00
Paul Beckingham
8e8e0201f0 Tests: Added ::sameQuarter tests 2018-05-13 19:54:39 -04:00
Paul Beckingham
0820549b4c ISO8601: Added ::sameQuarter 2018-05-13 19:54:22 -04:00
Paul Beckingham
c99754391f Tests: Added 'w' dateformat test 2018-05-13 19:54:06 -04:00
Paul Beckingham
271d55506a TW-1807: dateformat lacks a flag to display day of week
- Thanks to Ellington Santos.
2018-05-13 19:53:53 -04:00
Paul Beckingham
bac71c7670 TW-1806: project:ide is not allowed
- Thanks to Slaven ʙanovic.
2018-05-13 19:53:33 -04:00
Paul Beckingham
0683e14777 Cleanup: Removed debug output 2018-05-13 19:53:03 -04:00
Paul Beckingham
7d2d06dbcd Task: Corrected false-positive warning about relative dates 2018-05-13 19:48:00 -04:00
Paul Beckingham
038126d59c ColTypeDate: Fixed countdown format only showing values in the past 2018-05-13 19:47:45 -04:00
Paul Beckingham
f29583d81d util: Corrected comment 2018-05-13 19:47:17 -04:00
Tomas Babej
a7153a082f NEWS: Deprecate new-uuid verbosity option 2018-05-13 19:47:04 -04:00
Paul Beckingham
079e2f3008 L10N: Fixed ambiguity in the esp-ESP localization
- Thanks to Fidel Mato.
2018-05-13 19:46:50 -04:00
Paul Beckingham
c6e190118f Tests: Removed broken test
- It was not only broken between easter and midsommarafton, but just performing
  an additional comparison. Not needed.
2018-05-13 19:46:28 -04:00
Paul Beckingham
ea2faa0607 TW-1795: Calendar underline on Day padding
- Thanks to Renato Alves.
2018-05-13 19:44:59 -04:00
Paul Beckingham
4395818e72 CMake: Added snotty comment about CMake bullshit 2018-05-13 19:44:41 -04:00
Paul Beckingham
dde7e6781d Tests: Wrong test count causes unexpected 'green' in test results 2018-05-13 19:44:19 -04:00
Paul Beckingham
300e7e125e cmake: Use the CXXSniffer 2018-05-13 19:43:55 -04:00
Tomas Babej
8dfd71ccc6 TW-1792: The info command uses '0' to reference dependencies on non-pending tasks
- Thanks to Paul Beckingham for providing screenshots capturing the bug.
2018-05-13 19:42:41 -04:00
Tomas Babej
084383a644 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.
2018-05-13 19:32:53 -04:00
Paul Beckingham
1ebc8034b4 TW-1791: taskrc(5) manpage: spurious "pri." in rule.precedence.color
- Thanks to Sebastien Badia.
2018-05-13 19:32:30 -04:00
Paul Beckingham
81ac8e2be9 Tests: Updated test harness 2018-05-13 19:31:31 -04:00
Paul Beckingham
c44900bf8f Task: Deprecated the 'DUETODAY' virtual tag, which is a synonym for the 'TODAY'
virtual tag.

- Thanks to Tomas Babej
2018-05-13 19:31:14 -04:00
Lynoure Braakman
ea8a499769 juhannus as an alternative name for midsommarafton 2018-05-13 19:30:52 -04:00
Paul Beckingham
7f91e014a0 Tests: Typo in test 2018-05-13 19:30:28 -04:00
Tom Sydney Kerckhove
6d6bdebb57 Docs: fixed inconsistency in the spelling of CMake 2018-05-13 19:30:12 -04:00
Tomas Babej
1980df89c0 TW-1788: Closing a reopened task does not update the end time
- Thanks to Ralph Bean.
2018-05-13 19:29:54 -04:00
Tomas Babej
c42a73d572 tests: Add test for TW-1788 2018-05-13 19:29:41 -04:00
Tomas Babej
8a50d8b6a9 validate: Pending tasks cannot have end attribute set 2018-05-13 19:29:12 -04:00
Tomas Babej
75403c0ec1 TW-1772: Implementation of circular dependency detection is inefficient
- Thanks to Michael Meier.
2018-05-13 19:28:57 -04:00
Tomas Babej
726c31f8de dependencyIsCircular: Do not visit one node multiple times 2018-05-13 19:28:43 -04:00
Tomas Babej
dbec3ad33f l10n: Propagate the purge-related strings into language files 2018-05-13 19:26:54 -04:00
Tomas Babej
3cb974de49 Docs: Update ChangeLog and NEWS 2018-05-13 19:26:31 -04:00
Tomas Babej
75b220dbc4 docs: Document new purge command 2018-05-13 19:25:38 -04:00
Tomas Babej
cae0f15245 tests: Expand test cases for purge command 2018-05-13 19:25:26 -04:00
Tomas Babej
46a36a10a5 tests: The purge command now requires confirmation 2018-05-13 19:25:08 -04:00
Tomas Babej
2467200a3b CmdPurge: Handle child tasks of recurrence templates 2018-05-13 19:24:53 -04:00
Tomas Babej
181f098958 TDB2: Fix wrong comment 2018-05-13 19:24:32 -04:00
Tomas Babej
3e65c3af5e CmdPurge: Simplify implementation 2018-05-13 19:24:21 -04:00
Tomas Babej
c04bdc48aa CmdPurge: Move dependency handling into separate method 2018-05-13 19:23:59 -04:00
Tomas Babej
894eb3ab79 CmdPurge: Prompt before purging a task 2018-05-13 19:23:40 -04:00
Paul Beckingham
58cee899b0 L10N: Propagated new strings to all LANGS 2018-05-13 19:23:14 -04:00
Paul Beckingham
1091cc23af Docs: Added MAKEFLAGS example 2018-05-13 19:22:50 -04:00
Tomas Babej
233d8e3ebf tests: Add coverage for purge command 2018-05-13 19:22:40 -04:00
Tomas Babej
ec1a7b4b40 DEVELOPER: Use multiple jobs during make 2018-05-13 19:22:17 -04:00
Tomas Babej
ffce61da4b CmdPurge: Require GC run prior to execution
Since TDB2::purge method allows purging of the tasks only
on competed.data file, we need to make sure that all the tasks
that were supposed to be moved to completed.data have been
moved - in other words, we need to run GC.

This allows for diract usage of purge after delete, that is:

$ task <filter> delete
$ task <filter> purge

working as expected.
2018-05-13 19:21:56 -04:00
Tomas Babej
909b2e2713 CmdPurge: Remove purged tasks from dependencies 2018-05-13 19:21:34 -04:00
Tomas Babej
70a0e256b0 CmdPurge: Add initial implementation 2018-05-13 19:21:14 -04:00
Tomas Babej
f10a3d6232 TDB2: Add capability to purge tasks out of data files 2018-05-13 19:20:42 -04:00
Paul Beckingham
cbdd04e506 CmdDiagnostics: Typo 2018-05-13 19:19:52 -04:00
Paul Beckingham
bf4b08efd2 TW-1741: Warning "ignoring return value of ‘int ftruncate" while doing make on xubuntu15.10
- Thanks to Sunil Joshi.
2018-05-13 19:13:20 -04:00
Paul Beckingham
2980f5d3ce TD-64: sync conflict deleted all annotations of the task
- Thanks to Markus Beppler, Konstantin Vorobyev.
2018-05-13 19:12:48 -04:00
Paul Beckingham
677c2e87b5 calc: Uses osName() to reduce string literals 2018-05-13 19:12:07 -04:00
Paul Beckingham
48167f53eb Cleanup: Converted all sprintf to snprintf 2018-05-13 19:11:52 -04:00
Paul Beckingham
9e5a0f0e61 Rules: Improved use of 'const' and 'auto' 2018-05-13 19:10:32 -04:00
Paul Beckingham
abefdd506c Cleanup: Removed redundant processing of OS name 2018-05-13 19:10:06 -04:00
Paul Beckingham
88bd2fc9e2 Context: Combined interactive.cpp and Context.cpp 2018-05-13 19:09:34 -04:00
Paul Beckingham
aa0db81300 Cleanup: Removed deprecated alias._query setting 2018-05-13 19:01:45 -04:00
Paul Beckingham
a12fb177e2 Bumped ref page to 2.5.2 2018-05-13 18:58:27 -04:00
Paul Beckingham
2d77ad8aab Build: Bumped version to 2.5.2 2018-05-13 18:55:24 -04:00
Paul Beckingham
9486eb2fde Docs: Updated for 2.5.2 2018-05-13 18:48:42 -04:00
Paul Beckingham
829caa4b85 TW #2020: reserved.lines is not affecting the burndown height
- Thanks to ad₋si.
2018-05-13 13:54:04 -04:00
Paul Beckingham
a3dcabb2b3 Docs: Removed incorrect URL 2018-05-13 10:41:27 -04:00
Paul Beckingham
b2cfe11d17 Merge pull request #2009 from rudis/2.6.0
Docs: mention "urgency" as possible attribute for filters
2018-04-24 13:24:43 -04:00
Simon Ruderich
bdfa55040d Docs: mention "urgency" as possible attribute for filters 2018-04-09 10:19:46 +02:00
Paul Beckingham
66b2e3468c TW #1922: Can't find export scripts
- Thanks to tom-doerr
2018-03-18 11:29:27 -04:00
Paul Beckingham
11e467fe5a TW #1986: [Nit] Update DEVELOPER.md after migration to Github
- Thanks to Kirill Bobyrev
2018-03-18 11:19:56 -04:00
Paul Beckingham
b2f5cd0b89 Code cleanup: used auto 2018-03-18 11:10:13 -04:00
Paul Beckingham
d312775f99 TW #1973: Don't nag when no tasks are READY
- Thanks to Martin F. Krafft
2018-03-18 11:09:34 -04:00
Paul Beckingham
f37e98765b Merge pull request #1980 from omtcvxyz/C++14
Update notes regarding C++14 support
2018-03-18 10:44:24 -04:00
Paul Beckingham
06066f025e libshared: Upgraded to 999c824cf1139d208e884042eddef87a1d76fb7e 2018-03-13 20:28:54 -04:00
Paul Beckingham
f811ff96c2 Updated AUTHORS 2018-03-07 19:42:39 -05:00
Paul Beckingham
eb72f0c084 Merge pull request #1978 from omtcvxyz/use-nullptr
Use nullptr instead lf C-styled NULL
2018-03-07 19:39:07 -05:00
Kirill Bobyrev
ae2f5f7567 Update notes regarding C++14 support
4a929197ae introduced C++14 support.
The build will now terminate unless the compiler supports C++14
dialect. The documentation does not reflect that: this commit updates
few reference files to actually say that the building process requires
a C++14-compliant compiler.
2018-03-08 02:47:31 +03:00
Kirill Bobyrev
5cdbe6d019 Use nullptr instead lf C-styled NULL 2018-03-07 22:21:28 +03:00
Paul Beckingham
24634f2d15 Merge pull request #1976 from rudis/2.6.0
More doc fixes
2018-03-06 21:25:52 -05:00
Simon Ruderich
c4f217d5c4 Docs: remove duplication in task-color.5
In the example there are more than the three listed wildcard patterns.
Instead of listing them all, list just one. This is enough to describe
the idea.
2018-03-06 21:59:12 +01:00
Simon Ruderich
bc0bf873de Docs: fix incorrect value in task-color.5 2018-03-06 21:58:29 +01:00
Simon Ruderich
b92ab68ef6 Context: remove duplicate default value for rule.precedence.color 2018-03-06 21:54:08 +01:00
Simon Ruderich
1435ec0cfe Docs: fix outdated link in task-sync.5 2018-03-04 23:06:19 +01:00
Paul Beckingham
46c2c87eb4 Docs: Updated AUTHORS 2018-03-04 13:26:43 -05:00
Paul Beckingham
a8446f7f85 Merge pull request #1975 from rudis/misc-doc
Misc doc improvements
2018-03-04 13:24:28 -05:00
Paul Beckingham
523318098b Update task-sync.5.in
Downgraded 'Always secure' to 'Secure communication', for accuracy.
2018-03-04 13:21:44 -05:00
Paul Beckingham
dba78e0b7b Merge pull request #1974 from rudis/2.6.0
Docs: improve verbose description in taskrc.5.in
2018-03-04 13:18:44 -05:00
Simon Ruderich
dd708e0595 Docs: remove instructions which are already default in task-color.5
The text even mentions, that it might not be necessary. So just remove
this section.
2018-03-04 14:54:52 +01:00
Simon Ruderich
8aa02f1d0c Docs: don't mark cloud provides as "always secure" in task-sync.5
The data is stored remotely and possibly (depending on the provider) not
transfered securely.
2018-03-04 14:54:21 +01:00
Simon Ruderich
b204e90b3f Docs: remove insecure CA configuration from task-sync.5
The option taskd.trust is documented in taskrc.5 if the user really
needs it. But we shouldn't suggest an insecure configuration in the
default setup instructions.
2018-03-04 14:53:07 +01:00
Simon Ruderich
4af0a02262 Docs: sync "SEE ALSO" sections of task-color.5 and task-sync.5 2018-03-04 14:53:07 +01:00
Simon Ruderich
0addd89393 Docs: always use https:// link for taskwarrior.org 2018-03-04 14:53:07 +01: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
Simon Ruderich
e4a6c389ad Docs: always use <> tags for placeholders in man pages 2018-03-04 14:53:07 +01:00
Simon Ruderich
6e0aeaa005 Docs: use unabbreviated "task colors" command in taskrc.5 2018-03-04 14:53:07 +01:00
Simon Ruderich
66d3d46443 Docs: quote values for calendar.details in taskrc.5 2018-03-04 14:53:07 +01:00
Simon Ruderich
c94c1391f4 Docs: try to clarify what falls under header/footnote verbose settings 2018-03-04 11:21:32 +01:00
Simon Ruderich
10f2b2c575 Docs: "recur" also implies "footnote" 2018-03-04 11:02:18 +01:00
Simon Ruderich
9494cbd256 Docs: fix typos in taskrc man page 2018-03-04 10:56:09 +01:00
Paul Beckingham
20a2bbd94f Docs: Added Tiago 2018-02-22 20:34:39 -05:00
Paul Beckingham
ba40399721 Merge pull request #1969 from tmatias/typo
fix small typo in taskrc's man page
2018-02-22 20:33:14 -05:00
Tiago Matias
68fcb1baf8 typo -> very simply syntax -> very simple syntax 2018-02-22 22:16:22 -03:00
Federico Hernandez
4ffdfe817f Changed to a more generic URL for testing 2018-02-18 00:30:13 +01:00
Federico Hernandez
3f216884e7 Updated URL references 2018-02-18 00:29:38 +01:00
Federico Hernandez
45a455c0b3 Updated URLs and copyright year 2018-02-18 00:02:20 +01:00
Federico Hernandez
125a47e3c8 Udated URL in .gitmodules to point to GH 2018-02-17 23:00:46 +01:00
Paul Beckingham
3bb988c57c Docs: Updated Changelog with pull request info 2018-02-17 10:29:48 -05:00
Paul Beckingham
dc5514254a Merge pull request #1966 from jwilk-forks/errno
Tests: Don't hardcode errno constants
2018-02-17 10:00:47 -05:00
Jakub Wilk
e36145b4fa Tests: Don't hardcode errno constants
The values of ENOENT and ESRCH are architecture-dependent, so don't
assume they're always 2 and 3.
2018-02-17 13:59:29 +01:00
Paul Beckingham
a9017ccf19 TW-54/#115: Reduce output for timesheet
- Thanks to Aikido guy.
2018-02-16 22:41:46 -05:00
Paul Beckingham
1335d8fb1e TW-1917/#1930: "above" does a string comparison, even when the value is numeric
- Thanks to Dirk Deimeke.
2018-02-16 22:14:26 -05:00
Paul Beckingham
4a929197ae Build: C++14 support added 2018-02-16 22:04:29 -05:00
Paul Beckingham
8699b60690 - Thanks to php-coder 2018-02-16 21:50:14 -05:00
Paul Beckingham
61c04382ff TW-1906/#1919: sync sub-command is missing from task(1) manual page
- Thanks to rjc.
2018-02-16 21:33:28 -05:00
Dirk Deimeke
e6f6d88390 README.md
- Added instructions for failing clone of libshared.git
2018-02-13 19:26:28 +01:00
Paul Beckingham
eca40844ad Docs: Updated URLs 2018-02-08 22:08:59 -05:00
Paul Beckingham
75367e5928 Docs: Fixed md 2018-02-07 20:54:41 -05:00
Paul Beckingham
57e26494fd Docs: Fixed md 2018-02-07 20:51:35 -05:00
Paul Beckingham
43bc0a389a Docs: Updated README.md
- Thanks to Thomas Lauf
2018-02-07 20:49:48 -05:00
Paul Beckingham
72d48ccd8d Templates: Combined two sentences for readability 2018-02-07 20:49:22 -05:00
Federico Hernandez
935a410429 Reformatting 2018-02-07 15:06:15 +01:00
Federico Hernandez
d343da448c Made the question a checkbox
To be checked off by the submitter.
2018-02-07 15:02:43 +01:00
Dirk Deimeke
b0b95f6442 Added Link to "How to request a feature" 2018-02-07 14:57:47 +01:00
Paul Beckingham
77dc8c86a8 Github: typo 2018-02-07 08:50:41 -05:00
Paul Beckingham
20098f81af Github: Added pull request template 2018-02-07 08:49:57 -05:00
Paul Beckingham
27c324fc2c Issues: /Updated template for feature requests 2018-02-07 08:44:19 -05:00
Paul Beckingham
765db3093a Docs: Updated URLs 2018-02-07 08:40:38 -05:00
Paul Beckingham
05e0091212 Issues: Create issue-template.md 2018-02-07 08:32:58 -05:00
Federico Hernandez
4b148b9670 Merge pull request #2 from Lynoure/patch-2
Update to markdown and rename DEVELOPER to DEVELOPER.md
2018-02-06 21:23:14 +01:00
Lynoure Braakman
8aeb038338 Update and rename DEVELOPER to DEVELOPER.md
Rough markdownification, no content changes
2018-02-06 19:13:01 +01:00
Paul Beckingham
72149fe492 Merge pull request #1 from buhtz/patch-1
URL formatting
2018-02-04 23:17:03 +01:00
buhtz
9528e9b853 URL formating 2018-02-04 23:06:58 +01:00
Paul Beckingham
2dae6c0ab4 Docs: Updated man page discussing rc.recurrence 2018-02-04 09:45:02 +01:00
Paul Beckingham
51ae097388 Eval: Eliminated string def 2018-02-03 14:06:53 +01:00
Mark Scannell
7af6db4c17 Portability: Updated to make main re-entrant()
- New INSTALL instructions to emscripten, and AUTHORS for contribution.
2018-01-31 19:45:07 -05:00
Paul Beckingham
cae3f06b7d Lexer: Migrated to unicodeLatinDigit 2018-01-25 01:08:26 -05:00
Paul Beckingham
adc965e762 Lexer: Migrated to unicodeLatinAlpha 2018-01-25 00:59:05 -05:00
Paul Beckingham
e199bc98b3 Lexer: Migrated to unicodeHexDigit 2018-01-25 00:53:47 -05:00
Paul Beckingham
cac258ef72 Lexer: Migrated to unicodeWhitespace 2018-01-25 00:47:23 -05:00
Paul Beckingham
751ae17b22 TW-1947: "urgency.over" filter seems to not work correct
- Thanks to Marc Richter.
2018-01-24 23:57:44 -05:00
Paul Beckingham
c242730b6d Lexer: Fixed DOM missing lookahead 2018-01-24 23:50:42 -05:00
Paul Beckingham
0ec2fb03c2 Tests: Fixed broken color merge tests 2018-01-24 21:53:26 -05:00
Paul Beckingham
f7d47b8ee6 Tests: Fixed brokend color.footnote test 2018-01-24 21:51:48 -05:00
Paul Beckingham
6374246d02 I18N: Removed language build settings 2018-01-21 23:36:00 -05:00
Paul Beckingham
016bb94d3f l10n: Eliminated i18n.h 2018-01-21 23:29:59 -05:00
Paul Beckingham
0a5f062ba8 l10n: Eliminated some column labels 2018-01-21 23:26:38 -05:00
Paul Beckingham
aa4b342fbe l10n: Eliminated some column labels 2018-01-21 23:25:11 -05:00
Paul Beckingham
ebf6a80dcb l10n: Eliminated some column labels 2018-01-21 23:22:41 -05:00
Paul Beckingham
bf576a869e l10n: Eliminated some column labels 2018-01-21 23:21:43 -05:00
Paul Beckingham
98b433bee3 l10n: Eliminated some column labels 2018-01-21 23:19:11 -05:00
Paul Beckingham
a1431f0d98 l10n: Eliminated some column labels 2018-01-21 23:07:04 -05:00
Paul Beckingham
20ed6c0169 l10n: Eliminated some column labels 2018-01-21 22:50:49 -05:00
Paul Beckingham
af8531630d DOM: No more I18N 2018-01-21 22:49:42 -05:00
Paul Beckingham
2201d304ee l10n: Eliminated some column labels 2018-01-21 22:49:27 -05:00
Paul Beckingham
ed657f3ecf l10n: Eliminated some column labels 2018-01-21 22:46:48 -05:00
Paul Beckingham
023afe352a l10n: Eliminated some column labels 2018-01-21 22:44:45 -05:00
Paul Beckingham
f731960f98 l10n: Eliminated some column labels 2018-01-21 22:43:24 -05:00
Paul Beckingham
caea41c6a0 l10n: Eliminated some column labels 2018-01-21 22:38:14 -05:00
Paul Beckingham
865e277b76 l10n: Eliminated some column labels 2018-01-21 22:32:17 -05:00
Paul Beckingham
611d09cb16 l10n: Eliminated some column labels 2018-01-21 22:18:18 -05:00
Paul Beckingham
957b769412 l10n: Eliminated some column labels 2018-01-21 22:15:26 -05:00
Paul Beckingham
cf148c065d l10n: Eliminated some column labels 2018-01-21 22:14:14 -05:00
Paul Beckingham
bf770fda91 l10n: Eliminated some column labels 2018-01-21 22:12:59 -05:00
Paul Beckingham
5335512c38 l10n: Eliminated some column labels 2018-01-21 22:11:25 -05:00
Paul Beckingham
a6c4c2fb2a l10n: Eliminated some column labels 2018-01-21 22:09:51 -05:00
Paul Beckingham
6c1a411d7e l10n: Eliminated some column labels 2018-01-21 22:07:57 -05:00
Paul Beckingham
a506555606 l10n: Eliminated some column labels 2018-01-21 22:06:20 -05:00
Paul Beckingham
317f184ce7 l10n: Eliminated some column labels 2018-01-21 22:02:38 -05:00
Paul Beckingham
87ec85c1fe l10n: Eliminated some column labels 2018-01-21 19:43:05 -05:00
Paul Beckingham
7022c434fd l10n: Eliminated some column labels 2018-01-21 19:35:23 -05:00
Paul Beckingham
dbaac47f25 l10n: Eliminated STRING_COLUMN_LABEL_ADDED, STRING_COLUMN_LABEL_AGE 2018-01-21 19:25:10 -05:00
Paul Beckingham
6c0b47db33 l10n: Eliminated STRING_COLUMN_LABEL_ACTIVE, STRING_COLUMN_LABEL_STARTED 2018-01-21 19:21:48 -05:00
Paul Beckingham
75c9dcc6aa l10n: Eliminated STRING_COLUMN_EXAMPLES_* 2018-01-21 19:17:10 -05:00
Paul Beckingham
64f2436d87 l10n: Eliminated STRING_COLUMN_LABEL_DESC 2018-01-21 13:15:20 -05:00
Paul Beckingham
0cd5fbe625 l10n: Eliminated some STRING_COLUMN_EXAMPLES_* 2018-01-21 13:12:09 -05:00
Paul Beckingham
294f819648 l10n: Eliminated STRING_CMD_UNDO_* 2018-01-21 13:06:07 -05:00
Paul Beckingham
4a54d82cef l10n: Eliminated STRING_CMD_UDAS_* 2018-01-21 13:03:57 -05:00
Paul Beckingham
541e6a1de8 l10n: Eliminated STRING_CMD_COMTAGS_USAGE 2018-01-21 13:01:39 -05:00
Paul Beckingham
02b4d8e821 l10n: Eliminated STRING_CMD_*IDS_* 2018-01-21 12:59:43 -05:00
Paul Beckingham
1acdf1cafc l10n: Eliminated STRING_CMD_CUSTOM_* 2018-01-21 12:55:07 -05:00
Paul Beckingham
ba11e9608f l10n: Eliminated STRING_CMD_ZSHATTS_USAGE 2018-01-21 12:51:10 -05:00
Paul Beckingham
7bf8432ace l10n: Eliminated STRING_CMD_*COMMANDS_* 2018-01-21 12:46:18 -05:00
Paul Beckingham
e62b8702dc l10n: Eliminated STRING_CMD_EXEC_* 2018-01-21 12:42:28 -05:00
Paul Beckingham
bb6f78b7c3 l10n: Eliminated STRING_CMD_URGENCY_* 2018-01-21 12:38:47 -05:00
Paul Beckingham
511d6f79f9 l10n: Eliminated STRING_CMD_TAGS_* 2018-01-21 12:36:02 -05:00
Paul Beckingham
4f46332fa7 l10n: Eliminated STRING_CMD_CAL_* 2018-01-21 12:27:29 -05:00
Paul Beckingham
6360e32665 l10n: Eliminated STRING_CMD_ALIASES_* 2018-01-21 12:24:22 -05:00
Paul Beckingham
2d859aa048 l10n: Eliminated STRING_CMD_INFO_* 2018-01-21 12:21:42 -05:00
Paul Beckingham
c8c2be1652 l10n: Eliminated STRING_CMD_REPORTS_* 2018-01-21 12:14:45 -05:00
Paul Beckingham
f307cabc9e Code cleanup: Removed unnecessary include 2018-01-21 12:14:25 -05:00
Paul Beckingham
9188cb083c l10n: Eliminated STRING_CMD_IMPORT_* 2018-01-21 12:09:51 -05:00
Paul Beckingham
ac61e77675 Code cleanup: Removed unnecessary include 2018-01-21 12:09:00 -05:00
Paul Beckingham
f8ae0577b4 l10n: Eliminated STRING_CMD_ADD_* 2018-01-21 12:01:54 -05:00
Paul Beckingham
5f407ad121 Code cleanup: Removed unnecessary include 2018-01-21 12:01:20 -05:00
Paul Beckingham
83695efb84 L10N: Normalized files 2018-01-21 11:54:11 -05:00
Paul Beckingham
30ae2dd355 l10n: Eliminated STRING_CMD_UNIQUE_* 2018-01-21 11:48:16 -05:00
Paul Beckingham
ee59bde88b Code cleanup: Removed unnecessary include 2018-01-21 11:47:59 -05:00
Paul Beckingham
0998552dc0 l10n: Eliminated STRING_CMD_LOG_* 2018-01-21 11:43:57 -05:00
Paul Beckingham
a343b80134 L10N: Eliminated check_translations.sh 2018-01-21 11:36:51 -05:00
Paul Beckingham
4232932663 l10n: Eliminated STRING_CMD_{G,}HISTORY_* 2018-01-21 11:36:29 -05:00
Paul Beckingham
7646c15f45 l10n: Eliminated STRING_CMD_CALC_* 2018-01-21 11:23:44 -05:00
Paul Beckingham
208cc52aab Code cleanup: Removed unnecessary include 2018-01-21 11:23:02 -05:00
Paul Beckingham
98f7b36ccd l10n: Eliminated STRING_CMD_VERSION_* 2018-01-21 11:19:01 -05:00
Paul Beckingham
e128185f5f CmdVersion: Uses libshared osName 2018-01-21 11:18:43 -05:00
Paul Beckingham
c937f18ab8 l10n: Eliminated STRING_CMD_PREPEND_* 2018-01-21 11:13:13 -05:00
Paul Beckingham
fbcb2b6c65 l10n: Eliminated STRING_CMD_TIMESHEET_* 2018-01-21 11:09:05 -05:00
Paul Beckingham
f87b780fd7 l10n: Eliminated STRING_CMD_CONFIG_* 2018-01-21 11:06:36 -05:00
Paul Beckingham
be72058b31 l10n: Eliminated STRING_CMD_CONTEXT_* 2018-01-20 21:58:55 -05:00
Paul Beckingham
f6b14adb30 l10n: Eliminated STRING_CMD_COLOR_* 2018-01-20 21:49:35 -05:00
Paul Beckingham
8c7f3be1bd l10n: Eliminated STRING_FEEDBACK_NO_TASKS_SP 2018-01-20 21:40:46 -05:00
Paul Beckingham
11921878a4 l10n: Eliminated STRING_CMD_APPEND_* 2018-01-20 21:39:49 -05:00
Paul Beckingham
360b1d81d1 l10n: Eliminated STRING_CMD_PURGE_* 2018-01-20 21:29:51 -05:00
Paul Beckingham
e00f106012 l10n: Eliminated STRING_CMD_PROJECTS_* 2018-01-20 21:25:31 -05:00
Paul Beckingham
9ad638c98a l10n: Eliminated STRING_CMD_DENO_* 2018-01-20 21:16:21 -05:00
Paul Beckingham
11c11de46d l10n: Eliminated STRING_CMD_ANNO_* 2018-01-20 21:12:12 -05:00
Paul Beckingham
ce6f4963e7 l10n: Eliminated STRING_CMD_COUNT_* 2018-01-20 21:07:37 -05:00
Paul Beckingham
57ba9edf4f l10n: Eliminated STRING_CMD_STATS_* 2018-01-20 21:04:56 -05:00
Paul Beckingham
0d2cf73d90 l10n: Eliminated STRING_CMD_SUMMARY_* 2018-01-20 20:56:54 -05:00
Paul Beckingham
47d17b67e0 l10n: Eliminated STRING_CMD_BURN_* 2018-01-20 20:51:31 -05:00
Paul Beckingham
07989d62b9 l10n: Eliminated STRING_CMD_GET_* 2018-01-20 20:38:33 -05:00
Paul Beckingham
2f6819744f l10n: Eliminated STRING_CMD_SHOW* 2018-01-20 20:33:39 -05:00
Paul Beckingham
09e7569cf3 l10n: Eliminated STRING_CMD_DELETE_* 2018-01-20 20:09:25 -05:00
Paul Beckingham
f09b65c980 l10n: Eliminated STRING_CMD_UDAS_* 2018-01-20 20:02:08 -05:00
Paul Beckingham
018e7e3547 l10n: Eliminated STRING_COLUMN_LABEL_DEP* 2018-01-20 19:56:53 -05:00
Paul Beckingham
2eff7bb5e2 calc: Fixed string param 2018-01-20 16:31:09 -05:00
Paul Beckingham
2b35eef864 l10n: Eliminated STRING_CMD_DUPLICATE_* 2018-01-20 15:44:24 -05:00
Paul Beckingham
641b2dd412 l10n: Eliminated STRING_CMD_MODIFY_* 2018-01-20 15:40:22 -05:00
Paul Beckingham
9613350bb3 l10n: Eliminated STRING_CMD_SYNC_* 2018-01-20 15:34:00 -05:00
Paul Beckingham
abf529eba8 l10n: Eliminated STRING_CMD_DIAG_* 2018-01-20 15:22:25 -05:00
Paul Beckingham
9b9735836a l10n: Eliminated STRING_CMD_DONE_* 2018-01-20 15:04:10 -05:00
Paul Beckingham
28c6363f09 l10n: Eliminated STRING_CMD_STOP_* 2018-01-20 14:59:56 -05:00
Paul Beckingham
58523c3d78 l10n: Eliminated STRING_CMD_LOGO_* 2018-01-20 14:54:27 -05:00
Paul Beckingham
5a3d5f536d l10n: Eliminated STRING_CMD_START_* 2018-01-20 14:52:26 -05:00
Paul Beckingham
5f6f61c591 l10n: Eliminated STRING_TASK_VALID_DESC 2018-01-20 14:45:38 -05:00
Paul Beckingham
cf56983b58 l10n: Eliminated STRING_COLUMN_LABEL_ID 2018-01-20 14:44:01 -05:00
Paul Beckingham
e46ca4dcab l10n: Eliminated STRING_COLUMN_LABEL_TASKS 2018-01-20 14:41:34 -05:00
Paul Beckingham
f922f6ee7e l10n: Eliminated STRING_COLUMN_BAD_FORMAT 2018-01-20 14:39:41 -05:00
Paul Beckingham
7abc96efea l10n: Eliminated STRING_COLUMN_BAD_NAME 2018-01-20 14:36:37 -05:00
Paul Beckingham
190d57ac70 l10n: Eliminated STRING_ERROR_NO_FILTER 2018-01-20 14:34:26 -05:00
Paul Beckingham
e686d198e6 l10n: Eliminated STRING_ERROR_DETAILS 2018-01-20 14:32:00 -05:00
Paul Beckingham
e2d92bb2d6 l10n: Eliminated STRING_INVALID_MOD 2018-01-20 14:30:03 -05:00
Paul Beckingham
e928117fb2 l10n: Eliminated STRING_UDA_COLLISION 2018-01-20 14:21:43 -05:00
Paul Beckingham
bf63dde8ca l10n: Eliminated STRING_LOCALIZATION_* 2018-01-20 14:19:24 -05:00
Paul Beckingham
6cf8f18196 l10n: Eliminated STRING_UDA_TYPE 2018-01-20 14:15:34 -05:00
Paul Beckingham
aad6a6d078 l10n: Eliminated STRING_CMD_COLUMNS_* 2018-01-20 14:10:45 -05:00
Paul Beckingham
6f6335f67a l10n: Eliminated STRING_HELPER_PROJECT_* 2018-01-20 14:07:07 -05:00
Paul Beckingham
28ddf8699a l10n: Eliminated STRING_ERROR_BAD_STATUS 2018-01-20 13:57:44 -05:00
Paul Beckingham
15096c473e l10n: Eliminated STRING_INFINITE_LOOP 2018-01-20 13:55:34 -05:00
Paul Beckingham
f43b51cf85 l10n: Eliminated STRING_TRIVIAL_INPUT 2018-01-20 13:52:41 -05:00
Paul Beckingham
60394aad6a l10n: Eliminated STRING_ERROR_PREFIX 2018-01-20 13:50:10 -05:00
Paul Beckingham
69bf268e42 l10n: Eliminated STRING_PARSER_* 2018-01-20 13:46:39 -05:00
Paul Beckingham
d012e5f188 l10n: Eliminated STRING_EDIT_* 2018-01-20 13:42:04 -05:00
Paul Beckingham
e27049273c l10n: Eliminated STRING_RECORD_* 2018-01-20 13:15:45 -05:00
Paul Beckingham
3b792d5432 l10n: Eliminated STRING_COLOR_UNRECOGNIZED 2018-01-20 13:10:19 -05:00
Paul Beckingham
6da0d8af95 l10n: Eliminated STRING_EDIT_TABLE_HEADER 2018-01-20 12:59:45 -05:00
Paul Beckingham
e8f1da6417 l10n: Eliminated STRING_DEPEND_* 2018-01-20 12:55:10 -05:00
Paul Beckingham
13ee52491e l10n: Eliminated STRING_CONFIG_* 2018-01-20 12:51:40 -05:00
Paul Beckingham
6b08813585 l10n: Eliminated STRING_CONFIG_DEPRECATED_COL 2018-01-20 12:49:38 -05:00
Paul Beckingham
8d302d98c5 l10n: Eliminated STRING_CONFIG_DEPRECATED_VAR 2018-01-20 12:47:27 -05:00
Paul Beckingham
3724b91dc4 l10n: Eliminated STRING_DATE_BAD_WEEKSTART 2018-01-20 12:43:05 -05:00
Paul Beckingham
d60de8c923 l10n: Eliminated STRING_DATE_INVALID_FORMAT 2018-01-20 12:41:05 -05:00
Paul Beckingham
de44d3fb97 l10n: Eliminated STRING_DATE_<month> 2018-01-20 12:38:23 -05:00
Paul Beckingham
39342632a1 l10n: Eliminated STRING_DATE_*DAY 2018-01-20 12:36:00 -05:00
Paul Beckingham
8ff2b9b77b l10n: Eliminated STRING_CMD_CONFIG_NO_CHANGE 2018-01-20 12:21:34 -05:00
Paul Beckingham
67e20058b2 l10n: Eliminated STRING_TDB2_* 2018-01-20 12:18:29 -05:00
Paul Beckingham
29f3df9810 l10n: Eliminated STRING_VIEW_TOO_SMALL 2018-01-17 21:21:44 -05:00
Paul Beckingham
6bd9c46c8c l10n: Eliminated STRING_RECUR_CREATE 2018-01-17 21:19:11 -05:00
Paul Beckingham
3e3ed5446c l10n: Eliminated STRING_TASK_VALID_RECUR 2018-01-17 21:16:20 -05:00
Paul Beckingham
def3fd35ae l10n: Eliminated STRING_CMD_EXPORT_USAGE 2018-01-17 21:12:10 -05:00
Paul Beckingham
60180531c6 l10n: Eliminated STRING_LEGACY_PRIORITY 2018-01-15 13:59:07 -05:00
Paul Beckingham
8412198138 l10n: Eliminated STRING_UTIL_CONFIRM_* 2018-01-15 13:43:34 -05:00
Paul Beckingham
1d4b9173fc l10n: Eliminated STRING_ERROR_CONFIRM_SIGINT 2018-01-15 13:39:48 -05:00
Paul Beckingham
2605cfa227 l10n: Eliminated STRING_COLUMN_LABEL_TEMPLATE 2018-01-15 13:35:38 -05:00
Paul Beckingham
5795e7f765 l10n: Eliminated STRING_DOM_UNREC 2018-01-15 13:32:32 -05:00
Paul Beckingham
cff755aba1 l10n: Eliminated STRING_EVAL_* 2018-01-15 13:28:43 -05:00
Paul Beckingham
74eb35810f l10n: Eliminated translation instructions 2018-01-15 13:11:12 -05:00
Paul Beckingham
d2f3648242 l10n: Eliminated STRING_CMD_VERSION_* 2018-01-15 13:10:52 -05:00
Paul Beckingham
2422a6bbda l10n: Eliminated STRING_HOOKS_* 2018-01-15 12:51:56 -05:00
Paul Beckingham
63a8d223e2 l10n: Eliminated STRING_TASK_INVALID_DUR 2018-01-15 12:28:52 -05:00
Paul Beckingham
367f3a5e32 l10n: Eliminated STRING_COLUMN_LABEL_PARENT 2018-01-15 12:24:57 -05:00
Paul Beckingham
1589db376c Utils: Removed l10n utility 2018-01-15 12:20:34 -05:00
Paul Beckingham
9bbc43c3f3 Docs: Added note about translations no longer being supported 2018-01-15 12:18:48 -05:00
Paul Beckingham
ce4b92e5fc l10n: Eliminated STRING_CMD_HELP_USAGE_LABEL 2018-01-15 12:16:24 -05:00
Paul Beckingham
27c7d76884 l10n: Eliminated STRING_CMD_HELP_USAGE_DESC 2018-01-15 12:14:36 -05:00
Paul Beckingham
7a14df80a8 l10n: Eliminated STRING_CMD_HELP_ALIASED 2018-01-15 12:12:53 -05:00
Paul Beckingham
ad24179ba3 l10n: Eliminated STRING_CMD_HELP_TEXT 2018-01-15 12:11:06 -05:00
Paul Beckingham
b970d7e5c9 l10n: Eliminated STRING_CMD_HELP_TEXT 2018-01-15 11:55:02 -05:00
Paul Beckingham
038d9fe8db l10n: Eliminated STRING_CONTEXT_CREATE_RC 2018-01-15 11:48:15 -05:00
Paul Beckingham
e814daacf1 l10n: Eliminated STRING_CONTEXT_DATA_OVERRIDE 2018-01-15 11:45:34 -05:00
Paul Beckingham
06f7802a29 l10n: Eliminated STRING_CONTEXT_RC_OVERRIDE 2018-01-15 11:43:44 -05:00
Paul Beckingham
8f211c1a07 l10n: Eliminated STRING_CONTEXT_NEED_RC 2018-01-15 11:06:18 -05:00
Paul Beckingham
8ca8f9eb10 l10n: Eliminated STRING_CONFIG_BAD_WRITE 2018-01-15 11:04:23 -05:00
Paul Beckingham
2e9ea52a8d l10n: Eliminated STRING_ASSUME_INFO 2018-01-15 11:01:36 -05:00
Paul Beckingham
f00884998e l10n: Eliminated STRING_DATE_SUNDAY 2018-01-15 10:59:25 -05:00
Paul Beckingham
fdd8b1ca13 l10n: Eliminated STRING_INVALID_SORT_COL 2018-01-15 10:53:48 -05:00
Paul Beckingham
193eebd852 l10n removal of STRING_COLUMN_LABEL_MASK, STRING_COLUMN_LABEL_MASK_IDX 2018-01-07 13:37:47 -05:00
Paul Beckingham
aac883241f l10n removal of STRING_UDA_NUMERIC 2018-01-07 13:10:52 -05:00
Paul Beckingham
0b790f46a1 l10n removal of STRING_UNKNOWN_ERROR 2018-01-07 12:57:21 -05:00
Paul Beckingham
6a97188084 libshared: Updated to 1fa5dcbf53a280857e35436aef6beb6a37266e33 2017-12-31 19:39:51 -05:00
Paul Beckingham
0de169bb10 Copyright 2018 2017-12-31 19:22:07 -05:00
Paul Beckingham
58ec6735dd TI-91: Timewarrior does not compile on DragonFly
- Thanks to Michael Neumann.
2017-12-10 00:20:50 -05:00
Paul Beckingham
78d910a58b Docs: Updated ChangeLog 2017-12-09 23:15:36 -05:00
Paul Beckingham
ce6e2afb57 Test: Improved C+ Core Guidelines compliance 2017-12-09 23:05:31 -05:00
Paul Beckingham
bf3ae78e9d TW-1938: Adjust behaviour of new-uuid and new-id verbosity levels
- Thanks to Paul J. Fenwick.
2017-12-09 22:52:56 -05:00
Paul Beckingham
25948e2da9 Merge branch 'new_uuid_conflict_tweaks' of pjf/task into 2.6.0 2017-12-08 15:57:04 +00:00
Paul Fenwick
cc9e2a5076 [TW-1938] Resolve conflicts between new-id and new-uuid
- new-uuid is *not* set by default
- new-uuid overrides new-id when set

The reasoning is that new-uuid is mostly used by code (eg: Python's
taskw module), whereas new-id is mostly used by humans.

By making new-uuid not set by default, calling code can set it to
receive UUIDs (preserving 2.5.x behaviour), but humans can continue to
use integer task IDs.
2017-12-04 11:36:45 -08:00
Paul Beckingham
8092e67991 TW-1930: Typo in help
- Thanks to Kai HTML.
2017-12-02 14:21:12 -05:00
Paul Beckingham
a54bcf685b TW-1935: Separate verbosity category for rc overrides
- Thanks to Paul J. Fenwick.
2017-12-02 13:06:58 -05:00
Paul Fenwick
f6dee20777 CLI2/Context: Add vim hints
No need for vim to guess indent style with these handy vim hints!
2017-12-02 12:51:35 -05:00
Paul Fenwick
1fb19671c4 CLI2,Config: Add 'override' verbosity option
This allows for 'override' messages to be silenced without requiring
footnotes be completely disabled.

The 'override' verbosity implies 'footnotes'.
2017-12-02 12:51:14 -05:00
Paul Fenwick
0d682ee7a9 Docs/CLI2: Additional dev docs for applyOverrides 2017-12-02 12:46:55 -05:00
Paul Beckingham
279c825033 TW-1936: Tweak tests to have fuller TAP compliance
- Thanks to Paul J. Fenwick.
2017-12-02 12:34:47 -05:00
Paul Fenwick
138f6ffed3 test/problems: Updated to handle TAP spec output 2017-12-02 12:22:14 -05:00
Paul Fenwick
5ec91026ed Improve TAP compliance in test suite
This allows tools like `prove` to operate on our test-suite, allowing us
to do things like run recently-failing tests first, randomising test
order, and fancier reporting options.

Changes made:

- TAP output always goes to STDOUT, never to STDERR
- Skipped tests signaled as `ok 1 # skip` as per standard
- Expected failures signaled as `not ok 1 # TODO` as per standard
- `.prove` added to .gitignore
2017-12-02 12:06:54 -05:00
Paul Beckingham
02140f1843 Docs: Removed obsolete URL 2017-10-11 21:26:01 -04:00
Paul Beckingham
d02e4f8fc9 Error: Changed (1) error format 2017-10-08 14:39:00 -04:00
Tomas Babej
00239e5b20 DEVELOPER: Update git repo url 2017-08-18 01:04:55 +02:00
Tomas Babej
255e02b7da context: Do not allow show, list or none as new context names
- Thanks to silviof.
2017-07-27 19:00:43 +02:00
Paul Beckingham
05979025d2 Recurrence: Updated 'until' handling 2017-07-22 13:30:49 +01:00
Paul Beckingham
ce012d6430 Recur: Typo 2017-07-22 13:29:26 +01:00
Paul Beckingham
cd2baebb2c Scripts: Updated URLs 2017-07-22 12:49:46 +01:00
Tomas Babej
47cfc0b28b tests: Add tests for complex and-or queries 2017-06-12 15:34:01 +02:00
Paul Beckingham
88ef997d6a Reapplying include removal without libshared update 2017-05-08 17:47:36 -04:00
Paul Beckingham
dbfe220499 Revert "TLSClient: Remove double include"
This reverts commit 2321c17d8d.
2017-05-08 17:33:44 -04:00
Tomas Babej
2321c17d8d TLSClient: Remove double include 2017-05-08 21:59:03 +02:00
Tomas Babej
e3ba077014 Update AUTHORS and ChangeLog file 2017-05-08 17:22:45 +02:00
Tomas Babej
3245d00edb TW-1910: Remove unreachable statement
- Thanks to Martin Strunz.
2017-05-08 17:20:42 +02:00
Paul Beckingham
9f0a71f4b6 Tests: Added dom tests 2017-04-30 00:00:30 -04:00
Paul Beckingham
23138db6c7 DOM: Implemented DOM::Node object 2017-04-30 00:00:14 -04:00
Paul Beckingham
2b71434cf8 DOM: Added dtor that delegate to DOM::Node 2017-04-29 23:57:42 -04:00
Paul Beckingham
b34a51710e Tests: Added tw.version DOM test 2017-04-29 11:25:12 -04:00
Paul Beckingham
f7ab2c4b2d DOM: New reference tw.version. 2017-04-29 11:24:08 -04:00
Paul Beckingham
7e4dd24d86 DOM: Fixed ::count bug 2017-04-29 11:10:57 -04:00
Paul Beckingham
fc58d1e14d Tests: Added first DOM test 2017-04-29 11:10:43 -04:00
Paul Beckingham
c8318ce7cb Tests: Renamed dom.t to make way for new DOM object tests 2017-04-29 10:56:22 -04:00
Paul Beckingham
cd87eab6af DOM: Added framework 2017-04-29 10:54:39 -04:00
Paul Beckingham
ae5bc8e239 DOM: Stubbed DOM tree 2017-04-28 12:42:19 -04:00
Paul Beckingham
0d2b2df498 Recurrence: Debug msg 2017-04-10 19:51:53 -04:00
Paul Beckingham
803c49b6c4 Recurrence: Debug msg 2017-04-10 19:41:22 -04:00
Paul Beckingham
9fe77ab5b5 Recurrence: Debug msg 2017-04-10 19:27:35 -04:00
Paul Beckingham
415d964230 Recurrence: Debug msg 2017-04-10 19:20:06 -04:00
Paul Beckingham
aa6b5dbfba Recurrence: Added stubbed generateAllDueDates 2017-04-10 19:08:07 -04:00
Paul Beckingham
e62b395534 Recurrence: Stubbed due date generation 2017-04-10 18:54:45 -04:00
Paul Beckingham
0e599a51a0 Task: Added reminder to simplify validation 2017-04-10 17:23:11 -04:00
Paul Beckingham
3bf1c50131 Docs: Added to AUTHORS file 2017-04-09 21:00:44 -04:00
Øyvind A. Holm
984e4b20f8 Docs: Typo fix in task.1.in 2017-04-09 21:00:01 -04:00
Paul Beckingham
93efc4b6f9 Docs: Updated platform list 2017-04-09 16:47:54 -04:00
Paul Beckingham
a4fdb988ff Recurrence: Added list of upgrade steps 2017-04-09 16:36:14 -04:00
Paul Beckingham
97b038ce29 Recurrence: Broke out handleUntil as a separate function
- This means until porocesing is no longer controlled by rc.recurrence, which
  was never intended.
2017-04-06 00:29:20 -04:00
Paul Beckingham
e991004c43 Recurrence: Fixed broken build 2017-04-06 00:01:57 -04:00
Paul Beckingham
3a57ca26f8 Merge branch '2.6.0' of tbabej/task into 2.6.0 2017-04-03 00:29:56 +00:00
Tomas Babej
dd5e3d7329 INSTALL: Use https link for cmake.org 2017-04-03 00:25:06 +00:00
Tomas Babej
d162f2ac78 LICENSE: Use https link instead of http 2017-04-03 01:46:22 +02:00
Paul Beckingham
54ea38b663 Recurrence: Added notes 2017-04-02 14:04:44 -04:00
Paul Beckingham
1f6ea2a8ad Recurrence: Stubbed Task upgrade function 2017-04-02 14:03:16 -04:00
Paul Beckingham
5ef2a256a6 Recurrence: Stubbed single due date function 2017-04-02 14:02:40 -04:00
Paul Beckingham
179e97c748 libshared: Updated URL 2017-04-01 23:34:06 -04:00
Paul Beckingham
45eb2cffbb Recurrence: Implemented reduction to single-task problem 2017-04-01 14:27:08 -04:00
Paul Beckingham
2810c70223 Recurrence: Stubbed synthesizeTasks 2017-04-01 14:25:56 -04:00
Paul Beckingham
0973bf0dda Task: Typo in attribute name 2017-04-01 13:26:31 -04:00
Paul Beckingham
b40cc89235 Recurrence: Added stub for handleRecurrence2 2017-03-31 08:38:35 -04:00
Paul Beckingham
f6f79d28ee Recurrence: Relocate nag function out of the way 2017-03-31 08:34:25 -04:00
Paul Beckingham
704dfd462e TW-1903: grammar error -- There are 1 local changes.
- Thanks to Eric Hymowitz.
2017-03-30 23:21:14 -04:00
Paul Beckingham
60bccaae2b Task: CHILD, INSTANCE, PARENT and TEMPLATE are now forward/backward compatible 2017-03-23 22:51:11 -04:00
Paul Beckingham
1858de5f51 CmdHistory: Corrected date label justification 2017-03-23 22:49:50 -04:00
Paul Beckingham
8113eae006 Tests: Added WAITING tests 2017-03-23 22:49:07 -04:00
Paul Beckingham
92ededda71 Tests: Added UNTIL tests 2017-03-23 22:48:58 -04:00
Paul Beckingham
322ff9e653 Tests: Added INSTANCE tests 2017-03-23 22:48:39 -04:00
Paul Beckingham
b0636bda2f Tests: Added TEMPLATE tests 2017-03-23 22:48:00 -04:00
Paul Beckingham
0de91e68c7 Tests: Added SCHEDULED tests 2017-03-23 22:47:40 -04:00
Paul Beckingham
79513ea17f Tests: Added READY tests 2017-03-23 22:47:16 -04:00
Paul Beckingham
d4643982ff Tests: Made history tests independent of TZ 2017-03-23 08:26:49 -04:00
Paul Beckingham
0c3ca1862d Tests: Fixed bad regexes 2017-03-23 01:53:05 -04:00
Paul Beckingham
640a90e473 Tests: Fixed bad duplicate class/method name 2017-03-23 01:52:43 -04:00
Paul Beckingham
4c2fa33a08 CmdHistory: Formatting 2017-03-23 01:51:41 -04:00
Paul Beckingham
7c2c9fc5d0 CmdHistory: Fixed bug where all strategies were rendered in the wrong width 2017-03-23 01:51:22 -04:00
Paul Beckingham
bc7154c9cd Tests: Fixed spaing issue in history test 2017-03-23 01:10:18 -04:00
Paul Beckingham
2a12aabcf1 CmdHistory: Set no-wrap for ghistory output 2017-03-23 01:06:29 -04:00
Paul Beckingham
66c11f635e CmdHistory: Removed table header coloring which is handled elsewhere 2017-03-23 01:05:56 -04:00
Paul Beckingham
22da6c2e42 CmdHistory: Formatting 2017-03-23 01:05:14 -04:00
Paul Beckingham
7dc51a266f CmdHistory: Formatting 2017-03-23 01:04:23 -04:00
Paul Beckingham
d08f62a7d9 CmdSummary: Set no-wrap for progress bar column 2017-03-23 01:03:38 -04:00
Paul Beckingham
bfbe20352e libshared: Updated to f1a3cd6bfabfb083fe3c26f580a15c0d60a92ee9 2017-03-23 01:03:09 -04:00
Paul Beckingham
47715322dc util: Removed unused strippedLength() function 2017-03-23 01:02:29 -04:00
Paul Beckingham
a9e65e7e61 Tests: Removed strippedLength() tests 2017-03-23 01:02:06 -04:00
Tomas Babej
c20883af15 Remove unused auxiliary script task_functions.sh
The definitions contained in this file were used only by the already
removed 'context' bash script, see: fc6507803b
2017-03-22 02:56:26 +01:00
Paul Beckingham
f74c1c9e9a calc: Uses same configuration setting for Datetime/Duration as task 2017-03-21 08:43:45 -04:00
Paul Beckingham
60220546c1 Tests: Removed taskd group features from test framework 2017-03-20 22:23:08 -04:00
Paul Beckingham
97612b892a CmdUDAs: Table headers consistent 2017-03-20 09:12:49 -04:00
Paul Beckingham
0cf0f1ce3c CmdTimesheet: Table headers consistent 2017-03-20 09:12:33 -04:00
Paul Beckingham
c26d7fb465 CmdTags: Table headers consistent 2017-03-20 09:12:21 -04:00
Paul Beckingham
e9688c7593 CmdSummary: Table headers consistent 2017-03-20 09:12:09 -04:00
Paul Beckingham
f13f0e8def CmdStats: Table headers consistent 2017-03-20 09:11:56 -04:00
Paul Beckingham
38b0c6c4f1 CmdShow: Table headers consistent 2017-03-20 09:11:40 -04:00
Paul Beckingham
c0f33ed5e7 CmdReports: Table headers consistent 2017-03-20 09:11:26 -04:00
Paul Beckingham
596cce73b7 CmdProjects: Table headers consistent 2017-03-20 09:11:12 -04:00
Paul Beckingham
043884fc9b CmdInfo: Table headers consistent 2017-03-20 09:11:00 -04:00
Paul Beckingham
c8fb2f1ddd CmdHistory: Formatting 2017-03-20 09:10:42 -04:00
Paul Beckingham
aa5d1b4192 CmdHistory: Table headers consistent 2017-03-20 09:10:20 -04:00
Paul Beckingham
73040f2679 CmdContext: Table headers consistent 2017-03-20 09:09:46 -04:00
Paul Beckingham
120c50f75e CmdCommands: Table headers consistent 2017-03-20 09:09:30 -04:00
Paul Beckingham
61ee94a0e4 CmdColumns: Table headers consistent 2017-03-20 09:09:06 -04:00
Paul Beckingham
2a7d6eb26a CmdCalendar: Table headers consistent 2017-03-20 09:08:45 -04:00
Paul Beckingham
a1a9cb7786 TDB2: Table headers consistent 2017-03-20 09:06:59 -04:00
Paul Beckingham
ac93381cd0 util: Added helper function to properly manage table header color/underline 2017-03-20 09:06:16 -04:00
Paul Beckingham
410bd2a22a Tests: Disabled ambiguous test (matching libshared) 2017-03-20 09:02:37 -04:00
Paul Beckingham
218b43ecfa CmdInfo: Fixed header underline problem 2017-03-20 08:29:51 -04:00
Paul Beckingham
4f6c44e5c1 Tests: Syntax error in Python that went unnoticed 2017-03-19 17:27:40 -04:00
Paul Beckingham
6e7bd12094 libshared: Updated to 9a05fb5040008aa5f2c95e7ad060aa249367fe92 2017-03-19 17:16:52 -04:00
Paul Beckingham
b2810aa0c2 Tests: Lexer tests now stable with Datetime/duration features disabled 2017-03-19 10:05:25 -04:00
Paul Beckingham
e350142b19 Context: Selects Datetime/Duration features to match expectations 2017-03-19 10:00:25 -04:00
Paul Beckingham
ddbf352962 libshared: Updated to f2ac7ef9cc9f33f634f9aacd65ca9c1f828f50e3 2017-03-19 09:59:50 -04:00
Paul Beckingham
0a137a852e Cleanup: Formatting 2017-03-19 09:59:20 -04:00
Paul Beckingham
f5ac502f35 libshared: Updated to b1686ad3e14c766faa3bdec3d5afe7152ace5e71 2017-03-15 13:04:26 -04:00
Paul Beckingham
77e0dabb48 libshared: Updated to 6f0900d86743405f24d52f9eafe6c8e941d40ec3 2017-03-15 12:00:43 -04:00
Paul Beckingham
1ece5ccfb4 libshared: Updated to 320f65961505019d276e5b36316bd11bdd0025b1 2017-03-08 08:48:15 -05:00
Paul Beckingham
386226f404 Task: Uses named dates for YEAR virtual tag 2017-03-08 08:34:25 -05:00
Paul Beckingham
cb0873d14b Task: Uses named dates for QUARTER virtual tag 2017-03-08 08:34:15 -05:00
Paul Beckingham
ba4113d567 Task: Uses named dates for MONTH virtual tag 2017-03-08 08:33:55 -05:00
Paul Beckingham
768767866f Task: Uses named dates to WEEK virtual tag 2017-03-08 08:33:34 -05:00
Paul Beckingham
bae64cd95c libshared: Updated to cbe3fd84a8950a42ed271a0dd8e7c4e1564b1333 2017-03-08 08:26:32 -05:00
Paul Beckingham
c30a69a69e libshared: Updated to 5bd493494fe2b1f0ab208e1edb4854316eeb5423 2017-03-06 23:58:16 -05:00
Paul Beckingham
111e36ed8c Tests: Named date tests migrated to libshared 2017-03-05 15:03:14 -05:00
Paul Beckingham
18aeeca103 CMake: Eliminated Dates.cpp 2017-03-05 09:46:44 -05:00
Paul Beckingham
982ae80a82 Task: Eliminated namedDates 2017-03-05 09:46:21 -05:00
Paul Beckingham
b65550e620 Tests: Eliminated old-style EOD math 2017-03-05 09:35:34 -05:00
Paul Beckingham
36e67a0c71 Tests: Corrected lexer data type for newly-supported date types 2017-03-05 09:35:13 -05:00
Paul Beckingham
9b0b314618 Tests: Eliminated namedDates 2017-03-05 09:34:30 -05:00
Paul Beckingham
4046886e2a CmdCalc: Eliminated namedDates 2017-03-05 09:31:50 -05:00
Paul Beckingham
4cd9ebfdf4 ColTypeString: Eliminated namedDates 2017-03-05 09:31:29 -05:00
Paul Beckingham
2b205302c9 ColTypeNumeric: Eliminated namedDates 2017-03-05 09:31:10 -05:00
Paul Beckingham
49f8777d05 ColTypeDuration: Eliminated namedDates 2017-03-05 09:30:51 -05:00
Paul Beckingham
93d2594949 ColTypeDate: Eliminated namedDates 2017-03-05 09:30:31 -05:00
Paul Beckingham
fbc461818e ColTags: Eliminated namedDates 2017-03-05 09:30:06 -05:00
Paul Beckingham
925700dbf8 ColRecur: Eliminated namedDates 2017-03-05 09:29:50 -05:00
Paul Beckingham
8e7350ac27 ColProject: Eliminated namedDates 2017-03-05 09:29:28 -05:00
Paul Beckingham
2b8b31b94b calc: Eliminated namedDates 2017-03-05 09:29:13 -05:00
Paul Beckingham
5f4a62750e Filter: Eliminated namedDates 2017-03-05 09:28:57 -05:00
Paul Beckingham
d0ec6b27aa Nibbler: Elimnated, migrated to Pig 2017-03-04 22:21:49 -05:00
Paul Beckingham
2912df58fb Tests: Removed unused Nibbler tests 2017-03-04 22:21:07 -05:00
Paul Beckingham
68adade5b0 ISO8601: Migrated all to Datetime/Duration 2017-03-04 22:18:04 -05:00
Paul Beckingham
3a7e3b8836 Tests: Eliminated ISO8601d tests 2017-03-04 22:16:36 -05:00
Paul Beckingham
7647a089d0 Tests: Eliminated ISO8601p tests 2017-03-04 21:49:38 -05:00
Paul Beckingham
cea0732d46 Context: Eliminated ISO8601 2017-03-04 21:46:05 -05:00
Paul Beckingham
434e95f560 Variant: Migraded from ISO8601d to Datetime 2017-03-04 21:44:07 -05:00
Paul Beckingham
c0d5d5974e Lexer: Migrated from ISO8601p to Duration 2017-03-04 21:43:43 -05:00
Paul Beckingham
769d4a2ebe Lexer: Migrated from ISO8601d to Datetime 2017-03-04 20:53:16 -05:00
Paul Beckingham
5450fae7c3 libshared: Updated to 0dbe6c2818d4dc99f5d0089d6afb1559ed05ebf7 2017-03-04 20:50:39 -05:00
Paul Beckingham
1fd18dd50e dependency: CPP Core Guidlines compliance 2017-03-02 20:56:19 -05:00
Paul Beckingham
b45b8c1c05 sort: Greater use of auto 2017-03-02 20:30:02 -05:00
Paul Beckingham
0bfac78f1e CmdEdit: Properly captures an unmodified errno 2017-03-02 18:29:42 -05:00
Paul Beckingham
5716508694 util: Removed unused header 2017-03-02 18:28:35 -05:00
Paul Beckingham
c9defab256 Docs: Typo 2017-02-28 18:52:18 -05:00
Paul Beckingham
311a9538d8 Docs: Typo 2017-02-28 18:51:46 -05:00
Paul Beckingham
2231adb04c Docs: Typo 2017-02-28 18:20:38 -05:00
Paul Beckingham
95d91e8f62 Docs: Typo 2017-02-28 18:20:31 -05:00
Paul Beckingham
e18f18a4ff Docs: Typo 2017-02-28 18:20:01 -05:00
Paul Beckingham
5c216ba4c1 Docs: Typo 2017-02-28 18:19:48 -05:00
Paul Beckingham
3d96a62a0c Docs: Updated build parallelism 2017-02-28 18:15:24 -05:00
Paul Beckingham
48f9072539 Docs: Updated requirements 2017-02-28 18:14:46 -05:00
Paul Beckingham
7b6e24a164 Task: Recurring tasks get rtype:periodic by default 2017-02-28 00:11:58 -05:00
Paul Beckingham
4a5dfad74d Feedback: Sync message now indicates how many local changes will be synced 2017-02-28 00:10:15 -05:00
Paul Beckingham
46ef672317 Lexer: Typo 2017-02-27 08:41:03 -05:00
Paul Beckingham
2cca52bc4c Variant: Reduced dependence on ISO8601 2017-02-27 08:28:45 -05:00
Paul Beckingham
28030cfc39 DOM: tw.syncneeded should be 0/1, not false/true 2017-02-27 07:52:40 -05:00
Paul Beckingham
06dc1f6c42 DOM: Partial DOM match is no longer an error 2017-02-27 07:46:54 -05:00
Paul Beckingham
243067e2ae Docs: Updated dev file 2017-02-26 23:41:39 -05:00
Paul Beckingham
3535e785d8 Config: Eliminated 2017-02-26 17:37:21 -05:00
Paul Beckingham
8cb1d8743f Docs: Removed references to $TERM, which is irrelevant anyway 2017-02-26 11:08:15 -05:00
Paul Beckingham
0d3e92ed5d Context: Added local config load timing 2017-02-26 10:47:17 -05:00
Paul Beckingham
dd4fef6794 Config: Migrated to libshared Configuration 2017-02-26 10:46:51 -05:00
Paul Beckingham
a31434fd48 Config: Separated configuration from defaults 2017-02-26 10:22:39 -05:00
Paul Beckingham
9bc8643ce5 Docs: Updated man page for DOM ref changes 2017-02-25 23:40:21 -05:00
Paul Beckingham
29c18c2c64 Config: Removed unused ::clear method
- This was used back when shadow file support needed to reset CLI parsing.
2017-02-25 22:13:16 -05:00
Paul Beckingham
5e3845dcb6 libshared: Updated to d009b1de631c576510841593c85b257e96371b40 2017-02-25 20:26:41 -05:00
Paul Beckingham
dce400073e Docs: Updated test platform list 2017-02-25 19:23:54 -05:00
Paul Beckingham
098a3b603f Tests: Added new DOM reference tests 2017-02-25 19:23:43 -05:00
Paul Beckingham
a92f596bc0 DOM: New references: tw.syncneeded, tw.program, tw.args, tw.width, tw.height
- And deprecating context.program, context.args, context.width, context.height
2017-02-25 19:21:24 -05:00
Paul Beckingham
545a764450 DOM: Typo 2017-02-20 09:52:41 -05:00
Paul Beckingham
c77908e6b4 Docs: Typo 2017-02-19 19:05:58 -05:00
Paul Beckingham
057dc6f85b Docs: Typo 2017-02-19 19:05:52 -05:00
Paul Beckingham
acf7cd42f4 Docs: Typo 2017-02-19 19:05:44 -05:00
Paul Beckingham
cf14b9ce37 Docs: Typo 2017-02-19 19:05:37 -05:00
Paul Beckingham
a07deac111 Docs: Typo 2017-02-19 19:05:30 -05:00
Paul Beckingham
4914e89c92 Docs: Typo 2017-02-19 19:05:20 -05:00
Paul Beckingham
3c1ffc60aa Docs: Typo 2017-02-19 19:05:08 -05:00
Paul Beckingham
50a5a58e22 Docs: Typo 2017-02-19 19:05:02 -05:00
Paul Beckingham
86cc86d9cc Docs: Typo 2017-02-19 19:00:29 -05:00
Paul Beckingham
dadc83684d Docs: Typo 2017-02-19 19:00:14 -05:00
Paul Beckingham
bea4214b57 Docs: Typo 2017-02-19 18:56:35 -05:00
Paul Beckingham
0faac7b618 Docs: Update for testing flod2 2017-02-19 18:11:23 -05:00
Paul Beckingham
1f09aba760 TW-1885: Task Sync does not send TLS SNI headers
- Thanks to Dan Callahan.
2017-02-18 17:23:08 -05:00
Tomas Babej
282c59a394 TLSClient: Improve diagnostics
Task now correctly distinguishes the situation where CA file is present,
but not valid in some sense (empty file, not valid PEM, ..). In this
case the gnutls_certificate_set_x509_trust_file returns 0, as the number
of certificates detected in the file.

The method returns negative numbers for other errors, such as the CA
file itself missing.

Also clarify that when validating client cert/key pair, each of them can
be the source of the problem, not only the cliet certificate file.
2017-02-18 20:43:21 +01:00
Tomas Babej
66328f97b5 TLSClient: Respect 'allow all' and 'ignore hostname' trust settings 2017-02-18 20:21:42 +01:00
Tomas Babej
a4a704fd37 style: Remove doubled spaces in the error message 2017-02-18 20:20:37 +01:00
Tomas Babej
8c1d625a54 TLSClient: Free error data after extracting error message 2017-02-18 20:19:03 +01:00
Tomas Babej
60139d24f8 docs: Update the build toolchain requirements 2017-02-15 14:40:14 +01:00
Tomas Babej
b59f36a614 build: Fix linking problem on non-OS-X platforms 2017-02-14 15:18:44 +01:00
Federico Hernandez
d59da51088 Mentioned cmake handling of submodule in DEVELOPER file 2017-02-13 00:54:59 +01:00
Federico Hernandez
bbd53f6556 Mentioned cmake handling of submodule in DEVELOPER file 2017-02-13 00:15:10 +01:00
Federico Hernandez
de4cf7edda Handling of git submodule in cmake 2017-02-12 22:18:26 +01:00
Paul Beckingham
39f8e7528e TLS: Now uses SNI 2017-02-11 13:51:02 -05:00
Paul Beckingham
b38fead19f libshared: Updated to 6aa2b315c476bac3fdb7bf2bc259af55eee89f83 2017-02-11 13:50:25 -05:00
Paul Beckingham
e6601e1a28 Docs: Updated docs with new history/ghistory commands. 2017-02-09 19:44:44 -05:00
Lukas Barth
d1bdac2bef Add localized strings 2017-02-09 19:15:00 -05:00
Lukas Barth
cd90b8a06d Add unit tests for new history commands 2017-02-09 19:14:58 -05:00
Lukas Barth
0c1cfe1492 Update manpage for history commands 2017-02-09 19:14:56 -05:00
Lukas Barth
615336f3a8 Adding weekly/daily history commands 2017-02-09 19:14:53 -05:00
Paul Beckingham
9e3c8b3956 libshared: Updated to 09ddc067c8db2d19472283d037ff38d76d63eff8 2017-02-09 10:03:47 -05:00
Paul Beckingham
440cfb009e CmdTimesheet: Rewrote the command
- Updated the 'timesheet' command with a more compact report that accepts a
  filter, and has a default filter showing the last four weeks of completed and
  started tasks.
2017-02-09 08:19:30 -05:00
Paul Beckingham
4c20ff04c2 Tests: Improved documenation in template 2017-02-09 02:49:39 +01:00
Paul Beckingham
c79ed7cf4c TLSClient: Removed test code 2017-02-09 01:47:54 +01:00
Paul Beckingham
d8227a8439 TLSClient: Typo 2017-02-09 01:45:05 +01:00
Paul Beckingham
8f424c9eda Doc: Test change 2017-02-05 22:29:03 +01:00
Paul Beckingham
82bc202a36 calc: Fixed Dirk 2017-02-05 14:34:24 +01:00
Paul Beckingham
cb496b6002 CmdCalc: 'auto infix{true}' doesn't compile 2017-02-05 14:28:40 +01:00
Paul Beckingham
78112c150c Doc: Test change 2017-02-05 13:58:53 +01:00
Paul Beckingham
0f4e4b2926 Doc: Test change 2017-02-05 13:38:05 +01:00
Paul Beckingham
b81cd05b7c Doc: Test change 2017-02-05 12:20:40 +01:00
Paul Beckingham
b65b2ee4f0 Doc: Test change 2017-02-05 12:00:06 +01:00
Lukas Barth
7be87586c5 Move strategies to cpp file 2017-01-30 16:59:15 -05:00
Paul Beckingham
c8cd93d630 CmdModify: Code cleanup 2017-01-29 13:04:51 -05:00
Paul Beckingham
a95dddd00c CmdInfo: Code cleanup 2017-01-29 12:22:35 -05:00
Paul Beckingham
afd8b94c91 CmdImport: Code cleanup 2017-01-29 12:17:44 -05:00
Paul Beckingham
31a85478f5 CmdIDs: Code cleanup 2017-01-29 12:15:38 -05:00
Paul Beckingham
d8a1120ff2 CmdHistory: Code cleanup 2017-01-29 12:13:30 -05:00
Paul Beckingham
25dbbfd667 CmdHelp: Code cleanup 2017-01-29 11:31:32 -05:00
Paul Beckingham
0122b72118 CmdEdit: Code cleanup 2017-01-29 00:26:43 -05:00
Paul Beckingham
5bbb232f35 CmdDuplicate: Code cleanup 2017-01-28 21:35:12 -05:00
Paul Beckingham
3c8dc72b3d CmdDone: Code cleanup 2017-01-28 21:35:02 -05:00
Paul Beckingham
d6549fca78 CmdDiagnostics: Code cleanup 2017-01-28 21:34:51 -05:00
Paul Beckingham
c1963dca0e CmdDenotate: Code cleanup 2017-01-28 21:34:39 -05:00
Paul Beckingham
01d42acb28 CmdDelete: Code cleanup 2017-01-28 21:34:27 -05:00
Paul Beckingham
31b1e5e462 CmdCustom: Code cleanup 2017-01-28 20:53:46 -05:00
Paul Beckingham
984b20f6de CmdCount: Code cleanup 2017-01-28 20:50:12 -05:00
Paul Beckingham
8e6fd5d979 CmdConfig: Code cleanup 2017-01-28 20:48:14 -05:00
Paul Beckingham
bd1661c2b0 CmdCommands: Code cleanup 2017-01-28 20:35:50 -05:00
Paul Beckingham
cf57346134 CmdCalendar: Code cleanup 2017-01-28 20:31:52 -05:00
Paul Beckingham
ec2bec58b7 CmdColumns: Code cleanup 2017-01-28 19:19:42 -05:00
Paul Beckingham
f38446138c CmdColor: Code cleanup 2017-01-28 17:53:05 -05:00
Paul Beckingham
d3a037231f CmdCalc: Code cleanup 2017-01-28 17:52:04 -05:00
Paul Beckingham
651c39c881 CmdBurndown: Code cleanup 2017-01-28 17:50:51 -05:00
Paul Beckingham
c646d7c9d2 CmdAttributes: Code cleanup 2017-01-28 17:49:32 -05:00
Paul Beckingham
e207cc9eab CmdAppend: Code cleanup 2017-01-28 17:49:16 -05:00
Paul Beckingham
e5646726c1 CmdAnnotate: Code cleanup 2017-01-28 17:38:02 -05:00
Paul Beckingham
82cd74906b CmdUnique: Code cleanup 2017-01-28 17:08:07 -05:00
Paul Beckingham
670a215743 CmdAliases: Code cleanup 2017-01-28 16:44:55 -05:00
Paul Beckingham
1c1d9428c5 CmdLogo: Code cleanup 2017-01-28 16:22:43 -05:00
Paul Beckingham
00a4cbf906 CmdHistory: Code Cleanup
- Fixed formatting inconsistencies.
- Added Lukas to AUTHORS.
2017-01-27 17:33:20 -05:00
Lukas Barth
91b73270c8 Also refactor ghistory 2017-01-27 14:24:43 -05:00
Lukas Barth
796d5f9629 Refactor history.monthly and history.annual 2017-01-27 14:24:40 -05:00
Paul Beckingham
19c18b04aa recur: Code cleanup 2017-01-26 19:56:13 -05:00
Paul Beckingham
2da0656b5e recur: Code cleanup 2017-01-26 19:56:07 -05:00
Paul Beckingham
81e3d3bb42 recur: Code cleanup 2017-01-26 19:55:59 -05:00
Paul Beckingham
e2633a2d76 recur: Code cleanup 2017-01-26 19:55:51 -05:00
Paul Beckingham
223ca89d73 recur: Code cleanup 2017-01-26 19:55:43 -05:00
Paul Beckingham
5fd6f716a6 recur: Code cleanup 2017-01-26 19:55:34 -05:00
Paul Beckingham
f7d4ec0b79 main: Code cleanup 2017-01-26 19:54:51 -05:00
Paul Beckingham
a364acf726 legacy: Code cleanup 2017-01-26 19:45:31 -05:00
Paul Beckingham
4da1785a1e Calc: Code cleanup 2017-01-26 18:29:02 -05:00
Paul Beckingham
23dacc7bf8 Calc: Code cleanup 2017-01-26 18:28:51 -05:00
Paul Beckingham
f13bff8dfd Calc: Code cleanup 2017-01-26 18:28:31 -05:00
Paul Beckingham
7dfed2fec9 Context: Code cleanup 2017-01-26 17:30:39 -05:00
Paul Beckingham
1ebe434ea7 Context: Code cleanup 2017-01-26 17:30:28 -05:00
Paul Beckingham
7fddfd0ea3 Context: Code cleanup 2017-01-26 17:25:57 -05:00
Paul Beckingham
8cd3dc7d6b Context: Code cleanup 2017-01-26 17:25:24 -05:00
Paul Beckingham
adbefa15a7 Context: Code cleanup 2017-01-26 17:25:05 -05:00
Paul Beckingham
ee28e9940c Context: Code cleanup 2017-01-26 17:24:11 -05:00
Paul Beckingham
0b44862300 Dependency: Code cleanup 2017-01-26 17:14:14 -05:00
Paul Beckingham
651f2d9045 Dependency: Code cleanup 2017-01-26 17:01:12 -05:00
Paul Beckingham
62b5270541 Themes: Updated readme 2017-01-26 16:59:00 -05:00
Paul Beckingham
6f232cdbbf Docs: Updated man page 2017-01-26 00:12:55 -05:00
Paul Beckingham
5b0c59023b Docs: Updated exposition 2017-01-25 22:49:22 -05:00
Paul Beckingham
7e09dd9457 Color: Now uses libshared 2017-01-25 22:26:33 -05:00
Paul Beckingham
4ab083fd94 Docs: Updated compiler version 2017-01-25 17:45:03 -05:00
Paul Beckingham
abee90f9e0 Docs: Removed untested platform 2017-01-25 17:30:32 -05:00
Paul Beckingham
8faadd8199 Variant: Removed uneeded header 2017-01-25 16:54:39 -05:00
Paul Beckingham
7f5d44a675 Variant: Relocate strings 2017-01-25 16:10:57 -05:00
Paul Beckingham
e17ee31975 PKI: Updated test_client 2017-01-24 20:15:47 -05:00
Paul Beckingham
55ec3020ad PKI: Updated CRL 2017-01-24 20:12:46 -05:00
Paul Beckingham
57ba3f1541 PKI: Updated server 2017-01-24 20:04:24 -05:00
Paul Beckingham
452dc52340 PKI: Updated client 2017-01-24 19:58:40 -05:00
Paul Beckingham
72c95bbd2b PKI: Updated CA 2017-01-24 19:55:01 -05:00
Paul Beckingham
ae25bd9f2c TW-1869 segmentation fault (on unusual installation)
- Thanks to Eric Hymowitz.
2017-01-24 19:13:59 -05:00
Paul Beckingham
12486c16cc TW-1877: task done, task edit, task is now pending
- Thanks to Eric Hymowitz.
2017-01-16 20:48:45 -05:00
Paul Beckingham
f543182626 Docs: Updated NEWS 2017-01-16 20:32:40 -05:00
Paul Beckingham
d1debebde8 TW-1881: Missing last character(s) in Description field
- Thanks to Hubert Toullec.
2017-01-16 20:29:51 -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
1b40c802c2 TW-1861: Truncated description when adding annotation
- Thanks to eezewaek.
2017-01-16 20:05:08 -05:00
Paul Beckingham
a154a0840f TW-1823: Incorrect unicode text wrapping / justifying.
- Thanks to Sergey Trofimov.
2017-01-16 16:06:49 -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
fdd55bc422 Tests: Added debug info, which makes it look like TW-1837 it working 2017-01-16 15:29:11 -05:00
Paul Beckingham
570152d67b Tests: Added TW-1837 test 2017-01-16 15:20:50 -05:00
Paul Beckingham
44dc19e21b TW-1667: hooks: upon failure indicate which hook failed
- Thanks to Daniel Shahaf.
2017-01-16 13:14:08 -05:00
Paul Beckingham
098eef099a TW-1572: Alternative approach to urgency inheritance
- Thanks to Jens Erat, Wim Schuermann.
2017-01-16 12:33:18 -05:00
Paul Beckingham
1e6b30bbc9 TW-213: Align countdown column on boundary between number and text.
- Thanks to Eric Fluger.
2017-01-16 12:05:59 -05:00
Paul Beckingham
77f5d9fe40 libshared: Updated to 2daeeb7e6e0716ce42f7a3d0e4400aee71531d6e 2017-01-16 12:03:31 -05:00
Paul Beckingham
4bdb2285c7 Docs: Updated NEWS 2017-01-15 20:11:56 -05:00
Antonio Huete Jimenez
7c0375e506 task: Fix build in SunOS-like environments.
Tested in:
 - OpenIndiana 2816291
 - OmniOS bed3013
 - SmartOS 20161129T003638Z
2017-01-15 20:02:31 -05:00
Paul Beckingham
67e0319d36 Docs: Added Antonion to AUTHORS 2017-01-14 11:51:53 -05:00
Antonio Huete Jimenez
92af246f3a Add missing cast to double 2017-01-14 11:49:19 -05:00
Paul Beckingham
0432b9090a TLS: Aligned source with Taskserver 2017-01-10 22:14:51 -05:00
Tomas Babej
16b46e3134 Revert "test our new bitbucket server"
This reverts commit da07f34e01.

Not every joke is a good one.
- Thanks to Tomas Babej
2017-01-10 04:12:26 +01:00
Paul Beckingham
e141131080 Merge pull request #15 in TM/task from ~TBABEJ/task:2.6.0 to 2.6.0
* commit 'da07f34e01d2407b2df309d9cf3feef86b58a44a':
  test our new bitbucket server
2017-01-09 22:41:17 +00:00
Tomas Babej
da07f34e01 test our new bitbucket server 2017-01-09 20:07:04 +01:00
Paul Beckingham
dc5d0f3bd0 CmdDiagnostics: Uses libshared cppCompliance call 2017-01-08 14:07:18 -05:00
Paul Beckingham
986a632901 libshared: Updated to bfb0e90e0c94918b86dd16d8b0e05a74bab8fb75 2017-01-08 14:06:54 -05:00
Paul Beckingham
246c3601be Tests: Combined two almost identical tests into one 2017-01-08 11:53:05 -05:00
Paul Beckingham
ec1323d9ee util: Migrated osName to libshared 2017-01-08 11:52:04 -05:00
Paul Beckingham
b65be6655b libshared: Updated to aff911bd080a05e5e12a240e13adb27f435b5bb2 2017-01-08 11:50:30 -05:00
Tomas Babej
ba03a956d1 docs: Add missing submodule init step to the DEVELOPER file 2017-01-07 17:01:43 -05:00
Paul Beckingham
4e7576cb79 Merge branch 'recurrence' into 2.6.0 2017-01-07 12:29:11 -05:00
Paul Beckingham
fd4ca47581 CmdInfo: Added TEMPLATE and INSTANCE virtual tags 2017-01-07 12:04:13 -05:00
Paul Beckingham
9939b7ea35 CmdTags: Added TEMPLATE and INSTANCE virtual tags 2017-01-07 12:02:03 -05:00
Paul Beckingham
f12a4d7cd6 Task: Added TEMPLATE and INSTANCE virtual tags 2017-01-07 12:00:53 -05:00
Paul Beckingham
b266dc3f2d Docs: Added TEMPLATE and INSTANCE virtual tag descriptions 2017-01-07 11:49:09 -05:00
Paul Beckingham
8049c8ba99 feddback: Added TEMPLATE and INSTANCE virtual tags 2017-01-07 11:46:35 -05:00
Paul Beckingham
09562c8fac Columns: Removed redundant format checking 2017-01-07 11:10:03 -05:00
Paul Beckingham
ebd6273c86 Columns: Attribute objects properly delegate to Column::setStyle to validate formats 2017-01-07 11:04:08 -05:00
Paul Beckingham
e871976bb9 Columns: Consistency 2017-01-07 10:46:40 -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
40c6623274 ColString: Removed obsolete column for ViewText 2016-12-31 11:53:00 -05:00
Paul Beckingham
d4c9317239 CmdCommands: Removed obsolete include 2016-12-31 11:51:54 -05:00
Paul Beckingham
c8bd60b713 ColUDA: Removed redundant code 2016-12-31 11:49:15 -05:00
Paul Beckingham
78ff1975b2 ColTags: Removed redundant code 2016-12-31 11:47:34 -05:00
Paul Beckingham
b6d19ce1ad ColRecur: Removed redundant code 2016-12-31 11:47:15 -05:00
Paul Beckingham
110db6bb91 ColID: Documented ID 0 case 2016-12-31 11:46:02 -05:00
Paul Beckingham
c81c9f5b58 ColDepends: Removed redundant code 2016-12-31 11:45:31 -05:00
Paul Beckingham
7a4d99f954 ColTags: Corrected use of _name 2016-12-31 11:11:56 -05:00
Paul Beckingham
24f6b2665f ColStart: Removed redundant code 2016-12-31 11:11:42 -05:00
Paul Beckingham
5ae1da51b7 ColRecur: Corrected use of _name 2016-12-31 11:11:08 -05:00
Paul Beckingham
d48c357325 ColRecur: Added _modifiable 2016-12-31 11:10:44 -05:00
Paul Beckingham
a8d7a5122a ColMask: Corrected use of _name 2016-12-31 11:10:13 -05:00
Paul Beckingham
b3e976fbaa ColIMask: Corrected use of _name 2016-12-31 11:09:54 -05:00
Paul Beckingham
3c9081c22b ColEntry: Added _modifiable 2016-12-31 11:09:27 -05:00
Paul Beckingham
9fd1500d20 ColDue: Added _modifiable 2016-12-31 11:09:13 -05:00
Paul Beckingham
62f40d0830 ColDescription: Added _modifiable 2016-12-31 11:08:59 -05:00
Paul Beckingham
9888f98333 ColUDA: Removed redundant code 2016-12-31 10:40:29 -05:00
Paul Beckingham
e616538bcc ColUDA: Added _modifiable 2016-12-31 10:40:11 -05:00
Paul Beckingham
0f4337334c ColUUID: Removed unnecessary header 2016-12-31 10:38:11 -05:00
Paul Beckingham
57e9858c1d ColUrgency: Marked column as unmodifiable 2016-12-31 10:36:13 -05:00
Paul Beckingham
79b2540042 ColWait: Formatting cleanup 2016-12-31 10:34:24 -05:00
Paul Beckingham
3389665227 ColDepends: Corrected use of _name 2016-12-31 10:32:58 -05:00
Paul Beckingham
8e39420375 ColUntil: Formatting cleanup 2016-12-31 10:32:41 -05:00
Paul Beckingham
f3b28374c2 ColScheduled: Fixed bug where the wrong column label was used 2016-12-31 10:32:18 -05:00
Paul Beckingham
a9063284d9 ColScheduled: Formatting cleanup 2016-12-31 10:31:27 -05:00
Paul Beckingham
6818b85c26 ColLast: Corrected use of _name 2016-12-31 10:23:51 -05:00
Paul Beckingham
ade87bda24 ColRType: Added ::setStyle and ::validate 2016-12-31 09:54:31 -05:00
Paul Beckingham
b17bfb50b3 ColType*: Push the ::validate and ::modify methods down from Column 2016-12-31 09:53:42 -05:00
Paul Beckingham
76c2de685b ColRType: New recurrence attribute 2016-12-31 09:09:29 -05:00
Paul Beckingham
aedf99a827 ColLast: New recurrence attribute 2016-12-31 09:01:21 -05:00
Paul Beckingham
5ac7ca6885 ColTemplate: New recurrence attribute 2016-12-31 08:47:47 -05:00
Paul Beckingham
b600671e53 TW-1878: uuids subcommand produces a space-delimited list, not comma-delimited
- Thanks to Scott Kostyshak.
2016-12-22 08:49:57 -05:00
Paul Beckingham
e2d3737590 Config: 'debug.tls' was missing from 'show' command 2016-12-19 12:20:49 -05:00
Paul Beckingham
a7465d58d7 TW-1855: "Well-known" CA certificates not properly auto-loaded
- Thanks to Flavio Poletti.
2016-12-19 12:16:22 -05:00
Paul Beckingham
2d43cbd2c0 Improved certificate validation diagnostics
- Thanks to Jelle van der Waa.
2016-12-19 12:05:36 -05:00
Paul Beckingham
85eb32c87d TLSClient: Added GnuTLS 3.4.6 API support
- This greatly simplifies cert validation.
2016-12-19 12:01:01 -05:00
Paul Beckingham
00a7b377cc TLSClient: Corrected version number for API call 2016-12-19 11:59:24 -05:00
Paul Beckingham
efdf0ca4dd TLSClient: Added handshake timeout 2016-12-19 11:58:33 -05:00
Paul Beckingham
6d3af50604 TLSClient: Commented possible need for version protection 2016-12-19 11:57:24 -05:00
Paul Beckingham
e717d13802 TLSClient: Labelled GnuTLS calls with version numbers 2016-12-19 11:56:47 -05:00
Paul Beckingham
c300cff00f TW-1873: Specify different path to extensions/hooks directory
- Thanks to Eli.
2016-12-19 09:03:27 -05:00
Paul Beckingham
77b3ee0561 Docs: Updated dev docs 2016-12-18 13:06:16 -05:00
Paul Beckingham
5ec4b5ebc9 recur: Migrated from ISO8601d to Datetime 2016-12-17 22:36:29 -05:00
Paul Beckingham
46cd9632a6 Context: Migrated from ISO8601d to Datetime 2016-12-17 22:21:02 -05:00
Paul Beckingham
b670d4b072 Task: Migrated from ISO8601d to Datetime 2016-12-17 22:18:46 -05:00
Paul Beckingham
0cf056f4b2 CmdHistory: Migrated from ISO8601d to Datetime 2016-12-17 22:13:31 -05:00
Paul Beckingham
d3b25f7325 CmdCalendar: Migrated from ISO8601d to Datetime 2016-12-17 22:08:38 -05:00
Paul Beckingham
17f4b0fdbc CmdBurndown: Migrated from ISO8601d to Datetime 2016-12-17 22:01:56 -05:00
Paul Beckingham
340ec66891 Dates: Migrated from ISO8601d to Datetime 2016-12-17 21:56:18 -05:00
Paul Beckingham
ead550cbef CmdTimesheet: Migrated from ISO8601d to Datetime 2016-12-17 21:53:28 -05:00
Paul Beckingham
a81e66b609 ColDescription: Migrated from ISO8601d to Datetime 2016-12-17 21:44:29 -05:00
Paul Beckingham
1908d50be8 rules: Migrated from ISO8601d to Datetime 2016-12-17 21:25:21 -05:00
Paul Beckingham
c1bf321631 TDB2: Migrated from ISO8601d to Datetime 2016-12-17 21:22:35 -05:00
Paul Beckingham
1805cf733b Config: Migrated form ISO8601d to Datetime 2016-12-17 21:19:50 -05:00
Paul Beckingham
392e74cd70 ViewText: Eliminated 2016-12-17 20:23:36 -05:00
Paul Beckingham
1658998864 CmdSummary: Migrated from ViewText to Table 2016-12-17 20:14:13 -05:00
Paul Beckingham
c95aa9fa3c TDB2: Migrated from ViewText to Table 2016-12-17 20:10:21 -05:00
Paul Beckingham
6db3ff7c06 CmdHistory: Migrated from ViewText to Table 2016-12-17 20:02:49 -05:00
Paul Beckingham
0a8fb12dc5 CmdCalendar: Migrated from ViewText to Table 2016-12-17 17:37:47 -05:00
Paul Beckingham
c85862f894 Tests: Broke one tests into eight, so it is clear which one fails 2016-12-17 17:36:11 -05:00
Paul Beckingham
1e7f451093 CmdInfo: Added Table::forceColor 2016-12-17 17:31:21 -05:00
Paul Beckingham
79c1a94289 CmdInfo: Migrated from ViewText to Table 2016-12-17 17:30:44 -05:00
Paul Beckingham
dc851fe4b2 util: Migrated obfuscateText calls to libshared 2016-12-17 16:54:11 -05:00
Paul Beckingham
aad7fa60f8 libshared: Updated to 6d35bef52da4b881fcfb9946dddb01f603e225c8 2016-12-17 16:53:28 -05:00
Paul Beckingham
e6eac50b6c libshared: Updated to 1aa5c92f925a1eeec16639766994f2e6f70bcf8f 2016-12-17 16:36:41 -05:00
Paul Beckingham
8ca1878856 CmdProjects: Migrated from ViewText to Table 2016-12-17 14:47:12 -05:00
Paul Beckingham
8eaf9f7adc CmdCommands: Migrated from ViewText to Table 2016-12-17 14:46:19 -05:00
Paul Beckingham
68253639cd CmdColumns: Migrated from ViewText to Table 2016-12-17 14:22:37 -05:00
Paul Beckingham
d40305f566 CmdShow: Migrated from ViewText to Table 2016-12-17 14:21:48 -05:00
Paul Beckingham
4bd8ff9834 CmdTimesheet: Migrated from ViewText to Table 2016-12-17 14:20:07 -05:00
Paul Beckingham
e73c4ef138 CmdColor: Conencted rc.color to Table::forceColor 2016-12-17 14:19:25 -05:00
Paul Beckingham
ecdb96f7e1 CmdColor: Migrated from ViewText to Table 2016-12-17 13:40:46 -05:00
Paul Beckingham
b5922fbfd1 CmdStats: Migrated from ViewText to Table 2016-12-17 13:38:53 -05:00
Paul Beckingham
2f590bcebc CmdReports: Migrated from ViewText to Table 2016-12-17 13:37:12 -05:00
Paul Beckingham
359b148844 CmdHelp: Migrated from ViewText to Table 2016-12-17 13:36:06 -05:00
Paul Beckingham
25d42347c8 CmdTags: Migrated from ViewText to Table 2016-12-17 13:34:27 -05:00
Paul Beckingham
998b110b02 CmdVersion: Migrated from ViewText to Table 2016-12-17 13:27:20 -05:00
Paul Beckingham
3195e52e23 libshared: Updated to c3f1919945bd370b397314dc1ec245960a401820 2016-12-17 13:24:39 -05:00
Paul Beckingham
3e45b9cf1e L10N: Removed unused strings 2016-12-17 12:59:08 -05:00
Paul Beckingham
c77487994e util: Added missing include 2016-12-12 08:28:24 -05:00
Paul Beckingham
5b7fca8c63 Context: Removed unused class global 2016-12-12 08:28:06 -05:00
Paul Beckingham
b51e8a2945 CmdStats: Converted from ISO8601 to Datetime/Duration 2016-12-11 23:52:18 -05:00
Paul Beckingham
bbce4da1c9 CmdSummary: Converted from ISO8601 to Duration 2016-12-11 23:48:39 -05:00
Paul Beckingham
61b4e36b2c CmdBurndown: Converted from ISO8601 to Duration 2016-12-11 23:13:27 -05:00
Paul Beckingham
72076abc74 CmdInfo: Converted from ISO8601 to Datetime/Duration 2016-12-11 22:27:18 -05:00
Paul Beckingham
c8bdfab4b4 ColUDA: Converted from ISO8601 to Datetime/Duration 2016-12-11 22:23:53 -05:00
Paul Beckingham
4c2fff1b39 ColRecur: Converted from ISO8601 to Duration 2016-12-11 22:21:06 -05:00
Paul Beckingham
cb82795d86 CmdEdit: Converted from ISO8601 to Datetime/Duration 2016-12-11 22:06:47 -05:00
Paul Beckingham
5efca16748 ColTypeDate: Converted fomr ISO8601 to Datetime/Duration 2016-12-11 21:52:30 -05:00
Paul Beckingham
bc58b82e96 DOM: Converted from ISO8601 to Datetime/Duration
- In addition fixed the week number of 2011-09-01 to 35, therefore the
  tests change also.
2016-12-11 21:46:46 -05:00
Paul Beckingham
3ef2459f2e feedback: Migrated from ISO8601 to Datetime/Duration 2016-12-11 21:39:27 -05:00
Paul Beckingham
8a3af0c4a6 recur: Converted from ISO8601p to Duration 2016-12-11 21:32:41 -05:00
Paul Beckingham
2d9c28f47e Task: Converted from ISO8601p to Duration 2016-12-11 21:13:07 -05:00
Paul Beckingham
1c3a68edc0 sort: Converted from ISO8601p to Duration 2016-12-11 21:07:06 -05:00
Paul Beckingham
d9a3be9993 Variant: Converted from ISO8601p to Duration 2016-12-11 21:03:15 -05:00
Paul Beckingham
abd4cfc4ed DOM: Migrated from Nibbler to Lexer 2016-12-11 20:52:54 -05:00
Paul Beckingham
f6ae39cb82 Msg: Migrated to use libshared 2016-12-11 20:33:13 -05:00
Paul Beckingham
cdfd92ed9b Task: Migrated from Nibbler to Pig 2016-12-11 20:00:30 -05:00
Paul Beckingham
a456228e98 libshared: Updated to 9685a22c90ca6f832748f8c71bae3cfad352bc64 2016-12-11 19:56:59 -05:00
Paul Beckingham
b2ad9e96bd text: Eliminated module 2016-12-11 17:51:44 -05:00
Paul Beckingham
87757fb36f util: Migrated optionalBlankLine from text 2016-12-11 17:46:06 -05:00
Paul Beckingham
eb1e35e84b Tests: Eliminated empty text.t test 2016-12-11 17:40:40 -05:00
Paul Beckingham
a0d88aaef8 util: Migrated strippedLength from text 2016-12-11 17:39:11 -05:00
Paul Beckingham
0027c9face util: Migrated nontrivial from text 2016-12-11 17:34:50 -05:00
Paul Beckingham
a7d90fa1fa util: Migrated obfuscateText from text 2016-12-11 17:29:03 -05:00
Paul Beckingham
9f36fdfe65 Context: GC timing correction not always needed 2016-12-11 16:53:28 -05:00
Paul Beckingham
7041c466b4 libshared: Updated to dfb31a41ced0fe48d98efa2b55689201d8e19667 2016-12-11 16:52:01 -05:00
Paul Beckingham
0fecb26536 Task: Corrected str_replace calls 2016-12-11 16:09:37 -05:00
Paul Beckingham
7a43183a3f CLI2: Corrected str_replace calls 2016-12-11 16:09:16 -05:00
Paul Beckingham
065fd8b6f1 Task: Migrated unquoteText to Lexer::dequote 2016-12-11 16:08:47 -05:00
Paul Beckingham
b38eae6930 Tests: Removed migrated autoComplete tests 2016-12-07 01:18:25 -05:00
Paul Beckingham
0dd4ed2836 Tests: Removed migrated text tests 2016-12-07 01:15:01 -05:00
Paul Beckingham
fa420950a0 Tests: Removed migrated util tests 2016-12-07 01:14:47 -05:00
Paul Beckingham
3c6ce4e0fc text: Removed local join/split implementation 2016-12-07 01:14:16 -05:00
Paul Beckingham
6cdb0d4b95 util: Removed confirm 2016-12-06 07:32:19 -05:00
Paul Beckingham
c12deb535e util: Removed execute 2016-12-06 07:28:50 -05:00
Paul Beckingham
45e1622358 util: Removed formatBytes 2016-12-06 07:26:06 -05:00
Paul Beckingham
1bf2d0d20d text: Removed replace_positional 2016-12-06 07:25:41 -05:00
Paul Beckingham
0ed7fa8b2a calc: Migration to libshared 2016-12-06 07:23:25 -05:00
Paul Beckingham
355620c640 libhsared: migrating from local to libshared 2016-12-06 07:20:45 -05:00
Paul Beckingham
456925a02b libshared: Updated to 2af7d037559f84450fffa812829fc553498a7ae4 2016-12-05 23:34:52 -05:00
Paul Beckingham
45182566eb libshared: Updated to 9473050234dd3a90bff5400a081ee54881b6b0f5 2016-11-27 13:36:53 -05:00
Paul Beckingham
4da25ddda8 Docs: Typos in ref PDF
- Thanks to eldios.
2016-11-25 08:26:55 -08:00
Paul Beckingham
f21568ae4c Tests: Set sys.stdout as utf8 2016-11-21 22:07:02 -05:00
Paul Beckingham
973cb8a718 Tests: Fixed test harness for Python 3.x.
- Thanks to jrabbit.
2016-11-21 20:34:18 -05:00
Paul Beckingham
54c0717cdb TLSClient: Improved C++ core guidelines 2016-11-19 13:12:07 -05:00
Paul Beckingham
1772cc0ae9 libshared: Updated to ce5c3414de56a2d1390893bbdc46e7116c38cd90 2016-11-19 10:26:59 -05:00
Paul Beckingham
5a97ffee10 TDB2: Made sure file exists before checking readability 2016-11-19 09:45:04 -05:00
Paul Beckingham
68dac1b6c6 CmdDiagnostics: Made sure file existence is checked before readability 2016-11-19 09:43:39 -05:00
Paul Beckingham
5a5195fbb2 Context: Eliminated load timer 2016-11-13 14:04:03 -05:00
Paul Beckingham
e906b20014 Context: Eliminated render timer 2016-11-13 13:42:48 -05:00
Paul Beckingham
473eaec923 Context: Eliminated hooks timer 2016-11-13 13:37:54 -05:00
Paul Beckingham
88512e25cb Context: Eliminated sort timer 2016-11-13 13:33:55 -05:00
Paul Beckingham
d39934e7b9 Context: Eliminated commit timer 2016-11-13 13:31:31 -05:00
Paul Beckingham
3f1c60cf37 Context: Eliminated filter timer 2016-11-13 13:27:38 -05:00
Paul Beckingham
cfc2fd28e8 Context: Eliminated gc timer 2016-11-13 13:16:48 -05:00
Paul Beckingham
30cfc11f80 Context: Uses inline member initialization 2016-11-13 13:12:07 -05:00
Paul Beckingham
8824d3ae5a Context: Migrated to libshared Timer 2016-11-13 13:10:48 -05:00
Paul Beckingham
fcb21abfa0 TDB2: Migrated to libshared Timer 2016-11-13 13:08:04 -05:00
Paul Beckingham
81fce54fd9 Hooks: Migrated to libshared Timer 2016-11-13 13:07:09 -05:00
Paul Beckingham
f5d46a34aa Config: Migrated to libshared Timer 2016-11-13 13:06:48 -05:00
Paul Beckingham
302b5a5589 Context: Added ::debugTiming to wrap Timer formatting 2016-11-13 13:02:44 -05:00
Paul Beckingham
14e3224c5b libshared: Updated to 200f8c699b3011dbe49483e6343affad86e0ac96 2016-11-13 09:30:13 -05:00
Paul Beckingham
40488808e5 Test: Removed binary output from test 2016-11-06 23:56:55 -05:00
Paul Beckingham
5e3468c1be Test: Removed binary output from test 2016-11-06 23:50:40 -05:00
Paul Beckingham
f82812ab24 Tests: Fixed unit test that emitted unicode, that 'run_all' dislikes 2016-11-06 17:57:35 -05:00
Paul Beckingham
220aaf29f2 Test: Fixed bad typo in test framework 2016-11-06 01:12:56 -04:00
Paul Beckingham
08bbf9aa20 TLSClient: Improved C+ Core Guidelines compliance 2016-11-06 01:05:14 -04:00
Paul Beckingham
688d6b658b TLSClient: No longer calls gnutls_global_{de,}init for 3.3.0+ 2016-11-06 01:04:36 -04:00
Tomas Babej
bcfebffa7f l10n: Make safete valve message more explicit about completed/deleted tasks 2016-10-31 13:25:36 -04:00
Paul Beckingham
9e6839a2c4 Tests: Removed unnecessary imports 2016-10-22 13:21:39 -04:00
Paul Beckingham
4f072d47cd Timer: Migrated to libshared 2016-10-17 21:52:39 -04:00
Paul Beckingham
15e112c54d ViewTask: Removed unused include 2016-10-17 17:16:14 -04:00
Paul Beckingham
363415878c CmdEdit: Migrated from Nibbler to Pig 2016-10-16 23:16:09 -04:00
Paul Beckingham
0400d99c7a CmdUDAs: Migrated from ViewText to Table 2016-10-16 22:53:52 -04:00
Paul Beckingham
fda27a46bf CmdContext: Migrated from ViewText to Table 2016-10-16 22:47:26 -04:00
Paul Beckingham
40f35d6494 Dependency: Don't use string literals when character literals are needed 2016-10-16 22:46:39 -04:00
Paul Beckingham
096f12fd09 Docs: Updated regarding TW-1857 2016-10-16 13:49:05 -04:00
inbinder
6f0a3c12de Src: rules.cpp changed Task::get to Task::has in colorizeProjectNone function 2016-10-16 13:45:28 -04:00
Paul Beckingham
8922728888 Cleanup: Don't use string literals when character literals are needed 2016-10-14 23:11:28 -04:00
Paul Beckingham
95f4989f77 Cleanup: Don't use string literals when character literals are needed 2016-10-14 22:27:34 -04:00
Paul Beckingham
5403675100 libshared: Updated to d84d1bc70b14c85af771bb5cc7299c290d5372b5 2016-10-14 20:51:19 -04:00
Paul Beckingham
4d83ed8588 ColScheduled: Removed unused includes 2016-10-14 19:02:46 -04:00
Paul Beckingham
184e89cddd ColParent: Removed unused includes 2016-10-14 19:02:28 -04:00
Paul Beckingham
ba0674b53f ColMask: Removed unused includes 2016-10-14 19:02:17 -04:00
Paul Beckingham
03c404bc8f ColIMask: Removed unused includes 2016-10-14 19:02:06 -04:00
Paul Beckingham
df1cf61421 ColDue: Removed unused includes 2016-10-14 19:01:46 -04:00
Paul Beckingham
0df3e3b0d9 ColDescription: Don't use string literals when character literals are needed 2016-10-14 18:58:31 -04:00
Paul Beckingham
66915635c8 Build: Eliminated compiler warning 2016-09-09 21:37:37 -04:00
Paul Beckingham
9fc71ff3ec Docs: Removed old reference to support forums 2016-09-05 08:52:17 -04:00
Paul Beckingham
d8bf209f29 Tests: Updated to non-deprecated Boolean values 2016-09-04 16:13:23 -04:00
Paul Beckingham
0b729b5d97 Config: Changed to 0/1 boolean values for the defaults.
- Deprecated use of alternate Boolean configuration settings. Use values "0" for
  off, and "1" for on. Avoid used of "on", "off", "true", "t", "false", "f",
  "yes", "y", "no", "n".
2016-09-04 16:11:59 -04:00
Paul Beckingham
4a48b8112b Docs: Updated dev build instructions 2016-09-02 08:08:12 -04:00
Paul Beckingham
d025f3deb6 TW-1778: Unicode strings are truncated in task description
- Thanks to Andrew, bjonnh, OKOMPer, Vladimir.
2016-08-31 17:48:45 -04:00
Paul Beckingham
394b7174cf L10N: Updated error message to not refer to only pending tasks 2016-08-22 09:19:18 -04:00
Paul Beckingham
e0f5943b63 Docs: Added Ran Benita 2016-08-02 08:25:02 -04:00
Ran Benita
661ce5888f Scripts: Quoted regular expression to avoid bash glob expansion
The quote is needed, otherwise it is treated as a bash glob first, which
causes trouble if there actually happens to be matching files, and
fails entirely if `shopt -s failglob` is set.
2016-08-02 08:23:51 -04:00
Paul Beckingham
4b62bf816c Docs: ChangeLog had wrong bug id 2016-07-08 23:09:17 -04:00
Paul Beckingham
62d2514425 Tests: Removed redundant FS tests 2016-06-26 09:21:55 -04:00
Paul Beckingham
d648e0ae44 libshared: Integrated FS 2016-06-26 09:15:08 -04:00
Paul Beckingham
befab82c04 DOM: Eiminated Nibbler 2016-06-25 18:16:34 -04:00
Paul Beckingham
143e149de5 libshared: Added Table 2016-06-25 18:09:36 -04:00
Paul Beckingham
fb3563bf65 Tests: Removed redundant utf8 tests 2016-06-25 17:54:18 -04:00
Paul Beckingham
43de419cdd libshared: Integrated utf8, wcwidth 2016-06-25 17:52:20 -04:00
Paul Beckingham
446580d8dd Tests: Removed redundant listt tests 2016-06-25 17:50:14 -04:00
Paul Beckingham
058f9ab218 Tests: Removed redundant format tests 2016-06-25 17:48:21 -04:00
Paul Beckingham
59f4475466 Tests: Removed JSON tests 2016-06-25 17:42:59 -04:00
Paul Beckingham
802020a7bb Git: Now ignores liblibshared.a 2016-06-25 17:28:15 -04:00
Paul Beckingham
8291e97e87 libshared: Integrated JSON 2016-06-25 17:27:57 -04:00
Paul Beckingham
806043f0ad Tests: Removed RX tests 2016-06-25 17:23:15 -04:00
Paul Beckingham
2e8763364b libshared: Integrated the submodule
- Integrated RX.
2016-06-25 17:22:27 -04:00
Paul Beckingham
77b443ce8b libshared: Added libshared 2016-06-25 17:12:00 -04:00
Paul Beckingham
4de7617c1b Docs: Removed one suggestion for reporting bugs 2016-06-24 22:23:49 -04:00
Paul Beckingham
d031d4282f TW-1820: Install with -DLANGUAGE=2 flag not work.
- Thanks to E. Manuel Cerr'on Angeles
2016-06-14 19:39:30 -04:00
Paul Beckingham
504c49090b L10N: Removed unused strings 2016-06-14 19:36:52 -04:00
Tomas Babej
c79ae0848c TW-61: Extract only tasks with annotations
- Thanks to Aikido Guy.
- Note: This is just bookkeeping commit, the solution (+ANNOTATED
  virtual tag) is present since 2.3.0.
2016-06-12 21:10:01 +02:00
Paul Beckingham
e52709133d TW-1813: Range filter doesn't work
- Thanks to george js.
2016-06-12 14:58:10 -04:00
Paul Beckingham
4711dd9e13 Docs: Added QUARTER virtual tag 2016-05-30 14:13:03 -04:00
Paul Beckingham
ed7097d5da Task: Made better use of ::sameN methods 2016-05-30 14:11:29 -04:00
Paul Beckingham
630a1530e0 Task: Added QUARTER virtual tag 2016-05-30 14:11:07 -04:00
Paul Beckingham
fd69305ad3 Tests: Added ::sameQuarter tests 2016-05-30 14:09:52 -04:00
Paul Beckingham
dd72bed28a ISO8601: Added ::sameQuarter 2016-05-30 14:04:49 -04:00
Paul Beckingham
091122350c Tests: Added 'w' dateformat test 2016-05-20 14:47:34 -05:00
Paul Beckingham
af8434b845 TW-1807: dateformat lacks a flag to display day of week
- Thanks to Ellington Santos.
2016-05-20 14:41:08 -05:00
Paul Beckingham
2720ea5a30 TW-1806: project:ide is not allowed
- Thanks to Slaven ʙanovic.
2016-05-20 11:13:46 -05:00
Paul Beckingham
53b526074f Cleanup: Removed debug output 2016-05-20 10:56:20 -05:00
Paul Beckingham
b47fc523b9 Task: Corrected false-positive warning about relative dates 2016-05-08 16:41:24 -04:00
Paul Beckingham
30c81c3046 ColTypeDate: Fixed countdown format only showing values in the past 2016-05-08 16:37:19 -04:00
Paul Beckingham
d27cb75ec1 util: Corrected comment 2016-05-08 16:36:25 -04:00
Tomas Babej
f79afb6269 NEWS: Deprecate new-uuid verbosity option 2016-05-01 16:30:57 -04:00
Paul Beckingham
70dc1cc9ae L10N: Fixed ambiguity in the esp-ESP localization
- Thanks to Fidel Mato.
2016-04-28 21:02:09 -04:00
Paul Beckingham
a3cc616151 Tests: Removed broken test
- It was not only broken between easter and midsommarafton, but just performing
  an additional comparison. Not needed.
2016-04-15 08:06:17 -04:00
Paul Beckingham
1625dd6f10 TW-1795: Calendar underline on Day padding
- Thanks to Renato Alves.
2016-04-15 07:55:21 -04:00
Paul Beckingham
7910a3cb5a CMake: Added snotty comment about CMake bullshit 2016-04-13 16:35:08 -04:00
Paul Beckingham
2800e473cb Tests: Wrong test count causes unexpected 'green' in test results 2016-04-09 16:18:35 -04:00
Paul Beckingham
7232d79e67 cmake: Use the CXXSniffer 2016-04-09 16:18:07 -04:00
Tomas Babej
3d1498240c TW-1792: The info command uses '0' to reference dependencies on non-pending tasks
- Thanks to Paul Beckingham for providing screenshots capturing the bug.
2016-04-03 13:33:03 -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
6f819af367 TW-1791: taskrc(5) manpage: spurious "pri." in rule.precedence.color
- Thanks to Sebastien Badia.
2016-04-02 15:08:35 -04:00
Paul Beckingham
f91df9c972 Tests: Updated test harness 2016-03-29 22:56:07 -04:00
Paul Beckingham
b2d49f3973 Task: Deprecated the 'DUETODAY' virtual tag, which is a synonym for the 'TODAY'
virtual tag.

- Thanks to Tomas Babej
2016-03-29 07:52:38 -04:00
Lynoure Braakman
6a790e3675 juhannus as an alternative name for midsommarafton 2016-03-27 16:48:34 -04:00
Paul Beckingham
325771d899 Tests: Typo in test 2016-03-26 21:21:51 -04:00
Tom Sydney Kerckhove
68cde6aa7e Docs: fixed inconsistency in the spelling of CMake 2016-03-26 10:54:07 -04:00
Tomas Babej
76d9ed2148 TW-1788: Closing a reopened task does not update the end time
- Thanks to Ralph Bean.
2016-03-22 19:33:29 -04:00
Tomas Babej
fe58b42f68 tests: Add test for TW-1788 2016-03-22 19:33:26 -04:00
Tomas Babej
cc324fdb8d validate: Pending tasks cannot have end attribute set 2016-03-22 19:33:24 -04:00
Tomas Babej
727602f26f TW-1772: Implementation of circular dependency detection is inefficient
- Thanks to Michael Meier.
2016-03-21 21:55:59 -04:00
Tomas Babej
10018dac18 dependencyIsCircular: Do not visit one node multiple times 2016-03-21 21:55:55 -04:00
Tomas Babej
58a0e9c2e4 l10n: Propagate the purge-related strings into language files 2016-03-20 14:40:16 -04:00
Tomas Babej
6e2a9c791f docs: Update ChangeLog and NEWS 2016-03-20 14:40:13 -04:00
Tomas Babej
9a29417bb5 docs: Document new purge command 2016-03-20 14:40:09 -04:00
Tomas Babej
9a2a642014 tests: Expand test cases for purge command 2016-03-20 14:40:07 -04:00
Tomas Babej
4b5efe1136 tests: The purge command now requires confirmation 2016-03-20 14:40:04 -04:00
Tomas Babej
ec38b3afd8 CmdPurge: Handle child tasks of recurrence templates 2016-03-20 14:40:01 -04:00
Tomas Babej
4465b48f75 TDB2: Fix wrong comment 2016-03-20 14:39:56 -04:00
Tomas Babej
56a897511f CmdPurge: Simplify implementation 2016-03-20 14:39:51 -04:00
Tomas Babej
b0336dfd50 CmdPurge: Move dependency handling into separate method 2016-03-20 14:39:46 -04:00
Tomas Babej
fd0d2fc917 CmdPurge: Prompt before purging a task 2016-03-20 14:39:43 -04:00
Paul Beckingham
6bca92a488 L10N: Propagated new strings to all LANGS 2016-03-19 22:00:09 -04:00
Paul Beckingham
fd4cf8fec4 Docs: Added MAKEFLAGS example 2016-03-19 21:51:34 -04:00
Tomas Babej
cda4e505e6 tests: Add coverage for purge command 2016-03-19 21:46:38 -04:00
Tomas Babej
293ccfdb02 DEVELOPER: Use multiple jobs during make 2016-03-19 21:46:32 -04:00
Tomas Babej
2b88260531 CmdPurge: Require GC run prior to execution
Since TDB2::purge method allows purging of the tasks only
on competed.data file, we need to make sure that all the tasks
that were supposed to be moved to completed.data have been
moved - in other words, we need to run GC.

This allows for diract usage of purge after delete, that is:

$ task <filter> delete
$ task <filter> purge

working as expected.
2016-03-19 21:46:29 -04:00
Tomas Babej
b3652800da CmdPurge: Remove purged tasks from dependencies 2016-03-19 21:46:24 -04:00
Tomas Babej
1caa9daec0 CmdPurge: Add initial implementation 2016-03-19 21:46:21 -04:00
Tomas Babej
96d6fb145f TDB2: Add capability to purge tasks out of data files 2016-03-19 21:46:18 -04:00
Paul Beckingham
7af844fde5 CmdDiagnostics: Typo 2016-03-17 17:17:22 -04:00
Paul Beckingham
e220ee884c TW-1741: Warning "ignoring return value of ‘int ftruncate" while doing make on xubuntu15.10
- Thanks to Sunil Joshi.
2016-02-28 11:19:29 -05:00
Paul Beckingham
eb09df0e6a TD-64: sync conflict deleted all annotations of the task
- Thanks to Markus Beppler, Konstantin Vorobyev.
2016-02-28 11:09:00 -05:00
Paul Beckingham
bc34397e9b calc: Uses osName() to reduce string literals 2016-02-25 00:21:52 -05:00
Paul Beckingham
2d20f4d57b Cleanup: Converted all sprintf to snprintf 2016-02-25 00:19:38 -05:00
Paul Beckingham
88f6872190 Rules: Improved use of 'const' and 'auto' 2016-02-24 23:55:46 -05:00
Paul Beckingham
549b970e49 Cleanup: Removed redundant processing of OS name 2016-02-24 23:43:23 -05:00
Paul Beckingham
bfefd247c4 Context: Combined interactive.cpp and Context.cpp 2016-02-24 23:26:39 -05:00
Paul Beckingham
19b2151f12 Cleanup: Removed deprecated 'alias._query' setting 2016-02-24 23:19:15 -05:00
Federico Hernandez
79e29abddc Bumped ref page to 2.6.0 2016-02-25 00:17:09 +01:00
Federico Hernandez
2c8205317f Bumped documentation to 2.6.0 2016-02-25 00:07:51 +01:00
Federico Hernandez
ef5551f3ec Bumped version number to 2.6.0 2016-02-24 23:49:51 +01:00
Federico Hernandez
8f09a35ad2 Added SHA1 of tagged release commit 2016-02-24 23:38:18 +01:00
790 changed files with 55506 additions and 46863 deletions

6
.cargo/audit.toml Normal file
View File

@@ -0,0 +1,6 @@
[advisories]
ignore = [
"RUSTSEC-2021-0124", # see https://github.com/GothenburgBitFactory/taskwarrior/issues/2830
"RUSTSEC-2020-0159", # segfault in localtime_r - low risk to TC
"RUSTSEC-2020-0071", # same localtime_r bug as above
]

2
.cargo/config Normal file
View File

@@ -0,0 +1,2 @@
[alias]
xtask = "run --package xtask --"

20
.devcontainer/Dockerfile Normal file
View File

@@ -0,0 +1,20 @@
FROM mcr.microsoft.com/devcontainers/cpp:1-ubuntu-22.04
ARG REINSTALL_CMAKE_VERSION_FROM_SOURCE="3.22.2"
# Optionally install the cmake for vcpkg
COPY ./reinstall-cmake.sh /tmp/
RUN if [ "${REINSTALL_CMAKE_VERSION_FROM_SOURCE}" != "none" ]; then \
chmod +x /tmp/reinstall-cmake.sh && /tmp/reinstall-cmake.sh ${REINSTALL_CMAKE_VERSION_FROM_SOURCE}; \
fi \
&& rm -f /tmp/reinstall-cmake.sh
RUN sudo apt update && sudo apt install uuid-dev
# [Optional] Uncomment this section to install additional vcpkg ports.
# RUN su vscode -c "${VCPKG_ROOT}/vcpkg install <your-port-name-here>"
# [Optional] Uncomment this section to install additional packages.
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
# && apt-get -y install --no-install-recommends <your-package-list-here>

View File

@@ -0,0 +1,24 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/cpp
{
"name": "Taskwarrior development environment",
"build": {
"dockerfile": "Dockerfile"
},
// Features to add to the dev container. More info: https://containers.dev/features.
"features": {
"ghcr.io/devcontainers/features/rust:1": {}
}
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "gcc -v",
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "root"
}

View File

@@ -0,0 +1,59 @@
#!/usr/bin/env bash
#-------------------------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
#-------------------------------------------------------------------------------------------------------------
#
set -e
CMAKE_VERSION=${1:-"none"}
if [ "${CMAKE_VERSION}" = "none" ]; then
echo "No CMake version specified, skipping CMake reinstallation"
exit 0
fi
# Cleanup temporary directory and associated files when exiting the script.
cleanup() {
EXIT_CODE=$?
set +e
if [[ -n "${TMP_DIR}" ]]; then
echo "Executing cleanup of tmp files"
rm -Rf "${TMP_DIR}"
fi
exit $EXIT_CODE
}
trap cleanup EXIT
echo "Installing CMake..."
apt-get -y purge --auto-remove cmake
mkdir -p /opt/cmake
architecture=$(dpkg --print-architecture)
case "${architecture}" in
arm64)
ARCH=aarch64 ;;
amd64)
ARCH=x86_64 ;;
*)
echo "Unsupported architecture ${architecture}."
exit 1
;;
esac
CMAKE_BINARY_NAME="cmake-${CMAKE_VERSION}-linux-${ARCH}.sh"
CMAKE_CHECKSUM_NAME="cmake-${CMAKE_VERSION}-SHA-256.txt"
TMP_DIR=$(mktemp -d -t cmake-XXXXXXXXXX)
echo "${TMP_DIR}"
cd "${TMP_DIR}"
curl -sSL "https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/${CMAKE_BINARY_NAME}" -O
curl -sSL "https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/${CMAKE_CHECKSUM_NAME}" -O
sha256sum -c --ignore-missing "${CMAKE_CHECKSUM_NAME}"
sh "${TMP_DIR}/${CMAKE_BINARY_NAME}" --prefix=/opt/cmake --skip-license
ln -s /opt/cmake/bin/cmake /usr/local/bin/cmake
ln -s /opt/cmake/bin/ctest /usr/local/bin/ctest

3
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1,3 @@
taskchampion/* @dbr @djmitche
Cargo.toml @dbr @djmitche
Cargo.lock @dbr @djmitche

1
.github/CONTRIBUTING.md vendored Normal file
View File

@@ -0,0 +1 @@
Please see the ["Contributing to Taskwarrior"](https://github.com/GothenburgBitFactory/taskwarrior/tree/develop/doc/devel/contrib) section of the developer documentation.

1
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1 @@
github: GothenburgBitFactory

18
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
version: 2
updates:
# Enable version updates for GitHub actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
# Enable updates for Rust packages
- package-ecosystem: "cargo"
directory: "/" # Location of package manifests
schedule:
interval: "daily"
ignore:
# skip patch updates, as they can be quite noisy, but keep
# minor and major updates so that we don't fall too far
# behind
- dependency-name: "*"
update-types: ["version-update:semver-patch"]

12
.github/issue_template.md vendored Normal file
View File

@@ -0,0 +1,12 @@
#### To report a bug...
* What command(s) did you run?
* What did you expect to happen?
* What actually happened?
* Paste the output of the ```task diag``` command.
#### To request a feature...
* Clearly describe the feature.
* Clearly state the use case. We are only interested in use cases, do not waste time with implementation details or suggested syntax.
* Please see our notes on [How to request a feature](https://taskwarrior.org/docs/features.html)

11
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,11 @@
#### Description
Replace this text with a description of the PR.
#### Additional information...
- [ ] I changed C++ code or build infrastructure.
Please run the test suite and include the output of `cd test && ./problems`.
- [ ] I changed Rust code or build infrastructure.
Please run `cargo test` and address any failures before submitting.

115
.github/workflows/checks.yml vendored Normal file
View File

@@ -0,0 +1,115 @@
name: checks
on:
push:
branches:
- develop
pull_request:
types: [opened, reopened, synchronize]
jobs:
clippy:
runs-on: ubuntu-latest
name: "Check & Clippy"
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: "1.70.0" # MSRV
override: true
- uses: actions-rs/cargo@v1.0.3
with:
command: check
- run: rustup component add clippy
- uses: actions-rs/clippy-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
args: --all-features
name: "Clippy Results"
mdbook:
runs-on: ubuntu-latest
name: "Documentation"
steps:
- uses: actions/checkout@v4
- name: Setup mdBook
uses: peaceiris/actions-mdbook@v2
with:
# if this changes, change it in .github/workflows/publish-docs.yml as well
mdbook-version: '0.4.10'
- run: mdbook test taskchampion/docs
- run: mdbook build taskchampion/docs
fmt:
runs-on: ubuntu-latest
name: "Formatting"
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
profile: minimal
components: rustfmt
toolchain: stable
override: true
- uses: actions-rs/cargo@v1.0.3
with:
command: fmt
args: --all -- --check
codegen:
runs-on: ubuntu-latest
name: "codegen"
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: "1.70.0" # MSRV
override: true
- uses: actions-rs/cargo@v1.0.3
with:
command: run
args: --package xtask -- codegen
- name: check for changes
run: |
if ! git diff; then
echo "Generated code not up-to-date;
run `cargo run --package xtask -- codegen` and commit the result";
exit 1;
fi

53
.github/workflows/docker-image.yaml vendored Normal file
View File

@@ -0,0 +1,53 @@
name: Taskwarrior Docker image
on:
workflow_dispatch:
workflow_run:
workflows: [tests]
branches:
- develop
- stable
types:
- completed
env:
REGISTRY: "ghcr.io"
jobs:
build-and-push-docker-image:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
permissions:
contents: read
packages: write
id-token: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Install cosign
uses: sigstore/cosign-installer@v3.5.0
- name: Log into registry ${{ env.REGISTRY }}
uses: docker/login-action@v3.1.0
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Taskwarrior Docker image
id: build-and-push
uses: docker/build-push-action@v5.3.0
with:
context: .
file: "./docker/task.dockerfile"
push: true
tags: ${{ env.REGISTRY }}/${{ github.actor }}/task:${{ github.ref_name }}
- name: Sign the published Docker image
env:
COSIGN_EXPERIMENTAL: "true"
run: cosign sign ${{ env.REGISTRY }}/${{ github.actor }}/task@${{ steps.build-and-push.outputs.digest }}

31
.github/workflows/publish-docs.yml vendored Normal file
View File

@@ -0,0 +1,31 @@
name: docs
on:
push:
branches:
- develop
permissions:
contents: write
jobs:
mdbook-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup mdBook
uses: peaceiris/actions-mdbook@v2
with:
# if this changes, change it in .github/workflows/checks.yml as well
mdbook-version: '0.4.10'
- run: mdbook build taskchampion/docs
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./taskchampion/docs/book
destination_dir: taskchampion

83
.github/workflows/rust-tests.yml vendored Normal file
View File

@@ -0,0 +1,83 @@
name: tests - rust
on:
push:
branches:
- develop
pull_request:
types: [opened, reopened, synchronize]
jobs:
## Run the `taskchampion` crate's tests with various combinations of features.
features:
strategy:
matrix:
features:
- ""
- "server-sync"
name: "taskchampion ${{ matrix.features == '' && 'with no features' || format('with features {0}', matrix.features) }}"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ubuntu-latest-stable-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ubuntu-latest-stable-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: test
run: cargo test -p taskchampion --no-default-features --features "${{ matrix.features }}"
## Run all TaskChampion crate tests, using both the minimum supported rust version
## and the latest stable Rust.
test:
strategy:
matrix:
rust:
- "1.70.0" # MSRV
- "stable"
os:
- ubuntu-latest
- macOS-latest
- windows-latest
name: "rust ${{ matrix.rust }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-${{ matrix.rust }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-${{ matrix.rust }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: "${{ matrix.rust }}"
override: true
- name: test
run: cargo test

20
.github/workflows/security.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: security
on:
schedule:
- cron: '0 0 * * *'
push:
paths:
- '**/Cargo.toml'
- '**/Cargo.lock'
jobs:
audit:
runs-on: ubuntu-latest
permissions: write-all
name: "Audit Rust Dependencies"
steps:
- uses: actions/checkout@v4
- uses: rustsec/audit-check@master
with:
token: ${{ secrets.GITHUB_TOKEN }}

108
.github/workflows/tests.yaml vendored Normal file
View File

@@ -0,0 +1,108 @@
## Run the Taskwarrior tests, using stable rust to build TaskChampion.
name: tests
on: [push, pull_request]
jobs:
# MacOS tests do not run in Docker, and use the actions-rs Rust installaction
tests-macos-12:
name: tests (Mac OS 12.latest)
if: false # see #3242
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-stable-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-stable-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: "stable"
override: true
- name: Test MacOS
run: bash test/scripts/test_macos.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
tests-macos-13:
name: tests (Mac OS 13.latest)
if: false # see #3242
runs-on: macos-13
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry
uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-stable-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
- name: Cache cargo build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-stable-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}
- uses: actions-rs/toolchain@v1
with:
toolchain: "stable"
override: true
- name: Test MacOS
run: bash test/scripts/test_macos.sh
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
tests:
strategy:
fail-fast: false
matrix:
include:
- name: "Fedora 38"
runner: ubuntu-latest
dockerfile: fedora38
- name: "Fedora 39"
runner: ubuntu-latest
dockerfile: fedora39
- name: "Debian Testing"
runner: ubuntu-latest
dockerfile: debiantesting
- name: "Ubuntu 20.04"
runner: ubuntu-latest
dockerfile: ubuntu2004
- name: "Ubuntu 22.04"
runner: ubuntu-latest
dockerfile: ubuntu2204
- name: "OpenSUSE Tumbleweed (Rolling)"
runner: ubuntu-latest
dockerfile: opensuse
- name: "Archlinux Base (Rolling)"
runner: ubuntu-latest
dockerfile: arch
runs-on: ${{ matrix.runner }}
continue-on-error: ${{ matrix.continue-on-error == true }}
steps:
- uses: actions/checkout@v4
- name: Build ${{ matrix.name }}
env:
DOCKER_REGISTRY: docker.pkg.github.com
DOCKER_CACHE_IMAGE: docker.pkg.github.com/${{ github.repository }}/taskwarrior_cache
GITHUB_USER: ${{ github.actor }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CONTAINER: ${{ matrix.dockerfile }}
run: docker-compose build test-$CONTAINER
- name: Test ${{ matrix.name }}
run: docker-compose run test-$CONTAINER
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CONTAINER: ${{ matrix.dockerfile }}

16
.gitignore vendored
View File

@@ -1,21 +1,15 @@
cmake.h
commit.h
Makefile
src/task
src/taskd
src/libtask.a
src/commands/libcommands.a
src/columns/libcolumns.a
*~
.*.swp
Session.vim
package-config/osx/binary/task
CMakeFiles
CMakeCache.txt
cmake_install.cmake
/build*/
install_manifest.txt
_CPack_Packages
CPackConfig.cmake
CPackSourceConfig.cmake
patches
*.exe
tutorials
.prove
/target/
/.idea/

6
.gitmodules vendored Normal file
View File

@@ -0,0 +1,6 @@
[submodule "src/libshared"]
path = src/libshared
url = https://github.com/GothenburgBitFactory/libshared.git
[submodule "src/tc/corrosion"]
path = src/tc/corrosion
url = https://github.com/corrosion-rs/corrosion.git

64
AUTHORS
View File

@@ -3,6 +3,7 @@ contributions of the following people:
Paul Beckingham (Principal Author)
Federico Hernandez (Principal Author)
Tomas Babej (Principal Author)
David J Patrick (Designer)
John Florian (Contributing Author)
Cory Donnelly (Contributing Author)
@@ -13,7 +14,6 @@ contributions of the following people:
Louis-Claude Canon (Contributing Author)
Scott Kostyshak (Contributing Author)
Renato Alves (Contributing Author)
Tomas Babej (Contributing Author)
The following submitted code, packages or analysis, and deserve special thanks:
@@ -126,7 +126,38 @@ The following submitted code, packages or analysis, and deserve special thanks:
Sunil Joshi
Misty De Meo
Kent R. Spillner
Konstantin
Konstantin Vorobyev
Tom Sydney Kerckhove
Lynoure Braakman
Sebastien Badia
Ran Benita
Vladimir
Zachary Manning
jrabbit
Jelle van der Waa
Flavio Poletti
Antonio Huete Jimenez
Lukas Barth
Øyvind A. Holm
Paul J. Fenwick
Michael Neumann
Mark Scannell
buhtz
Tiago Matias
Simon Ruderich
Kirill Bobyrev
Simon Désaulniers
Janik Rabe
mrossinek
taiyu-len
Chad Phillips
Lionel Miller
Florian Heiderich
Anthony VB
Julien Rabinow
Daniel Mowitz
Scott Mcdermott
Bharatvaj
Thanks to the following, who submitted detailed bug reports and excellent
suggestions:
@@ -274,7 +305,6 @@ suggestions:
James Cline
Ryan
Simon W. Jackson
Sebastien Badia
Michale Meier
Svetoslav Trochev
Marc Cornellà
@@ -288,3 +318,31 @@ suggestions:
pawprint
Reg
Yaroslav Molochko
Michael Meier
Slaven ʙanovic
Ellington Santos
george js
E. Manuel Cerr'on Angeles
Andrew
bjonnh
OKOMper
eldios
Eli
Sergey Trofimov
eezewaek
Hubert Toullec
Eric Hymowitz
Dan Callahan
Martin Strunz
Kai HTML
Marc Richter
rjc
php-coder
Martin F. Krafft
tom-doerr
ad-si
coaxial
Arvedui
reportaman
Pablo Vizcay
Jake C.

View File

@@ -1,98 +1,37 @@
cmake_minimum_required (VERSION 2.8)
set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required
cmake_minimum_required (VERSION 3.22)
set (CMAKE_EXPORT_COMPILE_COMMANDS ON)
project (task
VERSION 3.0.2
DESCRIPTION "Taskwarrior - a command-line TODO list manager"
HOMEPAGE_URL https://taskwarrior.org/)
set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake")
include (FetchContent)
include (CheckFunctionExists)
include (CheckStructHasMember)
set (HAVE_CMAKE true)
project (task)
set (PROJECT_VERSION "2.5.1")
include (CXXSniffer)
OPTION (ENABLE_SYNC "Enable 'task sync' support" ON)
OPTION (ENABLE_WASM "Enable 'wasm' support" OFF)
if (ENABLE_SYNC)
set (USE_GNUTLS ON CACHE BOOL "Build gnutls support." FORCE)
else (ENABLE_SYNC)
set (USE_GNUTLS OFF CACHE BOOL "Build gnutls support." FORCE)
message (WARNING "ENABLE_SYNC=OFF. Not building sync support.")
endif (ENABLE_SYNC)
if (ENABLE_WASM)
message ("Enabling WASM support.")
set(CMAKE_EXECUTABLE_SUFFIX ".js")
endif (ENABLE_WASM)
message ("CMAKE_SYSTEM_NAME ${CMAKE_SYSTEM_NAME}")
include (CheckCXXCompilerFlag)
# NOTE: If we are to actually use C++11 features, we should either require
# a compiler that supports the -std=c++11 flag or check for the
# features used.
# Relying on -std=c++0x or even -std=gnu++0x is highly volatile.
CHECK_CXX_COMPILER_FLAG("-std=c++11" _HAS_CXX11)
CHECK_CXX_COMPILER_FLAG("-std=c++0x" _HAS_CXX0X)
CHECK_CXX_COMPILER_FLAG("-std=gnu++0x" _HAS_GNU0X)
if (_HAS_CXX11)
set (_CXX11_FLAGS "-std=c++11")
elseif (_HAS_CXX0X)
message (WARNING "Enabling -std=c++0x draft compile flag. Your compiler does not support the standard '-std=c++11' option. Consider upgrading.")
set (_CXX11_FLAGS "-std=c++0x")
elseif (_HAS_GNU0X)
message (WARNING "Enabling -std=gnu++0x draft compile flag. Your compiler does not support the standard '-std=c++11' option. Consider upgrading.")
set (_CXX11_FLAGS "-std=gnu++0x")
else (_HAS_CXX11)
message (FATAL_ERROR "C++11 support missing. Try upgrading your C++ compiler. If you have a good reason for using an outdated compiler, please let us know at support@taskwarrior.org.")
endif (_HAS_CXX11)
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
set (_CXX11_FLAGS "${_CXX11_FLAGS} -stdlib=libc++")
endif (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (LINUX true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set (DARWIN true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD")
set (KFREEBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
set (FREEBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD")
set (OPENBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "NetBSD")
set (NETBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
set (SOLARIS true)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "GNU")
set (GNUHURD true)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "CYGWIN")
set (CYGWIN true)
# NOTE: Not setting -std=gnu++0x leads to compile errors even with
# GCC 4.8.3, and debugging those leads to insanity. Adding this
# workaround instead of fixing Cygwin.
set (_CXX11_FLAGS "-std=gnu++0x")
else (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (UNKNOWN true)
endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (CMAKE_CXX_FLAGS "${_CXX11_FLAGS} ${CMAKE_CXX_FLAGS}")
set (CMAKE_CXX_FLAGS "-Wall -Wsign-compare -Wreturn-type ${CMAKE_CXX_FLAGS}")
if (NETBSD)
# Since readline, etc likely to be in /usr/pkg/lib, not standard library
# Otherwise will remove links during install
set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
endif (NETBSD)
if (FREEBSD)
SET (TASK_MAN1DIR man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR man/man5 CACHE STRING "Installation directory for man pages, section 5")
else (FREEBSD)
SET (TASK_MAN1DIR share/man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR share/man/man5 CACHE STRING "Installation directory for man pages, section 5")
endif (FREEBSD)
SET (TASK_DOCDIR share/doc/task CACHE STRING "Installation directory for doc files")
SET (TASK_RCDIR "${TASK_DOCDIR}/rc" CACHE STRING "Installation directory for configuration files")
SET (TASK_BINDIR bin CACHE STRING "Installation directory for the binary")
message ("-- Looking for git submodules")
if (EXISTS ${CMAKE_SOURCE_DIR}/src/libshared/src AND EXISTS ${CMAKE_SOURCE_DIR}/src/tc/corrosion)
message ("-- Found git submodules")
else (EXISTS ${CMAKE_SOURCE_DIR}/src/libshared/src)
message ("-- Cloning git submodules")
execute_process (COMMAND git submodule update --init
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
endif (EXISTS ${CMAKE_SOURCE_DIR}/src/libshared/src AND EXISTS ${CMAKE_SOURCE_DIR}/src/tc/corrosion)
message ("-- Looking for SHA1 references")
if (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
@@ -107,25 +46,25 @@ endif (EXISTS ${CMAKE_SOURCE_DIR}/.git/index)
set (PACKAGE "${PROJECT_NAME}")
set (VERSION "${PROJECT_VERSION}")
set (PACKAGE_BUGREPORT "support@taskwarrior.org")
set (PACKAGE_BUGREPORT "support@gothenburgbitfactory.org")
set (PACKAGE_NAME "${PACKAGE}")
set (PACKAGE_TARNAME "${PACKAGE}")
set (PACKAGE_VERSION "${VERSION}")
set (PACKAGE_STRING "${PACKAGE} ${VERSION}")
if (USE_GNUTLS)
message ("-- Looking for GnuTLS")
find_package (GnuTLS)
if (GNUTLS_FOUND)
set (HAVE_LIBGNUTLS true)
set (TASK_INCLUDE_DIRS ${TASK_INCLUDE_DIRS} ${GNUTLS_INCLUDE_DIR})
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${GNUTLS_LIBRARIES})
endif (GNUTLS_FOUND)
endif (USE_GNUTLS)
if (FREEBSD OR DRAGONFLY)
SET (TASK_MAN1DIR man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR man/man5 CACHE STRING "Installation directory for man pages, section 5")
else (FREEBSD OR DRAGONFLY)
SET (TASK_MAN1DIR share/man/man1 CACHE STRING "Installation directory for man pages, section 1")
SET (TASK_MAN5DIR share/man/man5 CACHE STRING "Installation directory for man pages, section 5")
endif (FREEBSD OR DRAGONFLY)
SET (TASK_DOCDIR share/doc/task CACHE STRING "Installation directory for doc files")
SET (TASK_RCDIR "${TASK_DOCDIR}/rc" CACHE STRING "Installation directory for configuration files")
SET (TASK_BINDIR bin CACHE STRING "Installation directory for the binary")
if (ENABLE_SYNC AND NOT GNUTLS_FOUND)
message (FATAL_ERROR "Cannot find GnuTLS. Use -DENABLE_SYNC=OFF to build Taskwarrior without sync support. See INSTALL for more information.")
endif (ENABLE_SYNC AND NOT GNUTLS_FOUND)
# rust libs require these
set (TASK_LIBRARIES dl pthread)
check_function_exists (timegm HAVE_TIMEGM)
check_function_exists (get_current_dir_name HAVE_GET_CURRENT_DIR_NAME)
@@ -159,22 +98,41 @@ else (HAVE_UUID_UNPARSE_LOWER)
message ("-- Found libuuid, using internal uuid_unparse_lower")
endif (HAVE_UUID_UNPARSE_LOWER)
# Set the package language.
if (LANGUAGE)
set (PACKAGE_LANGUAGE ${LANGUAGE})
else (LANGUAGE)
set (PACKAGE_LANGUAGE 1)
endif (LANGUAGE)
if (HAIKU)
# search for socket() in libnetwork on Haiku
message("-- Looking for libnetwork")
find_library (NETWORK_LIBRARY NAMES network)
if (NETWORK_LIBRARY)
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${NETWORK_LIBRARY})
else (NETWORK_LIBRARY)
message(FATAL_ERROR "-- libnetwork not found.")
endif (NETWORK_LIBRARY)
endif (HAIKU)
set (LANGUAGE_ENG_USA 1)
set (LANGUAGE_ESP_ESP 2)
set (LANGUAGE_DEU_DEU 3)
set (LANGUAGE_FRA_FRA 4)
set (LANGUAGE_ITA_ITA 5)
set (LANGUAGE_POR_PRT 6)
set (LANGUAGE_EPO_RUS 7)
set (LANGUAGE_POL_POL 8)
set (LANGUAGE_JPN_JPN 9)
if (SOLARIS)
# accept() is in libsocket according to its manpage
message("-- Looking for libsocket")
find_library (SOCKET_LIBRARY NAMES socket)
if (SOCKET_LIBRARY)
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${SOCKET_LIBRARY})
else (SOCKET_LIBRARY)
message(FATAL_ERROR "-- libsocket not found.")
endif (SOCKET_LIBRARY)
# inet_ntop() is in libnsl according to its manpage
message("-- Looking for libnsl")
find_library (NSL_LIBRARY NAMES nsl)
if (NSL_LIBRARY)
set (TASK_LIBRARIES ${TASK_LIBRARIES} ${NSL_LIBRARY})
else (NSL_LIBRARY)
message(FATAL_ERROR "-- libnsl not found.")
endif (NSL_LIBRARY)
endif (SOLARIS)
# Disable the Clang return-type-c-linkage warning globally. See #3225.
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-return-type-c-linkage")
endif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
message ("-- Configuring cmake.h")
configure_file (
@@ -183,6 +141,7 @@ configure_file (
add_subdirectory (src)
add_subdirectory (src/commands)
add_subdirectory (src/tc)
add_subdirectory (src/columns)
add_subdirectory (doc)
add_subdirectory (scripts)
@@ -193,18 +152,32 @@ if (EXISTS performance)
add_subdirectory (performance EXCLUDE_FROM_ALL)
endif (EXISTS performance)
set (doc_FILES NEWS ChangeLog README.md INSTALL AUTHORS COPYING LICENSE)
set (doc_FILES ChangeLog README.md INSTALL AUTHORS COPYING LICENSE)
foreach (doc_FILE ${doc_FILES})
install (FILES ${doc_FILE} DESTINATION ${TASK_DOCDIR})
endforeach (doc_FILE)
add_custom_command(OUTPUT run-review
COMMAND docker build -q --build-arg PR=$(PR) --build-arg LIBPR=$(LIBPR) -t taskwarrior-review:$(PR)s$(LIBPR) - < scripts/review-dockerfile
COMMAND docker run --rm --memory 1g --hostname pr-$(PR)s$(LIBPR) -it taskwarrior-review:$(PR)s$(LIBPR) bash || :
)
add_custom_target(review DEPENDS run-review)
add_custom_command(OUTPUT run-reproduce
COMMAND docker build -q --build-arg RELEASE=$(RELEASE) -t taskwarrior-reproduce:$(RELEASE) - < scripts/reproduce-dockerfile
COMMAND docker run --rm --memory 1g --hostname tw-$(RELEASE) -it taskwarrior-reproduce:$(RELEASE) bash || :
)
add_custom_target(reproduce DEPENDS run-reproduce)
add_custom_command(OUTPUT show-problems
COMMAND cd test && ./problems
)
add_custom_target(problems DEPENDS show-problems)
# ---
set (CPACK_SOURCE_GENERATOR "TGZ")
set (CPACK_SOURCE_PACKAGE_FILE_NAME ${PACKAGE_NAME}-${PACKAGE_VERSION})
set (CPACK_SOURCE_IGNORE_FILES "CMakeCache" "CMakeFiles" "CPackConfig" "CPackSourceConfig"
"_CPack_Packages" "cmake_install" "install_manifest" "Makefile$"
"test" "package-config" "misc/*" "src/task$" "src/calc$" "performance"
"src/libtask.a" "src/columns/libcolumns.a" "src/commands/libcommands.a"
"/\\\\.gitignore" "/\\\\.git/" "swp$" "src/lex$")
set (CPACK_SOURCE_IGNORE_FILES "build" "test" "misc/*" "performance" "swp$" "src/lex$" "task-.*.tar.gz"
"commit.h" "cmake.h$" "\\\\.gitmodules" "src/libshared/\\\\.git" ".github/" ".*\\\\.gitignore$" "docker-compose.yml" "\\\\.git/")
include (CPack)

View File

@@ -1,6 +1,6 @@
Taskwarrior - a command line task list manager.
Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -20,4 +20,4 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
http://www.opensource.org/licenses/mit-license.php
https://www.opensource.org/licenses/mit-license.php

2334
Cargo.lock generated Normal file

File diff suppressed because it is too large Load Diff

42
Cargo.toml Normal file
View File

@@ -0,0 +1,42 @@
[workspace]
members = [
"taskchampion/taskchampion",
"taskchampion/lib",
"taskchampion/integration-tests",
"taskchampion/xtask",
]
resolver = "2"
# src/tc/rust is just part of the TW build and not a public crate
exclude = [ "src/tc/rust" ]
# All Rust dependencies are defined here, and then referenced by the
# Cargo.toml's in the members with `foo.workspace = true`.
[workspace.dependencies]
anyhow = "1.0"
byteorder = "1.5"
cc = "1.0.73"
chrono = { version = "^0.4.22", features = ["serde"] }
ffizz-header = "0.5"
flate2 = "1"
google-cloud-storage = { version = "0.15.0", default-features = false, features = ["rustls-tls", "auth"] }
lazy_static = "1"
libc = "0.2.136"
log = "^0.4.17"
pretty_assertions = "1"
proptest = "^1.4.0"
ring = "0.17"
rstest = "0.17"
rusqlite = { version = "0.29", features = ["bundled"] }
serde_json = "^1.0"
serde = { version = "^1.0.147", features = ["derive"] }
strum = "0.25"
strum_macros = "0.25"
tempfile = "3"
tokio = { version = "1", features = ["rt-multi-thread"] }
thiserror = "1.0"
ureq = { version = "^2.9.0", features = ["tls"] }
uuid = { version = "^1.8.0", features = ["serde", "v4"] }
url = { version = "2" }

435
ChangeLog
View File

@@ -1,4 +1,413 @@
2.5.1 (2016-02-24) -
------ current release ---------------------------
3.0.2 -
- Fix an accidentally-included debug print which polluted output of
reports with the Taskwarrior version (#3389)
------ old releases ------------------------------
3.0.1 -
- Fix an error in creation of the 3.0.0 tarball which caused builds to fail (#3302)
- Improvements to `task news`, including notes for the 3.0.0 release
- Minor improvements to documentation and error handling
- Fix incorrect task ID of 0 when using hooks (#3339)
- Issue a warning if .data files remain (#3321)
3.0.0 -
- [BREAKING CHANGE] the sync functionality has been rewritten entirely, and
no longer supports taskserver/taskd. Instead, the recommended solution is
a cloud-storage backend, although `taskchampion-sync-server` is also
available.
See https://taskwarrior.org/docs/upgrade-3/ for information on upgrading to
Taskwarrior 3.0.
The following config options are no longer supported:
- `debug.tls`
- `taskd.ca`
- `taskd.certificate`
- `taskd.ciphers`
- `taskd.credentials`
- `taskd.key`
- `taskd.server`
- `taskd.trust`
The Taskwarrior build no longer requires GnuTLS. The build option
`ENABLE_SYNC=OFF` is also no longer supported; sync support is always built
in.
Deep thanks to the following for contributions to this work:
- Akash Shanmugaraj
- Andrew Savchenko
- Dathan Bennett
- Dustin Mitchell
- dbr/Ben
- Felix Schurk
- Isaac Wyatt
- Nathan Luong
- Nikos Koukis
- Pablo Baeyens
- Ravi Sawlani
- ryneeverett
- Simon Fraser
- TW #2732 Fix urgency inheritance for negative-urgency tasks.
Thanks to Jackson Abascal for contributing.
- TW #2763 `task show` now shows `hooks.location.
Thanks to rollniak for reporting and sec65 for contributing.
- TW #2765 Fix leading space before urgency value in `task info`.
Thanks to Dominik Rehák for contributing.
- TW #2780 Fix formatting of countdown-style dates
Thanks to Dominik Rehák for contributing.
- TW #2826 Fix issue with filter not applied correctly during `task _tags` command
Thanks to Nikos Koukis for contributing.
- TW #3052 Parsing of timestamp values now uses 64-bit integers, avoiding
issues in the year 2032.
Thanks to Bernhard M. Wiedemann for contributing.
- TW #3068 Fix fish completion.
Thanks to Michal Koutný for contributing.
2.6.2 -
- TW #502 Sequence of IDs doesn't work with attribute "depends"
Thanks to Andreas Kalex and Reg for reporting.
- TW #2648 xdg-open is not available on Mac OS-X
Thanks to chapterjson for reporting.
- TW #2655 The bulk removal of depends: and tags: is ignored
Thanks to angelus2014 for reporting.
- TW #2664 Tag exclusion should be detected as invalid write context
Thanks to bentwitthold for reporting.
- TW #2671 The value of soww named date is incorrect
Thanks to Lennart Kill for reporting.
- TW #2689 Corruption of the depends attribute upon syncing with taskd 1.1.0
Thanks to Klaus Ethgen for reporting, Dusting J. Mitchell for
contributing.
- TW #2707 Assigning dependencies via ID ranges
Thanks to jaker-dotcom for reporting.
- TW #2748 Recurring report does not include parent tasks
Thanks to Klaus Ethgen for reporting.
2.6.1 (2021-10-19) - a696b6b155f9c8af87a6a496c0d298c58e6fe369
- TW #2619 Fish autocompletion fails when completing tag removal
Thanks to Alexandre Provencio for reporting, Tin Lai and Alexandre
Provencio for contributing.
- TW #2620 Old-style context definition should only be interpreted as read
context.
Thanks to bongoman and Tom Dörr for reporting.
- TW #2622 Tags and dependencies appear as orphaned UDAs.
Thanks to Scott Mcdermott for reporting.
- TW #2626 Waiting report lists deleted and/or completed tasks.
Thanks to Don Harper for reporting.
- TW #2629 New-style context definition should take precedence over old-style
even if the new-style is an empty string.
Thanks to Denis Kasak for reporting.
- TW #2632 Cannot build on Cygwin
Thanks to Michael Esemplare for contributing.
- TW #2639 Unable to use ranges for some tasks with IDs above 1000.
Thanks to Manuel Haussmann for reporting.
2.6.0 (2021-10-03) - 8174287f917a3b24c19a6601ba36fca9bdaa78c9
- TW #1654 "Due" parsing behaviour seems inconsistent
Thanks to Jim B for reporting.
- TW #1788 When deleting recurring task all tasks, including completed tasks,
are marked as deleted
Thanks to Alan Young for reporting.
- TW #1804 Importing malformed annotation (without entry timestamp) causes
segmentation fault.
Thanks to David Badura for reporting.
- TW #1840 Countdown (date format) is not working properly
Thanks to Eric Hymowitz for reporting, Sebastian Uharek for
contributing.
- TW #1847 Allow including files relative to $PREFIX/share/
Thanks to Georg Sauthoff for suggesting, oxalica for contributing.
- TW #1896 Parser cannot handle empty parentheses
- TW #1908 Cannot create task with explicit description 'start ....'
Thanks to Matt Chun-Lum for reporting.
- TW #1911 Support holidays longer then 1 day
Thanks to Daniel Mowitz for contributing.
- TW #1913 Project names with dashes and attribute names fail to parse
Thanks to Yanick Champoux for reporting.
- TW #1914 Non-cumulative burndown report
Thanks to Daniel Mowitz for contributing.
- TW #1938 Missing annotation on import if entry is duplicated
Thanks to Florian for reporting.
- TW #1945 Support of environment variables for configuration options
Thanks to Sebastian Uharek for contributing.
- TW #1953 Setting rc.verbose=new-uuid override works only if given as first argument
Thanks to Paul Fenwick for reporting.
- TW #1955 Adding tasks in context.
Thanks to Jean-Francois Joly, Matt Smith for suggesting.
- TW #1960 Fixed bug with double escaped single quotes.
Thanks to Ben Kelly for reporting, Sebastian Uharek for
contributing.
- TW #2004 "shell" should not be expand to "exec tasksh"
Thanks to Arvedui for reporting.
- TW #2007 Compute number of current tasks correctly
Thanks to Janik Rabe for contributing.
- TW #2017 Support 64-bit datetime values
Thanks to Evgeniy Vasilev for suggesting.
- TW #2023 Layout breaks if report does not fit in the available width
Thanks to Adrian Sieber and Kaushik Gopal for reporting.
- TW #2060 Review timestamp is displayed as unix time, not formatted
Thanks to JavaZauber for reporting.
- TW #2093 wrong order under projects command
Thanks to Beka, Max Rossmannek for reporting.
- TW #2101 Numeric UDA values above 2,147,483,647 overflow without warning
Thanks to Adam Monsen for reporting.
- TW #2136 Configuration options can be overwritten for current context
Thanks to Sebastian Uharek for contributing.
- TW #2160 Upper-case named dates are not supported
Thanks to Scott Kostyshak for reporting, Max Rossmannek for
contributing.
- TW #2163 Nagging computation should be based on the urgency before completion
Thanks to korrat for contributing.
- TW #2208 Support highlighting dates with scheduled tasks in calendar
Thanks to justf0rfun for suggesting, Sebastian Uharek for
contributing.
- TW #2247 Configuration override rc.verbose:off not respected
Thanks to Vignesh Prabhu for reporting.
- TW #2257 UDA string fields can't start with certain keywords
Thanks to Michael Russell for reporting.
- TW #2283 Support multi-line annotations in task edit without JSON encoding
Thanks to Jochen Sprickerhof for contributing.
- TW #2287 Speed up fish autocompletion and more completion options.
Thanks to Tin Lai for contributing.
- TW #2290 Support moving the config file to XDG_CONFIG_HOME
Thanks to Julien Rabinow for contributing.
- TW #2292 CmdEdit: Interruption should remove lock file
Thanks to Martin Michlmayr for reporting, indev12 for contributing.
- TW #2333 Width determination of Unicode characters now works for up to
Unicode 12 (from Unicode 5). Emojis are correctly displayed.
Thanks to Adam Monsen for reporting.
- TW #2373 Year 2038 Problem
Thanks to Stephan Rieche for reporting.
- TW #2386 Filtering project:someday broken
Thanks to FRebbel for reporting.
- TW #2388 Filtering for attribute values with spaces is broken
Thanks to angelus2014 for reporting.
- TW #2389 For certain terminal widths, annotations with utf-8 chars can lead
task to hang
Thanks to arooni for reporting.
- TW #2390 Regression: Relative dates should be implicitly anchored around 'now'
Thanks to Dominik Russo for reporting.
- TW #2392 Filtering for project-names containing hyphen and zero-leading number
Thanks to Nicola Chiapolini for reporting.
- TW #2393 Highlight due dates for waiting tasks in the calendar
Thanks to emkamau for reporting.
- TW #2403 Undefined symbols (with -DBUILD_SHARED_LIBS=ON)
Thanks to Jan Palus for contributing.
- TW #2422 "eow" and "eonw" seem to use different week day as reference
Thanks to bgravato for reporting.
- TW #2428 The "edit" command should respect "bulk" configuration option
Thanks to Evan Edmond for reporting.
- TW #2442 Bulk completions generate nagging message even if highest urgency
task was completed
Thanks to Daniel Mowitz for contributing.
- TW #2451 Command task $month doesn't behave correctly
Thanks to Matias Laporte for reporting.
- TW #2502 Two GCC warnings on 2.6.0.
Thanks to Scott Kostyshak for reporting.
- TW #2503 Warn against executing an empty execute command.
Thanks to heinrichat for reporting.
- TW #2514 Duration values can be mis-reported in the task info output
Thanks to reportaman for reporting.
- TW #2519 Named date eod should be last minute of today and not first of
tomorrow.
Thanks to Pablo Vizcay for reporting.
- TW #2530 Taskwarrior 2.5.3 time based filtering regression
Thanks to Matthias Tafelmeier for reporting.
- TW #2532 Show number of tasks to be modified in bulk updates
Thanks to jaker-dotcom for suggesting, Sebastian Uharek for
contributing.
- TW #2536 Feature: inclusive range-end attribute modifier 'by' so 'end of'
named dates can be filtered inclusively
Thanks to Scott Mcdermott for contributing.
- TW #2549 Write context with complex expressions should not be allowed
Thanks to Sebastian Fricke for reporting.
- TW #2550 Write context skipped if description contains an identifier
Thanks to Sebastian Fricke for reporting.
- TW #2554 Remove the waiting state, and consider any task with wait>now to be
waiting
Thanks to Dustin J. Mitchell for contributing.
- TW #2560 Add report.<name>.context configuration variable
Thanks to Jake C for suggesting.
- TW #2461 The legend in calendar does not respect the calendar.holidays setting
- TW #2569 The `json.depends.array` configuration option is now ignored.
Dependencies are always represented as an array in JSON output.
Thanks to Dustin J. Mitchell for contributing.
- TW #2575 Support exporting given report as JSON, including sort order
Thanks to Dheepak Krishnamurthy for contributing.
- TW #2580 Importing malformed JSON task crashes TW
Thanks to bharatvaj for contributing.
- TW #2581 Config entry with a trailing comment cannot be modified
2.5.3 (2021-01-05) - 2f47226f91f0b02f7617912175274d9eed85924f
- #2375 task hangs then dies when certain tasks are present in a report
Thanks to Max Rossmannek, Tomáš Janoušek and Chad Phillips.
2.5.2 (2020-12-05) - b0c17d11639dc6e783befd89c8508f2abb9b4287
- TD-64 sync conflict deleted all annotations of the task
Thanks to Markus Beppler, Konstantin Vorobyev
- TI-91 Timewarrior does not compile on DragonFly
Thanks to Michael Neumann
- TW #1 URL formating
Thanks to buhtz
- TW #2 Update to markdown and rename DEVELOPER to DEVELOPER.md
Thanks to Lynoure Braakman
- TW-54/#115 Reduce output for timesheet
Thanks to Aikido guy
- TW-61 Extract only tasks with annotations
Thanks to Aikido Guy
- TW-213 Align countdown column on boundary between number and text.
Thanks to Eric Fluger
- TW-1572 Alternative approach to urgency inheritance
Thanks to Jens Erat, Wim Schuermann
- TW-1667 hooks: upon failure indicate which hook failed
Thanks to Daniel Shahaf
- TW-1785 Purge command to remove deleted tasks
Thanks to Paul Beckingham
- TW-1772 Implementation of circular dependency detection is inefficient
Thanks to Michael Meier
- TW-1778 Unicode strings are truncated in task description
Thanks to Andrew, bjonnh, OKOMPer, Vladimir
- TW-1788 Closing a reopened task does not update the end time
Thanks to Ralph Bean
- TW-1791 taskrc(5) manpage: spurious "pri." in rule.precedence.color
Thanks to Sebastien Badia
- TW-1792 The info command uses '0' to reference dependencies on non-
pending tasks.
- TW-1795 Calendar underline on Day padding
Thanks to Renato Alves
- TW-1805 project:ide is not allowed
Thanks to Slaven ʙanovic
- TW-1807 dateformat lacks a flag to display day of week
Thanks to Ellington Santos
- TW-1813 Range filter doesn't work
Thanks to george js
- TW-1820 Install with -DLANGUAGE=2 flag not work.
Thanks to E. Manuel Cerr'on Angeles
- TW-1823 Incorrect unicode text wrapping / justifying.
Thanks to Sergey Trofimov
- TW-1827 Extract annotations from a task
Thanks to Ryan
- TW-1855 "Well-known" CA certificates not properly auto-loaded
Thanks to Flavio Poletti
- TW-1857 Change Task::get call to the more efficient Task::has
Thanks to Zachary Manning
- TW1858 Change signature for dependencyGetBlocked
- TW-1859 Change signature of Task::getTags
- TW-1860 Change signature of Task::getAnnotations
- TW-1861 Truncated description when adding annotation
Thanks to eezewaek
- TW-1869 segmentation fault (on unusual installation)
Thanks to Eric Hymowitz
- TW-1873 Specify different path to extensions/hooks directory
Thanks to Eli
- TW-1877 task done, task edit, task is now pending
Thanks to Eric Hymowitz
- TW-1878 uuids subcommand produces a space-delimited list, not comma-delimited
Thanks to Scott Kostyshak
- TW-1881 Missing last character(s) in Description field
Thanks to Hubert Toullec
- TW-1881 default.scheduled seems not to work
Thanks to Onion
- TW-1885 Task Sync does not send TLS SNI headers
Thanks to Dan Callahan
- TW-1903 grammar error -- There are 1 local changes.
Thanks to Eric Hymowitz
- TW-1906/#1919 sync sub-command is missing from task(1) manual page
Thanks to rjc
- TW-1910 unreachable statement
Thanks to Martin Strunz
- TW-1917/#1930 "above" does a string comparison, even when the value is numeric
Thanks to Dirk Deimeke
- TW-1930 Typo in help
Thanks to Kai HTML
- TW-1935 Separate verbosity category for rc overrides
Thanks to Paul J. Fenwick
- TW-1936 Tweak tests to have fuller TAP compliance
Thanks to Paul J. Fenwick
- TW-1938 Adjust behaviour of new-uuid and new-id verbosity levels
Thanks to Paul J. Fenwick
- TW-1947 "urgency.over" filter seems to not work correct
Thanks to Marc Richter
- TW #1964 task burndown shows extra brackets #1964
Thanks to php-coder
- TW #1966 Tests: Don't hardcode errno constants #1966
Thanks to Jakub Wilk
- TW #1973 Don't nag when no tasks are READY
Thanks to Martin F. Krafft
- TW #1986 [Nit] Update DEVELOPER.md after migration to Github
Thanks to Kirill Bobyrev
- TW #1922 Can't find export scripts
Thanks to tom-doerr
- TW #2020 reserved.lines is not affecting the burndown height
Thanks to ad₋si
- TW #2047 Exiting the task editor with an error code doesn't remove the lock file
Thanks to coaxial
- TW #2051 doc/man: ready tasks sorted with started tasks 1st
Thanks to Simon Désaulniers
- TW #2053 Do not set CMP0037 on CMake 3.11.0 and above
Thanks to Janik Rabe
- #2077 Change taskrc override priority, respect verbose override, refactor.
Thanks to taiyu-len
- #2108 CmdHistory: repeat unit if a larger unit changes
Thanks to Janik Rabe
- #2132 JSON encode/decode string UDAs
Thanks to Chad Phillips
- #2176 How to get the full list of tags ?
Thanks to Adrien Lemaire
- #2091 duration of task is set to a wrong and extremely big value
Thanks to Wray Zheng
- Added 'juhannus' as a synonym for 'midsommarafton'
Thanks to Lynoure Braakman
- Deprecated the 'DUETODAY' virtual tag, which is a synonym for the 'TODAY'
virtual tag.
- Removed deprecated 'alias._query' setting.
- Fixed ambiguity in the esp-ESP localization
Thanks to Fidel Mato
- Deprecated the 'new-uuid' verbosity option, since its functionality can be
removed by merging with 'new-id'.
- Correct a false-positive warning when a due date is removed and a wait is
added.
- Added 'QUARTER' virtual tag.
- Fixed unquoted glob in bash completion script
Thanks to Ran Benita
- Deprecated use of alternate Boolean configuration settings. Use values "0" for
off, and "1" for on. Avoid used of "on", "off", "true", "t", "false", "f",
"yes", "y", "no", "n".
- Fixed test harness for Python 3.x.
Thanks to jrabbit
- Improved certificate validation diagnostics
Thanks to Jelle van der Waa
- Improved portability for SunOS-like OSes.
Thanks to Antonio Huete Jimenez
- Updated the 'timesheet' command with a more compact report that accepts a
filter, and has a default filter showing the last four weeks of completed and
started tasks.
- Added 'history.weekly', 'history.daily', 'ghistory.weekly', 'ghistory.daily'
report variations, with code refactoring.
Thanks to Lukas Barth
- New DOM references: annotations.count, tw.syncneeded, tw.program, tw.args,
tw.width, tw.height, tw.version.
- The message telling you to sync now indicates how many local changes will be
synced.
- Removed compile-time language settings and I18N.
- Workaround for alias grep=rg in fish
Thanks to Lionel Miller.
- Do not set CMP0037 on CMake 3.11.0 and above
Thanks to Janik Rabe
2.5.1 (2016-02-24) 8b4ae3b54b44dfbd00b96cdd6dceb8dfe7cc1ea0
- TD-104 Unrecognized taskwarrior file format
(thanks to Jeremy John Reeder, Reg).
@@ -108,8 +517,6 @@
- The 'run_all' script was not correctly using exit code 0 when all tests pass
(thanks to Gordon Ball).
------ current release ---------------------------
2.5.0 (2015-10-21) dd5968a61b1fab258b38879cfdbb7d67f1bcd550
- TW-20 Task edit loses annotation precision, causing journal updating code
@@ -168,7 +575,7 @@
- TW-1488 You have more urgent tasks (thanks to Stefan Betz, Denis Kasak).
- TW-1496 Translation manuals are outdated/miss information (thanks to Jens
Erat).
- TW-1499 Invalid due date produces jump to beggining of the unix epoch (thanks
- TW-1499 Invalid due date produces jump to beginning of the unix epoch (thanks
to Tomas Babej).
- TW-1511 Project titles not properly parsed if they contain hyphens (thanks to
Leon Feng, Blake Sweeney, Dylan Mikus).
@@ -222,7 +629,7 @@
John Reeder).
- TW-1630 "Due" parsing behavior seems inconsistent (thanks to Jim B).
- TW-1632 Japanese translation for Taskwarrior(150713) (thanks to ribbon).
- TW-1634 due.not:<date> excludes only tasks scheduled at mitnight (thanks to
- TW-1634 due.not:<date> excludes only tasks scheduled at midnight (thanks to
Tomas Babej).
- TW-1635 Running "task anystringatall" does not filter anything (thanks to
Tomas Babej).
@@ -323,8 +730,6 @@
added.
- When GC is turned off, disable the query shortcuts, which no longer apply.
------ old releases ------------------------------
2.4.4 (2015-05-10) df49aaba126484b668c41d3ff9301f8d8ec49987
- TW-69 wait dates relative to due date (thanks to John Florian).
@@ -435,7 +840,7 @@
Babej).
- TW-1505 completely ignore mis-named hook scripts (thanks to Tomas Babej,
David Patrick).
- TW-1509 Hooks modifications performed on sync not sycning back (thanks to
- TW-1509 Hooks modifications performed on sync not syncing back (thanks to
Tomas Babej).
- TW-1510 Task can save empty value in the data backlog (thanks to Tomas Babej).
- TW-1517 Hook performance should be measured individually for each hook (thanks
@@ -543,7 +948,7 @@
"Description ( Information)".
- TW-248 Substitute text doesn't work with forward slash (thanks to Jostein
Berntsen).
- TW-249 Report filters don't allow parantheses (thanks to Philipp Woelfel).
- TW-249 Report filters don't allow parentheses (thanks to Philipp Woelfel).
- TW-250 Opening parenthesis in description gets padded in task 2.0.0 bet 2
(thanks to Michelle Crane).
- TW-251 extra spaces added after ( and / (thanks to Andy Spiegl).
@@ -818,7 +1223,7 @@ Bugs
.taskrc file (thanks to Haitham Gad).
- #1247 Tests now create a local dir, rather than use the insecure /tmp dir
(thanks to Jakub Wilk).
- #1248 Merge tests no longer connect to takwarrior.org (thank to Jakub Wilk).
- #1248 Merge tests no longer connect to taskwarrior.org (thank to Jakub Wilk).
- #1249 Build system now recognizes GNU/Hurd and GNU/kFreeBSD (thanks to Jakub
Wilk).
- #1263 The 'waiting' report properly lists only pending tasks with a wait date
@@ -884,7 +1289,7 @@ Features
- Stop consider new tasks after quitting a bulk change.
- Removed deprecated 'fg:' and 'bg:' attributes.
- The 'diagnostics' command now reports libuuid details.
- New characters for parsing and formating dates ('n', 's' and 'v').
- New characters for parsing and formatting dates ('n', 's' and 'v').
- Virtual tags (BLOCKED, UNBLOCKED, BLOCKING, DUE, DUETODAY, OVERDUE, TODAY,
ACTIVE, SCHEDULED, CHILD, UNTIL, WAITING and ANNOTATED).
- New 'modified' attribute, which contains the most recent modification date,
@@ -1146,7 +1551,7 @@ Bugs
- All holiday files have been renamed to include a locale, rather than just a
country code. For example: holidays.en-US.rc.
- Now ships with an add-on script, update-holidays.pl, which contacts
http://holidata.net, and brings the installed holiday files up to date.
https://holidata.net, and brings the installed holiday files up to date.
- Extension system now controlled by the 'extensions' configuration variable.
- HTML export in the form of an external scripts export-html.pl.
- Two additional solarized theme files, solarized-dark-256.theme and
@@ -1350,7 +1755,7 @@ Bugs
Michelle Crane).
- Fixed bug #823, so that recurring task change propagations are now always
confirmed (thanks to Miguel de Val Borro).
- Fixed bug #824, which caused probles when completing recurring tasks (thanks
- Fixed bug #824, which caused problems when completing recurring tasks (thanks
to Matt Kraai).
- Fixed bug #831, which prevented some date fields from being properly parsed.
- Fixed bug #835, which prevented hierarchical projects from being recognized.
@@ -1429,7 +1834,7 @@ Bugs
(thanks to Michal Vyskocil).
- Fixed problem where update-holidays.pl did not properly handle UTF8 JSON
data.
- Fixed problem where update-holidays.pl did not use the YYYYMMDD date foramt.
- Fixed problem where update-holidays.pl did not use the YYYYMMDD date format.
- Fixed problem where urgency was not properly calculated for waiting tasks.
- Fixed problem where 'project' was not supported as a verbosity token (thanks
to Adam Gibbins).
@@ -1943,7 +2348,7 @@ Bugs
- Supports 'rc.name:value' for a command line override to .taskrc data
(thanks to Federico Hernandez).
- Removed obsolete DEVELOPERS file. The online support forums at
http://taskwarrior.org will provide better information.
https://taskwarrior.org will provide better information.
- Fixed bug that kept some deleted tasks showing up on the calendar report
(thanks to Federico Hernandez).
- Now asks the user to confirm large changes if configuration variable

168
DEVELOPER
View File

@@ -1,168 +0,0 @@
How to Build Taskwarrior
Satisfy the Requirements:
- gcc 4.7 or later, clang 3.3 or later or equivalent. This is because C++11
is now used.
- libuuid
- gnutls (optional)
- python 2.7 or 3 (optional, for running the test suite)
Obtain and build code:
$ git clone https://git.tasktools.org/scm/tm/task.git task.git
$ cd task.git
$ git checkout 2.5.0 # Latest dev branch
$ cmake -DCMAKE_BUILD_TYPE=debug . # debug or release. Default: neither.
$ make VERBOSE=1 # Shows details
Running Test Suite:
$ cd tests
$ make VERBOSE=1 # Shows details
$ ./run_all # Runs all tests silently > all.log
$ ./problems # Enumerate test failures in all.log
Note that any development should be performed using a git clone, and the
current development branch. The source tarballs do not reflect HEAD, and do
not contain the test suite.
If you send a patch (support@taskwarrior.org), make sure that patch is made
against git HEAD on the development branch. We cannot apply patches made
against the tarball source, or master.
General Statement
This file is intended to convey the current efforts, priorities and needs of
the codebase. It is for anyone looking for a way to start contributing.
While this is biased towards developers, anyone can contribute, and everyone
is encouraged to do so. Here are many ways to contribute that may not be
immediately obvious to you:
- Use Taskwarrior, become familiar with it, and make suggestions. There are
always ongoing discussions about new features and changes to existing
features.
- Join us in the #taskwarrior IRC channel on freenode.net. Many great ideas,
suggestions, testing and discussions have taken place there. It is also
the quickest way to get help, or confirm a bug.
- Join https://answers.tasktools.org and help us by asking, answering and
voting on questions and answers, directly helping those who ask, and
helping future users who search for existing answers.
- Review documentation: there are man pages, online articles, tutorials and
so on, and these may contain errors, or they may not convey ideas in the
best way. Perhaps you can help improve it. Contact us - documentation is
a separate effort from the codebase, and includes all web sites, and all
are available using git.
- Take a look at the bug database, and help triage the bug list. This is a
review process that involves confirming bugs, providing additional data,
information or analysis. Bug triage is very useful and much needed. You
could check to see that an old bug is still relevant - sometimes they are
not.
- Review the source code, and point out inefficiencies, problems, unreadable
functions, bugs and assumptions.
- Fix a bug. For this you'll need C++ and Git skills, but this is one of
the largest ways you can contribute. We welcome all bug fixes, provided
the work is done well and doesn't create other problems or introduce new
dependencies. We recommend talking to us before starting. Seriously.
- Add unit tests. Unit tests are possibly the most useful contributions of
all, because they not only improve the quality of the code, but prevent
future regressions, therefore maintaining quality of subsequent releases.
Plus, broken tests are a great motivator for us to fix the causal defect.
You'll need Python skills.
- Add a feature. Well, let's be very clear about this: adding a feature is
not usually well-received, and if you add a feature and send a patch, it
will most likely be rejected. The reason for this is that there are many
efforts under way, in various code branches. There is a very good chance
that the feature you add is either already in progress, or being done in a
way that is more fitting when considering other work in progress. So if
you want to add a feature, please don't. Start by talking to us, and find
out what is currently under way or planned. You might find that we've
already rejected such a feature for some very good reasons. So please
check first, so we don't duplicate effort or waste anyone's time.
- Donate some server time to the testing effort, by participating in the
continuous integration of all changes, with our Flod software. See this
page for an example: http://central.tasktools.org. Ask us about running a
Flod satellite, we're always looking for exotic platforms to test on.
- Spread the word. Help others become more effective at managing tasks.
- Encouragement. Tell us what works for you, and what doesn't. Tell us about
your methodology for managing tasks. It's all useful information.
- Request a feature. This not only tells us that you think something is
missing from the software, but gives us insights into how you use it.
Plus, you might get your feature implemented.
Next are some specific areas that need attention.
New Code Needs
This is code that needs to be written.
- Need an external script that can locate and correct duplicate UUIDs in the
data file, as found by 'task diag'. This should check to see if there is
a suitable UUID generator installed. This should also be careful to
properly handle recurring tasks.
- Take a look at:
https://bug.tasktools.org/browse/EX
This 'extension' release is a collection of all the requested features that
lie outside of the core product, and will be implemented as external scripts
by anyone who wishes to participate.
Unit Tests Needed
There are always more unit tests needed. More specifically, better unit tests
are always needed. The convention is that there are four types of unit test:
1. High level tests that exercise large features, or combinations of commands.
For example, dependencies.t runs through a long list of commands that test
dependencies, but do so by using 'add', 'modify', 'done' and 'delete'.
2. Regression tests that ensure certain bugs are fixed and stay fixed. These
tests are named bug.NNN.t where NNN refers to the bug number. While it is
not worth creating tests for small fixes like typos, it is for changes to
the logic.
3. Small feature tests. When small features are added, we would like small,
low-level feature tests named feature.t, with a descriptive name and
focused tests.
4. Code tests. These are tests written in C++ that exercise C++ objects, or
function calls. These are the lowest level tests. It is important that
these kind of tests be extensive and thorough, because the software depends
on this code the most.
The tests are written in Python, Bash and C++, and all use TAP.
Tests needed:
- Take a look at the bug database (https://bug.tasktools.org) and notice that
many issues, open and closed, have the "needsTest" label. These are things
that we would like to see in the test suite, as regression tests.
- Test regex support.
- Need unit tests for each bug in the issue list that is marked with the
'needsTest' label.
Note that all new unit tests should follow the test/template.t standard.
Work in Progress
Things that are currently in flux, which is another way of saying leave it
alone while it is being worked on.
- All columns/Col*::validate methods.
- New columns/Col*::modify methods.
Current Codebase Condition
'master' branch:
- 2.4.4 Current release, locked.
'2.5.0' branch:
- Current development branch no plans yet.
---
2015-09-07 Updated for 2.5.0

1
DEVELOPER.md Normal file
View File

@@ -0,0 +1 @@
See [Developing Taskwarrior](./doc/devel/contrib/README.md).

View File

@@ -1,210 +0,0 @@
Startup
On startup, main creates a global Context object, then calls the
Context::initialize and Context::run methods.
Context is a large object that holds all task information, both in terms of
the task data, and intermediate run-time data. Having one global Context
object means we don't have 50 global variables. Context is therefore just a
big global bucket of data.
Context::initialize sets up all the data and processes the command line. The
initialization process is a big chicken-and-egg problem, because the command
line depends on configuration (aliases) and the command line can force a
reload of configuration (rc:foo). This is solved by look-ahead: the command
line is scanned for 'rc:xxx' and 'rc.data.location:xxx' arguments, then later
for overrides.
The Context::run method handles all the debug output and exceptions. Its
main purpose is to set up exception handling and call Context::dispatch.
Command Line Parsing
Command line parsing is difficult because of all the ambiguity. The solution
is to make multiple passes over the command line. For example, the command
determines whether subsequent arguments are interpreted as part of a filter or
set of modifications.
The CLI2 object is fed command line arguments, then through a succession of
calls builds and annotates a parse tree. To help with this, the Lexer is
used to break up strings into tokens.
Dispatch
Dispatch is simple: once the command line is parsed, the command is used to
look up a command object, then a call is made to the Command::execute method.
Context stores an associative map of command object pointers indexed by a
string. This means the 'done' string is an index to the CmdDone object that
implements the functionality.
Command Objects
Every task command is implemented by a command object. The command object
provides metadata, usage and one-line help in addition to the ::execute method
that implements the command. The Command base class implements common
functionality.
Column Objects
There is a 1:1 correspondence between attributes stored in the data files and
the columns that may be reported. These are represented by column objects,
which are responsible for validating input, measuring space needed according
to various formats, and for rendering data for reports. There is a
ColDescription object that inherits from a Column base class.
TDB2
The TDB2 object is a layered, transactioned I/O manager. Its purpose is to
isolate code from file I/O, locking and parsing details. It is also
responsible for minimizing reads, writes and parsing of data files.
All input is assumed to be UTF8. All stored data is UTF8.
GC
Garbage Collection is the process that moves tasks between the pending.data
and completed.data files. It is also responsible for waking tasks out of the
wait state.
Every command that displays task IDs will cause a GC to be run first, which
minimizes the number of changes necessary to the task IDs. This means that
when a report shows task IDs, those IDs will remain valid while subsequent
write commands are issued. The next report run may show different IDs.
Minimizing the size of pending.data is important for performance, because it
is the file that is accessed most.
Files
The data files used are all kept in the rc.data.location directory, which
defaults to ~/.task. The files are:
pending.data
completed.data
undo.data
backlog.data
The pending.data file aspires to contain only pending, waiting and recurring
tasks, but this is only correct after a GC, and before any tasks are modified.
This file tends to be relatively stable in size, reflecting the length of the
task list.
The completed.data file accumulates data over time, and grows unbounded.
The undo.data file accumulates changes over time, and grows unbounded. It
provides all the necessary metadata to support the 'undo' command.
The backlog.data file contains an accumulated set of changes that have not
been transmitted to Taskserver. It grows unbounded between 'sync' commands.
Filter
A filter is simply a set of command line arguments, but is only a subset of
the complete command line. These arguments are extracted from the parse tree
according to whether the command found is a read or write command.
There is a Filter::subset method for applying a filter to a set of tasks,
yielding a result set. It does this by creating an expression from the
parse tree using the Eval object, then evaluating the expression for each task,
such that the result set contains only tasks for which the expression evaluates
to Boolean true.
Eval & Variant
The Eval class evaluates expressions, provided in string form, using the
Variant class to represent data elements. Variant implements all operators
for all Variant types.
Sorting
Sorting is performed on a set of tasks. More specifically, the list that is
sorted is a set of numeric indexes to tasks that are stored in a separate
list. This minimizes the amount of data copying involved to just integers
rather than Task objects, but at the expense of one level of indirection.
Memory fragmentation is a bigger problem than the performance of vector
indexing.
The actual sorting is performed by std::stable_sort, but the compare function
is custom.
Render
There are two rendering objects, ViewTask and ViewText. These both have the
same tabular grid rendering capabilities. ViewText maintains a 2D vector of
strings to contain the data to be rendered, so it is used for things like the
help command output. ViewTask does not copy data, but assumes all data is
stored externally in a vector of Tasks, which minimizes data copying.
ViewTask contains projection data in the form of a set of Column objects that
represent the X axis. The Y axis is represented by a vector of tasks.
The rendering process is complex. It involves dynamically setting column
widths based on (1) available terminal width, (2) the columns to be included
in the output, (3) ability to wrap text for certain columns and (4) the size
of the data to be rendered, which involves added complexity when UTF8 is used.
The Column objects determine minimum width for a column and the maximum width
which then allows ViewT* to make choices.
Test Suite
A strong and diverse test suite is critical to the successful release of any
software. With the complex command set and its myriad permutations, a test
suite is the only way to ensure quality levels, and guarantee that big changes
are robust.
It is intended that the test suite continues growing, mostly feature tests.
The test are mostly written in Python. Some tests are written in C++ and all
tests generate TAP output.
There are currently about 8,000 unit tests, that take only a few seconds to
run on a multi-core machine.
Taskwarrior uses flod software to automate continuous integration across many
platforms. Code changes are automatically detected, propagated, built and
tested on a variety of participating platforms. Grid testing results are here:
http://central.tasktools.org/
When making code changes, it is important that the test suite be run to verify
that functionality was not broken.
Debugging
The 'rc.debug=on' override provides the following additional information which
is useful during debugging:
- Timing of various components (used to generate the data for the charts at
http://tasktools.org/performance).
- Data load times.
- Terminal size, color capabilities.
- Command line parse tree.
- TDB2 layer and I/O information.
Additionally, there are other settings (see 'man taskrc' for full details) that
may also be helpful: 'rc.hooks=on|off', 'rc.debug.parser=0|1|2|3',
'rc.debug.hooks=0|1|2', 'rc.debug.tls=0|1|2|3...'.
Patches
Patches are encouraged and welcomed. Either attach them to the appropriate
Jira issue, or send them to support@taskwarrior.org. A good patch:
- Maintains the MIT license, and does not contain code lifted from other
sources. You will have written 100% of the code in the patch, otherwise
we cannot maintain the license.
- Precisely addresses one issue only.
- Doesn't break unit tests.
- Doesn't introduce dependencies.
- Is accompanied by unit tests, where appropriate, written in Python.
- Is accompanied by documentation changes, where appropriate.
- Conforms to the prevailing coding standards - in other words, it should
fit right in with the existing code.
A patch may be rejected for violating any of the above rules, and more.
Bad patches may be accepted and modified depending on work load and mood. It
is possible that a patch may be rejected because it conflicts in some way with
plans or upcoming changes. Check with us first, before sinking time and effort
into a patch.
---

66
INSTALL
View File

@@ -8,19 +8,18 @@ source.
Dependencies
------------
You will need the CMake build system installed in order to build Taskwarrior
from source. More information on cmake can be obtained at http://cmake.org
You will need the CMake 3.0+ build system installed in order to build Taskwarrior
from source. More information on CMake can be obtained at https://cmake.org
You will also need:
- make
You will need a C++ compiler that supports full C++11, which includes:
- gcc 4.7 (released 2012-03-23)
- clang 3.3 (released 2013-01-07)
You will need a C++ compiler that supports full C++17, which includes:
- gcc 7.1 (released 2017-05-02)
- clang 5.0 (released 2017-09-07)
You will need the following libraries:
- libuuid (not needed for OSX)
- gnutls (can be optional - see '"sync" command' below)
Basic Installation
@@ -89,40 +88,6 @@ get absolute installation directories:
CMAKE_INSTALL_PREFIX/TASK_MAN5DIR /usr/local/share/man/man5
"sync" command
--------------
By default, GnuTLS support is required, which enables the "sync" command.
For Debian based distributions, installing "libgnutls-dev" is sufficient.
In order to build Taskwarrior without "sync" support, call cmake with the
"-DENABLE_SYNC=OFF" flag:
$ cmake . -DENABLE_SYNC=OFF
and proceed as described in "Basic Installation".
Localizations
-------------
To make use of a translation, specify a language number, as found in cmake.h:
$ cmake -DLANGUAGE=2 .
Currently the defined languages are:
eng_USA 1
esp_ESP 2
deu_DEU 3
fra_FRA 4
ita_ITA 5
por_PRT 6
epo_RUS 7
pol_POL 8
jpn-JPN 9
Uninstallation
--------------
@@ -161,10 +126,10 @@ Darwin, 32bit
cmake -DCMAKE_C_FLAGS=-m32 -DCMAKE_CXX_FLAGS=-m32 -DCMAKE_EXE_LINKER_FLAGS=-m32 .
See:
http://taskwarrior.org/issues/817
http://stackoverflow.com/questions/3261909/build-32bit-on-64-bit-linux-using-a-configure-script
http://stackoverflow.com/questions/2617508/cmake-gcc-cuda-and-m32-wtf
http://stackoverflow.com/questions/6077414/cmake-how-to-set-the-ldflags-in-cmakelists-txt
https://taskwarrior.org/issues/817
https://stackoverflow.com/questions/3261909/build-32bit-on-64-bit-linux-using-a-configure-script
https://stackoverflow.com/questions/2617508/cmake-gcc-cuda-and-m32-wtf
https://stackoverflow.com/questions/6077414/cmake-how-to-set-the-ldflags-in-cmakelists-txt
OpenBSD
@@ -176,8 +141,16 @@ OpenBSD
and build normally.
See: https://bug.tasktools.org/browse/TW-1579
See: https://github.com/GothenburgBitFactory/taskwarrior/issues/1605
WASM
Using the Emscripten compiler, you can achieve it like this:
cmake -DCMAKE_CXX_COMPILER=emcc -DCMAKE_BUILD_TYPE=release -DENABLE_WASM=ON \
-DCMAKE_EXE_LINKER_FLAGS="-m32 -s NO_DYNAMIC_EXECUTION=1 -s WASM=1 -s NO_EXIT_RUNTIME=1 -s INVOKE_RUN=0" \
-DCMAKE_CXX_FLAGS_RELEASE="-O2 -m32"
This will produce an optimized WASM with a main() that is callable multiple times.
Troubleshooting
---------------
@@ -192,8 +165,7 @@ CMake with no reported problems, and the build will fail later. This is
almost always because CMake is mistaken about some assumption.
If a build does not succeed, please send the contents of the 'CMakeCache.txt'
and 'CMakeFiles/CMakeOutput.log' files to support@taskwarrior.org, or post a
message in the support forums at taskwarrior.org along with the information.
and 'CMakeFiles/CMakeOutput.log' files to support@gothenburgbitfactory.org.
If CMake runs but Taskwarrior does not build, please send the contents of the
above files as well as a transcript from the build, which is not written to a

View File

@@ -1,6 +1,8 @@
Taskwarrior - a command line task list manager.
The MIT License
Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
https://www.opensource.org/licenses/mit-license.php
Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -20,4 +22,3 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
http://www.opensource.org/licenses/mit-license.php

61
NEWS
View File

@@ -1,61 +0,0 @@
New Features in Taskwarrior 2.5.1
- As a bug-fix, code cleanup and performance release, new features are
limited to only small tweaks.
- The 'help' command now takes a 'usage' argument, which displays only the
command usage.
New Commands in Taskwarrior 2.5.1
- None.
New Configuration Options in Taskwarrior 2.5.1
- New 'relative' column format for 'date' type columns does what 'remaining'
and 'countdown' do, but in one format.
Newly Deprecated Features in Taskwarrior 2.5.1
-
Removed Features in 2.5.1
- There is no longer a 16-color default configuration for some platforms,
making all platforms 256-color.
- The configuration setting 'burndown.bias' is no longer used.
- The algorithm used to estimate completion on the 'burndown' reports has
been replaced by something less icky. Estimates are now based on the net
completion rate after the peak number of pending tasks.
- The unused 'dom' and 'shell.prompt' configuration settings were removed.
Known Issues
- https://bug.tasktools.org/
Taskwarrior has been built and tested on the following configurations:
* OS X
* Fedora
* Ubuntu
* Debian
* Arch
* FreeBSD
* Cygwin
---
While Taskwarrior has undergone testing, bugs are sure to remain. If you
encounter a bug, please enter a new issue at:
https://bug.tasktools.org
Or you can also report the issue in the forums at:
https://answers.tasktools.org
Or just send a message to:
support@taskwarrior.org
Thank you.

View File

@@ -1,47 +1,80 @@
# Disclaimer during ongoing development
<div align="center">
<img src="https://avatars.githubusercontent.com/u/36100920?s=200&u=24da05914c20c4ccfe8485310f7b83049407fa9a&v=4"></br>
We want to discourage you from using the development version of Taskwarrior.
[![GitHub Actions build status](https://github.com/GothenburgBitFactory/taskwarrior/workflows/tests/badge.svg?branch=develop)](https://github.com/GothenburgBitFactory/taskwarrior/actions)
[![Release](https://img.shields.io/github/v/release/GothenburgBitFactory/taskwarrior)](https://github.com/GothenburgBitFactory/taskwarrior/releases/latest)
[![Release date](https://img.shields.io/github/release-date/GothenburgBitFactory/taskwarrior)](https://github.com/GothenburgBitFactory/taskwarrior/releases/latest)
[![GitHub Sponsors](https://img.shields.io/github/sponsors/GothenburgBitFactory?color=green)](https://github.com/sponsors/GothenburgBitFactory/)
</br>
</div>
The development branch is a work in progress and may not pass all quality tests,
therefore it may harm your data. We do not guarantee proper or even adequate
functionality, performance or timely fixes.
## Taskwarrior
![OS-X downloads](https://img.shields.io/homebrew/installs/dy/task?label=OS-X%20downloads)
![Github downloads](https://img.shields.io/github/downloads/GothenburgBitFactory/taskwarrior/total?label=Github%20downloads)
![Linux downloads](https://img.shields.io/badge/Linux%20downloads-unknown-gray)
We welcome bug reports from beta- and release-level software, but generally not
development versions. If you are undaunted by this, please:
Taskwarrior is a command line task list management utility with a [multitude of
features](https://taskwarrior.org/docs/), developed as a portable open source project
with an active and quite vast [ecosystem of tools, hooks and
extensions](https://taskwarrior.org/tools/).
- Make proper backups.
- Expect broken and missing functionality.
- Be aware that using the development branch involves risks.
## Install
[![Arch](https://img.shields.io/archlinux/v/extra/x86_64/task)](https://archlinux.org/packages/extra/x86_64/task/)
[![Debian](https://img.shields.io/debian/v/task/testing)](https://packages.debian.org/search?keywords=task&searchon=names&suite=all&section=all)
[![Fedora](https://img.shields.io/fedora/v/task)](https://bodhi.fedoraproject.org/updates/?packages=task)
[![Homebrew](https://img.shields.io/homebrew/v/task)](https://formulae.brew.sh/formula/task#default)
[![Ubuntu](https://img.shields.io/ubuntu/v/task)](https://packages.ubuntu.com/search?keywords=task&searchon=names&suite=hirsute&section=all)
---
Taskwarrior is packaged on a wide range of [Linux/Unix systems, Mac OS and
Windows](https://taskwarrior.org/download/). Check out the latest available
packages in repositories of your OS distribution of choice [on
Repology](https://repology.org/project/taskwarrior/versions).
Thank you for taking a look at Taskwarrior!
Alternatively, you can [build Taskwarrior from source](doc/devel/contrib).
Taskwarrior is a GTD, todo list, task management, command line utility with a
multitude of features. It is a portable, well supported and very active Open
Source project. Taskwarrior has binary distributions, online documentation,
demonstration movies, and you'll find all the details at:
## Documentation
http://taskwarrior.org
The [online documentation](https://taskwarrior.org/docs), downloads, news and
more are available on our website, [taskwarrior.org](https://taskwarrior.org).
At the site you'll find online documentation, downloads, news and more.
## Community
[![Twitter](https://img.shields.io/twitter/follow/taskwarrior?style=social)](https://twitter.com/taskwarrior)
[![Reddit](https://img.shields.io/reddit/subreddit-subscribers/taskwarrior?style=social)](https://reddit.com/r/taskwarrior/)
[![Libera.chat](https://img.shields.io/badge/IRC%20libera.chat-online-green)](https://web.libera.chat/#taskwarrior)
[![Discord](https://img.shields.io/discord/796949983734661191?label=discord)](https://discord.gg/eRXEHk8w62)
[![Github discussions](https://img.shields.io/github/discussions/GothenburgBitFactory/taskwarrior?label=GitHub%20discussions)](https://github.com/GothenburgBitFactory/taskwarrior/discussions)
Your contributions are especially welcome. Whether it comes in the form of
code patches, ideas, discussion, bug reports, encouragement or criticism, your
input is needed.
Taskwarrior has a lively community on many places on the internet.
For support options, take a look at:
Best place to ask questions is our [discussions forum on
Github](https://github.com/GothenburgBitFactory/taskwarrior/discussions). For
other support options, take a look at
[taskwarrior.org/support](https://taskwarrior.org/support)
http://taskwarrior.org/support
For code contributions, please use pull requests.
See [Contributing to Taskwarrior](doc/devel/contrib) for more details.
Please send your code patches to:
## Contributing
[![Contributors](https://img.shields.io/github/contributors/GothenburgBitFactory/taskwarrior)](https://github.com/GothenburgBitFactory/taskwarrior/graphs/contributors)
[![Milestone progress](https://img.shields.io/github/milestones/progress/GothenburgBitFactory/taskwarrior/26?label=current%20milestone%20issues)](https://github.com/GothenburgBitFactory/taskwarrior/milestone/26)
[![Good first issus](https://img.shields.io/github/issues/GothenburgBitFactory/taskwarrior/good%20first%20issue)](https://github.com/GothenburgBitFactory/taskwarrior/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)
support@taskwarrior.org
Your contributions are especially welcome.
Whether it comes in the form of code patches, ideas, discussion, bug reports, encouragement or criticism, your input is needed.
See further development documentation in [`doc/devel`](./doc/devel).
Consider joining bug.tasktools.org, answers.tasktools.org and participating in
the future of Taskwarrior.
## Sponsoring
[![GitHub Sponsors](https://img.shields.io/github/sponsors/GothenburgBitFactory?color=green)](https://github.com/sponsors/GothenburgBitFactory/)
---
Taskwarrior is a result of work of mostly small group of volunteers, and has been in development since 2006.
Taskwarrior is released under the MIT license. For details check the LICENSE
file.
If you are a happy Taskwarrior user, please consider [sponsoring us through
Github Sponsors](https://github.com/sponsors/GothenburgBitFactory/).
Every sponsorship matters, as it directly increases the number of hours core
developers can contribute to the project and makes the project more sustainable.
## License
Taskwarrior is released under the MIT license.
For details check the [LICENSE](LICENSE) file.

View File

@@ -17,18 +17,6 @@
/* Installation details */
#define TASK_RCDIR "${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}"
/* Localization */
#define PACKAGE_LANGUAGE ${PACKAGE_LANGUAGE}
#define LANGUAGE_ENG_USA ${LANGUAGE_ENG_USA}
#define LANGUAGE_ESP_ESP ${LANGUAGE_ESP_ESP}
#define LANGUAGE_FRA_FRA ${LANGUAGE_FRA_FRA}
#define LANGUAGE_DEU_DEU ${LANGUAGE_DEU_DEU}
#define LANGUAGE_ITA_ITA ${LANGUAGE_ITA_ITA}
#define LANGUAGE_POR_PRT ${LANGUAGE_POR_PRT}
#define LANGUAGE_EPO_RUS ${LANGUAGE_EPO_RUS}
#define LANGUAGE_POL_POL ${LANGUAGE_POL_POL}
#define LANGUAGE_JPN_JPN ${LANGUAGE_JPN_JPN}
/* git information */
#cmakedefine HAVE_COMMIT
@@ -43,15 +31,13 @@
#cmakedefine FREEBSD
#cmakedefine OPENBSD
#cmakedefine NETBSD
#cmakedefine DRAGONFLY
#cmakedefine HAIKU
#cmakedefine SOLARIS
#cmakedefine KFREEBSD
#cmakedefine GNUHURD
#cmakedefine UNKNOWN
/* Found the GnuTLS library */
#cmakedefine HAVE_LIBGNUTLS
/* Found tm_gmtoff */
#cmakedefine HAVE_TM_GMTOFF

41
cmake/CXXSniffer.cmake Normal file
View File

@@ -0,0 +1,41 @@
message ("-- Configuring C++17")
message ("-- System: ${CMAKE_SYSTEM_NAME}")
include (CheckCXXCompilerFlag)
CHECK_CXX_COMPILER_FLAG("-std=c++17" _HAS_CXX17)
if (_HAS_CXX17)
set (_CXX14_FLAGS "-std=c++17")
else (_HAS_CXX17)
message (FATAL_ERROR "C++17 support missing. Try upgrading your C++ compiler. If you have a good reason for using an outdated compiler, please let us know at support@gothenburgbitfactory.org.")
endif (_HAS_CXX17)
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (LINUX true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set (DARWIN true)
set (_CXX14_FLAGS "${_CXX14_FLAGS} -stdlib=libc++")
elseif (${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD")
set (KFREEBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
set (FREEBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD")
set (OPENBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "NetBSD")
set (NETBSD true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "DragonFly")
set (DRAGONFLY true)
elseif (${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
set (SOLARIS true)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "GNU")
set (GNUHURD true)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "CYGWIN")
set (CYGWIN true)
set (_CXX14_FLAGS "-std=gnu++17")
else (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (UNKNOWN true)
endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set (CMAKE_CXX_FLAGS "${_CXX14_FLAGS} ${CMAKE_CXX_FLAGS}")
set (CMAKE_CXX_FLAGS "-Wall -Wextra -Wsign-compare -Wreturn-type ${CMAKE_CXX_FLAGS}")

View File

@@ -1,4 +1,4 @@
cmake_minimum_required (VERSION 2.8)
cmake_minimum_required (VERSION 3.22)
message ("-- Configuring man pages")
set (man_FILES task-color.5 task-sync.5 taskrc.5 task.1)
foreach (man_FILE ${man_FILES})

9
doc/README.md Normal file
View File

@@ -0,0 +1,9 @@
# Documentation
This directory contains Taskwarrior documentation that is built and installed along with the executable:
* [`man`](man/) contains the source for the Taskwarrior manual pages.
* [`rc`](rc/) contains rcfiles that will be installed in `/usr/share/doc/task/rc` or equivalent.
* [`ref`](ref/) contains reference documentation that will be installed in `/usr/share/doc/task` or equivalent.
It also contains [developer documentation](devel/README.md) with a high-level view of how Taskwarrior development is done and how the pieces of the system fit together.

20
doc/devel/README.md Normal file
View File

@@ -0,0 +1,20 @@
# Development Documentation
This directory contains the _development_ documentation for Taskwarrior.
For all other documenation, see https://taskwarrior.org.
* [Contributing To Taskwarrior](contrib/README.md)
* [Taskwarrior RFCs](rfcs/README.md)
## Taskwarrior and TaskChampion
As of the 3.0 release, Taskwarrior uses TaskChampion to manage task data.
Find documentation of TaskChampion here:
* [TaskChampion README](../../taskchampion)
* [TaskChampion CONTRIBUTING guide](../../taskchampion/CONTRIBUTING.md)
* [TaskChampion Book](../../taskchampion/docs/src/SUMMARY.md)
* [TaskChampion API Documentation](https://docs.rs/taskchampion)
TaskChampion will [become its own
project](https://github.com/GothenburgBitFactory/taskwarrior/issues/3209) soon.

View File

@@ -0,0 +1,8 @@
# Contributing To Taskwarrior
* [Welcome, Open Source Contributor](first_time.md)
* [Developing Taskwarrior](development.md)
* [Coding Style](coding_style.md)
* [Branching Model](branching.md)
* [Rust and C++](rust-and-c++.md)
* [Releasing Taskwarrior](releasing.md)

View File

@@ -0,0 +1,13 @@
Software development typically requires a standardized branching model, to manage complexity and parallel efforts.
The branching model can be a source of confusion for developers, so this document describes how branching is used.
We use the following branching model:
* `develop` is the current development branch. All work is done here, and upon
release it will be branched to a release branch. While `develop` is not
stable, we utilize CI to ensure we're at least not merging improvements that
break existing tests, and hence should be relatively safe. We still recommend
making backups when using the development branch.
* The most recent minor release is in a branch named after the release, e.g., `2.7.0`.
This branch is used for bug-fixes of the latest release.

View File

@@ -0,0 +1,31 @@
# Coding Style
The coding style used for the Taskwarrior, Taskserver, and other codebases is deliberately kept simple and a little vague.
This is because there are many languages involved (C++, C, Python, sh, bash, HTML, troff and more), and specіfying those would be a major effort that detracts from the main focus which is improving the software.
Instead, the general guideline is simply this:
Make all changes and additions such that they blend in perfectly with the surrounding code, so it looks like only one person worked on the source, and that person is rigidly consistent.
To be a little more explicit:
## C++
- All functionality in C++17 is allowed.
- Indent C++ code using two spaces, no tabs
- Surround operators and expression terms with a space.
This includes a space between a function name and its list of arguments.
- No cuddled braces
- Class names are capitalized, variable names are not
## Python
Follow [PEP8](https://www.python.org/dev/peps/pep-0008/) as much as possible.
## Rust
Rust code should be formatted with `rustfmt` and generally follow Rust style guidelines.

View File

@@ -0,0 +1,79 @@
# Developing Taskwarrior
The following describes the process for developing Taskwarrior. If you are only
changing TaskChampion (Rust code), you can simply treat it like any other Rust
project: modify the source under `taskchampion/` and use `cargo test` to run
the TaskChampion tests.
See the [TaskChampion CONTRIBUTING guide](../../../taskchampion/CONTRIBUTING.md) for more.
## Satisfy the Requirements:
* CMake 3.0 or later
* gcc 7.0 or later, clang 6.0 or later, or a compiler with full C++17 support
* libuuid (if not on macOS)
* Rust 1.64.0 or higher (hint: use https://rustup.rs/ instead of using your system's package manager)
## Install Optional Dependencies:
* python 3 (for running the test suite)
* clangd or ccls (for C++ integration in many editors)
* rust-analyzer (for Rust integration in many editors)
## Obtain and Build Code:
The following documentation works with CMake 3.14 and later.
Here are the minimal steps to get started, using an out of source build directory and calling the underlying build tool over the CMake interface.
See the general CMake man pages or the [cmake-documentation](https://cmake.org/cmake/help/latest/manual/cmake.1.html) for more,
## Basic Building
```sh
git clone https://github.com/GothenburgBitFactory/taskwarrior
cd taskwarrior
cmake -S . -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
cmake --build build
```
Other possible build types can be `Release` and `Debug`.
This will build several executables, but the one you want is probably `src/task`, located in the `build` directory.
When you make changes, just run the last line again.
### Building a specific target
For **only** building the `task` executable, use
```sh
cmake --build build --target task_executable
```
### Building in parallel
If a parallel build is wanted use
```sh
cmake --build build -j <number-of-jobs>
```
### Building with clang as compiler
```sh
cmake -S . -B build-clang\
-DCMAKE_C_COMPILER=clang\
-DCMAKE_CXX_COMPILER=clang++
cmake --build build-clang
```
## Run the Test Suite:
First switch to the test directory:
```
$ cd build/test
```
Then you can run all tests, showing details, with
```
$ make VERBOSE=1
```
Alternately, run the tests with the details hidden in `all.log`:
```
$ ./run_all
```
Either way, you can get a summary of any test failures with:
```
$ ./problems
```
Note that any development should be performed using a git clone, and the current development branch.
The source tarballs do not reflect HEAD, and do not contain the test suite.
Follow the [GitHub flow](https://docs.github.com/en/get-started/quickstart/github-flow) for creating a pull request.

View File

@@ -0,0 +1,68 @@
# Welcome, Open Source Contributor
Welcome, potential new Open Source contributor! This is a guide to show you exactly how to make a contribution, and will lead you through the entire process.
There are many people who wish to start contributing, but don't know how or where to start.
If this might be the case for you, then please read on, this guide is for you.
Because we want you to join in the fun with Open Source - it can be fun and rewarding, improve your skills, or just give you a way to contribute back to a project.
## How to Help
Help is needed in all areas of Taskwarrior development - design, coding, testing, support and marketing.
Applicants must be friendly.
Perhaps you are looking to help, but don't know where to start.
Perhaps you have skills we are looking for, here are ways you may be able to help:
- Use Taskwarrior, become familiar with it, and make suggestions.
We get great feedback from both new users and veteran users.
New users have a fresh approach that we can no longer achieve, while veteran users develop clever and crafty ways to use the product.
- Report bugs and odd behavior when you see it.
We don't necessarily know it's broken, unless you tell us.
- Suggest enhancements.
We get lots of these, and it's great.
Some really good ideas have been suggested and implemented.
Sure, some are out of scope, or plain crazy, but the stream of suggestions is fascinating to think about.
- Participate in the [bug tracking](https://github.com/GothenburgBitFactory/taskwarrior/issues) database, to help others and maybe learn something yourself.
- Proofread the documentation and man pages.
- Improve the documentation.
- Improve the man pages.
- Help improve the tutorials.
Make your own tutorial.
- Confirm a bug.
Nothing gets fixed without confirmation.
- Refine a bug.
Provide relevant details, elaborate on the behavior.
- Fix a bug.
Send a patch.
For this you'll need to know some C++ or Rust, and understand the [GitHub flow](https://docs.github.com/en/get-started/quickstart/github-flow).
See [Developing Taskwarrior](./development.md) for more information.
We welcome all bug fixes, provided the work is done well and doesn't create other problems or introduce new dependencies.
We recommend talking to us before starting: we are happy to help you out!
- Write a unit test.
Unit tests are possibly the most useful contributions of all, because they not only improve the quality of the code, but prevent future regressions, therefore maintaining quality of subsequent releases.
Plus, broken tests are a great motivator for us to fix the causal defect.
You'll need Python skills.
- Spread the word.
Help others become more effective at managing tasks.
Share your methodology, to inspire others.
- Encouragement.
Tell us what works for you, and what doesn't.
It's all good.
- Donate! Help offset costs.
Please remember that we need contributions from all skillsets, however small.
Every contribution helps.

View File

@@ -0,0 +1,24 @@
# Releasing Taskwarrior
To release Taskwarrior, follow this process:
- Examine the changes since the last version, and update `src/commands/CmdNews.cpp` accordingly.
There are instructions at the top of the file.
- Create a release PR
- Update version in CMakeLists.txt
- Update Changelog
- get this merged
- On `develop` after that PR merges, create a release tarball:
- `git clone . release-tarball`
- `cd release-tarball/`
- edit `Cargo.toml` to contain only `taskchampion` and `taskchampion-lib` in `members` (see https://github.com/GothenburgBitFactory/taskwarrior/issues/3294).
- `cmake -S. -Bbuild`
- `make -Cbuild package_source`
- copy build/task-*.tar.gz elsewhere and delete the `release-tarball` dir
- NOTE: older releases had a `test-*.tar.gz` but it's unclear how to generate this
- Update `stable` to the released commit and push upstream
- Tag the commit as vX.Y.Z and push the tag upstream
- Find the tag under https://github.com/GothenburgBitFactory/taskwarrior/tags and create a release from it
- Give it a clever title if you can think of one; refer to previous releases
- Include the tarball from earlier
- Add a new item in `content/news` on https://github.com/GothenburgBitFactory/tw.org

View File

@@ -0,0 +1,42 @@
# Rust and C++
Taskwarrior has historically been a C++ project, but as part of an [ongoing effort to replace its storage backend](https://github.com/GothenburgBitFactory/taskwarrior/issues/2770) it now includes a Rust library called TaskChampion.
To develop Taskwarrior, you will need both a [C++ compiler and tools](./development.md), and a [Rust toolchain](https://www.rust-lang.org/tools/install).
However, most tasks will only require you to be familiar with one of the two languages.
## TaskChampion
TaskChampion implements storage and access to "replicas" containing a user's tasks.
It defines an abstract model for this data, and also provides a simple Rust API for manipulating replicas.
It also defines a method of synchronizing replicas and provides an implementation of that method in the form of a sync server.
TaskChampion provides a C interface via the `taskchampion-lib` crate.
Other applications, besides Taskwarrior, can use TaskChampion to manage tasks.
Applications written in Rust can use the `taskchampion` crate, while those in other languages may use the `taskchampion-lib` crate.
Taskwarrior is just one application using the TaskChampion interface.
You can build TaskChampion locally by simply running `cargo build` in the root of this repository.
The implementation, including more documentation, is in the [`rust`](../../rust) subdirectory.
## Taskwarrior's use of TaskChampion
Taskwarrior's interface to TaskChampion has a few layers:
* The skeletal Rust crate in [`src/tc/rust`](../../src/tc/rust) brings the symbols from `taskchampion-lib` under CMake's management.
The corresponding header file is included from [`taskchampion/lib`](../../taskchampion/lib).
All of these symbols are placed in the C++ namespace, `tc::ffi`.
* C++ wrappers for the types from `taskchampion-lib` are defined in [`src/tc`](../../src/tc), ensuring memory safety (with `unique_ptr`) and adding methods corresponding to the Rust API's methods.
The wrapper types are in the C++ namespace, `tc`.
## WARNING About Dependency Tracking
CMake cannot detect changes to Rust files in under the `taskchampion/` directory.
Running `make` after these files are changed will not incorporate the changes into the resulting executables.
To force re-compilation of the Rust dependencies:
```
rm -rf src/tc/rust/x86_64-unknown-linux-gnu/debug/libtc_rust.a
make
```
You may need to adjust the `x86_64-unknown-linux-gnu` part of that command depending on what system you are using for development.

18
doc/devel/rfcs/README.md Normal file
View File

@@ -0,0 +1,18 @@
# Taskwarrior RFCS
In the mid-2010's, Taskwarrior development was organized around RFCs, as a way to invite comment before designs were finalized.
Although these documents were less formal than [IETF RFCs](https://www.ietf.org/rfc) they serve a similar purpose.
In more recent years, use of RFCs has been discontinued, and the documents linked here should be considered historical.
Many were never completely implemented.
* [General Plans](plans.md)
* [Rules System](rules.md)
* [Full DOM Support ](dom.md)
* [Work Week Support](workweek.md)
* [Recurrence](recurrence.md)
* [Taskwarrior JSON Format](task.md)
* [CLI Updates ](cli.md)
* [Taskserver Sync Protocol](protocol.md)
* [Taskserver Message Format](request.md)
* [Taskserver Sync Algorithm](sync.md)
* [Taskserver Client](client.md)

154
doc/devel/rfcs/cli.md Normal file
View File

@@ -0,0 +1,154 @@
---
title: "Taskwarrior - Command Line Interface"
---
## Work in Progress
This design document is a work in progress, and subject to change. Once finalized, the feature will be scheduled for an upcoming release.
# CLI Syntax Update
The Taskwarrior command line syntax is being updated to allow more consistent and predictable results, while making room for new features.
Adding support for arbitrary expressions on the command line has become complicated because of the relaxed syntax of Taskwarrior. While the relaxed syntax allows for a very expressive command line, it also creates ambiguity for the parser, which needs to be reduced.
With some limited and careful changes it will be possible to have a clear and unambiguous command line syntax, which means a predictable and deterministic experience.
It should be stated that for straightforward and even current usage patterns, the command line will likely not change for you. Another goal is to not require changes to 3rd-party software, where possible. Only the more advanced and as-yet unintroduced features will require a more strict syntax. This is why now is an ideal time to tighten the requirements.
## Argument Types
The argument types supported remain the same, adding some new constructs.
* Config file override
* `rc:<file>`
* Configuration override
* `rc:<name>:<value>` Literal value
* `rc:<name>=<value>` Literal value
* `rc:<name>:=<value>` Calculated value
* Tag
* `+<tag>`
* `-<tag>`
* `'+tag one'` Multi-word tag
* Attribute modifier
* `rc:<name>.<modifier>:<value>`
* Modifier is one of:
* `before`
* `after`
* `under`
* `over`
* `above`
* `below`
* `none`
* `any`
* `is`
* `isnt`
* `equals`
* `not`
* `contains`
* `has`
* `hasnt`
* `left`
* `right`
* `startswith`
* `endswith`
* `word`
* `noword`
* Search pattern
* `/<pattern>/`
* Substitution
* `/<from>/<to>/`
* `/<from>/<to>/g`
* Command
* `add`
* `done`
* `delete`
* `list`
* etc.
* Separator
* `--`
* ID Ranges
* `<id>[-&ltid>][,<id>[-&ltid>]...]`
* UUID
* `<uuid>`
* Everything Else
* `<word>`
* `'<word> <word> ...'`
## New Command Line Rules
Certain command line constructs will no longer be supported, and this is imposed by the new rules:
1. Each command line argument may contain only one instance of one argument type, unless that type is `<word>`.
task add project:Home +tag Repair the thing # Good
task add project:Home +tag 'Repair the thing' # Good
task add 'project:Home +tag Repair the thing' # Bad
Putting two arguments into one quoted arg makes that arg a `<word>`.
2. If an argument type contains spaces, it must either be quoted or escaped.
task add project:'Home & Garden' ... # Good
task add 'project:Home & Garden' ... # Good
task add project:Home\ \&\ Garden ... # Good
task add project:Home' & 'Garden ... # Good
task add project:Home \& Garden ... # Bad
The parser will not combine multiple arguments, for example:
task '/one two/' list # Good
task /one two/ list # Bad
task /'one two'/ list # Bad, unless ' is part of the pattern
3. By default, *no* calculations are made, unless the `:=` eval operator is used, and if so, the whole argument may need to be quoted or escaped to satisfy Rule 1.
task add project:3.project+x # Literal
task add project:=3.project+x # DOM reference + concatenation
4. Bare word search terms are no longer supported.
Use the pattern type argument instead.
task /foo/ list # Good
task foo list # Bad
5. Expressions must be a series of arguments, not a quoted string.
task urgency \< 5.0 list # Good
task 'urgency < 5.0 list' # Bad
## Other Changes
Aside from the command line parser, there are other changes needed:
- Many online documents will need to be modified.
- Filters will be automatically parenthesized, so that every command line will now looke like:
task [overrides] [(cli-filter)] [(context-filter)] [(report-filter)] command [modifications]
- There will be more errors when the command line is not understood.
- Ambiguous ISO date formats are dropped.
YYYYMMDD # Bad
YYYY-MM-DD # Good
hhmmss # Bad
hh:mm:ss # Good
- The tutorial videos will be even more out of date, and will be replaced by a large number of smaller demo 'movies'.

392
doc/devel/rfcs/client.md Normal file
View File

@@ -0,0 +1,392 @@
---
title: "Taskwarrior - Creating a Taskserver Client"
---
# Creating a Taskserver Client
A Taskserver client is a todo-list manager.
It may be as simple as a program that captures a single task, as complex as Taskwarrior, or anything in between.
It can be a mobile client, a web application, or any other type of program.
This document describes how such a client would interact with the server.
A client to the Taskserver is a program that manages a task list, and wishes to exchange data with the server so that the task list may be shared.
In order to do this, a client must store tasks locally, upload local changes, download remote changes, and apply remote changes to the local tasks.
The client must consider that there may be no network connectivity, or no desire by the user to synchronize.
The client will need proper credentials to talk to the server.
## Requirements
In this document, we adopt the convention discussed in Section 1.3.2 of [RFC1122](https://tools.ietf.org/html/rfc1122#page-16) of using the capitalized words MUST, REQUIRED, SHOULD, RECOMMENDED, MAY, and OPTIONAL to define the significance of each particular requirement specified in this document.
In brief: "MUST" (or "REQUIRED") means that the item is an absolute requirement of the specification; "SHOULD" (or "RECOMMENDED") means there may exist valid reasons for ignoring this item, but the full implications should be understood before doing so; and "MAY" (or "OPTIONAL") means that this item is optional, and may be omitted without careful consideration.
## Taskserver Account
A Taskserver account must be created.
This process creates a storage area, and generates the necessary credentials.
## Credentials
A Taskserver client needs the following credentials in order to communicate with a server:
- Server address and port
- Organization name
- User name
- Password
- Certificate
- Key
The server address and port are the network location of the server.
An example of this value is:
foo.example.com:53589
In addition to a DNS name, this can be an IPv4 or IPv6 address.
The organization name is an arbitrary grouping, and is typically 'PUBLIC', reflecting the individual nature of server accounts.
Future capabilities will provide functionality that support groups of users, called an organization.
The user name is the full name.
This will be the name used to identify other users in an organization, in a future release.
Example 'John Doe'.
The password is a text string generated by the server at account creation time.
It should be considered a secret.
The certificate is an X.509 PEM file generated by the server at account creation time.
This is used for authentication.
It should be considered a secret.
The key is an X.509 PEM file generated by the server at account creation time.
This is used for encryption.
It should be considered a secret.
These credentials need to be stored on the client, and used during the sync operation.
## Description of a Taskserver Client
This section describes how a client might behave in order to facilitate integration with the Taskserver.
## Encryption
The Taskserver only communicates using encryption.
Therefore all user data is encrypted while in transit.
The Taskserver currently uses [GnuTLS](https://gnutls.org) to support this encryption, and therefore supports the following protocols:
- SSL 3.0
- TLS 1.0
- TLS 1.1
- TLS 1.2
The client may use any library that supports the above.
## Configuration
The client needs to store configuration, which matches the credentials needed for Taskserver communication.
See section 2.1 "Credentials".
The credentials may not be modified by the user without losing server access.
The server:port data may need to be changed automatically following a redirect response from the server.
See section 5 "Server Errors".
## Local Storage
The client needs to store task data locally.
The client will need to be able to find tasks by their UUID and overwrite them.
Uploaded and downloaded task changes will use the [Taskwarrior Data Interchange Format](/docs/design/task).
## Local Changes
Whenever local data is modified, that change MUST be synced with the server.
But this does not have to occur immediately, in fact the client SHOULD NOT assume connectivity at any time.
A client SHOULD NOT also assume that the server is available.
If the server is not available, the local changes should be retained, and the sync operation repeated later.
Ideally the client will give the user full control over sync operations.
Automatically syncing after all local modifications is not recommended.
If a client performs too many sync operations, the server MAY revoke the certificate.
Effectively, the client should maintain a separate list of tasks changed since the last successful sync operation.
Note that tasks have a "modified" attribute, which should be updated whenever a change is made.
This attribute contributes to conflict resolution on the server.
## Remote Changes
When a server sends remote changes to a client, in the response to a sync request, the changes have already been merged by the server, and therefore the client should simply store them intact.
Based on the UUID in the task, the client can determine whether a task is new (and should be added to the local list of tasks), or whether it represents a modification (and should overwrite it's existing entry).
The client MUST NOT perform any merges.
## Sync Key
Whenever a sync is performed, the server responds by sending a sync key and any remote changes.
The sync key is important, and should be included in the next sync request.
The client is REQUIRED to store the sync key in every server response message.
If a client omits the sync key in a sync message, the response will be a complete set of all tasks and modifications.
## Data Integrity
Although a task is guaranteed to contain at least 'entry', 'description' and 'uuid' attributes, it may also contain other known fields, and unknown user-defined fields.
An example might be an attribute named 'estimate'.
If a task is received via sync that contains an attribute named 'estimate', then a client has the responsibility of preserving the attribute intact.
If that data is shown, then it is assumed to be of type 'string', which is the format used by JSON for all values.
Conversely, if a client wishes to add a custom attribute, it is guaranteed that the server and other clients will preserve that attribute.
Using this rule, two clients of differing capabilities can exchange data and still maintain custom attributes.
This is a requirement.
Any client that does not obey this requirement is broken.
## Synchronizing
Synchronizing with the Taskserver consists of a single transaction.
Once an encrypted connection is made with the server, the client MUST compose a [sync request message](/docs/design/request).
This message includes credentials and local changes.
The response message contains status and remote changes, which MUST be stored locally.
## Establishing Encrypted Connection
All communication with the Taskserver is encrypted using the certificate and key provided to each user.
Using the 'server' configuration setting, establish a connection.
## Sync Request
See [sync request message](/docs/design/request).
A sync request MUST contain a sync key if one was provided by a previous sync.
A sync request MUST contain a list of modified tasks, in JSON format (see [Task JSON](/docs/design/task)), if local modifications have been made.
## Sync Response
A sync response WILL contain a 'code' and 'status' header variable, WILL contain a sync key in the payload, and MAY contain a list of tasks from the server in JSON format (see [Task JSON](/docs/design/task)).
## Server Messages
There are cases when the server needs to inform the user of some condition.
This may be anticipated server downtime, for example.
The response message is typically not present, but may be present in the header, containing a string:
...
message: Scheduled maintenance 2013-07-14 08:00UTC for 10 minutes.
...
If such a message is returned by the server, it SHOULD be made available to the user.
This is a recommendation, not a requirement.
## Server Errors
The server may generate many errors (See [Protocol](/docs/design/protocol)), but the following is a list of the ones most in need of special handling:
- 200 Success
- 201 No change
- 301 Redirect
- 430 Access denied
- 431 Account suspended
- 432 Account terminated
- 5xx Error
The 200 indicates success, and that a change was recorded.
The 201 indicates success but no changes were necessary.
The 301 is a redirect message indicating that the client MUST re-request from a new server.
The 43x series messages are account-related.
Any 5xx series code is a server error of some kind.
All errors consist of a code and a status message:
code: 200
status: Success
## Examples
Here are examples of properly formatted request and response messages.
Note that the messages are indented for clarity in this document, but is not the case in a properly formatted message.
Also note that newline characters U+000D are not shown, but are implied by the separate lines.
Because some messages have trailing newline characters, the text is delimited by the 'cut' markers:
foo
The example above illustrates text consisting of:
U+0066 f
U+006F o
U+006F o
U+000D newline
U+000D newline
Note that these values are left unspecified, but should be clear from the context, and the [message format](/docs/design/request) spec:
<size>
<organization>
<user>
<password>
## First Sync
The first time a client syncs, there is (perhaps) no data to upload, and no sync key from a previous sync.
<size>type: sync
org: <organization>
user: <user>
key: <password>
client: task 2.3.0
protocol: v1
Note the double newline character separating header from payload, with an empty payload.
## Request: Sync No Data
Ordinarily when a client syncs, there is a sync key from the previous sync response to send.
This example shows a sync with no local changes, but a sync key from a previous sync.
<size>type: sync
org: <organization>
user: <user>
key: <password>
client: task 2.3.0
protocol: v1
2e4685f8-34bc-4f9b-b7ed-399388e182e1
## Request: Sync Data
This sync request shows a sync key from the previous sync, and a locally modified task.
<size>type: sync
org: <organization>
user: <user>
key: <password>
client: task 2.3.0
protocol: v1
2e4685f8-34bc-4f9b-b7ed-399388e182e1
{"description":"An example","uuid":"8ad2e3db-914d-4832-b0e6-72fa04f6e331",...}
## Response: No Data
If a sync results in no downloads to the client, the response will look like this.
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 200
status: Ok
45da7110-1bcc-4318-d33e-12267a774e0f
Note that there is a sync key which must be stored and used in the next sync request, but there are no remote changes to store.
## Response: Remote Data
This shows a sync response providing a new sync key, and a remote change to two tasks.
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 200
status: Ok
45da7110-1bcc-4318-d33e-12267a774e0f
{"description":"Test data","uuid":"8ad2e3db-914d-4832-b0e6-72fa04f6e331",...}
{"description":"Test data2","uuid":"3b6218f9-726a-44fc-aa63-889ff52be442",...}
Note that the sync key must be stored for the next sync request.
Note that the two changed tasks must be stored locally, and if the UUID in the tasks matches local tasks, then the local tasks must be overwritten.
## Response: Error
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 431
status: Account suspended
Note the double newline character separating header from payload, with an empty payload.
## Response: Relocate
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 301
status: Redirect
info:
Note the 'info' field will contain a ':' string that should be used for all future sync requests.
This indicates that a user account was moved to another server.
Note the double newline character separating header from payload, with an empty payload.
## Response: Message
Occasionally the server will need to convey a message, and will include an additional header variable containing that message.
The server [protocol](/docs/design/protocol) states that the message SHOULD be shown to the user.
This message will be used for system event messages, used rarely, and never used for advertising or promotion.
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 200
status: Ok
message: Scheduled maintenance 2013-07-14 08:00UTC for 10 minutes.
45da7110-1bcc-4318-d33e-12267a774e0f
Note that the same message will likely be included in consecutive responses.
## Reference Implementation
The Taskserver 1.1.0 codebase contains a reference implementation of an SSL/TLS client and server program, which communicate text strings.
taskd.git/src/tls/Makefile # To build the example
taskd.git/src/tls/README # How to run the example
taskd.git/src/tls/TLSClient.cpp # TLS client code
taskd.git/src/tls/TLSClient.h
taskd.git/src/tls/TLSServer.cpp # TLS Server code
taskd.git/src/tls/TLSServer.h
taskd.git/src/tls/c.cpp # Client program
taskd.git/src/tls/s.cpp # Server program
taskd.git/src/tls/text.cpp # Text manipulation
taskd.git/src/tls/text.h # Text manipulation
The Taskwarrior codebase, version 2.4.0, is the reference implementation.
task.git/src/TLSClient.cpp # TLS client code
task.git/src/TLSClient.h
task.git/src/commands/CmdSync.cpp # Sync implementation
task.git/src/commands/CmdSync.h

249
doc/devel/rfcs/dom.md Normal file
View File

@@ -0,0 +1,249 @@
---
title: "Taskwarrior - Full DOM Support"
---
## Work in Progress
This design document is a work in progress, and subject to change.
Once finalized, the feature will be scheduled for an upcoming release.
# Full DOM Support
Taskwarrior currently supports DOM references that can access any stored data item.
The general forms supported are:
[ <id> | <uuid> ] <attribute> [ <part> ]
Examples include:
due
123.uuid
entry.month
123.annotations.0.entry.year
a87bc10f-931b-4558-a44a-e901a77db011.description
Additionally there are references for accessing configuration and system/program level items.
rc.<name>
context.program
context.args
context.width
context.height
system.version
system.os
While this is adequate for data retrieval, we have the possibility of extending it further to include data formats, higher-level constructs, and then to make use of DOM references in more locations.
This contributes to our goal of simplifying Taskwarrior.
## Proposed Format Support
When defining a custom report, the columns shown are defined like this:
report.x.columns=uuid.short,description.oneline ...
This syntax is:
<attribute> [ . <format> ]
If no `format` is specified, then `default` is assumed.
The `src/columns/ColΧ\*` objects are responsible for supporting and rendering these formats.
There is currently no consistency among these formats based on data type.
By incorporating formats into DOM references, we eliminate the need for a separate syntax for custom reports, and provide this:
123.due.iso
123.due.month.short
123.uuid.short
A standard set of formats per data type would be:
Type
Formats
Example
Numeric
default
`123 `
indicator
Based on `rc.<attribute>.indicator` which overrides `rc.numeric.indicator`.
json
`"<attribute>":"<value>"`
String
default
Buy milk
short
Feb
indicator
Based on `rc.<attribute>.indicator` which overrides `rc.string.indicator`.
json
`"<attribute>":"<value>"`
Date
default
Based on `rc.dateformat`
iso
2017-02-20T09:02:12
julian
2457805.12858
epoch
1234567890
age
2min
relative
-2min
remaining
0:02:04
countdown
0:02:04
indicator
Based on `rc.<attribute>.indicator` which overrides `rc.date.indicator`.
json
`"<attribute>":"<value>"`
Duration
default
1wk
iso
P1W
indicator
Based on `rc.<attribute>.indicator` which overrides `rc.duration.indicator`.
json
`"<attribute>":"<value>"`
There will also be a set of attribute-specific formats, similar to the currently supported set:
depends.list
depends.count
description.combined
description.desc
description.oneline
description.truncated
description.count
description.truncated_count
parent.default|long
parent.short
project.full
project.parent
project.indented
status.default|long
status.short
tags.default|list
tags.count
urgency.default|real
urgency.integer
uuid.default|long
uuid.short
Custom report sort criteria will also use DOM references.
This will be augmented by the `+`/`-` sort direction and `/` break indicator, which are not part of the DOM.
## High Level Construct Support
There need to be read-only DOM references that do not correspond directly to stored attributes.
Tasks have emergent properties represented by virtual tags, which will be accessible, in this case returning a `0` or `1`:
123.tags.OVERDUE
Using `rc.due` and the `due` attribute, the `OVERDUE` virtual tag is a combination of the two.
Other examples may include:
task.syncneeded
task.pending.count
task.hooks.installed
## Writable References
When a DOM reference refers to an attribute or RC setting, and does not extend further and reference a component or format, it may be writable.
For example:
rc.hooks # writable
123.description # writable
123.entry.month # not writable, not an attribute
## Data Interchange
The export command can be used to show a filtered set of tasks in JSON format, and this will also be available as a DOM format:
123.json
a87bc10f-931b-4558-a44a-e901a77db011.json
## RC File Support
The RC file (`~/.taskrc`) will support DOM references in values.
This will form a late-bound reference, which is evaluated at runtime, every time.
An example is to make two reports share the same description:
$ task config -- report.ls.description rc.report.list.description
This sets the description for the `ls` report to be a reference to the description of the `list` report.
This reference is not evaluated when the entry is written, but is evaluated every time the value is read, thus providing late-bound behavior.
Then if the description of the `list` report changes, so does that of the `ls` report automatically.
## Implementation Details
These notes list a series of anticipated changes to the codebase.
- The `src/columns/Col*` objects will implement type-specific and attribute-specific DOM support.
DOM reference lookup will defer to the column objects first.
- Some DOM references will be writable, permitting a `_set` command to complement the `_get` command.
- The `Config` object will recognize DOM references in values and perform lookup at read time.
This will require circularity detection.
- `src/DOM.cpp` will provide a memoized function to determine whether a DOM reference is valid.
- `src/DOM.cpp` will provide a function to obtain a DOM reference value, with supporting metadata (type, writable).

436
doc/devel/rfcs/plans.md Normal file
View File

@@ -0,0 +1,436 @@
---
title: "Plans"
---
There are many interconnected features and technologies in Taskwarrior, Taskserver, Tasksh and Timewarrior, each piece having it's own goals.
This matrix allows a simple reading of where things are, and where they are going.
This is a low-resolution time line.
It is subject to change.
It does not constitute a concrete plan.
This is an all-volunteer effort, and scheduling is difficult.
[Last updated 2016-08-08.]
<table class="table table-bordered table-striped">
<tr>
<th>Taskwarrior<br />Technology/Feature</th>
<th>
<span class="label label-success">2.5.1</span><br />
Current<br /><br />
Released 2016-02-24
</th>
<th>
<span class="label label-danger">2.6.0</span><br />
Next<br /><br />
2017
</th>
<th>
<span class="label label-info">2.x</span><br />
Future
</th>
</tr>
<tr>
<td>Core</td>
<td>
<a href="/docs/dom.html">DOM</a><br />
Filters<br />
Expressions<br />
Color Rules<br />
Custom Reports<br />
Annotations<br />
Tags / Virtual Tags<br />
<a href="/docs/context.html">Context</a><br />
</td>
<td>
<a href="/docs/design/recurrence.html">Recurrence</a><br />
Shared library<br />
<code>purge</code> command<br />
</td>
<td>
True Color
</td>
</tr>
<tr>
<td>API</td>
<td>
<a href="/docs/design/task.html">JSON</a><br />
Import<br />
Export<br />
<a href="/docs/hooks.html">Hooks</a><br />
<a href="/docs/hooks2.html">Hooks v2</a><br />
<a href="/docs/dom.html">DOM</a><br />
Helper commands<br />
</td>
<td>
</td>
<td>
<code>on-sync</code> hook<br />
Full DOM<br />
DOM access in rc<br />
<code>$ENV</code> access in rc<br />
Report columns as DOM refs<br />
</td>
</tr>
<tr>
<td>
Attributes<br />
<a href="/docs/udas.html">User Defined Attributes (UDA)</a>
</td>
<td>
<code>modified</code><br />
<code>priority</code> as a UDA<br />
</td>
<td>
<code>template</code><br />
<code>rtype</code><br />
Remove <code>mask</code><br />
Remove <code>imask</code><br />
Remove <code>parent</code><br />
</td>
<td>
<code>org</code><br />
<code>group</code><br />
</td>
</tr>
<tr>
<td>Reports</td>
<td>
Improved layouts<br />
Improved Themes
</td>
<td>
Daily, Weekly reports (history, ghistory)<br />
</td>
<td>
</td>
</tr>
<tr>
<td>Synchronization</td>
<td>
<code>task sync</code><br />
<code>task sync init</code> (all tasks)<br />
</td>
<td>
</td>
<td>
<code>task sync reset</code><br />
</td>
</tr>
<tr>
<td>TDB (task database)</td>
<td>
Local file locking<br />
Single file set<br />
Single user
</td>
<td>
</td>
<td>
Threaded file load<br />
Read-only mode
</td>
</tr>
<tr>
<td>I18N / L10N</td>
<td>
UTF-8 support<br />
<code>deu-DEU</code><br />
<code>eng-USA</code><br />
<code>epo-RUS</code><br />
<code>esp-ESP</code><br />
<code>fra-FRA</code><br />
<code>ita-ITA</code><br />
<code>pol-POL</code><br />
<code>por-PRT</code><br />
</td>
<td>
No I18N / L10N
</td>
<td>
Migrate to <a href="https://www.gnu.org/software/gettext/">gettext</a><br />
</td>
</tr>
<tr>
<td>Documentation</td>
<td>
man: task<br />
man: taskrc<br />
man: task-color<br />
man: task-sync<br />
youtube: various<br />
<a href="https://taskwarrior.org">taskwarrior.org</a><br />
taskwarrior.com: Support Site<br />
</td>
<td>
</td>
<td>
New video tutorials<br />
</td>
</tr>
<tr>
<td>Testing</td>
<td>
C++ tests<br />
Python tests<br />
Sync tests<br />
Parallel tests<br />
</td>
<td>
Migration to Flod2<br />
</td>
<td>
</td>
</tr>
<tr>
<td>Tool Chain</td>
<td>
GCC 4.7 / Clang 3.3<br />
C++11 support<br />
CMake<br />
</td>
<td>
GCC 4.9 / Clang 3.4<br />
Full C++11 support<br />
</td>
<td>
Full C++14 support<br />
Full C++17 support<br />
</td>
</tr>
</table>
<table class="table table-bordered table-striped">
<tr>
<th>Tasksh<br />Technology/Feature</th>
<th>
<span class="label label-success">1.1.0</span><br />
Current<br /><br />
Released 2016-09-05
</th>
<th>
<span class="label label-danger">1.2.0</span><br />
Next<br /><br />
2017
</th>
<th>
<span class="label label-info">1.x</span><br />
Future
</th>
</tr>
<tr>
<td>Core</td>
<td>
<a href="/docs/review.html">Review</a><br />
libreadline<br />
Shared library<br />
</td>
<td>
</td>
<td>
Pomodoro timer<br />
</td>
</tr>
<tr>
<td>Tool Chain</td>
<td>
CMake<br />
GCC 4.7 / Clang 3.3<br />
</td>
<td>
GCC 4.9 / Clang 3.4<br />
Full C++11 support<br />
</td>
<td>
Full C++14 support<br />
Full C++17 support<br />
</td>
</tr>
</table>
<table class="table table-bordered table-striped">
<tr>
<th>Taskserver<br />Technology/Feature</th>
<th>
<span class="label label-success">1.1.0</span><br />
Current<br /><br />
Released 2015-05-10
</th>
<th>
<span class="label label-danger">1.2.0</span><br />
Next<br /><br />
2017
</th>
<th>
<span class="label label-info">1.x</span><br />
Future
</th>
</tr>
<tr>
<td>Core</td>
<td>
Serial server
</td>
<td>
Shared library<br />
</td>
<td>
Threaded server
</td>
</tr>
<tr>
<td>Protocol</td>
<td>
v1
</td>
<td>
v1.1 - client reset request<br />
</td>
<td>
v1.2
</td>
</tr>
<tr>
<td>DB (Data Storage)</td>
<td>
</td>
<td>
</td>
<td>
GC
</td>
</tr>
<tr>
<td>Security</td>
<td>
Validation
</td>
<td>
</td>
<td>
UUID:Cert Verification<br />
Combined Certs
</td>
</tr>
<tr>
<td>Tool Chain</td>
<td>
GCC 4.7 / Clang 3.3<br />
CMake<br />
</td>
<td>
GCC 4.9 / Clang 3.4<br />
Full C++11 support<br />
</td>
<td>
Full C++14 support<br />
Full C++17 support<br />
</td>
</tr>
</table>
<table class="table table-bordered table-striped">
<tr>
<th>Timewarrior<br />Technology/Feature</th>
<th>
<span class="label label-success">1.0.0</span><br />
Current<br /><br />
Released 2016-08-20
</th>
<th>
<span class="label label-danger">1.1.0</span><br />
Next<br /><br />
2017
</th>
<th>
<span class="label label-info">1.x</span><br />
Future
</th>
</tr>
<tr>
<td>Core</td>
<td>
Shared library<br />
</td>
<td>
</td>
<td>
True Color
</td>
</tr>
<tr>
<td>Reports</td>
<td>
<code>summary</code> report<br />
<code>gaps</code> report<br />
<code>day</code> chart<br />
<code>week</code> chart<br />
<code>month</code> chart<br />
<code>totals.py</code> extension<br />
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>Rules</td>
<td>
Simple configuration rules
</td>
<td>
</td>
<td>
Rule System<br />
</td>
</tr>
<tr>
<td>Integration</td>
<td>
Taskwarrior <code>on-modify</code> hook script
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td>Tool Chain</td>
<td>
CMake<br />
GCC 4.7 / Clang 3.3<br />
C++11 support<br />
</td>
<td>
GCC 4.9 / Clang 3.4<br />
Full C++11 support<br />
</td>
<td>
Full C++14 support<br />
Full C++17 support<br />
</td>
</tr>
</table>

171
doc/devel/rfcs/protocol.md Normal file
View File

@@ -0,0 +1,171 @@
---
title: "Taskwarrior - Sync Protocol"
---
# Sync Protocol
## Introduction
Taskwarrior data has typically been shared in several ways.
Those include SCM (source code management) systems, directory synchronizing software (such as DropBox), and by use of the 'push', 'pull' and 'merge' commands introduced in version 1.9.3.
While these methods work, they each have problems associated with the merging of data.
In the case of directory synchronizing software, there is no merging at all - just simple file overwrite, despite many people believing that the data is somehow combined and preserved.
The Taskserver is a solution.
It is an online/cloud storage and sync service for taskwarrior data.
It performs conflict-free data merging, and minimizes bandwidth use.
The Taskserver also provides multi-client access, so that a task added using a web client could be immediately viewed using a mobile client, or modified using taskwarrior.
Choice of clients is important - people have widely varying behaviors and tastes.
The Taskserver also provides multi-user access, which introduces new capabilities, such as list sharing and delegation.
These will require later modification to this protocol.
The Taskserver protocol will be implemented by the taskd project and first used in taskwarrior 2.3.0.
Other clients will follow.
## Requirements
In this document, we adopt the convention discussed in Section 1.3.2 of [RFC1122](https://tools.ietf.org/html/rfc1122#page-16) of using the capitalized words MUST, REQUIRED, SHOULD, RECOMMENDED, MAY, and OPTIONAL to define the significance of each particular requirement specified in this document.
In brief: "MUST" (or "REQUIRED") means that the item is an absolute requirement of the specification; "SHOULD" (or "RECOMMENDED") means there may exist valid reasons for ignoring this item, but the full implications should be understood before doing so; and "MAY" (or "OPTIONAL") means that this item is optional, and may be omitted without careful consideration.
## Link Level
The Taskserver protocol assumes a reliable data stream such as provided by TCP.
When TCP is used, a Taskserver listens on a single predetermined port *for the given client* only.
This means the server may be using multiple ports to serve distinct sets of clients.
This server is only an interface between programs and the task data.
It does not perform any user interaction or presentation-level functions.
## Transactions
Each transaction is a single incoming message, with a single response message.
All communication therefore consists of a single 'send', followed by a single 'receive', then termination.
There are no sessions, and no continuously open connections.
The message format is described in the [Taskserver Message Format](/docs/design/request) document.
## Responsibilities of the Server
The server will maintain a set of transactions, in the original sequence, punctuated by sync keys which are UUIDs.
Each sync key represents a non- trivial sync operation by a client.
Each transaction is a [JSON-formatted task](/docs/design/task), followed by a newline (\\n) character.
The result is a single file that contains interleaved lines of two types: tasks and sync keys.
This design allows the server to maintain a set of deltas such that multiple clients may request a minimal set of changes since their last sync.
## Responsibilities of the Client
This describes how Taskwarrior implements sync.
All modifications to tasks (add, modify, done, delete \...) are recorded in the form of a fully-composed [JSON-formatted task](/docs/design/task).
The formatted task is added to a local backlog.data file.
If a task is modified a second time, it is added again to the backlog.data file - the lines are not combined.
Each task SHALL have a 'modified' date attribute that will help resolve conflicts.
On sync:
* Send a 'sync' type message with the entire contents of the backlog.data, unmodified, as the message payload.
* Receive one of the following response codes:
* 201: This means 'no change', and there is no further action to be taken.
* 200: This means 'success', and the message payload contains a set of tasks and a sync key:
* The formatted tasks are to be stored as-is.
These tasks will either be appended to the client data or will overwrite existing client data, based on the UUID of the task.
No merge logic is necessary.
* The sync key will be written to the backlog.data file, overwriting the previous contents, such that it will now contain only one line.
* 301: Redirect to : found in the 'info' response header, will force the client to resubmit the request to the new server.
* 3xx, 4xx, 5xx: The 'status' field contains an error message.
* If the response contained any error or warning, the error should be shown to the user.
This provides an opportunity for the server to announce downtime, or relocation.
If no sync key is sent, the server cannot provide an incremental delta, and so will send all task data, which should be stored as above.
This should be the case for a client making its first sync call.
If an unrecognized attribute is present in the task data, the client MUST preserve the attribute unmodified, and assume it is of type 'string'.
This permits individual clients to augment the task data without other clients stripping it meaningful data.
This is how UDAs (user defined attributes) are handled.
## Extensions
This protocol was designed so that extensions to the protocol will take the form of additional message types and status codes.
## Summary of Response Codes
Status responses indicate the server's response to the last command received from the client.
The codes consist of a 3 digit numeric code.
The first digit of the response broadly indicates the success, failure, or progress of the previous command (based generally on [RFC640](https://tools.ietf.org/html/rfc640) [RFC821](https://tools.ietf.org/html/rfc821)):
| 1yz | Positive Preliminary reply |
| 2yz | Positive Completion reply |
| 3yz | Positive Intermediate reply |
| 4yz | Transient Negative Completion reply |
| 5yz | Permanent Negative Completion reply |
The next digit in the code indicates the response category:
| x0z | Syntax |
| x1z | Information (e.g., help) |
| x2z | Connections |
| x3z | Authentication |
| x4z | Unspecified as yet |
| x5z | Taskd System (\...) |
| x8z | Nonstandard (private implementation) extensions |
A summary of all status response are:
| 200 | Success |
| 201 | No change |
| 300 | Deprecated message type. This message will not be supported in future Taskserver releases. |
| 301 | Redirect. Further requests should be made to the specified server/port. |
| 302 | Retry. The client is requested to wait and retry the same request. The wait time is not specified, and further retry responses are possible. |
| 400 | Malformed data |
| 401 | Unsupported encoding |
| 420 | Server temporarily unavailable |
| 421 | Server shutting down at operator request |
| 430 | Access denied |
| 431 | Account suspended |
| 432 | Account terminated |
| 500 | Syntax error in request |
| 501 | Syntax error, illegal parameters |
| 502 | Not implemented |
| 503 | Command parameter not implemented |
| 504 | Request too big |
## Security Considerations
All communication with the Taskserver uses SSL 3.0 or TLS 1.0, 1.1 or 1.2.
Encryption is mandatory.
Data is never transmitted in plain text.
## Limitations and Guidelines
Some limitations exists to reduce bandwidth and load on the server.
They are:
- A client may only connect to a single server.
Synchronization among a set of servers is not supported.
- A client should attempt to minimize data bandwidth usage by maintaining a local data store, and properly using sync keys.
- A client should minimize data transfers by limiting the frequency of sync requests.

View File

@@ -0,0 +1,195 @@
---
title: "Taskwarrior - Recurrence"
---
# Draft
This is a draft design document.
Your [feedback](mailto:support@taskwarrior.org?Subject=Feedback) is welcomed.
Recurrence
----------
Recurrence needs an overhaul to improve weaknesses and add new features.
# Terminology
- The hidden 'parent' task is called the template.
- Synthesis is the name for the generation of new recurring task instances when necessary.
- The synthesized tasks are called instances.
- The index is the zero-based monotonically increasing number of the instance.
- Drift is the accumulated errors in time that cause a due date to slowly change for each recurring task.
# Criticism of Current Implementation
- The `mask` attribute grows unbounded.
- Only strict recurrence cycles are supported.
The example of mowing the lawn is that you want to mow the lawn every seven days, but when you are four days late mowing the lawn, the next mowing should be in seven days, not in three.
- Intances generated on one machine and then synced, may collide with equivalent unsynced instances tasks on another device, because the UUIDs are different.
- You cannot `wait` a recurring task and have that wait period propagate to all other child tasks.
- Task instances cannot individually expire.
# Proposals
## Proposal: Eliminate `mask`, `imaѕk` Attributes
The `mask` attribute in the template is replaced by `last`, which indicates the most recent instance index synthesized.
Because instances are never synthesized out of order, we only need to store the most recent index.
The `imask` attribute in the instance is no longer needed.
## Proposal: Rename `parent` to `template`
The name `parent` implies subtasks, and confuses those who inspect the internals.
The value remains the UUID of the template.
This frees up the namespace for future use with subtasks.
## Proposal: New 'rtype' attribute
To indicate the flavor of recurrence, support the following values:
* `periodic` - Instances are created on a regular schedule.
Example: send birthday flowers.
It must occur on a regular schedule, and doesn't matter if you were late last year.
This is the default value.
* `chained` - Instances are created back to back, so when one instance ends, the next begins, with the same recurrence.
Example: mow the lawn.
If you mow two days late, the next instance is not two days early to compensate.
## Proposal: Use relative offsets
The delta between `wait` and `due` date in the template should be reflected in the delta between `wait` and `due` date in the instance.
Similarly, 'scheduled' must be handled the same way.
## Proposal: On load, auto-upgrade legacy tasks
Upgrade template:
- Add `rtype:periodic`
- Add `last:N` where `N` is the length of `mask`
- Delete `mask`
Upgrade instance:
- Rename `parent` to `template`
- Delete `imask`
- Update `wait` if not set to: `wait:due + (template.due - template.wait)`
- Update `scheduled` if not set to: `scheduled:due + (template.due - template.scheduled)`
## Proposal: Deleting a chained instance
Deleting a `rtype:chained` instance causes the next chained instance to be synthesized.
This gives the illusion that the due date is simply pushed out to `(now + template.recur)`.
## Proposal: Modification Propagation
TBD
## Proposal: Exotic Dates
Expand date specifications to use pattern phrases:
- `4th thursday in November`
- `4th thursday of November`
- `Friday before easter`
- `next Tuesday`
- `last Tuesday`
- `last July`
- `weekend`
- `3 days before eom`
- `in the morning`
- `4pm`
- `noon`
- `midnight`
Got suggestions?
## Proposal: User-Defined Week Start
TBD
# Implementation
## Implementation: Adding a new `periodic` template
When adding a new periodic template:
task add ... due:D recur:R wait:D-1wk scheduled:D-1wk until:U
Creates:
template.uuid: NEW_UUID
template.description: ...
template.entry: now
template.modified: now
template.due: D
template.recur: R (stored in raw form, ie 'P14D')
template.wait: D-1wk
template.scheduled: D-1wk
template.until: U
template.rtype: periodic
template.last:
Creating the Nth instance (index N):
Clone instance from template.
instance.uuid: NEW_UUID
instance.modified: now
instance.due: template.due + (N * template.recur)
instance.wait: instance.due + (template.due - template.wait)
instance.scheduled: instance.due + (template.due - template.scheduled)
instance.start:
template.last: N
## Implementation: Adding a new `chained` template
When adding a new chained template:
task add ... due:D recur:R wait:D-1wk scheduled:D-1wk until:U rtype:chained
Creates:
template.uuid: NEW_UUID
template.description: ...
template.entry: now
template.modified: now
template.due: D
template.recur: R (stored in raw form, ie 'P14D')
template.wait: D-1wk
template.scheduled: D-1wk
template.until: U
template.rtype: chained
Creating the Nth instance (index N):
Clone instance from template.
instance.uui d: NEW_UUID
instance.mod ified: now
instance.due : instance[N-1].end + template.recur
instance.wai t: instance.due + (template.due - template.wait)
instance.sch eduled: instance.due + (template.due - template.scheduled)
instance.sta rt:
Chained tasks do not obey `rc.recurrence.limit`, and show only one pending task
at a time.
## Implementation: Special handling for months
Certain recurrence periods are inexact:
- P1M
- P1Y
- P1D
When the recurrence period is `P1M` the number of days in a month varies and causes drift.
When the recurrence period is `P1Y` the number of days in a year varies and causes drift.
When the recurrence period is `P1D` the number of hours in a day varies due to daylight savings, and causes drift.
Drift should be avoided by carefully implementing:
instance.due: template.due + (N * template.recur)

198
doc/devel/rfcs/request.md Normal file
View File

@@ -0,0 +1,198 @@
---
title: "Taskwarrior - Request"
---
# Taskserver Message Format
The Taskserver accepts and emits only messages.
These messages look somewhat like email, as defined in [RFC821](https://tools.ietf.org/html/rfc821), [RFC2822](https://tools.ietf.org/html/rfc2822).
The message format allows for data, metadata, and extensibility.
This combination allows the Taskserver to accommodate current and future needs.
This document describes the message format, and the supported message types.
## Requirements
In this document, we adopt the convention discussed in Section 1.3.2 of [RFC1122](https://tools.ietf.org/html/rfc1122#page-16) of using the capitalized words MUST, REQUIRED, SHOULD, RECOMMENDED, MAY, and OPTIONAL to define the significance of each particular requirement specified in this document.
In brief: "MUST" (or "REQUIRED") means that the item is an absolute requirement of the specification; "SHOULD" (or "RECOMMENDED") means there may exist valid reasons for ignoring this item, but the full implications should be understood before doing so; and "MAY" (or "OPTIONAL") means that this item is optional, and may be omitted without careful consideration.
## Encoding
All messages are UTF8-encoded text.
## Message Format
This format is based on [RFC2822](https://tools.ietf.org/html/rfc2822), 'Internet Message Format'.
Here is an example of the format:
<SIZE>
name: value
name2: value2
payload
There are three sections.
The first is the size, which is a 4-byte, big- Endian, binary byte count of the length of the message, including the 4 bytes for the size.
The header section is a set of name/value pairs separated by newline characters (U+000D).
The name is separated from the value by ': ' (colon U+003A, space U+0020) The header section is terminated by two consecutive newline (U+000D) characters.
All text is UTF8-encoded.
The payload section is arbitrary, and message type-specific.
However, it is still UTF8-encoded text.
## Message Requirements
Messages SHALL contain particular headers.
Those are:
- type
- protocol
- client
The 'type' value is what determines the interpretation of the payload.
The 'protocol' value should be 'v1', or any subsequently published protocol version.
The 'client' represent the client identifier, so that any special cases can be handled.
For example, an emergency fix that is client version-specific could be released, to support users that have not updated their client, or perhaps the client has not released a fix.
The form of the 'version' value is:
<product identifier> <version number>
As an example:
taskwarrior 2.3.0
DO NOT spoof any other software using this client value.
If another client is spoofed, then patches addressing protocol errors may break working software.
## Auth Data
Every request from the client SHALL contain "auth" information, which involves these header entries:
org: <organization>
user: <user>
key: <key>
The user and org fields uniquely identify a user.
The key field is generated when a new server account is set up.
It is a shared secret, equivalent to a password, and should be protected.
Authentication failure can result in these errors:
- 430 Authentication failed
- 431 Account suspended
## Status Data
Every response from the Taskserver SHALL contain status data:
code: <code>
status: <status text>
The code is a numeric status indicator defined in the [Sync Protocol](/docs/design/protocol).
## Payload Data
Payload data is optional, arbitrary and message type dependent.
It is always UTF8-encoded text.
## Message Types
The Taskserver supports several message types, thus providing a set of primitives for use by clients.
It is expected that the number of supported ticket types will increase over time.
## Sync Message
The "sync" message always originates from the client, but the response will contain data from the server.
A sync is therefore a single request with a single response.
The "sync" message type MUST contain the following headers:
- type
- org
- user
- key
- client
- protocol
The "sync" message payload has this format:
<uuid>
<JSON task 1>
<JSON task 2>
...
<JSON task N>
Here is an example of a sync message:
<size>type: sync
org: <organization>
user: <user>
key: <key>
client: task 2.3.0
protocol: v1
2e4685f8-34bc-4f9b-b7ed-399388e182e1
{"description":"Test data","entry":"20130602T002341Z","status":"pending"}
The request contains the proper auth section, and the body contains the current sync key followed by a newline characters (U+000D), then a list of JSON-formatted tasks \[2\] each separated by a newline character (U+000D).
An example response message might be:
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 200
status: Ok
45da7110-1bcc-4318-d33e-12267a774e0f
The status indicates success, and the payload contains zero remote task modifications, followed by a sync key.
## Statistics Message
The message format іs simply:
<size>type: statistics
org: <Organization>
user: <User>
key: <Key>
client: taskd 1.0.0
protocol: v1
There is no payload.
An example response message might be:
<size>type: response
client: taskd 1.0.0
protocol: v1
code: 200
status: Ok
average request bytes: 0
average response bytes: 0
average response time: 0.000000
errors: 0
idle: 1.000000
maximum response time: 0.000000
total bytes in: 0
total bytes out: 0
tps: 0.000000
transactions: 1
uptime: 28
There is no payload, and the results are in the header variables.
Note that the statistics gathered by the server are growing, which means new values are occasionally added to the response message.
Existing values will not be removed.

240
doc/devel/rfcs/rules.md Normal file
View File

@@ -0,0 +1,240 @@
---
title: "Taskwarrior - Rule System"
---
## Work in Progress
This design document is a work in progress, and subject to change.
Once finalized, the feature will be scheduled for an upcoming release.
# Rule System
The rule system is a framework that supports highly configurable features, with runtime evaluation, DOM access and an internal API.
Implementing a rule system meets the goal of shrinking and stabilizing the product core, while adding new features, and enabling many more.
## Required Enhancements
To prepare for a Rules System, various subsystems must first be enhanced:
- DOM references need to be unambiguous, and will all have the `dom.` prefix.
- DOM references need to be able to access any Taskwarrior data, in any
- Custom reports will change from referencing `<column>[.<format>]` to simply
`<domref>`
- RC file syntax needs to be enhanced, so support rule definitions, which are
multi-line blocks that are indentation-sensitive
- RC file syntax will support two ways of specifying the same data:
a.b.c=...
a:
b:
c=...
- RC file syntax will allow the use of environment variables inline:
name=${TERM}
include ${HOME}/.taskrc_local
- The `Variant` object will migrate to `libshared`
- The expression evaluator `Eval` object will migrate to `libshared`
- The column objects will gain a more structured base class, and will serve as
providers for DOM references
- The 'exec' command will be able to run a rule, if the reference is correct
- Taskwarrior will store state data in a new `state.data` file
- `Config` object needs to use the `rat` parser, to tackle the more complex
syntax
- The RC file will support environment variable expansion, where `${NAME}`
will be replaced by its corresponding value at launch time
At that point, the rules system can be implemented in `libshared`, and will use a pluggable architecture to allow its integration into several projects.
## DOM Enhancements
DOM references will be enhanced, with many more references supported.
All DOM references will begin with `dom.`, yielding unambiguous references.
References will have a type.
Types will support sub-references (`<date>.<month>`, `<tags>.<N>`, `<annotation>.<description>`), and display formats included.
dom . [<id> .] <attribute> [. <sub-reference>] . <format>
dom . 123 . entry . year . yyyy
dom . 123 . entry
dom . 123 . tags
dom . 123 . tags . count
dom . 123 . tags . 1
In addition to direct attribute access, DOM references will also support tw references beyond the current set: dom.rc.<name>
dom.cli.args
dom.terminal.width
dom.terminal.height
dom.system.version
dom.system.oѕ
And will also support higher-level constructs that do not directly correlate to attributes, for example:
dom.active Boolean indicator of any active tasks
dom.synced Boolean indicator of the need to sync
dom.rc.path String path of .taskrc file (or override)
dom.data.path String path of data directory
dom.hooks.path String path of hooks directory
Finally, access to state:
dom.state.program
dom.state.sync.last
dom.state.sync.configured
dom.state.run.last
dom.state.context
## RC Syntax Changes
The current configuration system supports only two different forms of syntax:
<name> = [ <value> ]
include <file>
A rule is a new form of syntax that consists of the rule keyword, a name, optional trigger, followed by indented actions in the form of API calls and flow control.
For example:
rule myRule() on_launch:
# Some code here
A rule definition will appear in the RC file, alongside all the existing settings.
The rule syntax will require a blank line to terminate the rule definition, the result being that the RC file should be quite readable, although it will look like Python.
## Hook Scripts
While this functionality can also be implemented using hook scripts, rules will run in-process, and therefore do not require external interpreters to be launched every time.
This creates the potential to run faster than a hook script.
For complex processing, hook scripts will be the preferred mechanism, but as the rules system matures, rules will be made to run more quickly.
With adequate performance, a rule will be the preferred implementation over a hook script.
This is not expected to be the case at first.
Hook scripts are not likely to be extended beyond their current form, and with greater DOM access and a growing API, rules should be able to supplant most hook script use cases.
## Rule Triggers
The set of supported rule types will include:
* `on_launch` - Triggered on program launch.
* `on_add` - Triggered when a task is added.
A context task will be provided.
The rule can modify the task, and approve or reject it.
* `on_modify` - Triggered when a task is modified.
A before and after context task will be provided.
The rule can modify the task, and approve or reject it.
* `on_exit` - Triggered on program exit.
* `color` - Triggered when colors are being determined.
* `virtual tag` - Defines a new virtual tag.
* `format` - Triggered when an attribute needs formatting, defines are new format.
More rules types will be added for more capabilities in future releases.
## API
The API is a simple set of actions that may be taken by a rule.
* `debug(<string>)` - Displays the string in debug mode only and continues processing.
* `warn(<string>)` - Displays the string as a warning continues processing.
* `error(<string>)` - Displays the string as an error and terminates processing.
* `exec(<binary> [ <args> ... ])` - Executes the external program and passes arguments to it.
If the program exits with non-zero status, it is treated as an error.
* `return <value>` - Provides a result value for the rule, when necessary.
This is a very limited set at first, and more API calls will be added to support capabilities in future releases.
## Grammar
The grammar closely tracks that of Python.
Blocks are indented consistently.
* `if <condition>: ... else: ...` - The condition is a full Algebraic expression, and supports none of the command line conveniences.
Terms must be combined with logical operators.
The condition is an expression that is evaluated and converted to a Boolean value.
* `for <name> in <collection>:` - There is no native type for a collection, but there are DOM references (`tags` \...) that reference collections.
This provides a way to iterate.
* `set <name> = <expression>` - Writes to a named type.
The name may be a writable DOM object (`dom...`) or temporary variable storage (`tmp...`).
Writing to a read-only DOM reference is an error.
* `<function>([<args>])` - A function is either a rule or an API call.
Calling an undefined function is an error.
## Examples
Here are some example rules which illustrate the syntax and API.
The replacement for the nag feature:
rule Nag(before, after) on-modify:
if before.urgency < tasks.max.urgency:
warn You have more urgent tasks
if after.status == 'completed' and before.urgency < (dom.urgency.max - 2.0):
warn 'You have more urgent tasks!'
Correct commonly misspelled word:
rule CorrectSpelling(task) on_add:
set task.description = substitute(task.description, 'teh', 'the')
Abbreviation expansion:
rule ExpandAbbreviation(task) on_modify:
set task.description = substitute(task.description, '/TW-\d+/', 'https:\/\/github.com\/GothenburgBitFactory\/taskwarrior\/issues\/\1')
Warn on missing project:
rule WarnOnMissingProject(task) on_add:
if task.project == :
warn(Project not specified)
Color rule:
rule ColorizeDue(task) color:
if task.due > now:
if task.due < (now + 5d):
return dom.rc.color.due
else:
return dom.rc.color.due.later
Policy:
rule policyProject(task) on_add:
if task.project == '':
if rc.default.project == '':
error('You must specify a project')
set task.project = rc.default.project

242
doc/devel/rfcs/sync.md Normal file
View File

@@ -0,0 +1,242 @@
---
title: "Taskwarrior - Taskserver Sync Algorithm"
---
# Taskserver Sync Algorithm
This document describes how task changes are merged by the Taskserver.
It does not describe [the protocol](/docs/design/protocol) used by the Taskserver.
The Taskserver merges tasks from multiple sources, resulting in conflict- free syncing of data.
The algorithm used to achieve this is simple and effective, paralleling what SCM systems do to perform a rebase.
## Requirements
In this document, we adopt the convention discussed in Section 1.3.2 of
[RFC1122](https://tools.ietf.org/html/rfc1122#page-16) of using the capitalized words MUST, REQUIRED, SHOULD, RECOMMENDED, MAY, and OPTIONAL to define the significance of each particular requirement specified in this document.
In brief: "MUST" (or "REQUIRED") means that the item is an absolute requirement of the specification; "SHOULD" (or "RECOMMENDED") means there may exist valid reasons for ignoring this item, but the full implications should be understood before doing so; and "MAY" (or "OPTIONAL") means that this item is optional, and may be omitted without careful consideration.
## Problem Definition
The sync algorithm considers a single task, with multiple changes occurring in two separate locations that must be resolved.
The two locations are the local machine and the server.
This results in two parallel change sequences.
Examples using multiple clients collapse down to the simple two-branch case because the clients are merged serially.
## Change Sequence
A sequence of changes to the same task is represented as:
T0 --> T1 --> T2
Although all examples are of the two-branch variety, some involve trivial branches.
Going through these examples will illustrate the algorithm.
First the legend:
T0 Represents the original task, the base.
T1 Represents the task with a non-trivial set of changes.
T2 Represents the task with further changes.
## Deltas
The transition from T0 \--\> T1 can be seen as a transform applied to T0, resulting in T1.
That transform is the delta (d1) between T0 and T1, which is a subtractive term:
d1 = (T1 - T0)
Therefore:
T0 --> T1 = T0 + d1
= T0 + (T1 - T0)
This states that the transition from T0 to T1 is the application of a delta to the original, T0, which results in T1.
Applying this to the whole change sequence yields:
T0 --> T1 --> T2 = T0 + d1 + d2
= T0 + (T1 - T0) + (T2 - T1)
## Use Case Classification
Because clients sync requests are processed serially, there is no need to consider the multiple client cases.
This means there is only ever the case with two parallel change sequences = the two branch case.
## Two Branch Case
The two branch case represents changes made to the same task in two locations, resulting in two deltas that must be applied to the same base.
T0 --> T1
T0 --> T2
This reduces to a base with two deltas, but the order in which the deltas are applied is important.
For example:
T0 + d1 + d2 =/= T0 + d2 + d1
The application of deltas is not commutative, except in the trivial case where the two deltas are identical, or the deltas do not overlap.
The deltas therefore need to be applied in the correct sequence.
Tasks have metadata that indicates the last modified time, which dictates the sequence.
Assuming d1 occurred before d2, this neatly collapses down to a single branch sequence:
T0 + d1 + d2 = T3
Note that the result in this case is T3, because it will be neither T1 nor T2, unless the deltas are identical.
## Two Branch, Multiple Changes Case
The two branch case can be complicated by multiple changes per branch:
T0 --> T1 --> T3 --> T5
T0 --> T2 --> T4
Note that the numbers were chosen to represent the order in which the changes were made.
First a list of deltas is generated:
T0 --> T1 = d1
T1 --> T3 = d3
T3 --> T5 = d5
T0 --> T2 = d2
T0 --> T4 = d4
d1, d3, d5, d2, d4
Then the deltas are sorted by modified time:
d1, d2, d3, d4, d5
Then epplied to the base, yielding T6:
T0 + d1 + d2 + d3 + d4 +d5 = T6
## Two Branch Case Example
Suppose the base task looks like this:
T0 project:ONE due:tomorrow priority:H +tag1 Original description
The first branch looks like this:
T1 project:TWO due:23rd priority:H +tag1 Original description
The second branch looks like this:
T2 project:ONE due:tomorrow priority:H +tag1 Modified description
Delta d1 is:
T0 project:ONE due:tomorrow priority:H +tag1 Original description
T1 project:TWO due:23rd priority:H +tag1 Original description
----------------------------------------------------------------------
d1 project:TWO due:23rd
Delta d2 is:
T0 project:ONE due:tomorrow priority:H +tag1 Original description
T2 project:ONE due:tomorrow priority:H +tag1 Modified description
----------------------------------------------------------------------
d2 Modified description
If d1 occurred before d2, the result is:
T3 = T0 + d1 + d2
= T0 + (project:TWO due:23rd) + (Modified description)
T3 = project:TWO due:23rd priority:H +tag1 Modified description
## Use Cases
A range of illustrated use cases, from the trivial to the complex will show the algorithm in use.
## Use Case 1: New Local Task
Initial state:
Server: -
Client: T0
The server has no data, and so T0 is stored.
The result is now:
Server: T0
Client: T0
## Use Case 2: Local Change
Initial state:
Server: T0
Client: T0 --> T1
The server resolves the change:
T0 --> T1 = T0 + d1
= T1
T1 is stored.
The result is now:
Server: T0 --> T1
Client: T1
## Use Case 3: Local and Remote Change
Initial state:
Server: T0 --> T1
Client: T0 --> T2
This is the two branch case, and the deltas are generated:
T0 --> T1 = T0 + d1
T0 --> T2 = T0 + d2
The order of change is determine to be d1, d2, yielding T3:
T3 = T0 + d1 + d2
T3 is stored on the server, and returned to the client.
The result is now:
Server: T0 --> T1 --> T2 --> T3
Client: T3
## Use Case 4: Multiple Local and Remote Changes
Initial state:
Server: T0 --> T1 --> T3
Client: T0 --> T2 --> T4
This is the two branch case, and the deltas are generated:
T0 --> T1 = T0 + d1
T1 --> T3 = T0 + d3
T0 --> T2 = T0 + d2
T2 --> T4 = T0 + d4
d1, d3, d2, d4
The order of change is determine to be d1, d2, d3, d4, yielding T5:
T5 = T0 + d1 + d2 + d3 + d4
T5 is stored on the server, and returned to the client.
The result is now:
Server: T0 --> T1 --> T2 --> T3 --> T4 --> T5
Client: T5

469
doc/devel/rfcs/task.md Normal file
View File

@@ -0,0 +1,469 @@
---
title: "Taskwarrior - Taskwarrior JSON Format"
---
# Taskwarrior JSON Format
When Taskwarrior exchanges data, it uses [JSON](https://www.json.org/).
This document describes the structure and semantics for tasks exported from Taskwarrior, imported to Taskwarrior, or synced with the Taskserver.
Any client of the Taskserver will need to communicate task information.
This document describes the format of a single task.
It does not describe the communication and sync protocol between client and server.
This document is subject to change.
The data attributes are also subject to change.
## Requirements
In this document, we adopt the convention discussed in Section 1.3.2 of [RFC1122](https://tools.ietf.org/html/rfc1122#page-16) of using the capitalized words MUST, REQUIRED, SHOULD, RECOMMENDED, MAY, and OPTIONAL to define the significance of each particular requirement specified in this document.
In brief: "MUST" (or "REQUIRED") means that the item is an absolute requirement of the specification; "SHOULD" (or "RECOMMENDED") means there may exist valid reasons for ignoring this item, but the full implications should be understood before doing so; and "MAY" (or "OPTIONAL") means that this item is optional, and may be omitted without careful consideration.
## General Format
The format is JSON, specifically a JSON object as a single line of text, terminated by a newline (U+000D).
The JSON looks like this:
{"description":"One two three","status":"pending", ... }
While this is not a valid task (there are missing fields), the format is illustrated.
All attribute names are quoted with " (U+0022).
A name will always have a corresponding value, and if a value is blank, then the name/value pair is omitted from the line.
Newline characters are not permitted within the value, meaning that a task consists of a single line of text.
All data is UTF8.
## Data Types
There are five data types used in the task format.
## Data Type: String
Strings may consist of any UTF8 encoded characters.
## Data Type: Fixed String
A fixed string is one value from a set of acceptable values, such as a priority level, where the values may only be "", "L", "M" or "H".
## Data Type: UUID
A UUID is a 32-hex-character lower case string, formatted in this way:
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
An example:
296d835e-8f85-4224-8f36-c612cad1b9f8
## Data Type: Integer
Integers are rendered in a simple fashion:
123
## Data Type: Date
Dates are rendered in ISO 8601 combined date and time in UTC format using the template:
YYYYMMDDTHHMMSSZ
An example:
20120110T231200Z
No other formats are supported.
## Data Type: Duration
Duration values represent a time period.
They take the form:
[[<sign>] <number>] <unit>
Some examples include:
- -3days
- annual
- 4hrs
The supported units are:
- annual
- biannual
- bimonthly
- biweekly
- biyearly
- daily
- days
- day
- d
- fortnight
- hours
- hour
- hrs
- hr
- h
- minutes
- mins
- min
- monthly
- months
- month
- mnths
- mths
- mth
- mos
- mo
- quarterly
- quarters
- qrtrs
- qtrs
- qtr
- q
- seconds
- secs
- sec
- s
- semiannual
- sennight
- weekdays
- weekly
- weeks
- week
- wks
- wk
- w
- yearly
- years
- year
- yrs
- yr
- y
Note that some values lack precision, for example "2q" means two quarters, or half a year.
Note that not all combinations of number and unit make sense, for example "3annual" makes no sense, but evaluates to "3years".
## The Attributes
Here are the standard attributes that may comprise a task:
| Name | Type |
|--------------|---------|
| status | String |
| uuid | UUID |
| entry | Date |
| description | String |
| start | Date |
| end | Date |
| due | Date |
| until | Date |
| wait | Date |
| modified | Date |
| scheduled | Date |
| recur | String |
| mask | String |
| imask | Integer |
| parent | UUID |
| project | String |
| priority | String |
| depends | String |
| tags * | String |
| annotation * | String |
| (UDA) | ? |
\* Both tags and annotations are lists of strings and objects.
Any UDA fields are assumed to be of type string.
There are other forms, which are conditional upon the state of a task:
| Status Value | Pending | Deleted | Completed | Waiting | Recurring Parent | Recurring Child |
|--------------|---------|---------|-----------|---------|------------------|-----------------|
| status | Reqd | Reqd | Reqd | Reqd | Reqd | Reqd |
| uuid | Reqd | Reqd | Reqd | Reqd | Reqd | Reqd |
| entry | Reqd | Reqd | Reqd | Reqd | Reqd | Reqd |
| description | Reqd | Reqd | Reqd | Reqd | Reqd | Reqd |
| start | Opt | Opt | Opt | Opt | Opt | Opt |
| end | | Reqd | Reqd | | | |
| due | Opt | Opt | Opt | Opt | Reqd | Opt |
| until | Opt | Opt | Opt | Opt | Opt | Opt |
| scheduled | Opt | Opt | Opt | Opt | Opt | Opt |
| wait | | | | Reqd | | |
| recur | | | | | Reqd | Reqd |
| mask | | | | | Intrn | |
| imask | | | | | | Intrn |
| parent | | | | | | Reqd |
| annotation | Opt | Opt | Opt | Opt | Opt | Opt |
| project | Opt | Opt | Opt | Opt | Opt | Opt |
| tags | Opt | Opt | Opt | Opt | Opt | Opt |
| priority | Opt | Opt | Opt | Opt | Opt | Opt |
| depends | Opt | Opt | Opt | Opt | Opt | Opt |
| modified | Intrn | Intrn | Intrn | Intrn | Intrn | Intrn |
| UDA | Opt | Opt | Opt | Opt | Opt | Opt |
(Legend: Reqd = required, Opt = optional, Intrn = Internally generated)
All tasks have four required fields.
There are other states in which a task may exist, and the requirements change.
At a minimum, a valid task contains:
- uuid
- status
- entry
- description
*Deleted* - A deleted task MUST also have "status":"deleted", an "end" date and a "modified" date.
*Completed* - A completed task MUST also have "status":"completed", an "end" date and a "modified" date.
*Waiting* - A waiting task MUST also have "status":"waiting" and a "wait" date.
The task is hidden from the user, until that "wait" date has passed, whereupon the status reverts to "pending", and the "wait" date is removed.
*Recurring Parent* - When a recurring task is entered, it MUST have "status":"recurring", a "recur" period and a "due" date.
It MAY also have an "until" date.
Recurring parent tasks are hidden from the user.
*Recurring Child* - A recurring child task is not created by the user, but is cloned from the recurring parent task by the Taskserver.
It may be modified by the user.
On completion, there is special handling to be done.
See section 3.11.
## Additional Attributes
There MAY be other fields than those listed above in a task definition.
Such fields MUST be preserved intact by any client, which means that if a task is downloaded that contains an unrecognized field, that field MUST not be modified, and MUST continue to exist in the task..
User Defined Attributes (UDAs) are additional fields.
## Attribute Details
The individual fields convey important information about a task, and in some cases work only in collusion with other fields.
All such details are listed here.
## Attribute: status
The status field describes the state of the task, which may ONLY be one of these literal strings:
"status":"pending"
"status":"deleted"
"status":"completed"
"status":"waiting"
"status":"recurring"
A pending task is a task that has not yet been completed or deleted.
This is the typical state for a task.
A deleted task is one that has been removed from the pending state, and MUST have an "end" field specified.
Given the required "entry" and "end" field, it can be determined how long the task was pending.
A completed task is one that has been removed from the pending state by completion, and MUST have an "end" field specified.
Given the required "entry" and "end" fields, it can be determine how long the task was pending.
A waiting task is ostensibly a pending task that has been hidden from typical view, and MUST have a "wait" field containing the date when the task is automatically returned to the pending state.
If a client sees a task that is in the waiting state, and the "wait" field is earlier than the current date and time, the client MUST remove the "wait" field and set the "status" field to "pending".
A recurring task is essentially a parent template task from which child tasks are cloned.
The parent remains hidden from view, and contains a "mask" field that represents the recurrences.
Each cloned child task has an "imask" field that indexes into the parent "mask" field, as well as a "parent" field that lists the UUID of the parent.
## Attribute: uuid
When a task is created, it MUST be assigned a new UUID by the client.
Once assigned, a UUID field MUST NOT be modified.
UUID fields are permanent.
## Attribute: entry
When a task is created, it MUST be assigned an "entry" date by the client.
This is the creation date of the task.
## Attribute: description
When a task is created, it MUST have a "description" field value, which contains UTF8 characters.
A "description" field may not contain newline characters, but may contain other characters, properly escaped.
See <https://json.org> for details.
## Attribute: start
To indicate that a task is being worked on, it MAY be assigned a "start" field.
Such a task is then considered Active.
## Attribute: end
When a task is deleted or completed, is MUST be assigned an "end" field.
It is not valid for a task to have an "end" field unless the status is also "completed" or "deleted".
If a completed task is restored to the "pending" state, the "end" field is removed.
## Attribute: due
A task MAY have a "due" field, which indicates when the task should be completed.
## Attribute: until
A recurring task MAY have an "until" field, which is the date after which no more recurring tasks should be generated.
At that time, the parent recurring task is set to "completed".
## Attribute: wait
A task MAY have a "wait" field date, in conjunction with a "status" of "waiting".
A waiting task is one that is not typically shown on reports until it is past the wait date.
An example of this is a birthday reminder.
A task may be entered for a birthday reminder in 10 months time, but can have a "wait" date 9 months from now, which means the task remains hidden until 1 month before the due date.
This prevents long-term tasks from cluttering reports until they become relevant.
## Attribute: recur
The "recur" field is for recurring tasks, and specifies the period between child tasks, in the form of a duration value.
The value is kept in the raw state (such as "3wks") as a string, so that it may be evaluated each time it is needed.
## Attribute: mask
A parent recurring task has a "mask" field that is an array of child status indicators.
Suppose a task is created that is due every week for a month.
The "mask" field will look like:
"----"
This mask has four slots, indicating that there are four child tasks, and each slot indicates, in this case, that the child tasks are pending ("-").
The possible slot indicators are:
* `-` - Pending
* `+` - Completed
* `X` - Deleted
* `W` - Waiting
Suppose the first three tasks has been completed, the mask would look like this:
"+++-"
If there were only three indicators in the mask:
"+-+"
This would indicate that the second task is pending, the first and third are complete, and the fourth has not yet been generated.
## Attribute: imask
Child recurring tasks have an "imask" field instead of a "mask" field like their parent.
The "imask" field is a zero-based integer offset into the "mask" field of the parent.
If a child task is completed, one of the changes that MUST occur is to look up the parent task, and using "imask" set the "mask" of the parent to the correct indicator.
This prevents recurring tasks from being generated twice.
## Attribute: parent
A recurring task instance MUST have a "parent" field, which is the UUID of the task that has "status" of "recurring".
This linkage between tasks, established using "parent", "mask" and "imask" is used to track the need to generate more recurring tasks.
## Attribute: annotation\_\...
Annotations are strings with timestamps.
Each annotation itself has an "entry" field and a "description" field, similar to the task itself.
Annotations form an array named "annotations".
For example (lines broken for clarity):
"annotations":[
{"entry":"20120110T234212Z","description":"Remember to get the mail"},
{"entry":"20120110T234559Z","description":"Pay the bills"}
]
## Attribute: project
A project is a single string.
For example:
"project":"Personal Taxes"
Note that projects receive special handling, so that when a "." (U+002E) is used, it implies a hierarchy, which means the following two projects:
"Home.Kitchen"
"Home.Garden"
are both considered part of the "Home" project.
## Attribute: tags
The "tags" field is an array of string, where each string is a single word containing no spaces.
For example:
"tags":["home","garden"]
## Attribute: priority
The "priority" field, if present, MAY contain one of the following strings:
"priority":"H"
"priority":"M"
"priority":"L"
These represent High, Medium and Low priorities.
An absent priority field indicates no priority.
## Attribute: depends
The "depends" field is a string containing a comma-separated unique set of UUIDs.
If task 2 depends on task 1, then it is task 1 that must be completed first.
Task 1 is considered a "blocking" tasks, and task 2 is considered a "blocked" task.
For example:
"depends":",, ..."
Note that in a future version of this specification, this will be changed to a JSON array of strings, like the "tags" field.
## Attribute: modified
A task MUST have a "modified" field set if it is modified.
This field is of type "date", and is used as a reference when merging tasks.
## Attribute: scheduled
A task MAY have a "scheduled" field, which indicates when the task should be available to start.
A task that has passed its "scheduled" data is said to be "ready".
## User Defined Attributes
A User Defined Attribute (UDA) is a field that is defined via configuration.
Given that the configuration is not present in the JSON format of a task, any fields that are not recognized are to be treated as UDAs.
This means that if a task contains a UDA, unless the meaning of it is understood, it MUST be preserved.
UDAs may have one of four types: string, numeric, date and duration.

View File

@@ -0,0 +1,29 @@
---
title: "Taskwarrior - Work Week Support"
---
## Work in Progress
This design document is a work in progress, and subject to change.
Once finalized, the feature will be scheduled for an upcoming release.
# Work Week Support
Taskwarrior supports the idea that a week starts on either a Sunday or a Monday, as determined by configuration.
This was added eight years ago, simply for display purposes in the `calendar` report.
Since then its use has propagated and it influences the `sow` date reference.0
Further requests have been made to make this more flexible, so that the notion of 'weekend' can be defined.
Furthermore, the idea that every week has a weekend has also been questioned.
It has become clear that a `weekstart` setting, and the notion of a weekend are no longer useful.
## Proposed Support
One option is to allow the user to completely define a work week in the following way:
workweek=1,2,3,4,5
With Sunday as day zero, this states that the work week is the typical Monday - Friday.
From this setting, the meaning of `soww` and `eoww` can be determined, as well as `recur:weekday`.

BIN
doc/devel/rfcs/year.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -3,33 +3,6 @@
.SH NAME
task-color \- A color tutorial for the Taskwarrior command line todo manager.
.SH SETUP
The first thing you need is a terminal program that supports color. All
terminal programs support color, but only a few support lots of colors. First
tell your terminal program to use color by specifying the TERM environment
variable like this:
TERM=xterm-color
In this example, xterm-color is used - a common value, and one that doesn't
require that you use xterm. This works for most setups. This setting belongs
in your shell profile (~/.bash_profile, ~/.bashrc, ~/.cshrc etc, depending on
which shell you use). If this is a new setting, you will need to either run
that profile script, or close and reopen the terminal window (which does the
same thing).
Now tell Taskwarrior that you want to use color. This is the default for
Taskwarrior, so the following step may be unnecessary.
$ task config color on
This command will make sure there is an entry in your ~/.taskrc file that looks
like:
color=on
Now Taskwarrior is ready.
.SH AUTOMATIC MONOCHROME
It should be mentioned that Taskwarrior is aware of whether its output is going
to a terminal, or to a file or through a pipe. When Taskwarrior output goes to
@@ -249,14 +222,13 @@ variable 'rule.precedence.color', which by default contains:
deleted,completed,active,keyword.,tag.,project.,overdue,scheduled,due.today,due,blocked,blocking,recurring,tagged,uda.
These are just the color rules with the 'color.' prefix removed. The
rule 'color.due.today' is the highest precedence, and 'color.deleted' is the lowest.
rule 'color.deleted' has the highest precedence, and 'color.uda.' the lowest.
The keyword rule shown here as 'keyword.' corresponds to a wildcard pattern,
meaning 'color.keyword.*', or in other words all the keyword rules. Similarly
for the 'color.tag.*' and 'color.project.*' rules.
meaning 'color.keyword.*', or in other words all the keyword rules.
There is also 'color.project.none', 'color.tag.none' and 'color.pri.none' to
specifically represent missing data.
There is also 'color.project.none', 'color.tag.none' and
'color.uda.priority.none' to specifically represent missing data.
.SH THEMES
Taskwarrior supports themes. What this really means is that with the ability to
@@ -264,11 +236,10 @@ include other files into the .taskrc file, different sets of color rules can
be included.
To get a good idea of what a color theme looks like, try adding this entry to
your .taskrc file (note that your installation may use a slightly different path
from the example):
your .taskrc file:
.RS
include ${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}/dark-256.theme
include dark-256.theme
.RE
You can use any of the standard Taskwarrior themes:
@@ -313,34 +284,34 @@ You can also see how the theme will color the various tasks with the command:
$ task color legend
Better yet, create your own, and share it. We will gladly host the theme file
on <http://taskwarrior.org>.
on <https://taskwarrior.org>.
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2016 P. Beckingham, F. Hernandez.
Copyright (C) 2006 \- 2021 T. Babej, P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
https://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR task(1),
.BR taskrc(5),
.BR task-sync(5)
For more information regarding Taskwarrior, the following may be referenced:
For more information regarding Taskwarrior, see the following:
.TP
The official site at
<http://taskwarrior.org>
<https://taskwarrior.org>
.TP
The official code repository at
<https://git.tasktools.org/scm/tm/task.git>
<https://github.com/GothenburgBitFactory/taskwarrior>
.TP
You can contact the project by writing an email to
<support@taskwarrior.org>
You can contact the project by emailing
<support@GothenburgBitFactory.org>
.SH REPORTING BUGS
.TP
Bugs in Taskwarrior may be reported to the issue-tracker at
<http://taskwarrior.org>
<https://github.com/GothenburgBitFactory/taskwarrior/issues>

View File

@@ -1,51 +1,177 @@
.TH task-sync 5 2016-02-24 "${PACKAGE_STRING}" "User Manuals"
.SH NAME
task-sync \- A discussion and tutorial for the various task(1) data
synchronization capabilities.
task-sync \- A discussion and tutorial for the various
.BR task (1)
data synchronization capabilities.
.SH INTRODUCTION
Taskwarrior has several sync options, external and internal. If you wish to
sync your data, choose one method only; mixing methods is only going to lead to
problems. Each of the methods discussed have their own strengths.
.SH ALTERNATIVES
There are three alternatives for syncing data, which are:
1) Version control systems, such as git, hg, svn
Taskwarrior can synchronize your tasks to a server. This has a few benefits:
.br
2) File hosting systems, such as DropBox
- Makes your tasks accessible from multiple systems, called "replicas".
.br
3) Using the Taskserver and the 'sync' command
.SH OPTION 1: VERSION CONTROL SYSTEMS
There are several good, distributed VCS systems (git, hg, ...) and centralized
VCS systems (svn ...), and they function in a similar fashion for our purposes.
Setup is straightforward. You place your .task directory under revision
control. You then need to perform a regular commit/push/pull/update to make
sure that the data is propagated when needed. You can even do this using shell
scripts so that every task command is preceded by a 'pull' and followed by
a 'push'.
Strengths:
- Provides a backup of your tasks.
.br
- Good data transport mechanisms
.br
- Secure transport options
- Saves disk space.
For example, you might want a replica of your tasks on your laptop and on your phone.
NOTE: A side-effect of synchronization is that once changes have been
synchronized, they cannot be undone. This means that each time synchronization
is run, it is no longer possible to undo previous operations.
.SH MANAGING SYNCHRONIZATION
.SS Adding a Replica
To add a new replica, configure a new, empty replica identically to
the existing replica, and run `task sync`.
.SS When to Synchronize
Taskwarrior can perform a sync operation at every garbage collection (gc) run.
This is the default, and is appropriate for local synchronization.
For synchronization to a server, a better solution is to run
$ task sync
periodically, such as via
.BR cron (8) .
.SH CONFIGURATION
Taskwarrior provides several options for synchronizing your tasks:
- To a server specifically designed to handle Taskwarrior data.
+ To a cloud storage provider. Currently only GCP is supported.
- To a local, on-disk file.
For most of these, you will need an encryption secret used to encrypt and
decrypt your tasks. This can be any secret string, and must match for all
replicas sharing tasks.
$ task config sync.encryption_secret <encryption_secret>
Tools such as
.BR pwgen (1)
can generate suitable secret values.
.SS Sync Server
To synchronize your tasks to a sync server, you will need the following
information from the server administrator:
Weaknesses:
.br
- You need proficiency with VCS tools
- The server's URL ("origin", such as "https://tw.example.com")
.br
- You will need to manually resolve conflicts frequently
.br
- You need to provide the mechanism for making sure copies are up to date
- A client ID ("client_id") identifying your tasks
Configure Taskwarrior with these details:
$ task config sync.server.origin <origin>
$ task config sync.server.client_id <client_id>
Note that the origin must include the scheme, such as 'http://' or 'https://'.
.SS Google Cloud Platform
To synchronize your tasks to GCP, use the GCP Console to create a new project,
and within that project a new Cloud Storage bucket. The default settings for
the bucket are adequate.
Authenticate to the project with:
$ gcloud config set project $PROJECT_NAME
$ gcloud auth application-default login
Then configure Taskwarrior with:
$ task config sync.gcp.bucket <bucket-name>
However you can bring your own service account credentials if your
`application-default` is already being used by some other application
To begin, navigate to the "IAM and Admin" section in the Navigation Menu, then select "Roles."
On the top menu bar within the "Roles" section, click "CREATE ROLE."
Provide an appropriate name and description for the new role.
Add permissions to your new role using the filter "Service:storage" (not the "Filter permissions by role" input box).
Select the following permissions:
- storage.buckets.create
- storage.buckets.get
- storage.buckets.update
- storage.objects.create
- storage.objects.get
- storage.objects.list
- storage.objects.update
Create your new role.
On the left sidebar, navigate to "Service accounts."
On the top menu bar within the "Service accounts" section, click "CREATE SERVICE ACCOUNT."
Provide an appropriate name and description for the new service account.
Select the role you just created and complete the service account creation process.
Now, in the Service Account dashboard, click into the new service account and select "keys" on the top menu bar.
Click on "ADD KEY" to create and download a new key (a JSON key).
.SH OPTION 2: FILE HOSTING SERVICES
There are many file hosting services, such as DropBox, Amazon S3, Google Drive,
Then configure Taskwarrior with:
$ task config sync.gcp.bucket <bucket-name>
$ task config sync.gcp.credential_path <absolute-path-to-downloaded-credentials>
.SS Local Synchronization
In order to take advantage of synchronization's side effect of saving disk
space without setting up a remote server, it is possible to sync tasks locally.
To configure local sync:
$ task config sync.local.server_dir /path/to/sync
The default configuration is to sync to a database in the task directory
("data.location").
.SH RUNNING TASKCHAMPION-SYNC-SERVER
The TaskChampion sync server is an HTTP server supporting multiple users.
Users are identified by a client ID, and users with different client IDs are
entirely independent. Task data is encrypted by Taskwarrior, and the sync
server never sees un-encrypted data.
The server is developed in
https://github.com/GothenburgBitFactory/taskchampion-sync-server.
.SS Adding a New User
To add a new user to the server, invent a new client ID with a tool like
`uuidgen` or an online UUID generator. There is no need to configure the server
for this new client ID: the sync server will automatically create a new user
whenever presented with a new client ID. Supply the ID, along with the
origin, to the user for inclusion in their Taskwarrior config. The user should
invent their own "encryption_secret".
.SH AVOIDING DUPLICATE RECURRING TASKS
If you run multiple clients that sync to the same server, you will need to run
this command on your primary client (the one you use most often):
$ task config recurrence on
And on the other clients, run:
$ task config recurrence off
This protects you against the effects of a sync/duplication bug.
.SH ALTERNATIVE: FILE SHARING SERVICES
There are many file sharing services, such as DropBox, Amazon S3, Google Drive,
SkyDrive and more. This technique involves storing your .task directory in a
shared directory under the control of the file hosting services.
@@ -61,8 +187,6 @@ configuration variable like this:
$ task config data.location /path/to/shared/directory
Strengths:
.br
- Always secure
.br
- Good client support
.br
@@ -75,99 +199,32 @@ Weaknesses:
- Tasks are not properly merged
.SH OPTION 3: TASKSERVER
The Taskserver was designed for this purpose to be secure, fast and conflict
free, allowing data interchange between assorted Taskwarrior clients, and
tolerant of network connectivity problems.
There is a 'sync' command built in to Taskwarrior (provided the GnuTLS library
is installed), and with a server account and client configuration, syncing is
done on demand.
Setup is a matter of creating an account on a Taskserver (see your Taskserver
provider or operate your own - see
http://taskwarrior.org/docs/server_setup.html)
Once you have an account, you'll receive a certificate, key, and credentials.
You'll need to put the certificate and key somewhere like this:
$ cp <name>.cert.pem ~/.task
$ cp <name>.key.pem ~/.task
Then you configure Taskwarrior, using the provided details:
$ task config taskd.certificate ~/.task/<name>.cert.pem
$ task config taskd.key ~/.task/<name>.key.pem
$ task config taskd.credentials <organization>/<name>/<UUID>
$ task config taskd.server <server domain>:<port>
If you are using a private server, you are likely also using a self-signed
certificate, which means you will need one of the following additional entries:
$ task config taskd.ca ~/.task/ca.cert.pem
The CA (Certificate Authority) will be used to verify the server certificate.
Alternatively, you can override the cert verification process using:
$ task config taskd.trust 'allow all'
This is an insecure option that should be used with caution, because it directs
Taskwarrior to trust any certificate.
After setup, you run a one-time sync initialization, like this:
$ task sync initialize
This will make sure your client and the server are properly in sync to begin
with. From this point on, you never run the 'initialize' command again, just
go about your business, and when you want to sync, run this:
$ task sync
You'll see a summary of how many tasks were uploaded and downloaded. You can
safely run the command as often as you like. When there are no changes to sync,
nothing happens. If you do not have connectivity, your task changes accumulate
so that when you next run 'sync' with proper connectivity, the changes are
properly handled, in the right order.
Strengths:
.br
- Always secure
.br
- Minimal bandwidth
.br
- Tolerates connectivity outage
Weaknesses:
.br
- You need to manage your own server, or gain access to a hosted server.
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2016 P. Beckingham, F. Hernandez.
Copyright (C) 2006 \- 2021 T. Babej, P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
https://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR task(1),
.BR taskrc(5),
.BR task-color(5),
For more information regarding task, the following may be referenced:
For more information regarding Taskwarrior, see the following:
.TP
The official site at
<http://taskwarrior.org>
<https://taskwarrior.org>
.TP
The official code repository at
<https://git.tasktools.org/scm/tm/task.git>
<https://github.com/GothenburgBitFactory/taskwarrior>
.TP
You can contact the project by writing an email to
<support@taskwarrior.org>
You can contact the project by emailing
<support@GothenburgBitFactory.org>
.SH REPORTING BUGS
.TP
Bugs in task may be reported to the issue-tracker at
<http://taskwarrior.org>
Bugs in Taskwarrior may be reported to the issue-tracker at
<https://github.com/GothenburgBitFactory/taskwarrior/issues>

View File

@@ -55,6 +55,7 @@ More filter examples:
task <command> <mods>
task 28 <command> <mods>
task +weekend <command> <mods>
task +bills due.by:eom <command> <mods>
task project:Home due.before:today <command> <mods>
task ebeeab00-ccf8-464b-8b58-f7f2d606edfb <command> <mods>
@@ -75,6 +76,10 @@ UUID numbers or ID ranges):
task 1 2-5 19 modify pri:H
task 4-7 ebeeab00-ccf8-464b-8b58-f7f2d606edfb info
Note that it may be necessary to properly escape special characters as well as
quotes in order to avoid their special meanings in the shell. See also the
section 'SPECIFYING DESCRIPTIONS' for more information.
.SH MODIFICATIONS
The <mods> consist of zero or more changes to apply to the selected tasks, such
@@ -93,7 +98,10 @@ write commands, miscellaneous commands and script helper commands. Read
commands do not allow modification of tasks. Write commands can alter almost
any aspect of a task. Script helper commands are provided to help you write
add-on scripts, for example, shell completion (only minimal output is
generated, as with verbose=nothing).
generated, as with verbose=nothing). Those commands which are explicitly affected
by the
.I context
are denoted as such.
.SH READ SUBCOMMANDS
@@ -130,16 +138,16 @@ Shows all tasks matching the filter, that block other tasks.
.TP
.B task <filter> burndown.daily
Shows a graphical burndown chart, by day.
Shows a graphical burndown chart, by day. Is affected by the context.
.TP
.B task <filter> burndown.weekly
Shows a graphical burndown chart, by week. Note that 'burndown' is an alias to
the 'burndown.weekly' report.
the 'burndown.weekly' report. Is affected by the context.
.TP
.B task <filter> burndown.monthly
Shows a graphical burndown chart, by month.
Shows a graphical burndown chart, by month. Is affected by the context.
.TP
.B task calendar [due|<month> <year>|<year>] [y]
@@ -151,12 +159,12 @@ the specified month and year. If the 'due' argument is provided, will show
the starting month of the earliest due task.
.TP
.B task colors [sample | legend]
.B task colors [<sample> | legend]
Displays all possible colors, a named sample, or a legend containing all
currently defined colors.
.TP
.B task columns [substring]
.B task columns [<substring>]
Displays all supported columns and formatting styles. Useful when creating
custom reports. If a substring is provided, only matching column names are
shown.
@@ -171,14 +179,14 @@ Shows all tasks matching the filter that are completed.
.TP
.B task <filter> count
Displays only a count of tasks matching the filter.
Displays only a count of tasks matching the filter. Is affected by the context.
.TP
.B task <filter> export
Exports all tasks in the JSON format. Redirect the output to a file, if you
wish to save it, or pipe it to another command or script to convert it to
another format. The standard task release comes with a few example scripts,
such as:
another format. You'll find these example scripts online at
<https://taskwarrior.org/tools/>:
export-csv.pl
export-sql.py
@@ -200,18 +208,34 @@ Shows a graphical report of task status by year.
Shows a graphical report of task status by month. Note that 'ghistory' is
an alias to 'ghistory.monthly'.
.TP
.B task <filter> ghistory.weekly
Shows a graphical report of task status by week.
.TP
.B task <filter> ghistory.daily
Shows a graphical report of task status by day.
.TP
.B task help
Shows the long usage text.
.TP
.B task <filter> history.annual
Shows a report of task history by year.
Shows a report of task history by year. Is affected by the context.
.TP
.B task <filter> history.monthly
Shows a report of task history by month. Note that 'history' is
an alias to 'history.monthly'.
an alias to 'history.monthly'. Is affected by the context.
.TP
.B task <filter> history.weekly
Shows a report of task history by week. Is affected by the context.
.TP
.B task <filter> history.daily
Shows a report of task history by day. Is affected by the context.
.TP
.B task <filter> ids
@@ -231,9 +255,8 @@ This command is mainly of use to external scripts.
.TP
.B task <filter> uuids
Applies the filter on all tasks (even deleted and completed tasks)
then extracts only the task UUIDs and presents them as
a comma-separated list. This is useful as input to a task command, to achieve
this:
then extracts only the task UUIDs and presents them as a space-separated list.
This is useful as input to a task command, to achieve this:
task $(task project:Home status:completed uuids) modify status:pending
@@ -279,9 +302,9 @@ value.
.TP
.B task <filter> ready
Shows a page of the most urgent ready tasks, sorted by urgency. A ready task is
one that is either unscheduled, or has a scheduled date that is past and has no
wait date.
Shows a page of the most urgent ready tasks, sorted by urgency with started
tasks first. A ready task is one that is either unscheduled, or has a scheduled
date that is past and is not waiting.
.TP
.B task <filter> oldest
@@ -294,7 +317,7 @@ Shows all incomplete tasks matching the filter that are beyond their due date.
.TP
.B task <filter> projects
Lists all project names that are currently used by pending tasks, and the
number of tasks for each.
number of tasks for each. Is affected by the context.
.TP
.B task <filter> recurring
@@ -313,7 +336,8 @@ Shows all waiting tasks matching the filter.
.TP
.B task add <mods>
Adds a new pending task to the task list.
Adds a new pending task to the task list. It is affected by the currently set
context.
.TP
.B task <filter> annotate <mods>
@@ -325,28 +349,28 @@ Appends description text to an existing task.
.TP
.B task <filter> delete <mods>
Deletes the specified task from task list.
Deletes the specified task from task list. Is affected by the context.
.TP
.B task <filter> denotate <mods>
Deletes an annotation for the specified task. If the provided description
matches an annotation exactly, the corresponding annotation is deleted. If the
provided description matches annotations partly, the first partly matched
annotation is deleted.
annotation is deleted. Is affected by the context.
.TP
.B task <filter> done <mods>
Marks the specified task as done.
Marks the specified task as done. Is affected by the context.
.TP
.B task <filter> duplicate <mods>
Duplicates the specified task and allows modifications.
Duplicates the specified task and allows modifications. Is affected by the context.
.TP
.B task <filter> edit
Launches a text editor to let you modify all aspects of a task directly.
In general, this is not the recommended method of modifying tasks, but is
provided for exceptional circumstances. Use carefully.
provided for exceptional circumstances. Use carefully. Is affected by the context.
.TP
.B task import [<file> ...]
@@ -366,7 +390,8 @@ few example scripts, such as:
.TP
.B task log <mods>
Adds a new task that is already completed, to the task list.
Adds a new task that is already completed, to the task list. It is affected by
the currently set context.
.TP
.B task <filter> modify <mods>
@@ -374,17 +399,17 @@ Modifies the existing task with provided information.
.TP
.B task <filter> prepend <mods>
Prepends description text to an existing task.
Prepends description text to an existing task. Is affected by the context.
.TP
.B task <filter> start <mods>
Marks the specified tasks as started.
Marks the specified tasks as started. Is affected by the context.
.TP
.B task <filter> stop <mods>
Removes the
.I start
time from the specified task.
time from the specified task. Is affected by the context.
.SH MISCELLANEOUS SUBCOMMANDS
@@ -408,7 +433,7 @@ Examples:
2015-03-31T23:59:59
.TP
.B task config [name [value | '']]
.B task config [<name> [<value> | '']]
Add, modify and remove settings directly in the Taskwarrior configuration.
This command either modifies the 'name' setting with a new value of 'value',
or adds a new entry that is equivalent to 'name=value':
@@ -487,34 +512,55 @@ conjunction with aliases and extensions can provide seamless integration.
.B task logo
Displays the Taskwarrior logo.
.TP
.B task news
Guides the user through important release notes anytime a new version of
Taskwarrior is installed. It provides personalized feedback, deprecation
warnings and usage advice, where applicable.
.TP
.B task reports
Lists all supported reports. This includes the built-in reports, and any custom
reports you have defined.
.TP
.B task show [all | substring]
.B task show [all | <substring>]
Shows all the current settings. If a
substring is specified just the settings containing that substring will be
displayed.
.TP
.B task <filter> stats
Shows statistics of the tasks defined by the filter.
Shows statistics of the tasks defined by the filter. Is affected by the context.
.TP
.B task <filter> summary
Shows a report of aggregated task status by project.
Shows a report of aggregated task status by project. Is affected by the context.
.TP
.B task sync
The sync command synchronizes data with the Taskserver, if configured.
Note: If you use multiple sync clients, make sure this setting (which is the default)
is on your primary client:
recurrence=on
and on all other clients (this is not the default):
recurrence=off
This is a workaround to avoid a recurrence bug that duplicates recurring tasks.
.TP
.B task <filter> tags
Show a list of all tags used. Any special tags used are highlighted. Note that
virtual tags are not listed - they don't really exist, and are just a convenient
notation for other task metadata. It is an error to attempt to add or remove a
virtual tag.
virtual tag. Is affected by the context.
.TP
.B task timesheet [weeks]
.B task timesheet [<weeks>]
Shows a weekly report of tasks completed and started.
.TP
@@ -562,7 +608,7 @@ by third-party applications.
Reports a unique set of attribute values. For example, to see all the active
projects:
task +PENDING _unique projects
task +PENDING _unique project
.TP
.B task <filter> _uuids
@@ -610,10 +656,16 @@ Accesses and displays the DOM reference(s). Used to extract individual values
from tasks, or the system. Supported DOM references are:
rc.<name>
context.program
context.args
context.width
context.height
tw.syncneeded
tw.program
tw.args
tw.width
tw.height
tw.version
context.program (Deprecated in 2.6.0)
context.args (Deprecated in 2.6.0)
context.width (Deprecated in 2.6.0)
context.height (Deprecated in 2.6.0)
system.version
system.os
<id>.<attribute>
@@ -633,7 +685,7 @@ extracted by DOM references.
For a full list of supported attribute-specific DOM references, consult
the online documentation at:
<http://taskwarrior.org/docs/dom.html>
<https://taskwarrior.org/docs/dom.html>
.SH ATTRIBUTES AND METADATA
@@ -670,22 +722,24 @@ are:
ANNOTATED Matches if the task has annotations
BLOCKED Matches if the task is blocked
BLOCKING Matches if the task is blocking
CHILD Matches if the task has a parent
CHILD Matches if the task has a parent (deprecated in 2.6.0)
COMPLETED Matches if the task has completed status
DELETED Matches if the task has deleted status
DUE Matches if the task is due
DUETODAY Matches if the task is due today
INSTANCE Matches if the task is a recurrent instance
LATEST Matches if the task is the newest added task
MONTH Matches if the task is due this month
ORPHAN Matches if the task has any orphaned UDA values
OVERDUE Matches if the task is overdue
PARENT Matches if the task is a parent
PARENT Matches if the task is a parent (deprecated in 2.6.0)
PENDING Matches if the task has pending status
PRIORITY Matches if the task has a priority
PROJECT Matches if the task has a project
QUARTER Matches if the task is due this quarter
READY Matches if the task is actionable
SCHEDULED Matches if the task is scheduled
TAGGED Matches if the task has tags
TEMPLATE Matches if the task is a recurrence template
TODAY Matches if the task is due today
TOMORROW Matches if the task is due sometime tomorrow
UDA Matches if the task has any UDA values
@@ -735,9 +789,10 @@ to 25 lines.
.TP
.B wait:<wait-date>
When a task is given a wait date, it is hidden from most reports by changing
its status to 'waiting'. When that date is passed, the status is changed back
to 'pending', and the task becomes visible.
When a task is given a wait date, it is hidden from most built-in reports, which
exclude +WAITING. When the date is in the past, the task is not considered +WAITING,
and again becomes visible. Note that, for compatibilty, such tasks are shown as
having status "waiting", but this will change in a future release.
.TP
.B depends:<id1,id2 ...>
@@ -759,6 +814,8 @@ Attribute modifiers improve filters. Supported modifiers are:
.br
.B after (synonyms over, above)
.br
.B by
.br
.B none
.br
.B any
@@ -780,6 +837,13 @@ Attribute modifiers improve filters. Supported modifiers are:
.B noword
.RE
They can be applied to all regular attributes (see above) and the following
calculated attributes:
.RS
\fBurgency\fR (or short \fBurg\fR)
.RE
For example:
.RS
@@ -799,6 +863,24 @@ modifier is the inverse of the
.I before
modifier.
The
.I by
modifier is the same as 'before', except it also includes the moment in
question. For example:
task add test due:eoy
will be found when using the inclusive filter 'by':
task due.by:eoy
but not when the non-inclusive filter 'before' is used:
task due.before:eoy
this applies equally to other named dates such as 'eom', 'eod', etc; the
modifier compares using '<=' rather than '<' like 'before' does.
The
.I none
modifier requires that the attribute does not have a value. For example:
@@ -1019,7 +1101,7 @@ task ... wait:later
.br
task ... wait:someday
This sets the wait date to 1/18/2038.
This sets the wait date to 12/30/9999.
.TP
Next occurring weekday
@@ -1040,16 +1122,18 @@ task ... due:pentecost
task ... due:midsommar
.br
task ... due:midsommarafton
.br
task ... due:juhannus
.RE
.SS FREQUENCIES
Recurrence periods. Taskwarrior supports several ways of specifying the
.I frequency
of recurring tasks.
of recurring tasks. Note that frequencies can be abbreviated.
.RS
.TP
daily, day, 1da, 2da, ...
daily, day, 1day, 1days, 2day, 2days, 1da, 2da, ...
Every day or a number of days.
.TP
@@ -1086,9 +1170,30 @@ Every two years.
.RE
.SH CONTEXT
Context is a user-defined filter, which is automatically applied to all commands
that filter the task list. In particular, any report command will have its
result affected by the current active context.
Context is a user-defined query, which is automatically applied to all commands
that filter the task list and to commands that create new tasks (add, log). For
example, any report command will have its result affected by the current
active context. Here is a list of the commands that are affected:
.IP
add
burndown
count
delete
denotate
done
duplicate
edit
history
log
prepend
projects
start
stats
stop
summary
tags
All other commands are NOT affected by the context.
$ task list
ID Age Project Description Urg
@@ -1103,6 +1208,21 @@ result affected by the current active context.
2 1d Home Clean the dishes 1.14
Context 'home' set. Use 'task context none' to remove.
Task list got automatically filtered for project:Home.
$ task add Vaccuum the carpet
Created task 3.
Context 'home' set. Use 'task context none' to remove.
$ task list
ID Age Project Description Urg
2 1d Home Clean the dishes 1.14
3 5s Home Vaccuum the carpet 1.14
Context 'home' set. Use 'task context none' to remove.
Note that the newly added task "Vaccuum the carpet" has "project:Home" set
automatically.
As seen in the example above, context is applied by specifying its name to the
"context" command. To change the currently applied context, just pass the
new context's name to the 'context' command.
@@ -1113,37 +1233,92 @@ To unset any context, use the 'none' subcommand.
Context unset.
$ task list
ID Age Project Description Urg
1 2d Sport Run 5 miles 1.42
2 1d Home Clean the dishes 1.14
ID Age Project Description Urg
1 2d Sport Run 5 miles 1.42
2 1d Home Clean the dishes 1.14
3 7s Home Vaccuum the carpet 1.14
Context can be defined using the 'define' subcommand, specifying both the name
of the new context, and it's assigned filter.
$ task context define home project:Home
Are you sure you want to add 'context.home' with a value of 'project:Home'? (yes/no) yes
Are you sure you want to add 'context.home.read' with a value of 'project:Home'? (yes/no) yes
Are you sure you want to add 'context.home.write' with a value of 'project:Home'? (yes/no) yes
Context 'home' successfully defined.
Note that you were separately prompted to set the 'read' and 'write' context.
This allows you to specify contexts that only work for reporting commands or
only for commands that create tasks.
To remove the definition, use the 'delete' subcommand.
$ task context delete home
Are you sure you want to remove 'context.home'? (yes/no) yes
Context 'home' successfully undefined.
Are you sure you want to remove 'context.home.read'? (yes/no) yes
Are you sure you want to remove 'context.home.write'? (yes/no) yes
Context 'home' deleted.
To check what is the currently active context, use the 'show' subcommand.
$ task context show
Context 'home' with filter 'project:Home' is currently applied.
Context 'home' with
* read filter: '+home'
* write filter: '+home'
is currently applied.
Contexts can store arbitrarily complex filters.
$ task context define family project:Family or +paul or +nancy
Are you sure you want to add 'context.home' with a value of 'project:Family or +paul or +nancy'? (yes/no) yes
Are you sure you want to add 'context.family.read' with a value of 'project:Family or +paul or +nancy'? (yes/no) yes
Are you sure you want to add 'context.family.write' with a value of 'project:Family or +paul or +nancy'? (yes/no) no
Context 'family' successfully defined.
Contexts are permanent, and the currently set context name is stored in the
"context" configuration variable. The context definition is stored in the
"context.<name>" configuration variable.
"context.<name>.read" configuration variable (for reporting commands) and
"context.<name>.write" configuration variable (for task additions, i.e. task
add/log).
Note that in the example above, the user decided not to define the complex
filter as writeable context. The reason for this decision is that the complex
filter in the example does not directly translate to a modification. In fact,
if such a context is used as a writeable context, the following happens:
$ task add Call Paul
Created task 4.
Context 'family' set. Use 'task context none' to remove.
$ task 4 list
ID Age Project Tags Description Urg
4 9min Family nancy paul or or Call Paul 0
There is no clear mapping between the complex filter used and the modifications
(should only the project be set? only the tags? both?). Additionally note the 'or'
operators being present in the description. Taskwarrior does not try to guess
the user intention here, and instead, the user is expected to set the
"context.<name>.write" variable to make their intention explicit, for example:
$ task config context.family.write project:Family
Are you sure you want to change the value of 'context.family.write' from 'project:Family or +paul or +nancy' to 'project:Family'? (yes/no) yes
Config file /home/tbabej/.config/task/taskrc modified.
$ task context
Name Type Definition Active
family read project:Family or +paul or +nancy yes
write project:Family yes
home read +home no
write +home no
Note how read and write contexts differ for context "family", while for context
"home" they stay the same.
In addition, every configuration parameter can be overridden for the current
context, by specifying context.<name>.rc.<parameter>. For example, if the default
command for the family context should be displaying the family_report:
$ task config context.family.rc.default.command family_report
.SH COMMAND ABBREVIATION
All Taskwarrior commands may be abbreviated as long as a unique prefix is used,
@@ -1221,12 +1396,15 @@ Taskwarrior stores its configuration in a file in the user's home directory:
.TP
.B task rc:<path-to-alternate-file> ...
Specifies an alternate configuration file.
Specifies an alternate configuration file with highest priority.
.TP
.B TASKRC=/tmp/.taskrc task ..
The environment variable overrides the default and the command line
specification of the .taskrc file.
.B TASKRC=<path-to-alternate-file> task ..
The environment variable specifies an alternate configuration file to use.
.TP
.B XDG_CONFIG_HOME=<path-to-alternate-config-home> task ..
The environment variable specifies an alternate configuration file to use.
.TP
.B task rc.<name>:<value> ...
@@ -1235,15 +1413,15 @@ Specifies individual configuration file overrides.
.TP
.B TASKDATA=/tmp/.task task ...
The environment variable overrides the default, the command line, and
the 'data.location' configuration setting of the task data directory.
The environment variable overrides the default, and the 'data.location'
configuration setting of the task data directory.
.SH MORE EXAMPLES
For examples please see the online documentation starting at
.RS
<http://taskwarrior.org/docs>
<https://taskwarrior.org/docs>
.RE
Note that the online documentation can be more detailed and more current than
@@ -1254,7 +1432,10 @@ this man page.
.TP
~/.taskrc
User configuration file - see also taskrc(5). Note that this can be
overridden on the command line or by the TASKRC environment variable.
overridden on the command line or by the TASKRC environment variable. Also, if
.I ~/.taskrc
doesn't exist and XDG_CONFIG_HOME environment variable is defined, taskwarrior
will check if $XDG_CONFIG_HOME/task/taskrc exists and attempt to read it
.TP
~/.task
@@ -1275,10 +1456,10 @@ The file that contains the completed ("done") tasks.
The file that contains information needed by the "undo" command.
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2016 P. Beckingham, F. Hernandez.
Copyright (C) 2006 \- 2021 T. Babej, P. Beckingham, F. Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
https://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR taskrc(5),
@@ -1289,18 +1470,17 @@ For more information regarding Taskwarrior, see the following:
.TP
The official site at
<http://taskwarrior.org>
<https://taskwarrior.org>
.TP
The official code repository at
<https://git.tasktools.org/scm/tm/task.git>
<https://github.com/GothenburgBitFactory/taskwarrior>
.TP
You can contact the project by emailing
<support@taskwarrior.org>
<support@GothenburgBitFactory.org>
.SH REPORTING BUGS
.TP
Bugs in Taskwarrior may be reported to the issue-tracker at
<https://bug.tasktools.org/>
<https://github.com/GothenburgBitFactory/taskwarrior/issues>

View File

@@ -9,6 +9,8 @@ taskrc \- Configuration details for the task(1) command
.B task rc:<directory-path>/.taskrc ...
.br
.B TASKRC=<directory-path>/.taskrc task ...
.br
.B XDG_CONFIG_HOME=<directory-path>/task/taskrc task ...
.SH DESCRIPTION
.B Taskwarrior
@@ -34,6 +36,12 @@ or using the TASKRC environment variable:
$ TASKRC=/tmp/.taskrc task ...
.RE
Additionally, if no ~/.taskrc exists, taskwarrior will check if the XDG_CONFIG_HOME environment variable is defined:
.RS
$ XDG_CONFIG_HOME=~/.config task ...
.RE
Individual options can be overridden by using the
.I rc.<name>:
attribute when running task:
@@ -55,7 +63,7 @@ default, sample
.I .taskrc
file in the user's home directory.
The .taskrc file follows a very simply syntax defining name/value pairs:
The .taskrc file follows a very simple syntax defining name/value pairs:
.RS
<name> = <value>
@@ -68,8 +76,8 @@ The entry must be on a single line, no continuations.
Values support UTF8 as well as JSON encoding, such as \\uNNNN.
Note that Taskwarrior is flexible about the values used to represent Boolean
items. You can use "on", "yes", "y", "1" and "true".
Anything else means "off".
items. You can use "1" to enable, anything else is interpreted as disabled.
The values "on", "yes", "y" and "true" are currently supported but deprecated.
.RS
include <file>
@@ -77,8 +85,15 @@ include <file>
There may be whitespace around 'include' and <file>. The file may be an
absolute or relative path, and the special character '~' is expanded to mean
$HOME.
The entry must be on a single line, no continuations.
$HOME. If relative path is specified, the it will be evaluated as relative with
respect to the following directories (listed in order of precedence):
1. the current working directory
2. the directory containing the taskrc file
3. the directories set by the package manager (which usually contain
pre-defined themes)
Note that environment variables are also expanded in paths (and any other
taskrc variables).
.RS
# <comment>
@@ -144,9 +159,9 @@ ones containing just the relevant configuration data like colors, etc.
There are two excellent uses of includes in your .taskrc, shown here:
.RS
include ${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}/holidays.en-US.rc
include holidays.en-US.rc
.br
include ${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}/dark-16.theme
include dark-16.theme
.RE
This includes two standard files that are distributed with Taskwarrior, which
@@ -154,7 +169,7 @@ define a set of US holidays, and set up a 16-color theme to use, to color the
reports and calendar.
.SH ENVIRONMENT VARIABLES
These environment variables override defaults and command line arguments.
These environment variables override defaults, but not command-line arguments.
.TP
.B TASKDATA=~/.task
@@ -163,6 +178,17 @@ This overrides the default path for the Taskwarrior data files.
.TP
.B TASKRC=~/.taskrc
This overrides the default RC file.
.RE
This environment variable will be checked if
.I ~/.taskrc
doesn't exist
.TP
.B XDG_CONFIG_HOME=~/.config
If set, taskwarrior will look for a
.I $XDG_CONFIG_HOME/task/taskrc
file
.SH CONFIGURATION VARIABLES
Valid variable names and their default values are:
@@ -181,33 +207,37 @@ shell meta character, which will be properly expanded.
Note that the TASKDATA environment variable overrides this setting.
.TP
.B locking=on
.B hooks.location=$HOME/.task/hooks
This is a path to the hook scripts directory. By default it is ~/.task/hooks.
.TP
.B locking=1
Determines whether to use file locking when accessing the pending.data and
completed.data files. Defaults to "on". Solaris users who store the data
files on an NFS mount may need to set locking to "off". Note that there is
danger in setting this value to "off" - another program (or another instance of
completed.data files. Defaults to "1". Solaris users who store the data
files on an NFS mount may need to set locking to "0". Note that there is
danger in setting this value to "0" - another program (or another instance of
task) may write to the task.pending file at the same time.
.TP
.B gc=on
.B gc=1
Can be used to temporarily suspend garbage collection (gc), so that task IDs
don't change. Note that this should be used in the form of a command line
override (task rc.gc=off ...), and not permanently used in the .taskrc file,
override (task rc.gc=0 ...), and not permanently used in the .taskrc file,
as this significantly affects performance in the long term.
.TP
.B hooks=on
.B hooks=1
This master control switch enables hook script processing. The default value
is 'on', but certain extensions and environments may need to disable hooks.
is '1', but certain extensions and environments may need to disable hooks.
.TP
.B exit.on.missing.db=no
When set to 'yes' causes the program to exit if the database (~/.task or
rc.data.location or TASKDATA override) is missing. Default value is 'no'.
.B exit.on.missing.db=0
When set to '1' causes the program to exit if the database (~/.task or
rc.data.location or TASKDATA override) is missing. Default value is '0'.
.SS TERMINAL
.TP
.B detection=on
.B detection=1
Determines whether to use ioctl to establish the size of the window you are
using, for text wrapping.
@@ -225,14 +255,14 @@ to 24. If set to 0, it is interpreted as infinite height. This is useful when re
charts to a file for subsequent handling.
.TP
.B avoidlastcolumn=no
.B avoidlastcolumn=0
Causes the width of the terminal minus one to be used as the full width. This
avoids placing color codes in the last column which can cause problems for
Cygwin users. Default value is 'no'.
Cygwin users. Default value is '0'.
.TP
.B hyphenate=on
Hyphenates lines when wrapping breaks occur mid-word. Default value is 'on'.
.B hyphenate=1
Hyphenates lines when wrapping breaks occur mid-word. Default value is '1'.
.TP
.B editor=vi
@@ -250,9 +280,9 @@ prompt. This is only referenced when 'limit:page' is used.
.SS MISCELLANEOUS
.TP
.B verbose=on|off|nothing|list...
When set to "on" (the default), helpful explanatory comments are added to all
output from Taskwarrior. Setting this to "off" means that you would see regular
.B verbose=1|0|nothing|list...
When set to "1" (the default), helpful explanatory comments are added to all
output from Taskwarrior. Setting this to "0" means that you would see regular
output.
The special value "nothing" can be used to eliminate all optional output, which
@@ -263,32 +293,36 @@ Alternatively, you can specify a comma-separated list of verbosity tokens that
control specific occasions when output is generated. This list may contain:
blank Inserts extra blank lines in output, for clarity
header Messages that appear before report output
footnote Messages that appear after report output
header Messages that appear before report output (this includes .taskrc/.task overrides and the "[task next]" message)
footnote Messages that appear after report output (mostly status messages and change descriptions)
label Column labels on tabular reports
new-id Provides feedback of any new task IDs
new-uuid Provides feedback of any new task UUIDs. Deprecated, to be
merged with new-id.
new-id Provides feedback on any new task with IDs (and UUIDs for new tasks with ID 0, such as new completed tasks).
new-uuid Provides feedback on any new task with UUIDs. Overrides new-id. Useful for automation.
affected Reports 'N tasks affected' and similar
edit Used the verbose template for the 'edit' command
special Feedback when applying special tags
project Feedback about project status changes
sync Feedback about sync
filter Shows the filter used in the command
unwait Notification when a task leaves the 'waiting' state
context Show the current context. Displayed in footnote.
override Notification when configuration options are overridden
recur Notification when a new recurring task instance is created
default Notifications about taskwarrior choosing to perform a default action.
"affected", "new-id", "new-uuid" "project" and "unwait" imply "footnote".
The tokens "affected", "new-id", "new-uuid", "project", "override" and "recur"
imply "footnote".
Note that the "on" setting is equivalent to all the tokens being specified,
The token "default" implies "header".
Note that the "1" setting is equivalent to all the tokens being specified,
and the "nothing" setting is equivalent to none of the tokens being specified.
Here are the shortcut equivalents:
verbose=on
verbose=blank,header,footnote,label,new-id,affected,edit,special,project,sync,filter,unwait
verbose=blank,header,footnote,label,new-id,affected,edit,special,project,sync,filter,override,recur
verbose=off
verbose=0
verbose=blank,label,new-id,edit
verbose=nothing
@@ -298,16 +332,16 @@ Those additional comments are sent to the standard error for header, footnote
and project. The others are sent to standard output.
.TP
.B confirmation=yes
May be "yes" or "no", and determines whether Taskwarrior will ask for
.B confirmation=1
May be "1" or "0", and determines whether Taskwarrior will ask for
confirmation before deleting a task or performing the undo command. The default
value is "yes". Consider leaving this setting as "yes", for safety.
value is "1". Consider leaving this enabled, for safety.
.TP
.B allow.empty.filter=yes
.B allow.empty.filter=1
An empty filter combined with a write command is potentially a way to modify
all tasks by mistake, and when this is detected, confirmation is required.
Setting this to 'no' means that it is an error to use a write command with no
Setting this to '0' means that it is an error to use a write command with no
filter.
.TP
@@ -344,47 +378,47 @@ Default value is: 'You have more urgent tasks'.
It is a gentle reminder that you are contradicting your own urgency settings.
.TP
.B list.all.projects=no
May be yes or no, and determines whether the 'projects' command lists all the project
.B list.all.projects=0
May be "1" or "0", and determines whether the 'projects' command lists all the project
names you have used, or just the ones used in active tasks. The default value is
"no".
"0".
.TP
.B summary.all.projects=no
If set to yes, shows all projects in the summary report, even if there are no
pending tasks. The default value is "no".
.B summary.all.projects=0
If set to "1", shows all projects in the summary report, even if there are no
pending tasks. The default value is "0".
.TP
.B complete.all.tags=yes
May be yes or no, and determines whether the tab completion scripts consider all
.B complete.all.tags=1
May be "1" or "0", and determines whether the tab completion scripts consider all
the tag names you have used, or just the ones used in active tasks. The default
value is "no".
value is "0".
.TP
.B list.all.tags=yes
May be yes or no, and determines whether the 'tags' command lists all the tag
.B list.all.tags=1
May be "1" or "0", and determines whether the 'tags' command lists all the tag
names you have used, or just the ones used in active tasks. The default value is
"no".
"0".
.TP
.B print.empty.columns=no
May be yes or no, and determines whether columns with no data for any task are
printed. Defaults to no.
.B print.empty.columns=1
May be "1" or "0", and determines whether columns with no data for any task are
printed. Defaults to "0".
.TP
.B search.case.sensitive=yes
May be yes or no, and determines whether keyword lookup and substitutions on the
description and annotations are done in a case sensitive way. Defaults to yes on
most platforms. Defaults to no on Cygwin due to older regex library problems with
.B search.case.sensitive=1
May be "1" or "0", and determines whether keyword lookup and substitutions on the
description and annotations are done in a case sensitive way. Defaults to "1" on
most platforms. Defaults to "0" on Cygwin due to older regex library problems with
case-insensitivity.
.TP
.B regex=on
Controls whether regular expression support is enabled. The default value is on.
.B regex=1
Controls whether regular expression support is enabled. The default value is "1".
.TP
.B xterm.title=no
Sets the xterm window title when reports are run. Defaults to off.
.B xterm.title=1
Sets the xterm window title when reports are run. Defaults to "0".
.TP
.B expressions=infix|postfix
@@ -392,21 +426,15 @@ Sets a preference for infix expressions (1 + 2) or postfix expressions (1 2 +).
Defaults to infix.
.TP
.B json.array=on
.B json.array=1
Determines whether the export command encloses the JSON output in '[...]' and
adds ',' after each exported task object to create a properly-formed JSON
array.
With json.array=off, export writes raw JSON objects to STDOUT, one per line.
Defaults to on.
With json.array=0, export writes raw JSON objects to STDOUT, one per line.
Defaults to "1".
.TP
.B json.depends.array=on
Determines whether the export command encodes dependencies as an array of string
UUIDs, or one comma-separated string.
Defaults to on.
.TP
.B _forcecolor=no
.B _forcecolor=1
Taskwarrior shuts off color automatically when the output is not sent directly
to a TTY. For example, this command:
@@ -422,6 +450,8 @@ $ task rc._forcecolor=yes list > file
.RE
.RE
Defaults to "0".
.TP
.B active.indicator=*
The character or string to show in the start.active column. Defaults to *.
@@ -432,16 +462,20 @@ The character or string to show in the tag.indicator column. Defaults to +.
.TP
.B dependency.indicator=D
The character or string to show in the depends.indicator column. Defaults to +.
The character or string to show in the depends.indicator column. Defaults to D.
.TP
.B uda.<name>.indicator=U
The character or string to show in the <uda>.indicator column. Defaults to U.
.TP
.B recurrence=yes
.B recurrence=1
Controls whether recurrence is enabled, and whether recurring tasks continue to
generate new task instances. Defaults to 'yes'.
generate new task instances. Defaults to "1".
If you are syncing multiple clients, then it is advised that you set 'recurrence=1'
on your primary client, and 'recurrence=0' on ALL other clients. This is a workaround
for a duplication bug.
.TP
.B recurrence.confirmation=prompt
@@ -475,15 +509,15 @@ Minimum length of any abbreviated command/value. This means that "ve", "ver",
Default is 2.
.TP
.B debug=off
.B debug=0
Taskwarrior has a debug mode that causes diagnostic output to be displayed.
Typically this is not something anyone would want, but when reporting a bug,
debug output can be useful. It can also help explain how the command line is
being parsed, but the information is displayed in a developer-friendly, not a
user-friendly way.
Turning debug on automatically sets debug.hooks=1, debug.parser=1 and debug.tls=2
if they do not already have assigned values.
Turning debug on automatically sets debug.hooks=1 and debug.parser=1
if they do not already have assigned values. Defaults to "0".
.TP
.B debug.hooks=0
@@ -498,12 +532,7 @@ Level 2 shows the parse tree from all phases of the parse.
Level 3 shows expression evaluation details.
.TP
.B debug.tls=0
Controls the GnuTLS diagnostic level. For 'sync' debugging. Level 0 means no
diagnostics. Level 9 is the highest. Level 2 is a good setting for debugging.
.TP
.B obfuscate=1
.B obfuscate=0
When set to '1', will replace all report text with 'xxx'.
This is useful for sharing report output in bug reports.
Default value is '0'.
@@ -515,6 +544,12 @@ Taskwarrior supports command aliases. This alias provides an alternate name
any of the commands. Several commands you may use are actually aliases -
the 'history' report, for example, or 'export'.
.TP
.B burndown.cumulative=1
May be "1" or "0", and controls the behaviour of the burndown command. When set
to 1, it sums up all completed tasks, otherwise they only get plotted in the
interval where the task was completed. Defaults to 1.
.SS DATES
.TP
@@ -583,6 +618,8 @@ S two-digit seconds, for example 07 or 47
J three-digit Julian day, for example 023 or 365
.br
j Julian day, for example 23 or 365
.br
w Week day, for example 0 for Monday, 5 for Friday
.RE
.RE
@@ -645,8 +682,10 @@ field that is set. Otherwise, they are set to the corresponding values of
.RE
.TP
.B date.iso=yes
Enables ISO-8601 date support. The default value is "yes".
.B date.iso=1
Enables ISO-8601 date support. The default value is "1".
.SS CALENDAR
.TP
.B weekstart=Sunday
@@ -654,10 +693,10 @@ Determines the day a week starts. Valid values are Sunday or Monday only. The
default value is "Sunday".
.TP
.B displayweeknumber=yes
.B displayweeknumber=1
Determines if week numbers are displayed when using the "task calendar" command.
The week number is dependent on the day a week starts. The default value is
"yes".
"1".
.TP
.B due=7
@@ -666,11 +705,11 @@ considered due, and is colored accordingly. The default value is 7.
.TP
.B calendar.details=sparse
If set to full running "task calendar" will display the details of tasks with
If set to "full" running "task calendar" will display the details of tasks with
due dates that fall into the calendar period. The corresponding days will be
color-coded in the calendar. If set to sparse only the corresponding days will
color-coded in the calendar. If set to "sparse" only the corresponding days will
be color coded and no details will be displayed. The displaying of due dates
with details is turned off by setting the variable to none. The default value
with details is turned off by setting the variable to "none". The default value
is "sparse".
.TP
@@ -679,9 +718,9 @@ The report to run when displaying the details of tasks with due dates when
running the "task calendar" command. The default value is "list".
.TP
.B calendar.offset=off
If "on" the first month in the calendar report is effectively changed by the
offset value specified in calendar.offset.value. It defaults to "off".
.B calendar.offset=0
If "1" the first month in the calendar report is effectively changed by the
offset value specified in calendar.offset.value. It defaults to "0".
.TP
.B calendar.offset.value=-1
@@ -689,7 +728,7 @@ The offset value to apply to the first month in the calendar report. The default
value is "-1".
.TP
.B calendar.holidays=full
.B calendar.holidays=none
If set to full running "task calendar" will display holidays in the calendar by
color-coding the corresponding days. A detailed list with the dates and names
of the holidays is also shown. If set to sparse only the days are color-coded
@@ -697,15 +736,21 @@ and no details on the holidays will be displayed. The displaying of holidays is
turned off by setting the variable to none. The default value is "none".
.TP
.B calendar.legend=yes
Determines whether the calendar legend is displayed. The default value is "yes".
.B calendar.legend=1
Determines whether the calendar legend is displayed. The default value is "1".
.TP
.B calendar.monthsperline=N
Determines how many months the "task calendar" command renders across the
screen. Defaults to however many will fit. If more months than will fit are
specified, Taskwarrior will only show as many that will fit.
.SS JOURNAL ENTRIES
.TP
.B journal.time=no
May be yes or no, and determines whether the 'start' and 'stop' commands should
record an annotation when being executed. The default value is "no". The text of
.B journal.time=0
May be "1" or "0", and determines whether the 'start' and 'stop' commands should
record an annotation when being executed. The default value is "0". The text of
the corresponding annotations is controlled by:
.TP
@@ -719,13 +764,13 @@ The text of the annotation that is recorded when executing the stop command and
having set journal.time.
.TP
.B journal.info=on
.B journal.info=1
When enabled, this setting causes a change log of each task to be displayed by
the 'info' command. Default value is "on".
the 'info' command. Default value is "1".
.SS HOLIDAYS
Holidays are entered either directly in the .taskrc file or via an include file
that is specified in .taskrc. For each holiday the name and the date is
that is specified in .taskrc. For single-day holidays the name and the date is
required to be given:
.RS
@@ -734,10 +779,20 @@ required to be given:
holiday.towel.name=Day of the towel
.br
holiday.towel.date=20100525
.RE
.RE
For holidays that span a range of days (i.e. vacation), you can use a start date
and an end date:
.RS
.RS
.br
holiday.sysadmin.name=System Administrator Appreciation Day
holiday.sysadmin.name=System Administrator Appreciation Week
.br
holiday.sysadmin.date=20100730
holiday.sysadmin.start=20100730
.br
holiday.sysadmin.end=20100805
.RE
.RE
@@ -767,35 +822,29 @@ be included like this:
.RS
.RS
.br
include ${CMAKE_INSTALL_PREFIX}/${TASK_RCDIR}/holidays.en-US.rc
include holidays.en-US.rc
.RE
.RE
.TP
.B monthsperline=3
Determines how many months the "task calendar" command renders across the
screen. Defaults to however many will fit. If more months than will fit are
specified, Taskwarrior will only show as many that will fit.
.SS DEPENDENCIES
.TP
.B dependency.reminder=on
.B dependency.reminder=1
Determines whether dependency chain violations generate reminders.
.TP
.B dependency.confirmation=yes
.B dependency.confirmation=1
Determines whether dependency chain repair requires confirmation.
.SS COLOR CONTROLS
.TP
.B color=on
May be "on" or "off". Determines whether Taskwarrior uses color. When "off",
.B color=1
May be "1" or "0". Determines whether Taskwarrior uses color. When "0",
will use dashes (-----) to underline column headings.
.TP
.B fontunderline=on
.B fontunderline=1
Determines if font underlines or ASCII dashes should be used to underline
headers, even when color is enabled.
.RE
@@ -806,7 +855,7 @@ automatic coloring of that task. A list of valid colors, depending on your
terminal, can be obtained by running the command:
.RS
.B task color
.B task colors
.RE
.RS
@@ -878,12 +927,11 @@ desired. In such cases, use the following option to disable this behaviour:
.RE
.TP
.B rule.color.merge=yes
Can be "yes" or "no". When "no", disables merging of colors produced by
.B rule.color.merge=1
Can be "1" or "0". When "0", disables merging of colors produced by
different color rules. Use if your color scheme produces unpleasing
foreground and background combinations.
See the task-color(5) man pages for color details.
.RE
@@ -971,6 +1019,11 @@ Color of today with due tasks in calendar.
Color of days with overdue tasks in calendar.
.RE
.TP
.B color.calendar.scheduled=black on orange
Color of days with scheduled tasks in calendar.
.RE
.TP
.B color.calendar.weekend=bright white on black
Color of weekend days in calendar.
@@ -1056,7 +1109,7 @@ Colors the output of the sync command.
.TP
.B rule.precedence.color=due.today,active,blocking,blocked,overdue,due,
.B scheduled,keyword.,project.,tag.,uda.,recurring,
.B pri.,tagged,completed,deleted
.B tagged,completed,deleted
.RS
This setting specifies the precedence of the color rules, from highest to
lowest. Note that the prefix 'color.' is omitted (for brevity), and that any
@@ -1149,7 +1202,7 @@ The coefficients reflect the relative importance of the various terms in the
urgency calculation. These are default values, and may be modified to suit your
preferences, but it is important that you carefully consider any modifications.
.B urgency.inherit=off
.B urgency.inherit=0
.RS
Not actually a coefficient. When enabled, blocking tasks inherit
the highest urgency value found in the tasks they block. This is
@@ -1176,6 +1229,14 @@ Provides a default due date for the
command, if you don't specify one. You can use a date, or a duration value which
is assumed to be relative to 'now'. The default is blank.
.TP
.B
default.scheduled=...
Provides a default scheduled date for the
.I task add
command, if you don't specify one. You can use a date, or a duration value which
is assumed to be relative to 'now'. The default is blank.
.TP
.B
uda.<name>.default=...
@@ -1233,6 +1294,12 @@ The description for report X when running the "task help" command.
This is a comma-separated list of columns and formatting specifiers. See the
command 'task columns' for a full list of options and examples.
.TP
.B report.X.context
A boolean value representing whether the given report should respect (apply)
the currently active context. See CONTEXT section for details about context.
Defaults to 1.
.TP
.B report.X.labels
The labels for each column that will be used when generating report X. The
@@ -1264,6 +1331,9 @@ will be presented in the order (if any) in which they are selected.
This adds a filter to the report X so that only tasks matching the filter
criteria are displayed in the generated report.
There is a special case for 'report.timesheet.filter', which may be specified
even though the 'timesheet' report is not very customizable.
.TP
.B report.X.dateformat
This adds a dateformat to the report X that will be used by the "due date"
@@ -1425,75 +1495,40 @@ Stores the value of the currently active context.
.RE
.TP
.B context.<name>=<filter>
.RS
Stores the definition of the context with the name <name>.
.B context.<name>.read=<filter>
.RE
.br
.B context.<name>.write=<modifications>
.RS
Stores the definition of the read or write context with the name <name>. Read
context is the default filter applied when the context is active. The write
context are the default modifications applied to newly added tasks when the
context is active.
.RE
.TP
.B context.<name>.rc.<key>=<value>
.RS
The rc type allows to override any configuration parameter for the current
context, e.g. if the default command for the context home should be changed to
home_report, the following statement could be added:
context.home.rc.default.command=home_report
.RE
.SS SYNC
These configuration settings are used to connect and sync tasks with the task
server.
.TP
.B taskd.server=<host>:<port>
.RS
Specifies the hostname and port of the Taskserver. Hostname may be an IPv4 or
IPv6 address, or domain. Port is an integer.
.RE
.TP
.B taskd.credentials=<organization>/<user>/<key>
.RS
User identification for the Taskserver, which includes a private key.
.RE
.TP
.B taskd.certificate=<path>
.RS
Specifies the path to the client certificate used for identification with the
Taskserver.
.RE
.TP
.B taskd.key=<path>
.RS
Specifies the path to the client key used for encrypted communication with the
Taskserver.
.RE
.TP
.B taskd.ca=<path>
.RS
Specifies the path to the CA certificate in the event that your Taskserver is
using a self-signed certificate. Optional.
.RE
.TP
.B taskd.trust=strict|ignore hostname|allow all
.RS
This settings allows you to override the trust level when server certificates
are validated. With "allow all", the server certificate is trusted
automatically. With "ignore hostname", the server certificate is verified but
the hostname is ignored. With "strict", the server certificate is verified.
Default is "strict", which requires full validation.
.RE
.TP
.B taskd.ciphers=NORMAL
Override of the cipher selection. The set of ciphers used by TLS may be
controlled by both server and client. There must be some overlap between
client and server supported ciphers, or communication cannot occur.
Default is "NORMAL". See GnuTLS documentation for full details.
.RE
.SH "CREDITS & COPYRIGHTS"
Copyright (C) 2006 \- 2016 P. Beckingham, F. Hernandez.
Copyright (C) 2006 \- 2021 T. Babej, P. Beckingham, F. Hernandez.
This man page was originally written by Federico Hernandez.
Taskwarrior is distributed under the MIT license. See
http://www.opensource.org/licenses/mit-license.php for more information.
https://www.opensource.org/licenses/mit-license.php for more information.
.SH SEE ALSO
.BR task(1),
@@ -1504,18 +1539,17 @@ For more information regarding Taskwarrior, see the following:
.TP
The official site at
<http://taskwarrior.org>
<https://taskwarrior.org>
.TP
The official code repository at
<https://git.tasktools.org/scm/tm/task.git>
<https://github.com/GothenburgBitFactory/taskwarrior>
.TP
You can contact the project by emailing
<support@taskwarrior.org>
<support@GothenburgBitFactory.org>
.SH REPORTING BUGS
.TP
Bugs in Taskwarrior may be reported to the issue-tracker at
<https://bug.tasktools.org/>
<https://github.com/GothenburgBitFactory/taskwarrior/issues>

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.L=
# Tags
color.tag.next=bold yellow
color.tag.none=
color.tagged=green
color.tagged=
# Due
color.due=red

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.M=color250
# Tags
color.tag.next=rgb440
color.tag.none=
color.tagged=rgb031
color.tagged=
# Due
color.due.today=rgb400

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.M=rgb025
# Tags
color.tag.next=rgb550
color.tag.none=
color.tagged=color246
color.tagged=
# Due
color.due.today=color252

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.M=rgb030
# Tags
color.tag.next=rgb440
color.tag.none=
color.tagged=color246
color.tagged=
# Due
color.due.today=color252

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.M=rgb400
# Tags
color.tag.next=rgb511
color.tag.none=
color.tagged=color246
color.tagged=
# Due
color.due.today=color252

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.L=rgb325
# Tags
color.tag.next=
color.tag.none=
color.tagged=rgb334
color.tagged=
# Due
color.due=rgb015

View File

@@ -1,6 +1,6 @@
###############################################################################
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -20,7 +20,7 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
@@ -57,7 +57,7 @@ color.uda.priority.L=rgb010
# Tags
color.tag.next=
color.tag.none=
color.tagged=rgb342
color.tagged=
# Due
color.due=rgb440

View File

@@ -1,69 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/be-BY/2015.json
# http://holidata.net/be-BY/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.be-BY1.name=Новы Год
holiday.be-BY1.date=20150101
holiday.be-BY2.name=Раство Хрыстова(праваслаўнае)
holiday.be-BY2.date=20150107
holiday.be-BY3.name=Міжнародны жаночы дзень
holiday.be-BY3.date=20150803
holiday.be-BY4.name=Пасха(праваслаўная)
holiday.be-BY4.date=20150420
holiday.be-BY5.name=Радуніца
holiday.be-BY5.date=20150421
holiday.be-BY6.name=Свята працы
holiday.be-BY6.date=20150501
holiday.be-BY7.name=Дзень Перамогі
holiday.be-BY7.date=20150509
holiday.be-BY8.name=Дзень незалежнаці
holiday.be-BY8.date=20150703
holiday.be-BY9.name=Дзень Кастрычніцкай рэвалюцыі
holiday.be-BY9.date=20151107
holiday.be-BY10.name=Раство Хрыстова(у заходніх хрысціян)
holiday.be-BY10.date=20151225
holiday.be-BY11.name=Новы Год
holiday.be-BY11.date=20160101
holiday.be-BY12.name=Раство Хрыстова(праваслаўнае)
holiday.be-BY12.date=20160107
holiday.be-BY13.name=Міжнародны жаночы дзень
holiday.be-BY13.date=20160803
holiday.be-BY14.name=Пасха(праваслаўная)
holiday.be-BY14.date=20160327
holiday.be-BY15.name=Радуніца
holiday.be-BY15.date=20160510
holiday.be-BY16.name=Свята працы
holiday.be-BY16.date=20160501
holiday.be-BY17.name=Дзень Перамогі
holiday.be-BY17.date=20160509
holiday.be-BY18.name=Дзень незалежнаці
holiday.be-BY18.date=20160703
holiday.be-BY19.name=Дзень Кастрычніцкай рэвалюцыі
holiday.be-BY19.date=20161107
holiday.be-BY20.name=Раство Хрыстова(у заходніх хрысціян)
holiday.be-BY20.date=20161225

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/cs-CZ/2015.json
# http://holidata.net/cs-CZ/2016.json
# https://holidata.net/cs-CZ/2021.json
# https://holidata.net/cs-CZ/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,59 +23,63 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.cs-CZ1.name=Nový rok
holiday.cs-CZ1.date=20150101
holiday.cs-CZ2.name=Den obnovy samostatnosti českého státu
holiday.cs-CZ2.date=20150101
holiday.cs-CZ3.name=Velikonoční pondělí
holiday.cs-CZ3.date=20150406
holiday.cs-CZ4.name=Svátek práce
holiday.cs-CZ4.date=20150501
holiday.cs-CZ5.name=Den vítězství
holiday.cs-CZ5.date=20150508
holiday.cs-CZ6.name=Den slovanských věrozvěstů
holiday.cs-CZ6.date=20150705
holiday.cs-CZ7.name=Den upálení mistra Jana Husa
holiday.cs-CZ7.date=20150706
holiday.cs-CZ8.name=Den české státnosti
holiday.cs-CZ8.date=20150928
holiday.cs-CZ9.name=Den vzniku samostatného československého státu
holiday.cs-CZ9.date=20151028
holiday.cs-CZ10.name=Den boje za svobodu a demokracii
holiday.cs-CZ10.date=20151117
holiday.cs-CZ11.name=Štědrý den
holiday.cs-CZ11.date=20151224
holiday.cs-CZ12.name=1. svátek vánoční
holiday.cs-CZ12.date=20151225
holiday.cs-CZ13.name=2. svátek vánoční
holiday.cs-CZ13.date=20151226
holiday.cs-CZ14.name=Nový rok
holiday.cs-CZ14.date=20160101
holiday.cs-CZ15.name=Den obnovy samostatnosti českého státu
holiday.cs-CZ15.date=20160101
holiday.cs-CZ16.name=Velikonoční pondělí
holiday.cs-CZ16.date=20160328
holiday.cs-CZ17.name=Svátek práce
holiday.cs-CZ17.date=20160501
holiday.cs-CZ18.name=Den vítězství
holiday.cs-CZ18.date=20160508
holiday.cs-CZ19.name=Den slovanských věrozvěstů
holiday.cs-CZ19.date=20160705
holiday.cs-CZ20.name=Den upálení mistra Jana Husa
holiday.cs-CZ20.date=20160706
holiday.cs-CZ21.name=Den české státnosti
holiday.cs-CZ21.date=20160928
holiday.cs-CZ22.name=Den vzniku samostatného československého státu
holiday.cs-CZ22.date=20161028
holiday.cs-CZ23.name=Den boje za svobodu a demokracii
holiday.cs-CZ23.date=20161117
holiday.cs-CZ24.name=Štědrý den
holiday.cs-CZ24.date=20161224
holiday.cs-CZ25.name=1. svátek vánoční
holiday.cs-CZ25.date=20161225
holiday.cs-CZ26.name=2. svátek vánoční
holiday.cs-CZ26.date=20161226
holiday.cs-CZ1.date=20210101
holiday.cs-CZ2.name=Den obnovy samostatného českého státu
holiday.cs-CZ2.date=20210101
holiday.cs-CZ3.name=Velký pátek
holiday.cs-CZ3.date=20210402
holiday.cs-CZ4.name=Velikonoční pondělí
holiday.cs-CZ4.date=20210405
holiday.cs-CZ5.name=Svátek práce
holiday.cs-CZ5.date=20210501
holiday.cs-CZ6.name=Den vítězství
holiday.cs-CZ6.date=20210508
holiday.cs-CZ7.name=Den slovanských věrozvěstů Cyrila a Metoděje
holiday.cs-CZ7.date=20210705
holiday.cs-CZ8.name=Den upálení mistra Jana Husa
holiday.cs-CZ8.date=20210706
holiday.cs-CZ9.name=Den české státnosti
holiday.cs-CZ9.date=20210928
holiday.cs-CZ10.name=Den vzniku samostatného československého státu
holiday.cs-CZ10.date=20211028
holiday.cs-CZ11.name=Den boje za svobodu a demokracii a Mezinárodní den studentstva
holiday.cs-CZ11.date=20211117
holiday.cs-CZ12.name=Štědrý den
holiday.cs-CZ12.date=20211224
holiday.cs-CZ13.name=1. svátek vánoční
holiday.cs-CZ13.date=20211225
holiday.cs-CZ14.name=2. svátek vánoční
holiday.cs-CZ14.date=20211226
holiday.cs-CZ15.name=Nový rok
holiday.cs-CZ15.date=20220101
holiday.cs-CZ16.name=Den obnovy samostatného českého státu
holiday.cs-CZ16.date=20220101
holiday.cs-CZ17.name=Velký pátek
holiday.cs-CZ17.date=20220415
holiday.cs-CZ18.name=Velikonoční pondělí
holiday.cs-CZ18.date=20220418
holiday.cs-CZ19.name=Svátek práce
holiday.cs-CZ19.date=20220501
holiday.cs-CZ20.name=Den vítězství
holiday.cs-CZ20.date=20220508
holiday.cs-CZ21.name=Den slovanských věrozvěstů Cyrila a Metoděje
holiday.cs-CZ21.date=20220705
holiday.cs-CZ22.name=Den upálení mistra Jana Husa
holiday.cs-CZ22.date=20220706
holiday.cs-CZ23.name=Den české státnosti
holiday.cs-CZ23.date=20220928
holiday.cs-CZ24.name=Den vzniku samostatného československého státu
holiday.cs-CZ24.date=20221028
holiday.cs-CZ25.name=Den boje za svobodu a demokracii a Mezinárodní den studentstva
holiday.cs-CZ25.date=20221117
holiday.cs-CZ26.name=Štědrý den
holiday.cs-CZ26.date=20221224
holiday.cs-CZ27.name=1. svátek vánoční
holiday.cs-CZ27.date=20221225
holiday.cs-CZ28.name=2. svátek vánoční
holiday.cs-CZ28.date=20221226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/da-DK/2015.json
# http://holidata.net/da-DK/2016.json
# https://holidata.net/da-DK/2021.json
# https://holidata.net/da-DK/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,51 +23,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.da-DK1.name=Nytårsdag
holiday.da-DK1.date=20150101
holiday.da-DK1.date=20210101
holiday.da-DK2.name=Skærtorsdag
holiday.da-DK2.date=20150402
holiday.da-DK2.date=20210401
holiday.da-DK3.name=Langfredag
holiday.da-DK3.date=20150403
holiday.da-DK3.date=20210402
holiday.da-DK4.name=Påskedag
holiday.da-DK4.date=20150405
holiday.da-DK4.date=20210404
holiday.da-DK5.name=Anden påskedag
holiday.da-DK5.date=20150406
holiday.da-DK6.name=Kristi himmelfartsdag
holiday.da-DK6.date=20150514
holiday.da-DK7.name=Pinsedag
holiday.da-DK7.date=20150524
holiday.da-DK8.name=Anden pinsedag
holiday.da-DK8.date=20150525
holiday.da-DK9.name=Grundlovsdag
holiday.da-DK9.date=20150605
holiday.da-DK10.name=Juledag
holiday.da-DK10.date=20151225
holiday.da-DK11.name=Anden juledag
holiday.da-DK11.date=20151226
holiday.da-DK12.name=Nytårsdag
holiday.da-DK12.date=20160101
holiday.da-DK13.name=Skærtorsdag
holiday.da-DK13.date=20160324
holiday.da-DK14.name=Langfredag
holiday.da-DK14.date=20160325
holiday.da-DK15.name=Påskedag
holiday.da-DK15.date=20160327
holiday.da-DK16.name=Anden påskedag
holiday.da-DK16.date=20160328
holiday.da-DK17.name=Kristi himmelfartsdag
holiday.da-DK17.date=20160505
holiday.da-DK18.name=Pinsedag
holiday.da-DK18.date=20160515
holiday.da-DK19.name=Anden pinsedag
holiday.da-DK19.date=20160516
holiday.da-DK5.date=20210405
holiday.da-DK6.name=Store bededag
holiday.da-DK6.date=20210430
holiday.da-DK7.name=Kristi himmelfartsdag
holiday.da-DK7.date=20210513
holiday.da-DK8.name=Pinsedag
holiday.da-DK8.date=20210523
holiday.da-DK9.name=Anden pinsedag
holiday.da-DK9.date=20210524
holiday.da-DK10.name=Grundlovsdag
holiday.da-DK10.date=20210605
holiday.da-DK11.name=Juledag
holiday.da-DK11.date=20211225
holiday.da-DK12.name=Anden juledag
holiday.da-DK12.date=20211226
holiday.da-DK13.name=Nytårsdag
holiday.da-DK13.date=20220101
holiday.da-DK14.name=Skærtorsdag
holiday.da-DK14.date=20220414
holiday.da-DK15.name=Langfredag
holiday.da-DK15.date=20220415
holiday.da-DK16.name=Påskedag
holiday.da-DK16.date=20220417
holiday.da-DK17.name=Anden påskedag
holiday.da-DK17.date=20220418
holiday.da-DK18.name=Store bededag
holiday.da-DK18.date=20220513
holiday.da-DK19.name=Kristi himmelfartsdag
holiday.da-DK19.date=20220526
holiday.da-DK20.name=Grundlovsdag
holiday.da-DK20.date=20160605
holiday.da-DK21.name=Juledag
holiday.da-DK21.date=20161225
holiday.da-DK22.name=Anden juledag
holiday.da-DK22.date=20161226
holiday.da-DK20.date=20220605
holiday.da-DK21.name=Pinsedag
holiday.da-DK21.date=20220605
holiday.da-DK22.name=Anden pinsedag
holiday.da-DK22.date=20220606
holiday.da-DK23.name=Juledag
holiday.da-DK23.date=20221225
holiday.da-DK24.name=Anden juledag
holiday.da-DK24.date=20221226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-AT/2015.json
# http://holidata.net/de-AT/2016.json
# https://holidata.net/de-AT/2021.json
# https://holidata.net/de-AT/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,103 +23,103 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.de-AT1.name=Neujahr
holiday.de-AT1.date=20150101
holiday.de-AT2.name=Heilige drei Könige
holiday.de-AT2.date=20150106
holiday.de-AT3.name=Josef (K, St, T, V)
holiday.de-AT3.date=20150319
holiday.de-AT1.date=20210101
holiday.de-AT2.name=Heilige drei Könige
holiday.de-AT2.date=20210106
holiday.de-AT3.name=Josef
holiday.de-AT3.date=20210319
holiday.de-AT4.name=Karfreitag
holiday.de-AT4.date=20150403
holiday.de-AT4.date=20210402
holiday.de-AT5.name=Ostersonntag
holiday.de-AT5.date=20150405
holiday.de-AT5.date=20210404
holiday.de-AT6.name=Ostermontag
holiday.de-AT6.date=20150406
holiday.de-AT6.date=20210405
holiday.de-AT7.name=Staatsfeiertag
holiday.de-AT7.date=20150501
holiday.de-AT8.name=Florian (O)
holiday.de-AT8.date=20150504
holiday.de-AT7.date=20210501
holiday.de-AT8.name=Florian
holiday.de-AT8.date=20210504
holiday.de-AT9.name=Christi Himmelfahrt
holiday.de-AT9.date=20150514
holiday.de-AT9.date=20210513
holiday.de-AT10.name=Pfingstsonntag
holiday.de-AT10.date=20150524
holiday.de-AT10.date=20210523
holiday.de-AT11.name=Pfingstmontag
holiday.de-AT11.date=20150525
holiday.de-AT11.date=20210524
holiday.de-AT12.name=Fronleichnam
holiday.de-AT12.date=20150604
holiday.de-AT12.date=20210603
holiday.de-AT13.name=Mariä Himmelfahrt
holiday.de-AT13.date=20150815
holiday.de-AT14.name=Rupert (S)
holiday.de-AT14.date=20150924
holiday.de-AT15.name=Tag der Volksabstimmung (K)
holiday.de-AT15.date=20151010
holiday.de-AT13.date=20210815
holiday.de-AT14.name=Rupert
holiday.de-AT14.date=20210924
holiday.de-AT15.name=Tag der Volksabstimmung
holiday.de-AT15.date=20211010
holiday.de-AT16.name=Nationalfeiertag
holiday.de-AT16.date=20151026
holiday.de-AT16.date=20211026
holiday.de-AT17.name=Allerheiligen
holiday.de-AT17.date=20151101
holiday.de-AT18.name=Martin (B)
holiday.de-AT18.date=20151111
holiday.de-AT19.name=Leopold (W, N)
holiday.de-AT19.date=20151115
holiday.de-AT17.date=20211101
holiday.de-AT18.name=Martin
holiday.de-AT18.date=20211111
holiday.de-AT19.name=Leopold
holiday.de-AT19.date=20211115
holiday.de-AT20.name=Mariä Empfängnis
holiday.de-AT20.date=20151208
holiday.de-AT20.date=20211208
holiday.de-AT21.name=Heiliger Abend
holiday.de-AT21.date=20151224
holiday.de-AT21.date=20211224
holiday.de-AT22.name=Christtag
holiday.de-AT22.date=20151225
holiday.de-AT22.date=20211225
holiday.de-AT23.name=Stefanitag
holiday.de-AT23.date=20151226
holiday.de-AT23.date=20211226
holiday.de-AT24.name=Silvester
holiday.de-AT24.date=20151231
holiday.de-AT24.date=20211231
holiday.de-AT25.name=Neujahr
holiday.de-AT25.date=20160101
holiday.de-AT26.name=Heilige drei Könige
holiday.de-AT26.date=20160106
holiday.de-AT27.name=Josef (K, St, T, V)
holiday.de-AT27.date=20160319
holiday.de-AT25.date=20220101
holiday.de-AT26.name=Heilige drei Könige
holiday.de-AT26.date=20220106
holiday.de-AT27.name=Josef
holiday.de-AT27.date=20220319
holiday.de-AT28.name=Karfreitag
holiday.de-AT28.date=20160325
holiday.de-AT28.date=20220415
holiday.de-AT29.name=Ostersonntag
holiday.de-AT29.date=20160327
holiday.de-AT29.date=20220417
holiday.de-AT30.name=Ostermontag
holiday.de-AT30.date=20160328
holiday.de-AT30.date=20220418
holiday.de-AT31.name=Staatsfeiertag
holiday.de-AT31.date=20160501
holiday.de-AT32.name=Florian (O)
holiday.de-AT32.date=20160504
holiday.de-AT31.date=20220501
holiday.de-AT32.name=Florian
holiday.de-AT32.date=20220504
holiday.de-AT33.name=Christi Himmelfahrt
holiday.de-AT33.date=20160505
holiday.de-AT33.date=20220526
holiday.de-AT34.name=Pfingstsonntag
holiday.de-AT34.date=20160515
holiday.de-AT34.date=20220605
holiday.de-AT35.name=Pfingstmontag
holiday.de-AT35.date=20160516
holiday.de-AT35.date=20220606
holiday.de-AT36.name=Fronleichnam
holiday.de-AT36.date=20160526
holiday.de-AT36.date=20220616
holiday.de-AT37.name=Mariä Himmelfahrt
holiday.de-AT37.date=20160815
holiday.de-AT38.name=Rupert (S)
holiday.de-AT38.date=20160924
holiday.de-AT39.name=Tag der Volksabstimmung (K)
holiday.de-AT39.date=20161010
holiday.de-AT37.date=20220815
holiday.de-AT38.name=Rupert
holiday.de-AT38.date=20220924
holiday.de-AT39.name=Tag der Volksabstimmung
holiday.de-AT39.date=20221010
holiday.de-AT40.name=Nationalfeiertag
holiday.de-AT40.date=20161026
holiday.de-AT40.date=20221026
holiday.de-AT41.name=Allerheiligen
holiday.de-AT41.date=20161101
holiday.de-AT42.name=Martin (B)
holiday.de-AT42.date=20161111
holiday.de-AT43.name=Leopold (W, N)
holiday.de-AT43.date=20161115
holiday.de-AT41.date=20221101
holiday.de-AT42.name=Martin
holiday.de-AT42.date=20221111
holiday.de-AT43.name=Leopold
holiday.de-AT43.date=20221115
holiday.de-AT44.name=Mariä Empfängnis
holiday.de-AT44.date=20161208
holiday.de-AT44.date=20221208
holiday.de-AT45.name=Heiliger Abend
holiday.de-AT45.date=20161224
holiday.de-AT45.date=20221224
holiday.de-AT46.name=Christtag
holiday.de-AT46.date=20161225
holiday.de-AT46.date=20221225
holiday.de-AT47.name=Stefanitag
holiday.de-AT47.date=20161226
holiday.de-AT47.date=20221226
holiday.de-AT48.name=Silvester
holiday.de-AT48.date=20161231
holiday.de-AT48.date=20221231

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-BE/2015.json
# http://holidata.net/de-BE/2016.json
# https://holidata.net/de-BE/2021.json
# https://holidata.net/de-BE/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,55 +23,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.de-BE1.name=Neujahr
holiday.de-BE1.date=20150101
holiday.de-BE1.date=20210101
holiday.de-BE2.name=Ostern
holiday.de-BE2.date=20150405
holiday.de-BE2.date=20210404
holiday.de-BE3.name=Ostermontag
holiday.de-BE3.date=20150406
holiday.de-BE3.date=20210405
holiday.de-BE4.name=Tag der Arbeit
holiday.de-BE4.date=20150501
holiday.de-BE4.date=20210501
holiday.de-BE5.name=Christi Himmelfahrt
holiday.de-BE5.date=20150514
holiday.de-BE5.date=20210513
holiday.de-BE6.name=Pfingsten
holiday.de-BE6.date=20150524
holiday.de-BE6.date=20210523
holiday.de-BE7.name=Pfingstmontag
holiday.de-BE7.date=20150525
holiday.de-BE7.date=20210524
holiday.de-BE8.name=Nationalfeiertag
holiday.de-BE8.date=20150721
holiday.de-BE8.date=20210721
holiday.de-BE9.name=Mariä Himmelfahrt
holiday.de-BE9.date=20150815
holiday.de-BE9.date=20210815
holiday.de-BE10.name=Allerheiligen
holiday.de-BE10.date=20151101
holiday.de-BE10.date=20211101
holiday.de-BE11.name=Waffenstillstand
holiday.de-BE11.date=20151111
holiday.de-BE11.date=20211111
holiday.de-BE12.name=Weihnacht
holiday.de-BE12.date=20151225
holiday.de-BE12.date=20211225
holiday.de-BE13.name=Neujahr
holiday.de-BE13.date=20160101
holiday.de-BE13.date=20220101
holiday.de-BE14.name=Ostern
holiday.de-BE14.date=20160527
holiday.de-BE14.date=20220417
holiday.de-BE15.name=Ostermontag
holiday.de-BE15.date=20160528
holiday.de-BE15.date=20220418
holiday.de-BE16.name=Tag der Arbeit
holiday.de-BE16.date=20160501
holiday.de-BE16.date=20220501
holiday.de-BE17.name=Christi Himmelfahrt
holiday.de-BE17.date=20160505
holiday.de-BE17.date=20220526
holiday.de-BE18.name=Pfingsten
holiday.de-BE18.date=20160515
holiday.de-BE18.date=20220605
holiday.de-BE19.name=Pfingstmontag
holiday.de-BE19.date=20160516
holiday.de-BE19.date=20220606
holiday.de-BE20.name=Nationalfeiertag
holiday.de-BE20.date=20160721
holiday.de-BE20.date=20220721
holiday.de-BE21.name=Mariä Himmelfahrt
holiday.de-BE21.date=20160815
holiday.de-BE21.date=20220815
holiday.de-BE22.name=Allerheiligen
holiday.de-BE22.date=20161101
holiday.de-BE22.date=20221101
holiday.de-BE23.name=Waffenstillstand
holiday.de-BE23.date=20161111
holiday.de-BE23.date=20221111
holiday.de-BE24.name=Weihnacht
holiday.de-BE24.date=20161225
holiday.de-BE24.date=20221225

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-CH/2015.json
# http://holidata.net/de-CH/2016.json
# https://holidata.net/de-CH/2021.json
# https://holidata.net/de-CH/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,79 +23,79 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.de-CH1.name=Neujahrstag
holiday.de-CH1.date=20150101
holiday.de-CH1.date=20210101
holiday.de-CH2.name=Berchtoldstag
holiday.de-CH2.date=20150102
holiday.de-CH2.date=20210102
holiday.de-CH3.name=Heilige Drei Könige
holiday.de-CH3.date=20150106
holiday.de-CH3.date=20210106
holiday.de-CH4.name=Josefstag
holiday.de-CH4.date=20150319
holiday.de-CH4.date=20210319
holiday.de-CH5.name=Karfreitag
holiday.de-CH5.date=20150403
holiday.de-CH5.date=20210402
holiday.de-CH6.name=Ostersonntag
holiday.de-CH6.date=20150405
holiday.de-CH6.date=20210404
holiday.de-CH7.name=Ostermontag
holiday.de-CH7.date=20150406
holiday.de-CH7.date=20210405
holiday.de-CH8.name=Tag der Arbeit
holiday.de-CH8.date=20150501
holiday.de-CH8.date=20210501
holiday.de-CH9.name=Auffahrt
holiday.de-CH9.date=20150514
holiday.de-CH9.date=20210513
holiday.de-CH10.name=Pfingstsonntag
holiday.de-CH10.date=20150524
holiday.de-CH10.date=20210523
holiday.de-CH11.name=Pfingstmontag
holiday.de-CH11.date=20150525
holiday.de-CH11.date=20210524
holiday.de-CH12.name=Fronleichnam
holiday.de-CH12.date=20150604
holiday.de-CH12.date=20210603
holiday.de-CH13.name=Bundesfeier
holiday.de-CH13.date=20150801
holiday.de-CH13.date=20210801
holiday.de-CH14.name=Mariä Himmelfahrt
holiday.de-CH14.date=20150815
holiday.de-CH14.date=20210815
holiday.de-CH15.name=Allerheiligen
holiday.de-CH15.date=20151101
holiday.de-CH15.date=20211101
holiday.de-CH16.name=Mariä Empfängnis
holiday.de-CH16.date=20151208
holiday.de-CH16.date=20211208
holiday.de-CH17.name=Weihnachtstag
holiday.de-CH17.date=20151225
holiday.de-CH17.date=20211225
holiday.de-CH18.name=Stephanstag
holiday.de-CH18.date=20151226
holiday.de-CH18.date=20211226
holiday.de-CH19.name=Neujahrstag
holiday.de-CH19.date=20160101
holiday.de-CH19.date=20220101
holiday.de-CH20.name=Berchtoldstag
holiday.de-CH20.date=20160102
holiday.de-CH20.date=20220102
holiday.de-CH21.name=Heilige Drei Könige
holiday.de-CH21.date=20160106
holiday.de-CH21.date=20220106
holiday.de-CH22.name=Josefstag
holiday.de-CH22.date=20160319
holiday.de-CH22.date=20220319
holiday.de-CH23.name=Karfreitag
holiday.de-CH23.date=20160325
holiday.de-CH23.date=20220415
holiday.de-CH24.name=Ostersonntag
holiday.de-CH24.date=20160327
holiday.de-CH24.date=20220417
holiday.de-CH25.name=Ostermontag
holiday.de-CH25.date=20160328
holiday.de-CH25.date=20220418
holiday.de-CH26.name=Tag der Arbeit
holiday.de-CH26.date=20160501
holiday.de-CH26.date=20220501
holiday.de-CH27.name=Auffahrt
holiday.de-CH27.date=20160505
holiday.de-CH27.date=20220526
holiday.de-CH28.name=Pfingstsonntag
holiday.de-CH28.date=20160515
holiday.de-CH28.date=20220605
holiday.de-CH29.name=Pfingstmontag
holiday.de-CH29.date=20160516
holiday.de-CH29.date=20220606
holiday.de-CH30.name=Fronleichnam
holiday.de-CH30.date=20160526
holiday.de-CH30.date=20220616
holiday.de-CH31.name=Bundesfeier
holiday.de-CH31.date=20160801
holiday.de-CH31.date=20220801
holiday.de-CH32.name=Mariä Himmelfahrt
holiday.de-CH32.date=20160815
holiday.de-CH32.date=20220815
holiday.de-CH33.name=Allerheiligen
holiday.de-CH33.date=20161101
holiday.de-CH33.date=20221101
holiday.de-CH34.name=Mariä Empfängnis
holiday.de-CH34.date=20161208
holiday.de-CH34.date=20221208
holiday.de-CH35.name=Weihnachtstag
holiday.de-CH35.date=20161225
holiday.de-CH35.date=20221225
holiday.de-CH36.name=Stephanstag
holiday.de-CH36.date=20161226
holiday.de-CH36.date=20221226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/de-DE/2015.json
# http://holidata.net/de-DE/2016.json
# https://holidata.net/de-DE/2021.json
# https://holidata.net/de-DE/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,83 +23,87 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.de-DE1.name=Neujahr
holiday.de-DE1.date=20150101
holiday.de-DE1.date=20210101
holiday.de-DE2.name=Heilige drei Könige
holiday.de-DE2.date=20150106
holiday.de-DE3.name=Karfreitag
holiday.de-DE3.date=20150403
holiday.de-DE4.name=Ostern
holiday.de-DE4.date=20150405
holiday.de-DE5.name=Ostermontag
holiday.de-DE5.date=20150406
holiday.de-DE6.name=Erster Maifeiertag
holiday.de-DE6.date=20150501
holiday.de-DE7.name=Christi Himmelfahrt
holiday.de-DE7.date=20150514
holiday.de-DE8.name=Pfingstsonntag
holiday.de-DE8.date=20150524
holiday.de-DE9.name=Pfingstmontag
holiday.de-DE9.date=20150525
holiday.de-DE10.name=Fronleichnam
holiday.de-DE10.date=20150604
holiday.de-DE11.name=Mariä Himmelfahrt
holiday.de-DE11.date=20150815
holiday.de-DE12.name=Tag der Deutschen Einheit
holiday.de-DE12.date=20151003
holiday.de-DE13.name=Reformationstag
holiday.de-DE13.date=20151031
holiday.de-DE14.name=Allerheiligen
holiday.de-DE14.date=20151101
holiday.de-DE15.name=Buß- und Bettag
holiday.de-DE15.date=20151118
holiday.de-DE16.name=Heilig Abend
holiday.de-DE16.date=20151224
holiday.de-DE17.name=Weihnachtstag
holiday.de-DE17.date=20151225
holiday.de-DE18.name=Zweiter Weihnachtstag
holiday.de-DE18.date=20151226
holiday.de-DE19.name=Silvester
holiday.de-DE19.date=20151231
holiday.de-DE20.name=Neujahr
holiday.de-DE20.date=20160101
holiday.de-DE21.name=Heilige drei Könige
holiday.de-DE21.date=20160106
holiday.de-DE22.name=Karfreitag
holiday.de-DE22.date=20160325
holiday.de-DE23.name=Ostern
holiday.de-DE23.date=20160327
holiday.de-DE24.name=Ostermontag
holiday.de-DE24.date=20160328
holiday.de-DE25.name=Erster Maifeiertag
holiday.de-DE25.date=20160501
holiday.de-DE26.name=Christi Himmelfahrt
holiday.de-DE26.date=20160505
holiday.de-DE27.name=Pfingstsonntag
holiday.de-DE27.date=20160515
holiday.de-DE28.name=Pfingstmontag
holiday.de-DE28.date=20160516
holiday.de-DE29.name=Fronleichnam
holiday.de-DE29.date=20160526
holiday.de-DE30.name=Mariä Himmelfahrt
holiday.de-DE30.date=20160815
holiday.de-DE31.name=Tag der Deutschen Einheit
holiday.de-DE31.date=20161003
holiday.de-DE32.name=Reformationstag
holiday.de-DE32.date=20161031
holiday.de-DE33.name=Allerheiligen
holiday.de-DE33.date=20161101
holiday.de-DE34.name=Buß- und Bettag
holiday.de-DE34.date=20161116
holiday.de-DE35.name=Heilig Abend
holiday.de-DE35.date=20161224
holiday.de-DE36.name=Weihnachtstag
holiday.de-DE36.date=20161225
holiday.de-DE37.name=Zweiter Weihnachtstag
holiday.de-DE37.date=20161226
holiday.de-DE38.name=Silvester
holiday.de-DE38.date=20161231
holiday.de-DE2.date=20210106
holiday.de-DE3.name=Internationaler Frauentag
holiday.de-DE3.date=20210308
holiday.de-DE4.name=Karfreitag
holiday.de-DE4.date=20210402
holiday.de-DE5.name=Ostern
holiday.de-DE5.date=20210404
holiday.de-DE6.name=Ostermontag
holiday.de-DE6.date=20210405
holiday.de-DE7.name=Erster Maifeiertag
holiday.de-DE7.date=20210501
holiday.de-DE8.name=Christi Himmelfahrt
holiday.de-DE8.date=20210513
holiday.de-DE9.name=Pfingstsonntag
holiday.de-DE9.date=20210523
holiday.de-DE10.name=Pfingstmontag
holiday.de-DE10.date=20210524
holiday.de-DE11.name=Fronleichnam
holiday.de-DE11.date=20210603
holiday.de-DE12.name=Mariä Himmelfahrt
holiday.de-DE12.date=20210815
holiday.de-DE13.name=Tag der Deutschen Einheit
holiday.de-DE13.date=20211003
holiday.de-DE14.name=Reformationstag
holiday.de-DE14.date=20211031
holiday.de-DE15.name=Allerheiligen
holiday.de-DE15.date=20211101
holiday.de-DE16.name=Buß- und Bettag
holiday.de-DE16.date=20211117
holiday.de-DE17.name=Heilig Abend
holiday.de-DE17.date=20211224
holiday.de-DE18.name=Weihnachtstag
holiday.de-DE18.date=20211225
holiday.de-DE19.name=Zweiter Weihnachtstag
holiday.de-DE19.date=20211226
holiday.de-DE20.name=Silvester
holiday.de-DE20.date=20211231
holiday.de-DE21.name=Neujahr
holiday.de-DE21.date=20220101
holiday.de-DE22.name=Heilige drei Könige
holiday.de-DE22.date=20220106
holiday.de-DE23.name=Internationaler Frauentag
holiday.de-DE23.date=20220308
holiday.de-DE24.name=Karfreitag
holiday.de-DE24.date=20220415
holiday.de-DE25.name=Ostern
holiday.de-DE25.date=20220417
holiday.de-DE26.name=Ostermontag
holiday.de-DE26.date=20220418
holiday.de-DE27.name=Erster Maifeiertag
holiday.de-DE27.date=20220501
holiday.de-DE28.name=Christi Himmelfahrt
holiday.de-DE28.date=20220526
holiday.de-DE29.name=Pfingstsonntag
holiday.de-DE29.date=20220605
holiday.de-DE30.name=Pfingstmontag
holiday.de-DE30.date=20220606
holiday.de-DE31.name=Fronleichnam
holiday.de-DE31.date=20220616
holiday.de-DE32.name=Mariä Himmelfahrt
holiday.de-DE32.date=20220815
holiday.de-DE33.name=Tag der Deutschen Einheit
holiday.de-DE33.date=20221003
holiday.de-DE34.name=Reformationstag
holiday.de-DE34.date=20221031
holiday.de-DE35.name=Allerheiligen
holiday.de-DE35.date=20221101
holiday.de-DE36.name=Buß- und Bettag
holiday.de-DE36.date=20221116
holiday.de-DE37.name=Heilig Abend
holiday.de-DE37.date=20221224
holiday.de-DE38.name=Weihnachtstag
holiday.de-DE38.date=20221225
holiday.de-DE39.name=Zweiter Weihnachtstag
holiday.de-DE39.date=20221226
holiday.de-DE40.name=Silvester
holiday.de-DE40.date=20221231

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/el-GR/2015.json
# http://holidata.net/el-GR/2016.json
# https://holidata.net/el-GR/2021.json
# https://holidata.net/el-GR/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,63 +23,63 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.el-GR1.name=Πρωτοχρονιά
holiday.el-GR1.date=20150101
holiday.el-GR1.date=20210101
holiday.el-GR2.name=Θεοφάνεια
holiday.el-GR2.date=20150106
holiday.el-GR2.date=20210106
holiday.el-GR3.name=Καθαρά Δευτέρα
holiday.el-GR3.date=20150223
holiday.el-GR3.date=20210315
holiday.el-GR4.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
holiday.el-GR4.date=20150325
holiday.el-GR5.name=Πρωτομαγιά
holiday.el-GR5.date=20150418
holiday.el-GR6.name=Μεγάλη Παρασκευή
holiday.el-GR6.date=20150410
holiday.el-GR7.name=Μεγάλο Σάββατο
holiday.el-GR7.date=20150411
holiday.el-GR4.date=20210325
holiday.el-GR5.name=Μεγάλη Παρασκευή
holiday.el-GR5.date=20210430
holiday.el-GR6.name=Μεγάλο Σάββατο
holiday.el-GR6.date=20210501
holiday.el-GR7.name=Πρωτομαγιά
holiday.el-GR7.date=20210501
holiday.el-GR8.name=Πάσχα
holiday.el-GR8.date=20150412
holiday.el-GR8.date=20210502
holiday.el-GR9.name=Δευτέρα του Πάσχα
holiday.el-GR9.date=20150413
holiday.el-GR9.date=20210503
holiday.el-GR10.name=Δευτέρα του Αγίου Πνεύματος
holiday.el-GR10.date=20150601
holiday.el-GR10.date=20210621
holiday.el-GR11.name=Κοίμηση της Θεοτόκου
holiday.el-GR11.date=20150815
holiday.el-GR11.date=20210815
holiday.el-GR12.name=Ημέρα του ΌΧΙ
holiday.el-GR12.date=20151028
holiday.el-GR12.date=20211028
holiday.el-GR13.name=Χριστούγεννα
holiday.el-GR13.date=20151225
holiday.el-GR13.date=20211225
holiday.el-GR14.name=Επόμενη ημέρα Χριστουγέννων
holiday.el-GR14.date=20151226
holiday.el-GR14.date=20211226
holiday.el-GR15.name=Πρωτοχρονιά
holiday.el-GR15.date=20160101
holiday.el-GR15.date=20220101
holiday.el-GR16.name=Θεοφάνεια
holiday.el-GR16.date=20160106
holiday.el-GR16.date=20220106
holiday.el-GR17.name=Καθαρά Δευτέρα
holiday.el-GR17.date=20160314
holiday.el-GR17.date=20220307
holiday.el-GR18.name=Ευαγγελισμός της Θεοτόκου και Εθνική Ημέρα Ανεξαρτησίας της Ελλάδας
holiday.el-GR18.date=20160325
holiday.el-GR19.name=Πρωτομαγιά
holiday.el-GR19.date=20160418
holiday.el-GR20.name=Μεγάλη Παρασκευή
holiday.el-GR20.date=20160429
holiday.el-GR21.name=Μεγάλο Σάββατο
holiday.el-GR21.date=20160430
holiday.el-GR22.name=Πάσχα
holiday.el-GR22.date=20160501
holiday.el-GR23.name=Δευτέρα του Πάσχα
holiday.el-GR23.date=20160502
holiday.el-GR18.date=20220325
holiday.el-GR19.name=Μεγάλη Παρασκευή
holiday.el-GR19.date=20220422
holiday.el-GR20.name=Μεγάλο Σάββατο
holiday.el-GR20.date=20220423
holiday.el-GR21.name=Πάσχα
holiday.el-GR21.date=20220424
holiday.el-GR22.name=Δευτέρα του Πάσχα
holiday.el-GR22.date=20220425
holiday.el-GR23.name=Πρωτομαγιά
holiday.el-GR23.date=20220501
holiday.el-GR24.name=Δευτέρα του Αγίου Πνεύματος
holiday.el-GR24.date=20160620
holiday.el-GR24.date=20220613
holiday.el-GR25.name=Κοίμηση της Θεοτόκου
holiday.el-GR25.date=20160815
holiday.el-GR25.date=20220815
holiday.el-GR26.name=Ημέρα του ΌΧΙ
holiday.el-GR26.date=20161028
holiday.el-GR26.date=20221028
holiday.el-GR27.name=Χριστούγεννα
holiday.el-GR27.date=20161225
holiday.el-GR27.date=20221225
holiday.el-GR28.name=Επόμενη ημέρα Χριστουγέννων
holiday.el-GR28.date=20161226
holiday.el-GR28.date=20221226

View File

@@ -1,119 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-AU/2015.json
# http://holidata.net/en-AU/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-AU1.name=New Year's Day
holiday.en-AU1.date=20150101
holiday.en-AU2.name=Australia Day
holiday.en-AU2.date=20150126
holiday.en-AU3.name=Royal Hobart Regatta
holiday.en-AU3.date=20150209
holiday.en-AU4.name=Labour Day
holiday.en-AU4.date=20150302
holiday.en-AU5.name=Labour Day
holiday.en-AU5.date=20150309
holiday.en-AU6.name=Canberra Day
holiday.en-AU6.date=20150309
holiday.en-AU7.name=Eight Hours Day
holiday.en-AU7.date=20150309
holiday.en-AU8.name=Good Friday
holiday.en-AU8.date=20150403
holiday.en-AU9.name=Easter Saturday
holiday.en-AU9.date=20150404
holiday.en-AU10.name=Easter Sunday
holiday.en-AU10.date=20150405
holiday.en-AU11.name=Easter Monday
holiday.en-AU11.date=20150406
holiday.en-AU12.name=Anzac Day
holiday.en-AU12.date=20150425
holiday.en-AU13.name=May Day
holiday.en-AU13.date=20150504
holiday.en-AU14.name=Foundation Day
holiday.en-AU14.date=20150601
holiday.en-AU15.name=Queen's Birthday
holiday.en-AU15.date=20150608
holiday.en-AU16.name=Picnic Day
holiday.en-AU16.date=20150803
holiday.en-AU17.name=Bank Holiday
holiday.en-AU17.date=20150803
holiday.en-AU18.name=Queen's Birthday
holiday.en-AU18.date=20150928
holiday.en-AU19.name=Labour Day
holiday.en-AU19.date=20151005
holiday.en-AU20.name=Recreation Day
holiday.en-AU20.date=20151102
holiday.en-AU21.name=Christmas Day
holiday.en-AU21.date=20151225
holiday.en-AU22.name=Boxing Day
holiday.en-AU22.date=20151226
holiday.en-AU23.name=Proclamation Day
holiday.en-AU23.date=20151226
holiday.en-AU24.name=New Year's Day
holiday.en-AU24.date=20160101
holiday.en-AU25.name=Australia Day
holiday.en-AU25.date=20160126
holiday.en-AU26.name=Royal Hobart Regatta
holiday.en-AU26.date=20160208
holiday.en-AU27.name=Labour Day
holiday.en-AU27.date=20160307
holiday.en-AU28.name=Labour Day
holiday.en-AU28.date=20160314
holiday.en-AU29.name=Canberra Day
holiday.en-AU29.date=20160314
holiday.en-AU30.name=Eight Hours Day
holiday.en-AU30.date=20160314
holiday.en-AU31.name=Good Friday
holiday.en-AU31.date=20160325
holiday.en-AU32.name=Easter Saturday
holiday.en-AU32.date=20160326
holiday.en-AU33.name=Easter Monday
holiday.en-AU33.date=20160327
holiday.en-AU34.name=Anzac Day
holiday.en-AU34.date=20160425
holiday.en-AU35.name=May Day
holiday.en-AU35.date=20160502
holiday.en-AU36.name=Foundation Day
holiday.en-AU36.date=20160603
holiday.en-AU37.name=Queen's Birthday
holiday.en-AU37.date=20160613
holiday.en-AU38.name=Picnic Day
holiday.en-AU38.date=20160801
holiday.en-AU39.name=Bank Holiday
holiday.en-AU39.date=20160801
holiday.en-AU40.name=Queen's Birthday
holiday.en-AU40.date=20160926
holiday.en-AU41.name=Labour Day
holiday.en-AU41.date=20161003
holiday.en-AU42.name=Recreation Day
holiday.en-AU42.date=20161107
holiday.en-AU43.name=Christmas Day
holiday.en-AU43.date=20161225
holiday.en-AU44.name=Boxing Day
holiday.en-AU44.date=20161226
holiday.en-AU45.name=Proclamation Day
holiday.en-AU45.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-CA/2015.json
# http://holidata.net/en-CA/2016.json
# https://holidata.net/en-CA/2021.json
# https://holidata.net/en-CA/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,55 +23,83 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-CA1.name=New Year's Day
holiday.en-CA1.date=20150101
holiday.en-CA1.date=20210101
holiday.en-CA2.name=Family Day
holiday.en-CA2.date=20150209
holiday.en-CA3.name=Good Friday
holiday.en-CA3.date=20150403
holiday.en-CA4.name=Easter Monday
holiday.en-CA4.date=20150406
holiday.en-CA5.name=Victoria Day
holiday.en-CA5.date=20150518
holiday.en-CA6.name=Canada Day
holiday.en-CA6.date=20150701
holiday.en-CA7.name=First Monday of August
holiday.en-CA7.date=20150803
holiday.en-CA8.name=Labour Day
holiday.en-CA8.date=20150907
holiday.en-CA9.name=Thanksgiving Day
holiday.en-CA9.date=20151012
holiday.en-CA10.name=Remembrance Day
holiday.en-CA10.date=20151111
holiday.en-CA11.name=Christmas Day
holiday.en-CA11.date=20151225
holiday.en-CA12.name=Boxing Day
holiday.en-CA12.date=20151226
holiday.en-CA13.name=New Year's Day
holiday.en-CA13.date=20160101
holiday.en-CA14.name=Family Day
holiday.en-CA14.date=20160208
holiday.en-CA15.name=Good Friday
holiday.en-CA15.date=20160325
holiday.en-CA16.name=Easter Monday
holiday.en-CA16.date=20160328
holiday.en-CA17.name=Victoria Day
holiday.en-CA17.date=20160523
holiday.en-CA18.name=Canada Day
holiday.en-CA18.date=20160701
holiday.en-CA19.name=First Monday of August
holiday.en-CA19.date=20160801
holiday.en-CA20.name=Labour Day
holiday.en-CA20.date=20160905
holiday.en-CA21.name=Thanksgiving Day
holiday.en-CA21.date=20161010
holiday.en-CA22.name=Remembrance Day
holiday.en-CA22.date=20161111
holiday.en-CA23.name=Christmas Day
holiday.en-CA23.date=20161225
holiday.en-CA24.name=Boxing Day
holiday.en-CA24.date=20161226
holiday.en-CA2.date=20210215
holiday.en-CA3.name=Louis Riel Day
holiday.en-CA3.date=20210215
holiday.en-CA4.name=Islander Day
holiday.en-CA4.date=20210215
holiday.en-CA5.name=Good Friday
holiday.en-CA5.date=20210402
holiday.en-CA6.name=Easter Monday
holiday.en-CA6.date=20210405
holiday.en-CA7.name=National Patriots' Day
holiday.en-CA7.date=20210524
holiday.en-CA8.name=Victoria Day
holiday.en-CA8.date=20210524
holiday.en-CA9.name=National Holiday
holiday.en-CA9.date=20210624
holiday.en-CA10.name=Canada Day
holiday.en-CA10.date=20210701
holiday.en-CA11.name=August Civic Holiday
holiday.en-CA11.date=20210802
holiday.en-CA12.name=Saskatchewan Day
holiday.en-CA12.date=20210802
holiday.en-CA13.name=Heritage Day
holiday.en-CA13.date=20210802
holiday.en-CA14.name=New Brunswick Day
holiday.en-CA14.date=20210802
holiday.en-CA15.name=Labour Day
holiday.en-CA15.date=20210906
holiday.en-CA16.name=Thanksgiving Day
holiday.en-CA16.date=20211011
holiday.en-CA17.name=Remembrance Day
holiday.en-CA17.date=20211111
holiday.en-CA18.name=Christmas Day
holiday.en-CA18.date=20211225
holiday.en-CA19.name=Boxing Day
holiday.en-CA19.date=20211226
holiday.en-CA20.name=New Year's Day
holiday.en-CA20.date=20220101
holiday.en-CA21.name=Family Day
holiday.en-CA21.date=20220221
holiday.en-CA22.name=Louis Riel Day
holiday.en-CA22.date=20220221
holiday.en-CA23.name=Islander Day
holiday.en-CA23.date=20220221
holiday.en-CA24.name=Good Friday
holiday.en-CA24.date=20220415
holiday.en-CA25.name=Easter Monday
holiday.en-CA25.date=20220418
holiday.en-CA26.name=National Patriots' Day
holiday.en-CA26.date=20220523
holiday.en-CA27.name=Victoria Day
holiday.en-CA27.date=20220523
holiday.en-CA28.name=National Holiday
holiday.en-CA28.date=20220624
holiday.en-CA29.name=Canada Day
holiday.en-CA29.date=20220701
holiday.en-CA30.name=August Civic Holiday
holiday.en-CA30.date=20220801
holiday.en-CA31.name=Saskatchewan Day
holiday.en-CA31.date=20220801
holiday.en-CA32.name=Heritage Day
holiday.en-CA32.date=20220801
holiday.en-CA33.name=New Brunswick Day
holiday.en-CA33.date=20220801
holiday.en-CA34.name=Labour Day
holiday.en-CA34.date=20220905
holiday.en-CA35.name=Thanksgiving Day
holiday.en-CA35.date=20221010
holiday.en-CA36.name=Remembrance Day
holiday.en-CA36.date=20221111
holiday.en-CA37.name=Christmas Day
holiday.en-CA37.date=20221225
holiday.en-CA38.name=Boxing Day
holiday.en-CA38.date=20221226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-GB/2015.json
# http://holidata.net/en-GB/2016.json
# https://holidata.net/en-GB/2021.json
# https://holidata.net/en-GB/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,39 +23,47 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-GB1.name=New Year's Day
holiday.en-GB1.date=20150101
holiday.en-GB1.date=20210101
holiday.en-GB2.name=Good Friday
holiday.en-GB2.date=20150403
holiday.en-GB2.date=20210402
holiday.en-GB3.name=Easter Monday
holiday.en-GB3.date=20150406
holiday.en-GB3.date=20210405
holiday.en-GB4.name=Early May Bank Holiday
holiday.en-GB4.date=20150504
holiday.en-GB4.date=20210503
holiday.en-GB5.name=Spring Bank Holiday
holiday.en-GB5.date=20150525
holiday.en-GB5.date=20210531
holiday.en-GB6.name=August Bank Holiday
holiday.en-GB6.date=20150831
holiday.en-GB6.date=20210830
holiday.en-GB7.name=Christmas Day
holiday.en-GB7.date=20151225
holiday.en-GB7.date=20211225
holiday.en-GB8.name=Boxing Day
holiday.en-GB8.date=20151226
holiday.en-GB9.name=New Year's Day
holiday.en-GB9.date=20160101
holiday.en-GB10.name=Good Friday
holiday.en-GB10.date=20160325
holiday.en-GB11.name=Easter Monday
holiday.en-GB11.date=20160328
holiday.en-GB12.name=Early May Bank Holiday
holiday.en-GB12.date=20160502
holiday.en-GB13.name=Spring Bank Holiday
holiday.en-GB13.date=20160530
holiday.en-GB14.name=August Bank Holiday
holiday.en-GB14.date=20160829
holiday.en-GB15.name=Christmas Day
holiday.en-GB15.date=20161225
holiday.en-GB16.name=Boxing Day
holiday.en-GB16.date=20161226
holiday.en-GB8.date=20211226
holiday.en-GB9.name=Christmas Day (observed)
holiday.en-GB9.date=20211227
holiday.en-GB10.name=Boxing Day (observed)
holiday.en-GB10.date=20211228
holiday.en-GB11.name=New Year's Day
holiday.en-GB11.date=20220101
holiday.en-GB12.name=New Year's Day (observed)
holiday.en-GB12.date=20220103
holiday.en-GB13.name=Good Friday
holiday.en-GB13.date=20220415
holiday.en-GB14.name=Easter Monday
holiday.en-GB14.date=20220418
holiday.en-GB15.name=Early May Bank Holiday
holiday.en-GB15.date=20220502
holiday.en-GB16.name=Spring Bank Holiday
holiday.en-GB16.date=20220530
holiday.en-GB17.name=August Bank Holiday
holiday.en-GB17.date=20220829
holiday.en-GB18.name=Christmas Day
holiday.en-GB18.date=20221225
holiday.en-GB19.name=Boxing Day
holiday.en-GB19.date=20221226
holiday.en-GB20.name=Christmas Day (observed)
holiday.en-GB20.date=20221227

View File

@@ -1,81 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-GL/2015.json
# http://holidata.net/en-GL/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-GL1.name=New Year's Day
holiday.en-GL1.date=20150101
holiday.en-GL2.name=Epiphany
holiday.en-GL2.date=20150106
holiday.en-GL3.name=Maundy Thursday
holiday.en-GL3.date=20150402
holiday.en-GL4.name=Good Friday
holiday.en-GL4.date=20150303
holiday.en-GL5.name=Easter Monday
holiday.en-GL5.date=20150406
holiday.en-GL6.name=General Prayer Day
holiday.en-GL6.date=20150501
holiday.en-GL7.name=Ascension
holiday.en-GL7.date=20150514
holiday.en-GL8.name=Whit Monday
holiday.en-GL8.date=20150525
holiday.en-GL9.name=Ullortuneq
holiday.en-GL9.date=20150621
holiday.en-GL10.name=Christmas Eve
holiday.en-GL10.date=20151224
holiday.en-GL11.name=Christmas Day
holiday.en-GL11.date=20151225
holiday.en-GL12.name=St Stephen's Day
holiday.en-GL12.date=20151226
holiday.en-GL13.name=New Year's Eve
holiday.en-GL13.date=20151231
holiday.en-GL14.name=New Year's Day
holiday.en-GL14.date=20160101
holiday.en-GL15.name=Epiphany
holiday.en-GL15.date=20160106
holiday.en-GL16.name=Maundy Thursday
holiday.en-GL16.date=20160324
holiday.en-GL17.name=Good Friday
holiday.en-GL17.date=20160325
holiday.en-GL18.name=Easter Monday
holiday.en-GL18.date=20160428
holiday.en-GL19.name=General Prayer Day
holiday.en-GL19.date=20160422
holiday.en-GL20.name=Ascension
holiday.en-GL20.date=20160505
holiday.en-GL21.name=Whit Monday
holiday.en-GL21.date=20160516
holiday.en-GL22.name=Ullortuneq
holiday.en-GL22.date=20160621
holiday.en-GL23.name=Christmas Eve
holiday.en-GL23.date=20161224
holiday.en-GL24.name=Christmas Day
holiday.en-GL24.date=20161225
holiday.en-GL25.name=St Stephen's Day
holiday.en-GL25.date=20161226
holiday.en-GL26.name=New Year's Eve
holiday.en-GL26.date=20161231

View File

@@ -1,95 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-HK/2015.json
# http://holidata.net/en-HK/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-HK1.name=The first day of January
holiday.en-HK1.date=20150101
holiday.en-HK2.name=Lunar New Years Day
holiday.en-HK2.date=20150219
holiday.en-HK3.name=The second day of Lunar New Year
holiday.en-HK3.date=20150220
holiday.en-HK4.name=The third day of Lunar New Year
holiday.en-HK4.date=20150221
holiday.en-HK5.name=Good Friday
holiday.en-HK5.date=20150403
holiday.en-HK6.name=The day following Good Friday
holiday.en-HK6.date=20150404
holiday.en-HK7.name=The day following Ching Ming Festival
holiday.en-HK7.date=20150406
holiday.en-HK8.name=The day following Easter Monday
holiday.en-HK8.date=20150407
holiday.en-HK9.name=Labour Day
holiday.en-HK9.date=20150501
holiday.en-HK10.name=The Birthday of the Buddha
holiday.en-HK10.date=20150525
holiday.en-HK11.name=Tuen Ng Festival
holiday.en-HK11.date=20150620
holiday.en-HK12.name=Hong Kong Special Administrative Region Establishment Day
holiday.en-HK12.date=20150701
holiday.en-HK13.name=The day following the Chinese Mid-Autumn Festival
holiday.en-HK13.date=20150928
holiday.en-HK14.name=National Day
holiday.en-HK14.date=20151001
holiday.en-HK15.name=Chung Yeung Festival
holiday.en-HK15.date=20151021
holiday.en-HK16.name=Christmas Day
holiday.en-HK16.date=20151225
holiday.en-HK17.name=The first weekday after Christmas Day
holiday.en-HK17.date=20151226
holiday.en-HK18.name=The first day of January
holiday.en-HK18.date=20160101
holiday.en-HK19.name=Lunar New Years Day
holiday.en-HK19.date=20160208
holiday.en-HK20.name=The second day of Lunar New Year
holiday.en-HK20.date=20160209
holiday.en-HK21.name=The third day of Lunar New Year
holiday.en-HK21.date=20160210
holiday.en-HK22.name=Good Friday
holiday.en-HK22.date=20160325
holiday.en-HK23.name=The day following Good Friday
holiday.en-HK23.date=20160326
holiday.en-HK24.name=Ching Ming Festival
holiday.en-HK24.date=20160404
holiday.en-HK25.name=Labour Day
holiday.en-HK25.date=20160501
holiday.en-HK26.name=The Birthday of the Buddha
holiday.en-HK26.date=20160514
holiday.en-HK27.name=Tuen Ng Festival
holiday.en-HK27.date=20160609
holiday.en-HK28.name=Hong Kong Special Administrative Region Establishment Day
holiday.en-HK28.date=20160701
holiday.en-HK29.name=The day following the Chinese Mid-Autumn Festival
holiday.en-HK29.date=20160916
holiday.en-HK30.name=National Day
holiday.en-HK30.date=20161001
holiday.en-HK31.name=Chung Yeung Festival
holiday.en-HK31.date=20161010
holiday.en-HK32.name=Christmas Day
holiday.en-HK32.date=20161225
holiday.en-HK33.name=The first weekday after Christmas Day
holiday.en-HK33.date=20161226

View File

@@ -1,103 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-IN/2015.json
# http://holidata.net/en-IN/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-IN1.name=New Year's Day
holiday.en-IN1.date=20160101
holiday.en-IN2.name=Lohri
holiday.en-IN2.date=20160114
holiday.en-IN3.name=Pongal, Makar Sankranti
holiday.en-IN3.date=20160115
holiday.en-IN4.name=Guru Gobind Singh Jayanti
holiday.en-IN4.date=20160116
holiday.en-IN5.name=Republic Day
holiday.en-IN5.date=20160126
holiday.en-IN6.name=Vasant Panchami
holiday.en-IN6.date=20160212
holiday.en-IN7.name=Guru Ravidas Jayanti
holiday.en-IN7.date=20160222
holiday.en-IN8.name=Maha Shivaratri
holiday.en-IN8.date=20160307
holiday.en-IN9.name=Chhoti Holi, Holika Dahan
holiday.en-IN9.date=20160323
holiday.en-IN10.name=Holi
holiday.en-IN10.date=20160324
holiday.en-IN11.name=Good Friday
holiday.en-IN11.date=20160325
holiday.en-IN12.name=Easter
holiday.en-IN12.date=20160327
holiday.en-IN13.name=Gudi Padwa, Ugadi
holiday.en-IN13.date=20160408
holiday.en-IN14.name=Solar New Year, Baisakhi
holiday.en-IN14.date=20160413
holiday.en-IN15.name=Rama Navami
holiday.en-IN15.date=20160415
holiday.en-IN16.name=Hazarat Ali's Birthday
holiday.en-IN16.date=20160421
holiday.en-IN17.name=Buddha Purnima
holiday.en-IN17.date=20160521
holiday.en-IN18.name=Eid al-Fitr , Ramadan
holiday.en-IN18.date=20160707
holiday.en-IN19.name=Independence Day
holiday.en-IN19.date=20160815
holiday.en-IN20.name=Rakhi, Raksha Bandhan
holiday.en-IN20.date=20160818
holiday.en-IN21.name=Krishna Janmashtami
holiday.en-IN21.date=20160825
holiday.en-IN22.name=Ganesh Chaturthi
holiday.en-IN22.date=20160905
holiday.en-IN23.name=Onam, Eid al-Adha, Bakrid
holiday.en-IN23.date=20160913
holiday.en-IN24.name=Gandhi Jayanti
holiday.en-IN24.date=20161002
holiday.en-IN25.name=Durga Ashtami
holiday.en-IN25.date=20161009
holiday.en-IN26.name=Maha Navami
holiday.en-IN26.date=20161010
holiday.en-IN27.name=Dussehra, Madhvacharya Jayanti
holiday.en-IN27.date=20161011
holiday.en-IN28.name=Muharram
holiday.en-IN28.date=20161012
holiday.en-IN29.name=Valmiki Jayanti
holiday.en-IN29.date=20161016
holiday.en-IN30.name=Karwa Chauth
holiday.en-IN30.date=20161019
holiday.en-IN31.name=Diwali, Lakshmi Puja
holiday.en-IN31.date=20161030
holiday.en-IN32.name=Gowardhan Puja
holiday.en-IN32.date=20161031
holiday.en-IN33.name=Bhaiya Dooj
holiday.en-IN33.date=20161101
holiday.en-IN34.name=Chhath Puja
holiday.en-IN34.date=20161106
holiday.en-IN35.name=Guru Nanak Jayanti, Nehru Jayanti
holiday.en-IN35.date=20161114
holiday.en-IN36.name=Milad an-Nabi, Id-e-Milad
holiday.en-IN36.date=20161212
holiday.en-IN37.name=Christmas
holiday.en-IN37.date=20161225

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-NZ/2015.json
# http://holidata.net/en-NZ/2016.json
# https://holidata.net/en-NZ/2021.json
# https://holidata.net/en-NZ/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,47 +23,61 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-NZ1.name=New Year's Day
holiday.en-NZ1.date=20150101
holiday.en-NZ2.name=Day after New Years Day
holiday.en-NZ2.date=20150102
holiday.en-NZ1.date=20210101
holiday.en-NZ2.name=Day after New Year's Day
holiday.en-NZ2.date=20210104
holiday.en-NZ3.name=Waitangi Day
holiday.en-NZ3.date=20150206
holiday.en-NZ4.name=Good Friday
holiday.en-NZ4.date=20150403
holiday.en-NZ5.name=Easter Monday
holiday.en-NZ5.date=20150406
holiday.en-NZ6.name=ANZAC Day
holiday.en-NZ6.date=20150425
holiday.en-NZ7.name=Queen's Birthday
holiday.en-NZ7.date=20150601
holiday.en-NZ8.name=Labour Day
holiday.en-NZ8.date=20151026
holiday.en-NZ9.name=Christmas Day
holiday.en-NZ9.date=20151225
holiday.en-NZ10.name=Boxing Day
holiday.en-NZ10.date=20151226
holiday.en-NZ11.name=New Year's Day
holiday.en-NZ11.date=20160101
holiday.en-NZ12.name=Day after New Years Day
holiday.en-NZ12.date=20160104
holiday.en-NZ13.name=Waitangi Day
holiday.en-NZ13.date=20160206
holiday.en-NZ14.name=Good Friday
holiday.en-NZ14.date=20160325
holiday.en-NZ15.name=Easter Monday
holiday.en-NZ15.date=20160328
holiday.en-NZ16.name=ANZAC Day
holiday.en-NZ16.date=20160425
holiday.en-NZ17.name=Queen's Birthday
holiday.en-NZ17.date=20160606
holiday.en-NZ18.name=Labour Day
holiday.en-NZ18.date=20161024
holiday.en-NZ19.name=Christmas Day
holiday.en-NZ19.date=20161225
holiday.en-NZ20.name=Boxing Day
holiday.en-NZ20.date=20161226
holiday.en-NZ3.date=20210206
holiday.en-NZ4.name=Waitangi Day (observed)
holiday.en-NZ4.date=20210208
holiday.en-NZ5.name=Good Friday
holiday.en-NZ5.date=20210402
holiday.en-NZ6.name=Easter Monday
holiday.en-NZ6.date=20210405
holiday.en-NZ7.name=ANZAC Day
holiday.en-NZ7.date=20210425
holiday.en-NZ8.name=ANZAC Day (observed)
holiday.en-NZ8.date=20210426
holiday.en-NZ9.name=Queen's Birthday
holiday.en-NZ9.date=20210607
holiday.en-NZ10.name=Labour Day
holiday.en-NZ10.date=20211025
holiday.en-NZ11.name=Christmas Day
holiday.en-NZ11.date=20211225
holiday.en-NZ12.name=Boxing Day
holiday.en-NZ12.date=20211226
holiday.en-NZ13.name=Christmas Day (observed)
holiday.en-NZ13.date=20211227
holiday.en-NZ14.name=Boxing Day (observed)
holiday.en-NZ14.date=20211228
holiday.en-NZ15.name=New Year's Day
holiday.en-NZ15.date=20220101
holiday.en-NZ16.name=New Year's Day (observed)
holiday.en-NZ16.date=20220103
holiday.en-NZ17.name=Day after New Year's Day
holiday.en-NZ17.date=20220104
holiday.en-NZ18.name=Waitangi Day
holiday.en-NZ18.date=20220206
holiday.en-NZ19.name=Waitangi Day (observed)
holiday.en-NZ19.date=20220207
holiday.en-NZ20.name=Good Friday
holiday.en-NZ20.date=20220415
holiday.en-NZ21.name=Easter Monday
holiday.en-NZ21.date=20220418
holiday.en-NZ22.name=ANZAC Day
holiday.en-NZ22.date=20220425
holiday.en-NZ23.name=Queen's Birthday
holiday.en-NZ23.date=20220606
holiday.en-NZ24.name=Labour Day
holiday.en-NZ24.date=20221024
holiday.en-NZ25.name=Christmas Day
holiday.en-NZ25.date=20221225
holiday.en-NZ26.name=Boxing Day
holiday.en-NZ26.date=20221226
holiday.en-NZ27.name=Christmas Day (observed)
holiday.en-NZ27.date=20221227

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-US/2015.json
# http://holidata.net/en-US/2016.json
# https://holidata.net/en-US/2021.json
# https://holidata.net/en-US/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,51 +23,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-US1.name=New Year's Day
holiday.en-US1.date=20150101
holiday.en-US1.date=20210101
holiday.en-US2.name=Birthday of Martin Luther King, Jr.
holiday.en-US2.date=20150119
holiday.en-US2.date=20210118
holiday.en-US3.name=Washington's Birthday
holiday.en-US3.date=20150216
holiday.en-US3.date=20210215
holiday.en-US4.name=Patriots' Day
holiday.en-US4.date=20150420
holiday.en-US4.date=20210419
holiday.en-US5.name=Memorial Day
holiday.en-US5.date=20150525
holiday.en-US5.date=20210531
holiday.en-US6.name=Independence Day
holiday.en-US6.date=20150704
holiday.en-US6.date=20210704
holiday.en-US7.name=Labor Day
holiday.en-US7.date=20150907
holiday.en-US7.date=20210906
holiday.en-US8.name=Columbus Day
holiday.en-US8.date=20151012
holiday.en-US8.date=20211011
holiday.en-US9.name=Veterans Day
holiday.en-US9.date=20151111
holiday.en-US9.date=20211111
holiday.en-US10.name=Thanksgiving Day
holiday.en-US10.date=20151126
holiday.en-US10.date=20211125
holiday.en-US11.name=Christmas Day
holiday.en-US11.date=20151225
holiday.en-US11.date=20211225
holiday.en-US12.name=New Year's Day
holiday.en-US12.date=20160101
holiday.en-US12.date=20220101
holiday.en-US13.name=Birthday of Martin Luther King, Jr.
holiday.en-US13.date=20160118
holiday.en-US13.date=20220117
holiday.en-US14.name=Washington's Birthday
holiday.en-US14.date=20160215
holiday.en-US14.date=20220221
holiday.en-US15.name=Patriots' Day
holiday.en-US15.date=20160418
holiday.en-US15.date=20220418
holiday.en-US16.name=Memorial Day
holiday.en-US16.date=20160530
holiday.en-US16.date=20220530
holiday.en-US17.name=Independence Day
holiday.en-US17.date=20160704
holiday.en-US17.date=20220704
holiday.en-US18.name=Labor Day
holiday.en-US18.date=20160905
holiday.en-US18.date=20220905
holiday.en-US19.name=Columbus Day
holiday.en-US19.date=20161010
holiday.en-US19.date=20221010
holiday.en-US20.name=Veterans Day
holiday.en-US20.date=20161111
holiday.en-US20.date=20221111
holiday.en-US21.name=Thanksgiving Day
holiday.en-US21.date=20161124
holiday.en-US22.name=Christmas Day
holiday.en-US22.date=20161225
holiday.en-US21.date=20221124
holiday.en-US22.name=Day after Thanksgiving
holiday.en-US22.date=20221125
holiday.en-US23.name=Christmas Eve
holiday.en-US23.date=20221224
holiday.en-US24.name=Christmas Day
holiday.en-US24.date=20221225

View File

@@ -1,77 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/en-ZA/2015.json
# http://holidata.net/en-ZA/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.en-ZA1.name=New Year's Day
holiday.en-ZA1.date=20150101
holiday.en-ZA2.name=Human Rights Day
holiday.en-ZA2.date=20150321
holiday.en-ZA3.name=Good Friday
holiday.en-ZA3.date=20150403
holiday.en-ZA4.name=Family Day
holiday.en-ZA4.date=20150406
holiday.en-ZA5.name=Freedom Day
holiday.en-ZA5.date=20150427
holiday.en-ZA6.name=Workers' Day
holiday.en-ZA6.date=20150501
holiday.en-ZA7.name=Youth Day
holiday.en-ZA7.date=20150616
holiday.en-ZA8.name=National Women's Day
holiday.en-ZA8.date=20150809
holiday.en-ZA9.name=Heritage Day
holiday.en-ZA9.date=20150924
holiday.en-ZA10.name=Day of Reconciliation
holiday.en-ZA10.date=20151217
holiday.en-ZA11.name=Christmas Day
holiday.en-ZA11.date=20151225
holiday.en-ZA12.name=Day of Goodwill
holiday.en-ZA12.date=20151226
holiday.en-ZA13.name=New Year's Day
holiday.en-ZA13.date=20160101
holiday.en-ZA14.name=Human Rights Day
holiday.en-ZA14.date=20160321
holiday.en-ZA15.name=Good Friday
holiday.en-ZA15.date=20160325
holiday.en-ZA16.name=Family Day
holiday.en-ZA16.date=20160328
holiday.en-ZA17.name=Freedom Day
holiday.en-ZA17.date=20160427
holiday.en-ZA18.name=Workers' Day
holiday.en-ZA18.date=20160501
holiday.en-ZA19.name=Youth Day
holiday.en-ZA19.date=20160616
holiday.en-ZA20.name=National Women's Day
holiday.en-ZA20.date=20160809
holiday.en-ZA21.name=Heritage Day
holiday.en-ZA21.date=20160924
holiday.en-ZA22.name=Day of Reconciliation
holiday.en-ZA22.date=20161217
holiday.en-ZA23.name=Christmas Day
holiday.en-ZA23.date=20161225
holiday.en-ZA24.name=Day of Goodwill
holiday.en-ZA24.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/es-CO/2015.json
# http://holidata.net/es-CO/2016.json
# https://holidata.net/es-CO/2021.json
# https://holidata.net/es-CO/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,83 +23,83 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.es-CO1.name=Año Nuevo
holiday.es-CO1.date=20150101
holiday.es-CO1.date=20210101
holiday.es-CO2.name=Día de los Reyes Magos
holiday.es-CO2.date=20150112
holiday.es-CO2.date=20210111
holiday.es-CO3.name=Día de San José
holiday.es-CO3.date=20150323
holiday.es-CO3.date=20210322
holiday.es-CO4.name=Jueves Santo
holiday.es-CO4.date=20150402
holiday.es-CO4.date=20210401
holiday.es-CO5.name=Viernes Santo
holiday.es-CO5.date=20150403
holiday.es-CO5.date=20210402
holiday.es-CO6.name=Domingo de Pascua
holiday.es-CO6.date=20150405
holiday.es-CO6.date=20210404
holiday.es-CO7.name=Día del Trabajo
holiday.es-CO7.date=20150501
holiday.es-CO7.date=20210501
holiday.es-CO8.name=La Ascensión del Señor
holiday.es-CO8.date=20150518
holiday.es-CO8.date=20210517
holiday.es-CO9.name=Corpus Christi
holiday.es-CO9.date=20150608
holiday.es-CO9.date=20210607
holiday.es-CO10.name=El Sagrado Corazón de Jesús
holiday.es-CO10.date=20150615
holiday.es-CO10.date=20210614
holiday.es-CO11.name=San Pedro y San Pablo
holiday.es-CO11.date=20150629
holiday.es-CO11.date=20210705
holiday.es-CO12.name=Grito de Independencia
holiday.es-CO12.date=20150720
holiday.es-CO12.date=20210720
holiday.es-CO13.name=Batalla de Boyacá
holiday.es-CO13.date=20150807
holiday.es-CO13.date=20210807
holiday.es-CO14.name=Asunción de la Virgen
holiday.es-CO14.date=20150817
holiday.es-CO14.date=20210816
holiday.es-CO15.name=Día de la Raza
holiday.es-CO15.date=20151012
holiday.es-CO15.date=20211018
holiday.es-CO16.name=Todos los Santos
holiday.es-CO16.date=20151102
holiday.es-CO16.date=20211101
holiday.es-CO17.name=Independencia de Cartagena
holiday.es-CO17.date=20151116
holiday.es-CO17.date=20211115
holiday.es-CO18.name=Inmaculada Concepción
holiday.es-CO18.date=20151208
holiday.es-CO18.date=20211208
holiday.es-CO19.name=Navidad
holiday.es-CO19.date=20151225
holiday.es-CO19.date=20211225
holiday.es-CO20.name=Año Nuevo
holiday.es-CO20.date=20160101
holiday.es-CO20.date=20220101
holiday.es-CO21.name=Día de los Reyes Magos
holiday.es-CO21.date=20160111
holiday.es-CO21.date=20220110
holiday.es-CO22.name=Día de San José
holiday.es-CO22.date=20160321
holiday.es-CO22.date=20220321
holiday.es-CO23.name=Jueves Santo
holiday.es-CO23.date=20160324
holiday.es-CO23.date=20220414
holiday.es-CO24.name=Viernes Santo
holiday.es-CO24.date=20160325
holiday.es-CO24.date=20220415
holiday.es-CO25.name=Domingo de Pascua
holiday.es-CO25.date=20160326
holiday.es-CO25.date=20220417
holiday.es-CO26.name=Día del Trabajo
holiday.es-CO26.date=20160501
holiday.es-CO26.date=20220501
holiday.es-CO27.name=La Ascensión del Señor
holiday.es-CO27.date=20160509
holiday.es-CO27.date=20220530
holiday.es-CO28.name=Corpus Christi
holiday.es-CO28.date=20160530
holiday.es-CO28.date=20220620
holiday.es-CO29.name=El Sagrado Corazón de Jesús
holiday.es-CO29.date=20160606
holiday.es-CO29.date=20220627
holiday.es-CO30.name=San Pedro y San Pablo
holiday.es-CO30.date=20160704
holiday.es-CO30.date=20220704
holiday.es-CO31.name=Grito de Independencia
holiday.es-CO31.date=20160720
holiday.es-CO31.date=20220720
holiday.es-CO32.name=Batalla de Boyacá
holiday.es-CO32.date=20160807
holiday.es-CO32.date=20220807
holiday.es-CO33.name=Asunción de la Virgen
holiday.es-CO33.date=20160815
holiday.es-CO33.date=20220815
holiday.es-CO34.name=Día de la Raza
holiday.es-CO34.date=20161017
holiday.es-CO34.date=20221017
holiday.es-CO35.name=Todos los Santos
holiday.es-CO35.date=20161107
holiday.es-CO35.date=20221107
holiday.es-CO36.name=Independencia de Cartagena
holiday.es-CO36.date=20161114
holiday.es-CO36.date=20221114
holiday.es-CO37.name=Inmaculada Concepción
holiday.es-CO37.date=20161208
holiday.es-CO37.date=20221208
holiday.es-CO38.name=Navidad
holiday.es-CO38.date=20161225
holiday.es-CO38.date=20221225

View File

@@ -1,75 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/es-EC/2015.json
# http://holidata.net/es-EC/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.es-EC1.name=Año Nuevo
holiday.es-EC1.date=20150101
holiday.es-EC2.name=Año Nuevo
holiday.es-EC2.date=20150102
holiday.es-EC3.name=Carnaval
holiday.es-EC3.date=20150216
holiday.es-EC4.name=Carnaval
holiday.es-EC4.date=20150217
holiday.es-EC5.name=Viernes Santo
holiday.es-EC5.date=20150403
holiday.es-EC6.name=Día del Trabajo
holiday.es-EC6.date=20150501
holiday.es-EC7.name=Batalla del Pichincha
holiday.es-EC7.date=20150524
holiday.es-EC8.name=Primer Grito de Independencia
holiday.es-EC8.date=20150810
holiday.es-EC9.name=Independencia de Guayaquil
holiday.es-EC9.date=20151009
holiday.es-EC10.name=Día de Difuntos
holiday.es-EC10.date=20151102
holiday.es-EC11.name=Independencia de Cuenca
holiday.es-EC11.date=20151103
holiday.es-EC12.name=Navidad
holiday.es-EC12.date=20151225
holiday.es-EC13.name=Año Nuevo
holiday.es-EC13.date=20160101
holiday.es-EC14.name=Carnaval
holiday.es-EC14.date=20160208
holiday.es-EC15.name=Carnaval
holiday.es-EC15.date=20160209
holiday.es-EC16.name=Viernes Santo
holiday.es-EC16.date=20160325
holiday.es-EC17.name=Día del Trabajo
holiday.es-EC17.date=20160501
holiday.es-EC18.name=Batalla del Pichincha
holiday.es-EC18.date=20160524
holiday.es-EC19.name=Primer Grito de Independencia
holiday.es-EC19.date=20160810
holiday.es-EC20.name=Independencia de Guayaquil
holiday.es-EC20.date=20161009
holiday.es-EC21.name=Día de Difuntos
holiday.es-EC21.date=20161102
holiday.es-EC22.name=Independencia de Cuenca
holiday.es-EC22.date=20161103
holiday.es-EC23.name=Navidad
holiday.es-EC23.date=20161225

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/es-ES/2015.json
# http://holidata.net/es-ES/2016.json
# https://holidata.net/es-ES/2021.json
# https://holidata.net/es-ES/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,59 +23,133 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.es-ES1.name=Año Nuevo
holiday.es-ES1.date=20150101
holiday.es-ES2.name=Día de los Reyes
holiday.es-ES2.date=20150106
holiday.es-ES3.name=Viernes Santo
holiday.es-ES3.date=20150403
holiday.es-ES4.name=Pascua
holiday.es-ES4.date=20150405
holiday.es-ES5.name=Fiesta del Trabajo
holiday.es-ES5.date=20150501
holiday.es-ES6.name=Asunción de la Virgen
holiday.es-ES6.date=20150815
holiday.es-ES7.name=Fiesta Nacional de España
holiday.es-ES7.date=20151012
holiday.es-ES8.name=Dia de todos los Santos
holiday.es-ES8.date=20151101
holiday.es-ES9.name=Dia de la Constitución
holiday.es-ES9.date=20151206
holiday.es-ES10.name=Inmaculada Concepción
holiday.es-ES10.date=20151208
holiday.es-ES11.name=Noche Buena
holiday.es-ES11.date=20151224
holiday.es-ES12.name=Navidad
holiday.es-ES12.date=20151225
holiday.es-ES13.name=Noche Vieja
holiday.es-ES13.date=20151231
holiday.es-ES14.name=Año Nuevo
holiday.es-ES14.date=20160101
holiday.es-ES15.name=Día de los Reyes
holiday.es-ES15.date=20160106
holiday.es-ES16.name=Viernes Santo
holiday.es-ES16.date=20160325
holiday.es-ES17.name=Pascua
holiday.es-ES17.date=20160327
holiday.es-ES18.name=Fiesta del Trabajo
holiday.es-ES18.date=20160501
holiday.es-ES19.name=Asunción de la Virgen
holiday.es-ES19.date=20160815
holiday.es-ES20.name=Fiesta Nacional de España
holiday.es-ES20.date=20161012
holiday.es-ES21.name=Dia de todos los Santos
holiday.es-ES21.date=20161101
holiday.es-ES22.name=Dia de la Constitución
holiday.es-ES22.date=20161206
holiday.es-ES23.name=Inmaculada Concepción
holiday.es-ES23.date=20161208
holiday.es-ES24.name=Noche Buena
holiday.es-ES24.date=20161224
holiday.es-ES25.name=Navidad
holiday.es-ES25.date=20161225
holiday.es-ES26.name=Noche Vieja
holiday.es-ES26.date=20161231
holiday.es-ES1.date=20210101
holiday.es-ES2.name=Epifanía del Señor
holiday.es-ES2.date=20210106
holiday.es-ES3.name=Día de Andalucía
holiday.es-ES3.date=20210301
holiday.es-ES4.name=Día de las Illes Balears
holiday.es-ES4.date=20210301
holiday.es-ES5.name=Estatuto de Autonomía de la Ciudad de Melilla
holiday.es-ES5.date=20210313
holiday.es-ES6.name=San José
holiday.es-ES6.date=20210319
holiday.es-ES7.name=Jueves Santo
holiday.es-ES7.date=20210401
holiday.es-ES8.name=Viernes Santo
holiday.es-ES8.date=20210402
holiday.es-ES9.name=Pascua
holiday.es-ES9.date=20210404
holiday.es-ES10.name=Lunes de Pascua
holiday.es-ES10.date=20210405
holiday.es-ES11.name=Fiesta de Castilla y León
holiday.es-ES11.date=20210423
holiday.es-ES12.name=San Jorge / Día de Aragón
holiday.es-ES12.date=20210423
holiday.es-ES13.name=Fiesta del Trabajo
holiday.es-ES13.date=20210501
holiday.es-ES14.name=Lunes siguiente al Día de la Comunidad de Madrid
holiday.es-ES14.date=20210503
holiday.es-ES15.name=Día de las Letras Gallegas
holiday.es-ES15.date=20210517
holiday.es-ES16.name=Día de Castilla-La Mancha
holiday.es-ES16.date=20210531
holiday.es-ES17.name=Corpus Christi
holiday.es-ES17.date=20210603
holiday.es-ES18.name=Día de la Región de Murcia
holiday.es-ES18.date=20210609
holiday.es-ES19.name=Día de La Rioja
holiday.es-ES19.date=20210609
holiday.es-ES20.name=San Juan
holiday.es-ES20.date=20210624
holiday.es-ES21.name=Fiesta del Sacrificio (Eidul Adha)
holiday.es-ES21.date=20210720
holiday.es-ES22.name=Fiesta del Sacrificio (Aid El Kebir)
holiday.es-ES22.date=20210721
holiday.es-ES23.name=Santiago Apóstol / Día Nacional de Galicia
holiday.es-ES23.date=20210725
holiday.es-ES24.name=Día de las Instituciones de Cantabria
holiday.es-ES24.date=20210728
holiday.es-ES25.name=Asunción de la Virgen
holiday.es-ES25.date=20210815
holiday.es-ES26.name=Lunes siguiente a la Asunción de la Virgen
holiday.es-ES26.date=20210816
holiday.es-ES27.name=Día de Ceuta
holiday.es-ES27.date=20210902
holiday.es-ES28.name=Día de Asturias
holiday.es-ES28.date=20210908
holiday.es-ES29.name=Día de Extremadura
holiday.es-ES29.date=20210908
holiday.es-ES30.name=Fiesta Nacional de Cataluña
holiday.es-ES30.date=20210911
holiday.es-ES31.name=La Bien Aparecida
holiday.es-ES31.date=20210915
holiday.es-ES32.name=Día de la Comunitat Valenciana
holiday.es-ES32.date=20211009
holiday.es-ES33.name=Fiesta Nacional de España
holiday.es-ES33.date=20211012
holiday.es-ES34.name=Todos los Santos
holiday.es-ES34.date=20211101
holiday.es-ES35.name=Día de la Constitución Española
holiday.es-ES35.date=20211206
holiday.es-ES36.name=Inmaculada Concepción
holiday.es-ES36.date=20211208
holiday.es-ES37.name=Natividad del Señor
holiday.es-ES37.date=20211225
holiday.es-ES38.name=Año Nuevo
holiday.es-ES38.date=20220101
holiday.es-ES39.name=Epifanía del Señor
holiday.es-ES39.date=20220106
holiday.es-ES40.name=Día de Andalucía
holiday.es-ES40.date=20220228
holiday.es-ES41.name=Estatuto de Autonomía de la Ciudad de Melilla
holiday.es-ES41.date=20220313
holiday.es-ES42.name=Viernes Santo
holiday.es-ES42.date=20220415
holiday.es-ES43.name=Pascua
holiday.es-ES43.date=20220417
holiday.es-ES44.name=Fiesta de Castilla y León
holiday.es-ES44.date=20220423
holiday.es-ES45.name=San Jorge / Día de Aragón
holiday.es-ES45.date=20220423
holiday.es-ES46.name=Fiesta del Trabajo
holiday.es-ES46.date=20220501
holiday.es-ES47.name=Fiesta de la Comunidad de Madrid
holiday.es-ES47.date=20220502
holiday.es-ES48.name=Día de las Letras Gallegas
holiday.es-ES48.date=20220517
holiday.es-ES49.name=Día de Canarias
holiday.es-ES49.date=20220530
holiday.es-ES50.name=Día de Castilla-La Mancha
holiday.es-ES50.date=20220531
holiday.es-ES51.name=Día de la Región de Murcia
holiday.es-ES51.date=20220609
holiday.es-ES52.name=Día de La Rioja
holiday.es-ES52.date=20220609
holiday.es-ES53.name=Santiago Apóstol / Día Nacional de Galicia
holiday.es-ES53.date=20220725
holiday.es-ES54.name=Asunción de la Virgen
holiday.es-ES54.date=20220815
holiday.es-ES55.name=Día de Asturias
holiday.es-ES55.date=20220908
holiday.es-ES56.name=Día de Extremadura
holiday.es-ES56.date=20220908
holiday.es-ES57.name=Fiesta Nacional de Cataluña
holiday.es-ES57.date=20220911
holiday.es-ES58.name=Día de la Comunitat Valenciana
holiday.es-ES58.date=20221009
holiday.es-ES59.name=Fiesta Nacional de España
holiday.es-ES59.date=20221012
holiday.es-ES60.name=Todos los Santos
holiday.es-ES60.date=20221101
holiday.es-ES61.name=Día de la Constitución Española
holiday.es-ES61.date=20221206
holiday.es-ES62.name=Inmaculada Concepción
holiday.es-ES62.date=20221208
holiday.es-ES63.name=Natividad del Señor
holiday.es-ES63.date=20221225

View File

@@ -1,69 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/es-MX/2015.json
# http://holidata.net/es-MX/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.es-MX1.name=Año Nuevo
holiday.es-MX1.date=20150101
holiday.es-MX2.name=Día de la Constitución
holiday.es-MX2.date=20150202
holiday.es-MX3.name=Natalicio de Benito Juárez
holiday.es-MX3.date=20150316
holiday.es-MX4.name=Jueves Santo
holiday.es-MX4.date=20150402
holiday.es-MX5.name=Viernes Santo
holiday.es-MX5.date=20150403
holiday.es-MX6.name=Día del Trabajo
holiday.es-MX6.date=20150501
holiday.es-MX7.name=Día de la Independencia
holiday.es-MX7.date=20150916
holiday.es-MX8.name=Día de la Revolución
holiday.es-MX8.date=20151116
holiday.es-MX9.name=Nuestra Señora de Guadalupe
holiday.es-MX9.date=20151212
holiday.es-MX10.name=Navidad
holiday.es-MX10.date=20151225
holiday.es-MX11.name=Año Nuevo
holiday.es-MX11.date=20160101
holiday.es-MX12.name=Día de la Constitución
holiday.es-MX12.date=20160201
holiday.es-MX13.name=Natalicio de Benito Juárez
holiday.es-MX13.date=20160314
holiday.es-MX14.name=Jueves Santo
holiday.es-MX14.date=20160324
holiday.es-MX15.name=Viernes Santo
holiday.es-MX15.date=20160325
holiday.es-MX16.name=Día del Trabajo
holiday.es-MX16.date=20160501
holiday.es-MX17.name=Día de la Independencia
holiday.es-MX17.date=20160916
holiday.es-MX18.name=Día de la Revolución
holiday.es-MX18.date=20161121
holiday.es-MX19.name=Nuestra Señora de Guadalupe
holiday.es-MX19.date=20161212
holiday.es-MX20.name=Navidad
holiday.es-MX20.date=20161225

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/es-US/2015.json
# http://holidata.net/es-US/2016.json
# https://holidata.net/es-US/2021.json
# https://holidata.net/es-US/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,51 +23,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.es-US1.name=Año Neuvo
holiday.es-US1.date=20150101
holiday.es-US1.date=20210101
holiday.es-US2.name=Cumpleaños de Martin Luther King, Jr.
holiday.es-US2.date=20150119
holiday.es-US2.date=20210118
holiday.es-US3.name=Día del Presidente
holiday.es-US3.date=20150216
holiday.es-US3.date=20210215
holiday.es-US4.name=Día del Patriota
holiday.es-US4.date=20150420
holiday.es-US4.date=20210419
holiday.es-US5.name=Día de los Caídos
holiday.es-US5.date=20150525
holiday.es-US5.date=20210531
holiday.es-US6.name=Día de la Independiencia
holiday.es-US6.date=20150704
holiday.es-US6.date=20210704
holiday.es-US7.name=Día del Trabajo
holiday.es-US7.date=20150907
holiday.es-US7.date=20210906
holiday.es-US8.name=Día de Columbus
holiday.es-US8.date=20151012
holiday.es-US8.date=20211011
holiday.es-US9.name=Día de los Veteranos
holiday.es-US9.date=20151111
holiday.es-US9.date=20211111
holiday.es-US10.name=Día de Acción de Gracias
holiday.es-US10.date=20151126
holiday.es-US10.date=20211125
holiday.es-US11.name=Navidad
holiday.es-US11.date=20151225
holiday.es-US11.date=20211225
holiday.es-US12.name=Año Neuvo
holiday.es-US12.date=20160101
holiday.es-US12.date=20220101
holiday.es-US13.name=Cumpleaños de Martin Luther King, Jr.
holiday.es-US13.date=20160118
holiday.es-US13.date=20220117
holiday.es-US14.name=Día del Presidente
holiday.es-US14.date=20160215
holiday.es-US14.date=20220221
holiday.es-US15.name=Día del Patriota
holiday.es-US15.date=20160418
holiday.es-US15.date=20220418
holiday.es-US16.name=Día de los Caídos
holiday.es-US16.date=20160530
holiday.es-US16.date=20220530
holiday.es-US17.name=Día de la Independiencia
holiday.es-US17.date=20160704
holiday.es-US17.date=20220704
holiday.es-US18.name=Día del Trabajo
holiday.es-US18.date=20160905
holiday.es-US18.date=20220905
holiday.es-US19.name=Día de Columbus
holiday.es-US19.date=20161010
holiday.es-US19.date=20221010
holiday.es-US20.name=Día de los Veteranos
holiday.es-US20.date=20161111
holiday.es-US20.date=20221111
holiday.es-US21.name=Día de Acción de Gracias
holiday.es-US21.date=20161124
holiday.es-US22.name=Navidad
holiday.es-US22.date=20161225
holiday.es-US21.date=20221124
holiday.es-US22.name=Día después de Acción de Gracias
holiday.es-US22.date=20221125
holiday.es-US23.name=Nochebuena
holiday.es-US23.date=20221224
holiday.es-US24.name=Navidad
holiday.es-US24.date=20221225

View File

@@ -1,77 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/et-EE/2015.json
# http://holidata.net/et-EE/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.et-EE1.name=uusaasta
holiday.et-EE1.date=20150101
holiday.et-EE2.name=iseseisvuspäev
holiday.et-EE2.date=20150224
holiday.et-EE3.name=suur reede
holiday.et-EE3.date=20150403
holiday.et-EE4.name=ülestõusmispühade 1. püha
holiday.et-EE4.date=20150405
holiday.et-EE5.name=kevadpüha
holiday.et-EE5.date=20150501
holiday.et-EE6.name=nelipühade 1. püha
holiday.et-EE6.date=20150524
holiday.et-EE7.name=võidupüha
holiday.et-EE7.date=20150623
holiday.et-EE8.name=jaanipäev
holiday.et-EE8.date=20150624
holiday.et-EE9.name=taasiseseisvumispäev
holiday.et-EE9.date=20150820
holiday.et-EE10.name=jõululaupäev
holiday.et-EE10.date=20151224
holiday.et-EE11.name=esimene jõulupüha
holiday.et-EE11.date=20151225
holiday.et-EE12.name=teine jõulupüha
holiday.et-EE12.date=20151226
holiday.et-EE13.name=uusaasta
holiday.et-EE13.date=20160101
holiday.et-EE14.name=iseseisvuspäev
holiday.et-EE14.date=20160224
holiday.et-EE15.name=suur reede
holiday.et-EE15.date=20160325
holiday.et-EE16.name=ülestõusmispühade 1. püha
holiday.et-EE16.date=20160327
holiday.et-EE17.name=kevadpüha
holiday.et-EE17.date=20160501
holiday.et-EE18.name=nelipühade 1. püha
holiday.et-EE18.date=20160515
holiday.et-EE19.name=võidupüha
holiday.et-EE19.date=20160623
holiday.et-EE20.name=jaanipäev
holiday.et-EE20.date=20160624
holiday.et-EE21.name=taasiseseisvumispäev
holiday.et-EE21.date=20160820
holiday.et-EE22.name=jõululaupäev
holiday.et-EE22.date=20161224
holiday.et-EE23.name=esimene jõulupüha
holiday.et-EE23.date=20161225
holiday.et-EE24.name=teine jõulupüha
holiday.et-EE24.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/fi-FI/2015.json
# http://holidata.net/fi-FI/2016.json
# https://holidata.net/fi-FI/2021.json
# https://holidata.net/fi-FI/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,67 +23,59 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.fi-FI1.name=Uudenvuodenpäivä
holiday.fi-FI1.date=20150101
holiday.fi-FI1.date=20210101
holiday.fi-FI2.name=Loppiainen
holiday.fi-FI2.date=20150106
holiday.fi-FI2.date=20210106
holiday.fi-FI3.name=Pitkäperjantai
holiday.fi-FI3.date=20150403
holiday.fi-FI3.date=20210402
holiday.fi-FI4.name=Pääsiäispäivä
holiday.fi-FI4.date=20150405
holiday.fi-FI4.date=20210404
holiday.fi-FI5.name=2. pääsiäispäivä
holiday.fi-FI5.date=20150406
holiday.fi-FI5.date=20210405
holiday.fi-FI6.name=Vappu
holiday.fi-FI6.date=20150501
holiday.fi-FI6.date=20210501
holiday.fi-FI7.name=Helatorstai
holiday.fi-FI7.date=20150514
holiday.fi-FI7.date=20210513
holiday.fi-FI8.name=Helluntaipäivä
holiday.fi-FI8.date=20150524
holiday.fi-FI9.name=Juhannusaatto
holiday.fi-FI9.date=20150619
holiday.fi-FI10.name=Juhannuspäivä
holiday.fi-FI10.date=20150620
holiday.fi-FI11.name=Pyhäinpäivä
holiday.fi-FI11.date=20151031
holiday.fi-FI12.name=Itsenäisyyspäivä
holiday.fi-FI12.date=20151206
holiday.fi-FI13.name=Jouluaatto
holiday.fi-FI13.date=20151224
holiday.fi-FI14.name=Joulupäivä
holiday.fi-FI14.date=20151225
holiday.fi-FI15.name=2. joulupäivä
holiday.fi-FI15.date=20151226
holiday.fi-FI16.name=Uudenvuodenpäivä
holiday.fi-FI16.date=20160101
holiday.fi-FI17.name=Loppiainen
holiday.fi-FI17.date=20160106
holiday.fi-FI18.name=Pitkäperjantai
holiday.fi-FI18.date=20160325
holiday.fi-FI19.name=Pääsiäispäivä
holiday.fi-FI19.date=20160327
holiday.fi-FI20.name=2. pääsiäispäivä
holiday.fi-FI20.date=20160328
holiday.fi-FI21.name=Vappu
holiday.fi-FI21.date=20160501
holiday.fi-FI22.name=Helatorstai
holiday.fi-FI22.date=20160505
holiday.fi-FI23.name=Helluntaipäivä
holiday.fi-FI23.date=20160515
holiday.fi-FI24.name=Juhannusaatto
holiday.fi-FI24.date=20160624
holiday.fi-FI25.name=Juhannuspäivä
holiday.fi-FI25.date=20160625
holiday.fi-FI26.name=Pyhäinpäivä
holiday.fi-FI26.date=20161105
holiday.fi-FI27.name=Itsenäisyyspäivä
holiday.fi-FI27.date=20161206
holiday.fi-FI28.name=Jouluaatto
holiday.fi-FI28.date=20161224
holiday.fi-FI29.name=Joulupäivä
holiday.fi-FI29.date=20161225
holiday.fi-FI30.name=2. joulupäivä
holiday.fi-FI30.date=20161226
holiday.fi-FI8.date=20210523
holiday.fi-FI9.name=Juhannuspäivä
holiday.fi-FI9.date=20210626
holiday.fi-FI10.name=Pyhäinpäivä
holiday.fi-FI10.date=20211106
holiday.fi-FI11.name=Itsenäisyyspäivä
holiday.fi-FI11.date=20211206
holiday.fi-FI12.name=Joulupäivä
holiday.fi-FI12.date=20211225
holiday.fi-FI13.name=Tapaninpäivä
holiday.fi-FI13.date=20211226
holiday.fi-FI14.name=Uudenvuodenpäivä
holiday.fi-FI14.date=20220101
holiday.fi-FI15.name=Loppiainen
holiday.fi-FI15.date=20220106
holiday.fi-FI16.name=Pitkäperjantai
holiday.fi-FI16.date=20220415
holiday.fi-FI17.name=Pääsiäispäivä
holiday.fi-FI17.date=20220417
holiday.fi-FI18.name=2. pääsiäispäivä
holiday.fi-FI18.date=20220418
holiday.fi-FI19.name=Vappu
holiday.fi-FI19.date=20220501
holiday.fi-FI20.name=Helatorstai
holiday.fi-FI20.date=20220526
holiday.fi-FI21.name=Helluntaipäivä
holiday.fi-FI21.date=20220605
holiday.fi-FI22.name=Juhannuspäivä
holiday.fi-FI22.date=20220625
holiday.fi-FI23.name=Pyhäinpäivä
holiday.fi-FI23.date=20221105
holiday.fi-FI24.name=Itsenäisyyspäivä
holiday.fi-FI24.date=20221206
holiday.fi-FI25.name=Joulupäivä
holiday.fi-FI25.date=20221225
holiday.fi-FI26.name=Tapaninpäivä
holiday.fi-FI26.date=20221226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/fr-BE/2015.json
# http://holidata.net/fr-BE/2016.json
# https://holidata.net/fr-BE/2021.json
# https://holidata.net/fr-BE/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,55 +23,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.fr-BE1.name=Nouvel An
holiday.fr-BE1.date=20150101
holiday.fr-BE1.date=20210101
holiday.fr-BE2.name=Pâques
holiday.fr-BE2.date=20150405
holiday.fr-BE2.date=20210404
holiday.fr-BE3.name=Lundi de Pâques
holiday.fr-BE3.date=20150406
holiday.fr-BE3.date=20210405
holiday.fr-BE4.name=Fête du Travail
holiday.fr-BE4.date=20150501
holiday.fr-BE4.date=20210501
holiday.fr-BE5.name=Ascension
holiday.fr-BE5.date=20150514
holiday.fr-BE5.date=20210513
holiday.fr-BE6.name=Pentecôte
holiday.fr-BE6.date=20150524
holiday.fr-BE6.date=20210523
holiday.fr-BE7.name=Lundi de Pentecôte
holiday.fr-BE7.date=20150525
holiday.fr-BE7.date=20210524
holiday.fr-BE8.name=Fête nationale
holiday.fr-BE8.date=20150721
holiday.fr-BE8.date=20210721
holiday.fr-BE9.name=Assomption
holiday.fr-BE9.date=20150815
holiday.fr-BE9.date=20210815
holiday.fr-BE10.name=Toussaint
holiday.fr-BE10.date=20151101
holiday.fr-BE10.date=20211101
holiday.fr-BE11.name=Jour de l'armistice
holiday.fr-BE11.date=20151111
holiday.fr-BE11.date=20211111
holiday.fr-BE12.name=Noël
holiday.fr-BE12.date=20151225
holiday.fr-BE12.date=20211225
holiday.fr-BE13.name=Nouvel An
holiday.fr-BE13.date=20160101
holiday.fr-BE13.date=20220101
holiday.fr-BE14.name=Pâques
holiday.fr-BE14.date=20160527
holiday.fr-BE14.date=20220417
holiday.fr-BE15.name=Lundi de Pâques
holiday.fr-BE15.date=20160528
holiday.fr-BE15.date=20220418
holiday.fr-BE16.name=Fête du Travail
holiday.fr-BE16.date=20160501
holiday.fr-BE16.date=20220501
holiday.fr-BE17.name=Ascension
holiday.fr-BE17.date=20160505
holiday.fr-BE17.date=20220526
holiday.fr-BE18.name=Pentecôte
holiday.fr-BE18.date=20160515
holiday.fr-BE18.date=20220605
holiday.fr-BE19.name=Lundi de Pentecôte
holiday.fr-BE19.date=20160516
holiday.fr-BE19.date=20220606
holiday.fr-BE20.name=Fête nationale
holiday.fr-BE20.date=20160721
holiday.fr-BE20.date=20220721
holiday.fr-BE21.name=Assomption
holiday.fr-BE21.date=20160815
holiday.fr-BE21.date=20220815
holiday.fr-BE22.name=Toussaint
holiday.fr-BE22.date=20161101
holiday.fr-BE22.date=20221101
holiday.fr-BE23.name=Jour de l'armistice
holiday.fr-BE23.date=20161111
holiday.fr-BE23.date=20221111
holiday.fr-BE24.name=Noël
holiday.fr-BE24.date=20161225
holiday.fr-BE24.date=20221225

109
doc/rc/holidays.fr-CA.rc Normal file
View File

@@ -0,0 +1,109 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# https://holidata.net/fr-CA/2021.json
# https://holidata.net/fr-CA/2022.json
#
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.fr-CA1.name=Jour de l'An
holiday.fr-CA1.date=20210101
holiday.fr-CA2.name=Fête de la Famille
holiday.fr-CA2.date=20210215
holiday.fr-CA3.name=Journée Louis Riel
holiday.fr-CA3.date=20210215
holiday.fr-CA4.name=Fête des Insulaires
holiday.fr-CA4.date=20210215
holiday.fr-CA5.name=Vendredi Saint
holiday.fr-CA5.date=20210402
holiday.fr-CA6.name=Lundi de Pâques
holiday.fr-CA6.date=20210405
holiday.fr-CA7.name=Fête de la Reine Victoria
holiday.fr-CA7.date=20210524
holiday.fr-CA8.name=Journée Nationale des Patriotes
holiday.fr-CA8.date=20210524
holiday.fr-CA9.name=Fête Nationale
holiday.fr-CA9.date=20210624
holiday.fr-CA10.name=Fête du Canada
holiday.fr-CA10.date=20210701
holiday.fr-CA11.name=Premier lundi d'août
holiday.fr-CA11.date=20210802
holiday.fr-CA12.name=Fête du Patrimoine
holiday.fr-CA12.date=20210802
holiday.fr-CA13.name=Fête de la Saskatchewan
holiday.fr-CA13.date=20210802
holiday.fr-CA14.name=Jour de la Fondation
holiday.fr-CA14.date=20210802
holiday.fr-CA15.name=Jour du Nouveau-Brunswick
holiday.fr-CA15.date=20210802
holiday.fr-CA16.name=Fête du Travail
holiday.fr-CA16.date=20210906
holiday.fr-CA17.name=Jour de l'Action de grâce
holiday.fr-CA17.date=20211011
holiday.fr-CA18.name=Jour du Souvenir
holiday.fr-CA18.date=20211111
holiday.fr-CA19.name=Jour de Noël
holiday.fr-CA19.date=20211225
holiday.fr-CA20.name=Lendemain de Noël
holiday.fr-CA20.date=20211226
holiday.fr-CA21.name=Jour de l'An
holiday.fr-CA21.date=20220101
holiday.fr-CA22.name=Fête de la Famille
holiday.fr-CA22.date=20220221
holiday.fr-CA23.name=Journée Louis Riel
holiday.fr-CA23.date=20220221
holiday.fr-CA24.name=Fête des Insulaires
holiday.fr-CA24.date=20220221
holiday.fr-CA25.name=Vendredi Saint
holiday.fr-CA25.date=20220415
holiday.fr-CA26.name=Lundi de Pâques
holiday.fr-CA26.date=20220418
holiday.fr-CA27.name=Fête de la Reine Victoria
holiday.fr-CA27.date=20220523
holiday.fr-CA28.name=Journée Nationale des Patriotes
holiday.fr-CA28.date=20220523
holiday.fr-CA29.name=Fête Nationale
holiday.fr-CA29.date=20220624
holiday.fr-CA30.name=Fête du Canada
holiday.fr-CA30.date=20220701
holiday.fr-CA31.name=Premier lundi d'août
holiday.fr-CA31.date=20220801
holiday.fr-CA32.name=Fête du Patrimoine
holiday.fr-CA32.date=20220801
holiday.fr-CA33.name=Fête de la Saskatchewan
holiday.fr-CA33.date=20220801
holiday.fr-CA34.name=Jour de la Fondation
holiday.fr-CA34.date=20220801
holiday.fr-CA35.name=Jour du Nouveau-Brunswick
holiday.fr-CA35.date=20220801
holiday.fr-CA36.name=Fête du Travail
holiday.fr-CA36.date=20220905
holiday.fr-CA37.name=Jour de l'Action de grâce
holiday.fr-CA37.date=20221010
holiday.fr-CA38.name=Jour du Souvenir
holiday.fr-CA38.date=20221111
holiday.fr-CA39.name=Jour de Noël
holiday.fr-CA39.date=20221225
holiday.fr-CA40.name=Lendemain de Noël
holiday.fr-CA40.date=20221226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/fr-FR/2015.json
# http://holidata.net/fr-FR/2016.json
# https://holidata.net/fr-FR/2021.json
# https://holidata.net/fr-FR/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,51 +23,55 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.fr-FR1.name=Jour de l'an
holiday.fr-FR1.date=20150101
holiday.fr-FR1.date=20210101
holiday.fr-FR2.name=Lundi de Pâques
holiday.fr-FR2.date=20150406
holiday.fr-FR2.date=20210405
holiday.fr-FR3.name=Fête du premier mai
holiday.fr-FR3.date=20150501
holiday.fr-FR3.date=20210501
holiday.fr-FR4.name=Armistice 1945
holiday.fr-FR4.date=20150508
holiday.fr-FR5.name=Ascencion
holiday.fr-FR5.date=20150514
holiday.fr-FR4.date=20210508
holiday.fr-FR5.name=Ascension
holiday.fr-FR5.date=20210513
holiday.fr-FR6.name=Pentecôte
holiday.fr-FR6.date=20150524
holiday.fr-FR7.name=Fête nationale
holiday.fr-FR7.date=20150714
holiday.fr-FR8.name=Assomption
holiday.fr-FR8.date=20150815
holiday.fr-FR9.name=Toussaint
holiday.fr-FR9.date=20151101
holiday.fr-FR10.name=Armistice 1918
holiday.fr-FR10.date=20151111
holiday.fr-FR11.name=Noël
holiday.fr-FR11.date=20151225
holiday.fr-FR12.name=Jour de l'an
holiday.fr-FR12.date=20160101
holiday.fr-FR13.name=Lundi de Pâques
holiday.fr-FR13.date=20160328
holiday.fr-FR14.name=Fête du premier mai
holiday.fr-FR14.date=20160501
holiday.fr-FR15.name=Armistice 1945
holiday.fr-FR15.date=20160508
holiday.fr-FR16.name=Ascencion
holiday.fr-FR16.date=20160505
holiday.fr-FR17.name=Pentecôte
holiday.fr-FR17.date=20160515
holiday.fr-FR18.name=Fête nationale
holiday.fr-FR18.date=20160714
holiday.fr-FR19.name=Assomption
holiday.fr-FR19.date=20160815
holiday.fr-FR20.name=Toussaint
holiday.fr-FR20.date=20161101
holiday.fr-FR21.name=Armistice 1918
holiday.fr-FR21.date=20161111
holiday.fr-FR22.name=Noël
holiday.fr-FR22.date=20161225
holiday.fr-FR6.date=20210523
holiday.fr-FR7.name=Lundi de Pentecôte
holiday.fr-FR7.date=20210524
holiday.fr-FR8.name=Fête nationale
holiday.fr-FR8.date=20210714
holiday.fr-FR9.name=Assomption
holiday.fr-FR9.date=20210815
holiday.fr-FR10.name=Toussaint
holiday.fr-FR10.date=20211101
holiday.fr-FR11.name=Armistice 1918
holiday.fr-FR11.date=20211111
holiday.fr-FR12.name=Noël
holiday.fr-FR12.date=20211225
holiday.fr-FR13.name=Jour de l'an
holiday.fr-FR13.date=20220101
holiday.fr-FR14.name=Lundi de Pâques
holiday.fr-FR14.date=20220418
holiday.fr-FR15.name=Fête du premier mai
holiday.fr-FR15.date=20220501
holiday.fr-FR16.name=Armistice 1945
holiday.fr-FR16.date=20220508
holiday.fr-FR17.name=Ascension
holiday.fr-FR17.date=20220526
holiday.fr-FR18.name=Pentecôte
holiday.fr-FR18.date=20220605
holiday.fr-FR19.name=Lundi de Pentecôte
holiday.fr-FR19.date=20220606
holiday.fr-FR20.name=Fête nationale
holiday.fr-FR20.date=20220714
holiday.fr-FR21.name=Assomption
holiday.fr-FR21.date=20220815
holiday.fr-FR22.name=Toussaint
holiday.fr-FR22.date=20221101
holiday.fr-FR23.name=Armistice 1918
holiday.fr-FR23.date=20221111
holiday.fr-FR24.name=Noël
holiday.fr-FR24.date=20221225

View File

@@ -1,65 +0,0 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/ga-IE/2015.json
# http://holidata.net/ga-IE/2016.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.ga-IE1.name=Lá Caille or Lá Bliana Nua
holiday.ga-IE1.date=20150101
holiday.ga-IE2.name=Lá Fhéile Pádraig
holiday.ga-IE2.date=20150317
holiday.ga-IE3.name=Luan Cásca
holiday.ga-IE3.date=20150406
holiday.ga-IE4.name=Lá an Lucht Oibre
holiday.ga-IE4.date=20150504
holiday.ga-IE5.name=Lá Saoire i mí Mheitheamh
holiday.ga-IE5.date=20150601
holiday.ga-IE6.name=Lá Saoire i mí Lúnasa
holiday.ga-IE6.date=20150803
holiday.ga-IE7.name=Lá Saoire i mí Dheireadh Fómhair
holiday.ga-IE7.date=20151026
holiday.ga-IE8.name=Lá Nollag
holiday.ga-IE8.date=20151225
holiday.ga-IE9.name=Lá Fhéile Stiofáin or Lá an Dreoilín
holiday.ga-IE9.date=20151226
holiday.ga-IE10.name=Lá Caille or Lá Bliana Nua
holiday.ga-IE10.date=20160101
holiday.ga-IE11.name=Lá Fhéile Pádraig
holiday.ga-IE11.date=20160317
holiday.ga-IE12.name=Luan Cásca
holiday.ga-IE12.date=20160328
holiday.ga-IE13.name=Lá an Lucht Oibre
holiday.ga-IE13.date=20160502
holiday.ga-IE14.name=Lá Saoire i mí Mheitheamh
holiday.ga-IE14.date=20160606
holiday.ga-IE15.name=Lá Saoire i mí Lúnasa
holiday.ga-IE15.date=20160801
holiday.ga-IE16.name=Lá Saoire i mí Dheireadh Fómhair
holiday.ga-IE16.date=20161031
holiday.ga-IE17.name=Lá Nollag
holiday.ga-IE17.date=20161225
holiday.ga-IE18.name=Lá Fhéile Stiofáin or Lá an Dreoilín
holiday.ga-IE18.date=20161226

View File

@@ -1,9 +1,9 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# http://holidata.net/hr-HR/2015.json
# http://holidata.net/hr-HR/2016.json
# https://holidata.net/hr-HR/2021.json
# https://holidata.net/hr-HR/2022.json
#
# Copyright 2006 - 2016, Paul Beckingham, Federico Hernandez.
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@ -23,63 +23,65 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# http://www.opensource.org/licenses/mit-license.php
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.hr-HR1.name=Nova Godina
holiday.hr-HR1.date=20150101
holiday.hr-HR1.date=20210101
holiday.hr-HR2.name=Bogojavljenje
holiday.hr-HR2.date=20150106
holiday.hr-HR2.date=20210106
holiday.hr-HR3.name=Uskrs
holiday.hr-HR3.date=20150405
holiday.hr-HR3.date=20210404
holiday.hr-HR4.name=Uskrsni ponedjeljak
holiday.hr-HR4.date=20150406
holiday.hr-HR5.name=Međunarodni praznik rada
holiday.hr-HR5.date=20150501
holiday.hr-HR4.date=20210405
holiday.hr-HR5.name=Praznik rada
holiday.hr-HR5.date=20210501
holiday.hr-HR6.name=Tijelovo
holiday.hr-HR6.date=20150604
holiday.hr-HR6.date=20210603
holiday.hr-HR7.name=Dan antifašističke borbe
holiday.hr-HR7.date=20150622
holiday.hr-HR7.date=20210622
holiday.hr-HR8.name=Dan državnosti
holiday.hr-HR8.date=20150625
holiday.hr-HR9.name=Dan pobjede
holiday.hr-HR9.date=20150805
holiday.hr-HR8.date=20210625
holiday.hr-HR9.name=Dan pobjede i domovinske zahvalnosti i Dan hrvatskih branitelja
holiday.hr-HR9.date=20210805
holiday.hr-HR10.name=Velika Gospa
holiday.hr-HR10.date=20150815
holiday.hr-HR10.date=20210815
holiday.hr-HR11.name=Dan neovisnosti
holiday.hr-HR11.date=20151008
holiday.hr-HR12.name=Dan svih svetih
holiday.hr-HR12.date=20151101
holiday.hr-HR13.name=Božić
holiday.hr-HR13.date=20151225
holiday.hr-HR14.name=Prvi dan po Božiću
holiday.hr-HR14.date=20151226
holiday.hr-HR15.name=Nova Godina
holiday.hr-HR15.date=20160101
holiday.hr-HR16.name=Bogojavljenje
holiday.hr-HR16.date=20160106
holiday.hr-HR17.name=Uskrs
holiday.hr-HR17.date=20160327
holiday.hr-HR18.name=Uskrsni ponedjeljak
holiday.hr-HR18.date=20160328
holiday.hr-HR19.name=Međunarodni praznik rada
holiday.hr-HR19.date=20160501
holiday.hr-HR20.name=Tijelovo
holiday.hr-HR20.date=20160526
holiday.hr-HR21.name=Dan antifašističke borbe
holiday.hr-HR21.date=20160622
holiday.hr-HR22.name=Dan državnosti
holiday.hr-HR22.date=20160625
holiday.hr-HR23.name=Dan pobjede
holiday.hr-HR23.date=20160805
holiday.hr-HR24.name=Velika Gospa
holiday.hr-HR24.date=20160815
holiday.hr-HR25.name=Dan neovisnosti
holiday.hr-HR25.date=20161008
holiday.hr-HR11.date=20211008
holiday.hr-HR12.name=Svi sveti
holiday.hr-HR12.date=20211101
holiday.hr-HR13.name=Dan sjećanja na žrtve Domovinskog rata i Dan sjećanja na žrtvu Vukovara i Škabrnje
holiday.hr-HR13.date=20211118
holiday.hr-HR14.name=Božić
holiday.hr-HR14.date=20211225
holiday.hr-HR15.name=Sveti Stjepan
holiday.hr-HR15.date=20211226
holiday.hr-HR16.name=Nova Godina
holiday.hr-HR16.date=20220101
holiday.hr-HR17.name=Sveta tri kralja
holiday.hr-HR17.date=20220106
holiday.hr-HR18.name=Uskrs
holiday.hr-HR18.date=20220417
holiday.hr-HR19.name=Uskršnji ponedjeljak
holiday.hr-HR19.date=20220418
holiday.hr-HR20.name=Praznik rada
holiday.hr-HR20.date=20220501
holiday.hr-HR21.name=Dan državnosti
holiday.hr-HR21.date=20220530
holiday.hr-HR22.name=Tijelovo
holiday.hr-HR22.date=20220616
holiday.hr-HR23.name=Dan antifašističke borbe
holiday.hr-HR23.date=20220622
holiday.hr-HR24.name=Dan pobjede i domovinske zahvalnosti i Dan hrvatskih branitelja
holiday.hr-HR24.date=20220805
holiday.hr-HR25.name=Velika Gospa
holiday.hr-HR25.date=20220815
holiday.hr-HR26.name=Dan svih svetih
holiday.hr-HR26.date=20161101
holiday.hr-HR27.name=Božić
holiday.hr-HR27.date=20161225
holiday.hr-HR28.name=Prvi dan po Božiću
holiday.hr-HR28.date=20161226
holiday.hr-HR26.date=20221101
holiday.hr-HR27.name=Dan sjećanja na žrtve Domovinskog rata i Dan sjećanja na žrtvu Vukovara i Škabrnje
holiday.hr-HR27.date=20221118
holiday.hr-HR28.name=Božić
holiday.hr-HR28.date=20221225
holiday.hr-HR29.name=Sveti Stjepan
holiday.hr-HR29.date=20221226

83
doc/rc/holidays.hu-HU.rc Normal file
View File

@@ -0,0 +1,83 @@
###############################################################################
# International Holiday Data provided by Holidata.net
# https://holidata.net/hu-HU/2021.json
# https://holidata.net/hu-HU/2022.json
#
# Copyright 2006 - 2021, Tomas Babej, Paul Beckingham, Federico Hernandez.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# https://www.opensource.org/licenses/mit-license.php
#
###############################################################################
holiday.hu-HU1.name=Újév
holiday.hu-HU1.date=20210101
holiday.hu-HU2.name=Az 1848-as forradalom ünnepe
holiday.hu-HU2.date=20210315
holiday.hu-HU3.name=Nagypéntek
holiday.hu-HU3.date=20210402
holiday.hu-HU4.name=Húsvét
holiday.hu-HU4.date=20210404
holiday.hu-HU5.name=Húsvéthétfő
holiday.hu-HU5.date=20210405
holiday.hu-HU6.name=A munka ünnepe
holiday.hu-HU6.date=20210501
holiday.hu-HU7.name=Pünkösd
holiday.hu-HU7.date=20210523
holiday.hu-HU8.name=Pünkösdhétfő
holiday.hu-HU8.date=20210524
holiday.hu-HU9.name=Az államalapítás ünnepe
holiday.hu-HU9.date=20210820
holiday.hu-HU10.name=Az 1956-os forradalom ünnepe
holiday.hu-HU10.date=20211023
holiday.hu-HU11.name=Mindenszentek
holiday.hu-HU11.date=20211101
holiday.hu-HU12.name=Munkaszüneti Nap
holiday.hu-HU12.date=20211224
holiday.hu-HU13.name=Karácsony
holiday.hu-HU13.date=20211225
holiday.hu-HU14.name=Karácsony
holiday.hu-HU14.date=20211226
holiday.hu-HU15.name=Újév
holiday.hu-HU15.date=20220101
holiday.hu-HU16.name=Az 1848-as forradalom ünnepe
holiday.hu-HU16.date=20220315
holiday.hu-HU17.name=Nagypéntek
holiday.hu-HU17.date=20220415
holiday.hu-HU18.name=Húsvét
holiday.hu-HU18.date=20220417
holiday.hu-HU19.name=Húsvéthétfő
holiday.hu-HU19.date=20220418
holiday.hu-HU20.name=A munka ünnepe
holiday.hu-HU20.date=20220501
holiday.hu-HU21.name=Pünkösd
holiday.hu-HU21.date=20220605
holiday.hu-HU22.name=Pünkösdhétfő
holiday.hu-HU22.date=20220606
holiday.hu-HU23.name=Az államalapítás ünnepe
holiday.hu-HU23.date=20220820
holiday.hu-HU24.name=Az 1956-os forradalom ünnepe
holiday.hu-HU24.date=20221023
holiday.hu-HU25.name=Mindenszentek
holiday.hu-HU25.date=20221101
holiday.hu-HU26.name=Karácsony
holiday.hu-HU26.date=20221225
holiday.hu-HU27.name=Karácsony
holiday.hu-HU27.date=20221226

Some files were not shown because too many files have changed in this diff Show More