08b7a46c74
Use StoreId::local_display_string() for less errorhandling here
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 22:15:06 +01:00
aa5ea533c7
Add imag-header
...
imag-header is a tool for querying information of an entry in a defined
format.
imag-header is intended for scripting with imag commands.
The output format is not stable yet, though.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:54:52 +01:00
0888e4345c
Use StoreId::local_display_string() for less errorhandling here
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
f558556b3a
Fix for new all_annotations() interface
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
444ca2d424
Adapt to new all_contacts() return type
...
because we return `libimagstore::iter::Entries` here now, we do not have
to pass the store anymore.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
1bbd2173b7
Fix for new StoreId::new() interface
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
5fe139e02b
Adapt StoreId::new() calls
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
39d638daee
Adapt for new StoreId API
...
When printing the storepath with the ID (when requested by the user), we
have to ask the store for its path.
This is a rather naive implementation which could be improved by only
checking for a boolean in the last iteration and then use a prepared
variable, rather than making the storepath part of the iterator.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
642702b724
Rewrite: StoreId::new_baseless() -> StoreId::new()
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:28 +01:00
2611583839
Fix: Also print if runtime ignores IDs
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 19:13:29 +01:00
86dca4887d
Fix negation error
...
We Iterator::filter here, so we have to negate - because we list
everything where _no_ instance exists yet.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:52:04 +01:00
334e9e3954
Add debug output
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:52:04 +01:00
fe9409a5dc
Do not print table if table is empty anyways
...
When listing timetrackings, we do not want to print an empty table if
there aren't any timetrackings.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:52:04 +01:00
81912ac5cd
Add wrapping functionality for imag-log
...
This patch adds a wrapping functionality to imag-log.
The commandline parameter `-w` or `--wrap` can not be used to wrap the
output at N characters, defaulting to 80 characters.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:52:04 +01:00
0ba19daa57
Strip whitespace on the right when printing
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:52:04 +01:00
90eaeb642a
Remove magic constants in trace_unwrap_exit/map_err_trace_exit_unwrap calls
...
This patch removes the magic constant we used when calling
`trace_unwrap_exit()` or `map_err_trace_exit_unwrap()`.
We used to call it with `1` as parameter, where the number was the exit
code to use. Now the implementation of the function does it
automatically (using 1 (one) as exit code).
All calls of these functions were fixed. Thanks to vim this was easy.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:52:04 +01:00
c8e74193b3
Optimize: Do not attempt to print if output is a pipe
...
This is a small optimization so that we do not print the information if
the output is a pipe anyways.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:22:56 +01:00
f1a639ea8c
Change id reporting API to return ExitCode
...
Because this API only errors when write!() errors occur, we can return
the exit code as an error here.
This way the user of the API can immediately exit if there was an IO
error, but the API automatically takes care of the right return value,
returning (exiting) with zero (0) if there was an "Broken pipe" error
and with one (1) otherwise, which is the expected behaviour here.
All calls to that API were changed accordingly.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-11 03:22:56 +01:00
03e0864268
Merge branch 'unnamed-annotations' into master-ff
...
This merge adds several patches to improve libimagannotation and
imag-annotate.
2019-02-10 17:07:35 +01:00
53022443ab
Rewrite iteration
...
This patch rewrites how imag-annotate iterates over the ids to process
to be more easily to understand.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-10 01:00:38 +01:00
d8cd10a384
Remove iterator types
...
With this patch, libimagentryannotation does not have special iterator
types anymore. This makes the whole thing more comfortable to use.
In imag-annotate, the parameter for the functioncall was removed.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-10 01:00:33 +01:00
c84258da3d
Add flag to not print name of annotation
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-10 00:58:21 +01:00
ab5078f111
Rewrite "add annotation" command
...
Because before we created a new annotation for each ID to be annotated,
which is not the expected behaviour.
Now we create one annotation object and then link it to all IDs which
are provided on the commandline.
Also, the annotation name is printed.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-10 00:58:21 +01:00
0f32471a03
Merge branch 'runtime-io-features' into master-ff
2019-02-09 23:42:09 +01:00
84aef82258
Fix: "status" subcommand might not be present
...
If we call 'imag-habit' without a subcommand, we assume "today". Thus it
might occur that the "status" subcommand match is not present, hence we
have to assume `false` here as default value.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-09 01:03:34 +01:00
e25cf17a8a
Fix: We go to the next month, not to the current one
...
The filter filters from now to the first second of the next month, not
the first second of the current month. Hence we have to add one here.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-09 01:03:32 +01:00
340dab18f0
Fix: 'start-time' cannot be None
...
The UI is configured to require the 'start-time' parameter, so we do not
need to check for None here.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-09 01:03:32 +01:00
e4ef6f0649
Remove log-destination-override features
...
This removes the feature to be able to override log destinations from
the commandline.
This feature is removed because the --override-config feature from the
runtime already contains this functionality. It is a little more complex
to use, though this is a feature hardly used at all, so I rather go for
less code (less complexity) here than feature bloat.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-05 01:03:39 +01:00
4c0baa58f4
Add argument forwarding for --ignore-ids
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-05 00:59:30 +01:00
9185abcfa5
Update copyright years
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-01-03 18:41:36 +01:00
9fca66aa89
Forbid unsafe code in all crates
2018-11-11 13:05:55 +01:00
4e516ee19d
Update version strings
...
...for the next release, which will be imag 0.10.0!
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-10 11:56:37 +01:00
17d4123898
Update dependencies from git versions to proper versions.
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-09 22:14:11 +01:00
35291d68ad
Make code more idomatic
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-09 21:48:26 +01:00
a2eae99a39
Rewrite debug calls with DebugOption extension
2018-11-09 21:48:26 +01:00
c767e6239e
Remove unused parameter
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-09 21:48:26 +01:00
8d0ae1058e
Make code more functional by more function chaining
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-07 13:51:42 +01:00
07cbecc1ba
Make code more functional by more function chaining.
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-07 13:51:28 +01:00
d8a6e9ca9a
Rewrite iteration without collecting inbetween
...
Because why not?
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-07 12:48:35 +01:00
8e1768b424
Refactor code to be more idomatic
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-07 11:52:31 +01:00
345970d36b
Import new dependencies
...
Because of the changes in the "src/ui.rs" files in the binary
implementations, we have new dependencies we need to import into the
build-script of the "imag" command, so that it can build the
commandline.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 20:35:18 +01:00
f6483f54db
Add ID reporting in imag-timetrack
2018-11-06 20:35:18 +01:00
be56f9fe75
Add ID reporting in imag-mail
2018-11-06 20:35:18 +01:00
f20298cbe8
Add ID reporting in imag-store
2018-11-06 20:35:18 +01:00
c616a5cfaf
Add ID reporting in imag-ref
2018-11-06 20:35:18 +01:00
502cdf5721
Add ID reporting in imag-habit
2018-11-06 20:35:18 +01:00
96ad41ea4c
Add ID reporting in imag-mv
2018-11-06 20:35:18 +01:00
f3a03efd5d
Add ID reporting in imag-wiki
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 20:35:18 +01:00
860c58cbdf
Add ID reporting in imag-log
2018-11-06 20:35:18 +01:00
eceae358f8
Add ID reporting in imag-notes
2018-11-06 20:35:18 +01:00
2ca6be8322
Add id reporting in imag-diary
2018-11-06 20:35:18 +01:00
8523ae2120
Add id reporting in imag-contact
2018-11-06 20:34:46 +01:00
344aae5f92
Add ID reporting in imag-bookmark
2018-11-06 20:33:30 +01:00
1e6d58bf4c
Add ID reporting in imag-view
2018-11-06 20:33:30 +01:00
d3400167df
Add ID reporting in imag-tag
2018-11-06 20:33:30 +01:00
aef969f8bb
Add ID reporting in imag-link
2018-11-06 20:33:30 +01:00
4e5315b0e5
Add ID reporting in imag-grep
2018-11-06 20:33:30 +01:00
ff809a3750
Add ID reporting in imag-gps
2018-11-06 20:33:30 +01:00
3a6443b3ef
Add ID reporting in imag-ids
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 20:33:30 +01:00
274811243f
Move imag-view to ID provider infrastructure
2018-11-06 20:33:30 +01:00
f83d72033f
Move imag-tag to ID provider infrastructure
2018-11-06 20:33:30 +01:00
527e0310ae
Move imag-link to ID provider infrastructure
2018-11-06 20:33:30 +01:00
4856541f5a
Move imag-gps to ID provider infrastructure
2018-11-06 20:33:30 +01:00
70014e04b1
Move imag-ids to ID provider infrastructure
2018-11-06 20:33:30 +01:00
a805db2a88
Move imag-edit to ID provider infrastructure
2018-11-06 20:33:30 +01:00
30036d5628
Move imag-category to ID provider infrastructure
2018-11-06 20:33:30 +01:00
01de94a387
Move imag-annotate to ID provider infrastructure
2018-11-06 20:33:30 +01:00
17913ae3fd
Optimize implementation: Less matches
...
This patch simplifies the code to be not three nested matches but rather
one match and then some function chaining.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 14:48:49 +01:00
1321f49428
Optimize implementation
...
Code-wise, the functionality was not changed. The changes only make the
code much more pretty.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 14:48:49 +01:00
d004c667fd
Optimize implementation
...
Code-wise, the functionality was not changed. The changes only make the
code much more pretty.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 14:48:49 +01:00
5210985bf4
Optimize implementation
...
This does optimize the implementation of the list command implementation
(code-structure wise, not performance wise).
Functionality not altered.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-06 14:48:49 +01:00
1347784898
Merge branch 'safe-output'
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-01 21:22:26 +01:00
3bf3a8890b
Add debugging output in test via logger
2018-11-01 20:36:46 +01:00
089d5b98cb
Use error output from runtime to print error
2018-11-01 20:36:34 +01:00
afeb4031ac
Use runtime provided error stream
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-01 20:34:58 +01:00
8223f846b4
Use new "ask" function interface with input/output stream params
...
In the imag-contact crate we had to rewrite the ask_continue!{} macro
as a function for less headache, but besides that this is a rather
straight-forward patch for adapting to the new interface.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-01 20:33:24 +01:00
32f38945f0
Fix tests: Do not pass "internal", subcommand does not exist anymore
2018-11-01 13:15:19 +01:00
e39bd7fc72
Merge branch 'fix-flag-forwarding'
...
Conflicts were handled manually.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-11-01 00:09:54 +01:00
25ee6f2ce4
Fix: Forward flags as well
...
This is a bugfix. The old implementation did not forward simple
commandline flags (as in `--debug`, arguments with no value) because it
only used `ArgMatches::value_of()`. But if there is no value, the method
returns `None` and the flag is not forwarded.
This patch fixes that issue.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-31 23:12:35 +01:00
c4c52e43a6
Add some debugging output
2018-10-31 23:11:06 +01:00
e4ffeddf85
Use libimagrt logging
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-31 23:10:26 +01:00
21927d4225
imag build script: Update available commands
2018-10-31 17:15:29 +01:00
aff5059652
imag-todo: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
5821a55c14
imag-mail: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
fd2367b849
imag-timetrack: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
d7eda6c451
imag-log: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
62eb711409
imag-wiki: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
1362a3f9ea
imag-bookmark: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
3ac30c0944
imag-contact: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
4486abed84
imag-diary: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
8fb35b5fe1
imag-habit: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
c1bc5d4bf6
imag-view: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
73362c6de3
imag-link: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
11abf55a0f
imag-annotate: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
6d8bac314c
imag-tag: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
e3911d97d9
imag-store: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
3272dbfd74
imag-mv: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
8114c5976c
imag-diagnostics: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
279751b99c
imag-ids: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
3cfe5f217c
imag-gps: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
12644f22d9
imag-category: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
79b996f0ad
imag: Move from error-chain to failure
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-30 18:46:29 +01:00
52c5300ec8
Update about-text in imag-wiki
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-17 11:37:24 +02:00
f970fc987f
Update about-text in imag-tag
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-17 11:37:24 +02:00
5b4715b311
Update about-text in imag-link
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-17 11:37:24 +02:00
0d103653ea
Update about-text in imag-ids
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-17 11:37:24 +02:00
325c5ddbd0
Fix: URL in imag helptext
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-17 11:37:24 +02:00
8e232523b2
Fix: We dont have a subcommand "internal" anymore
...
This subcommand was passed but it does not exist. Unfortunately, the
tests did not fail...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-09 17:37:56 +02:00
e96fb53677
Fix: Use "retrieve" instead of "create" when importing
...
This fixes a bug where a re-import of the contacts directory failed
because some entries already exist.
With this change, one can import the contact directory after things
changed in there and the imag database is updated accordingly, but not
altered. So links and notes are persisting.
For completeness: before, the workflow was to
`cd $IMAG_RTP && git rm store/contacts -r && imag contact import /path/to/contacts`
which is of course not optimal.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-07 10:56:56 +02:00
029b83042d
Fix detecting of external links
...
Checking whether we have a file (on the FS) here is not enough for
either case (external link/internal link).
Thus, we should check whether a store entry with that ID exists. If it
does, we link internally, else externally by trying to parse the string
as URL.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-10-06 12:58:54 +02:00
f768c068e3
Update dependency: regex: 0.2 -> 1
2018-10-06 12:22:15 +02:00
0d6b345741
Update dependency: prettytable: 0.6 -> 0.8
2018-10-06 12:22:15 +02:00
f65824db22
Update dependency: prettytable: 0.6 -> 0.8
2018-10-06 12:22:15 +02:00
ab3b36ebcf
Update dependencies
...
walkdir: 1 -> 2
uuid: 0.6 -> 0.7
2018-10-06 12:22:15 +02:00
51730eed89
Update dependency: tempfile: 2 -> 3
2018-10-06 12:21:20 +02:00
502889b9a2
Update dependency: prettytable: 0.6 -> 0.8
2018-10-06 12:21:20 +02:00
f2de746293
Update dependency: regex: 0.2 -> 1
2018-10-06 12:21:20 +02:00
2077980f22
Update dependencies: log: 0.3 -> 0.4
2018-10-06 12:21:20 +02:00
3e4fcb19bb
Update dependencies: log: 0.3 -> 0.4, version: 2 -> 3
2018-10-06 12:21:20 +02:00
3b0b9c8d7b
Update dependency: walkdir 1 -> 2
2018-09-30 15:04:29 +02:00
89059bb7da
Fix: Use VcardBuilder instead of Vcard itself
...
The current implementation does not panic on VcardBuilder::build(), so
we unwrap() that directly.
Should be fixed in future versions of either rust-vobject or here, so
that we error appropriately.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-09-27 15:05:45 +02:00
d9e4eaad3c
Update kairos to master branch
...
Because of the new error-chain version which kairos can depend on, for
which kairos is not yet released.
2018-09-27 15:05:45 +02:00
e838f0d0e7
Update dependency: handlebars: 0.29.0 -> 1.0
2018-09-27 15:05:45 +02:00
f97d9e0d96
Temporarily set vobject to custom fork until we have a new release
2018-09-27 15:05:45 +02:00
946d9891e4
Update dependency: vobject: 0.{4,5} -> 0.6
2018-09-27 15:05:45 +02:00
61738ac9ee
Revert "Update dependency: handlebars: 0.29.0 -> 1.0"
...
This reverts commit a1f0872486995b80216e8a08a2176debdef3752a.
As updating handlebars needs some more involvement, we roll back to the
version we use currently and schedule the update for later.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-09-27 15:05:45 +02:00
c65e73acc8
Update dependency: kairos: 0.1 -> 0.2
2018-09-27 15:05:45 +02:00
abf6a3c384
Update dependency: handlebars: 0.29.0 -> 1.0
2018-09-27 15:05:45 +02:00
764a019817
Update dependency: log: 0.3 -> 0.4
2018-09-27 15:05:45 +02:00
3d12998603
Update dependency: toml-query: 0.6 -> 0.7
2018-09-27 15:05:44 +02:00
0a7afee454
Update dependency: error-chain: 0.11 -> 0.12
2018-09-27 15:05:25 +02:00
c791977aab
Merge pull request #1506 from matthiasbeyer/minor
...
Minor
2018-09-27 09:53:31 +02:00
6bf49aa6b5
Fix: 'imag-contact show' should increase output counter
2018-09-27 08:09:39 +02:00
6f768fe4ad
Add a progressbar to the command
...
Note: characters in config have to be escaped.
2018-09-27 07:40:10 +02:00
430186799b
Remove store flush caching as it is not necessary anymore
2018-09-27 07:31:47 +02:00
dc49b2265c
Fix: Binary name
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-08-26 04:24:57 +02:00
d2bf1751ac
Fix: Binary name
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-08-26 04:24:57 +02:00
9507db6d8e
Fix: Binary name
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-08-26 04:24:57 +02:00
ab32f21333
Fix: Binary name
...
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2018-08-26 04:24:57 +02:00
6e56f469ae
More verbose erroring in test
2018-08-26 04:24:57 +02:00
acdc1e84bc
Merge pull request #1495 from matthiasbeyer/imag-diary/fix-missing-header
...
Imag diary/fix missing header
2018-07-27 20:10:59 +02:00
b896bc2657
Fix: Do not create entries with Store::retrieve()
...
This patch fixes a bug where entries where created with
`Store::retrieve()` rather than with the API from libimagdiary.
This caused headers to be missing.
Now, the CLI is parsed for the values passed and a NaiveDateTime object
is crafted from that, which is then passed to libimagdiary.
2018-07-20 01:37:36 +02:00
22d63f0946
Add functionality to create entry at a certain time
2018-07-20 01:37:36 +02:00
f6a7345b4a
Simplify: Move header verification from Value extension to Entry type
2018-07-19 20:58:27 +02:00
8d86af5f15
Fix: Use unused result
2018-06-27 00:43:36 +02:00
eb682d76e8
Prettify error messages
2018-06-15 22:07:13 +02:00
3b97db5c25
Fix: Duplicated printing of entries with "show --all"
...
The problem was that the used `Diary::diary_names()` iterator does not
call `unique()` on its output.
That decision was made because the return type would get more
complicated with that feature.
Now that rustc 1.26 with Impl Trait is out, we can refactor the return
types of these functions (so also with `Diary::diary_names()`) to
automatically do this.
2018-05-11 15:45:50 +02:00
664edc7943
Update version string: 0.8.0 -> 0.9.0
2018-05-09 11:39:33 +02:00
61d0136c26
imag-category: Initial import
2018-05-04 11:09:20 +02:00
9c36fc8ac0
Merge pull request #1468 from matthiasbeyer/imag-ids/filters
...
imag-ids: filters
2018-05-03 10:22:20 +02:00
846de028cf
Add trace output in filtering process
2018-05-02 20:42:56 +02:00
191f049ea8
Add language documentation in commandline help
2018-05-02 20:42:56 +02:00
f618026305
Add store cache flushing after each 100st entry
2018-05-02 20:42:56 +02:00
c27349e94f
Implement header filter language
2018-05-02 20:42:56 +02:00
f4e1c0864c
Implement 'where' subcommand
2018-05-02 20:42:56 +02:00
d518322401
Add notes how the filter language should look like
2018-05-02 20:42:56 +02:00
74c982984c
Move collection filter to new module
2018-05-02 20:42:56 +02:00
f85dc02db6
Revert "Deny non-absolut import pathes"
...
This reverts commit b90abfb868
.
Because `libimagcontact` is not based on `libimagentryref` anymore (as
of 2b10ab0b36
), and thus does not put
pathes into the header, we can allow non-absolute pathes here.
2018-05-02 19:42:38 +02:00
eb20a9d881
Merge pull request #1477 from matthiasbeyer/libimagstore/remove-walk
...
Remove Store::walk()
2018-05-02 18:39:11 +02:00
0dbef993c1
Adapt "imag store verify" implementation for removed Store::walk()
2018-05-02 17:46:45 +02:00
be62843608
Fix description
2018-05-01 22:29:46 +02:00
b86ed2ffa9
Refactor imag-wiki to new store iterator interface
2018-05-01 17:44:20 +02:00
7aca84dd5e
Refactor imag-mail to new store iterator interface
2018-05-01 17:44:17 +02:00
519b6f7ef2
Refactor imag-habit to new store iterator interface
2018-05-01 17:44:14 +02:00
11f9a9027e
Refactor imag-diary to new store iterator interface
2018-05-01 17:44:09 +02:00
829e425c12
Refactor imag-view to new store iterator interface
2018-05-01 17:44:05 +02:00
a9d0f3d53a
Refactor imag-edit to new store iterator interface
2018-05-01 17:44:01 +02:00
dd453659ed
Refactor imag-mv to fit new store iterator interface
2018-05-01 17:44:01 +02:00
e6244d7e9e
Refactor imag-todo to fit new store iterator interface
2018-05-01 17:44:01 +02:00
eaf8148cda
Refactor imag-ids to fit new store iterator interface
2018-05-01 17:44:01 +02:00
40a04376ed
Refactor imag-link to fit new store iterator interface
2018-05-01 17:44:01 +02:00
d45eef299e
Merge pull request #1476 from matthiasbeyer/imag-diagnostics/refactor
...
Minify code with helper macro
2018-04-30 21:49:24 +02:00
424a060cc8
Merge pull request #1475 from matthiasbeyer/imag-diagnostics/flush-cache
...
imag-diagnostics: flush cache
2018-04-30 21:07:56 +02:00
004faaa905
Performe cache flushing during aggregation
2018-04-30 18:40:19 +02:00
b713718693
Minify code with helper macro
2018-04-30 14:15:34 +02:00
58a6eea573
Remove the edit command
...
The edit command of imag-diary gets removed by this patch.
The rationale is that imag-edit is way more powerful and thus, not every
other imag module should implement an edit command. Chaining
`imag-diary list` and `imag edit -I` is encouraged.
We still need the edit functionality in imag-diary, as `imag diary
create` shall spawn an editor, still. We only remove the ability for
editing of existing entries with this patch.
2018-04-30 14:04:16 +02:00
6d21d8eb49
Update dependency: filters: 0.2 -> 0.3
2018-04-29 10:46:36 +02:00
0976cab014
Merge pull request #1464 from matthiasbeyer/libimagentrygps/32-bit-gps-values
...
libimagentrygps: 32 bit gps values
2018-04-29 00:35:21 +02:00
dbb39475d9
Upgrade variables to 64 bit
2018-04-28 23:27:12 +02:00
f493b4b8c3
Fix: Allow second to be missing
2018-04-28 23:18:02 +02:00
713621337f
Adapt for new libimagcontact interface
2018-04-27 16:57:48 +02:00
932ba3e7d4
Set extension or warn if none there
...
In case of auto-generating the file name, we should add an extension.
If we do not auto-generate the file name, we should warn that the
extension for the file is missing.
2018-04-27 13:58:46 +02:00
493fa0226c
Merge pull request #1453 from matthiasbeyer/imag-contact/create-uid
...
Fix: Generate UID when creating a contact
2018-04-26 16:16:33 +02:00
ad9eb62376
Fix: Generate UID when creating a contact
2018-04-26 14:43:21 +02:00
07e804a7c8
Fix: Make most fields optional
2018-04-26 14:01:53 +02:00
d6f8751f6e
Reimplement imag-contact
2018-04-25 13:45:00 +02:00
a83d10fb1e
Remove feature usage
2018-04-25 13:45:00 +02:00
b90abfb868
Deny non-absolut import pathes
2018-04-25 10:33:12 +02:00
0e567e2358
Merge pull request #1445 from matthiasbeyer/imag-view/seperator
...
imag-view argument to put seperator between shown entries
2018-04-25 10:01:36 +02:00
95a4816604
Implement imag-view argument to put seperator between shown entries
2018-04-24 22:49:53 +02:00
be74afd031
Remove "dump" subcommand
2018-04-24 22:16:40 +02:00
c2fd3fa94e
Add support for formatted markdown output
...
This patch also removes the (unused) "compile" subcommand and replaces
it with a flag "-c" / "--compile" which prints the output in formatted
to the terminal.
Compiling the output from markdown to HTML and showing in the browser is
not yet possible.
2018-04-24 18:06:45 +02:00
279f7ef2aa
Fix: Pass output stream to view_entries()
2018-04-24 16:46:23 +02:00
653db333e6
Fix imag-view for new view_entry() interface
2018-04-24 16:46:23 +02:00
726e4c515f
Merge pull request #1422 from matthiasbeyer/imag-git/init
...
imag-git: init
2018-04-24 15:26:19 +02:00
8a5abb22f4
Generate completion for imag-git
2018-04-24 13:56:11 +02:00
055a55c9f0
Add imag-git command
2018-04-24 13:56:11 +02:00
09d34783cb
Fix imag-mail to list from appropriate collection
2018-04-24 13:40:42 +02:00
22fb26dc12
Replace Store::retrieve_for_module() with own iterator type
2018-04-24 13:40:42 +02:00
7d3224a258
Merge pull request #1437 from matthiasbeyer/imag/fix-doubled-output
...
Fix: Do not inherit stdout here
2018-04-22 16:12:32 +02:00
9303a72a28
Merge pull request #1436 from matthiasbeyer/imag-log/show-ordered
...
Fix: imag-log show should order by datetime
2018-04-22 15:55:25 +02:00
c3fe934119
Merge pull request #1435 from matthiasbeyer/imag-view/fix-autowrapping
...
Fix: Do not automatically wrap text
2018-04-22 15:55:19 +02:00
909240fc24
Fix: Do not inherit stdout here
...
This caused us to print funny output. But we want to catch the output
and print a nice list ourselves here.
2018-04-22 14:37:56 +02:00
ee75d2309c
Fix: imag-log show should order by datetime
2018-04-22 14:33:53 +02:00
10b71864f6
Fix: Do not automatically wrap text
...
We must use `ArgMatches::occurrences_of` here to check whether the
argument was actually passed.
If it was not passed, we do not wrap at all.
2018-04-22 14:17:12 +02:00
a343a2ab90
Do not use version crate in build script
2018-04-22 11:09:31 +02:00
d742e15763
Do not depend on "version" crate
...
We should not depend on the version crate, as it is GPL licensed.
We removed the usage of this crate before, but it was still in the
Cargo.toml files (despite being used in the source).
2018-04-22 11:09:31 +02:00
ca5e150f3a
Merge pull request #1421 from matthiasbeyer/imag-view/wrapping
...
imag-view: wrapping
2018-04-20 09:24:14 +02:00
e0decb7294
Merge pull request #1419 from matthiasbeyer/imag-diary/list-diaries
...
Add functionality to list diaries
2018-04-20 09:24:07 +02:00
e820f8bfb2
Add functionality to read storeids from stdin
2018-04-19 22:08:34 +02:00
36bc517524
Add support for tagging/untagging multiple entries with one call
2018-04-19 22:08:34 +02:00
e80bf7b57d
Add feature for wrapping output
2018-04-19 21:55:27 +02:00
6e80f603d6
Add functionality to list diaries
2018-04-19 21:36:22 +02:00
d2dceb6640
Update version numbers: 0.7.0 -> 0.8.0
2018-04-19 10:05:53 +02:00
0d31ee7efd
Update dependencies: Add version
2018-04-19 09:57:36 +02:00
b690925e01
Fix: Use fill storeid when listing
2018-04-18 18:32:11 +02:00
e29bbdb98d
Fix: Make error message more explanatory
2018-04-18 17:41:34 +02:00
4568b1f625
Merge pull request #1380 from matthiasbeyer/minor
...
Minor patches
2018-04-18 16:46:41 +02:00
962b5fffd8
Remove unused imports/code
2018-04-18 14:32:23 +02:00
2a0bf1cd51
Remove CLI for mainpage setting
2018-04-18 14:32:23 +02:00
8ea3f62fbc
Add autolinking
2018-04-18 14:32:23 +02:00
e1ffa4b107
Add name filtering in show command
2018-04-18 14:32:23 +02:00
4450f22c5e
Add show subcommand
2018-04-18 14:32:23 +02:00
cc9e7c89d0
Remove grep functionality
2018-04-18 14:32:23 +02:00
caf0e63b35
Rename "create" command to "create-wiki", introduce "create" for creating entries
2018-04-18 14:32:23 +02:00
2c07ad9a3a
Implement grep command
2018-04-18 14:32:23 +02:00
2ee6dde75e
Add implementation for delete functionality
2018-04-18 14:32:23 +02:00
28f882e6c7
Add implementation for create subcommand
2018-04-18 14:32:23 +02:00
8dd3a57114
Initial import
2018-04-18 14:32:23 +02:00
98f8366e4c
Fix documentation in crate metadata
2018-04-17 15:55:08 +02:00
90593e2d93
Update dependency: toml-query: 0.4 -> 0.6
2018-04-15 09:15:24 +02:00
fb4917d050
Remove feature to generate commandline completion scripts
2018-04-14 14:35:28 +02:00
Mario Krehl
9a316d1268
Add license header to build.rs script
2018-04-14 14:19:28 +02:00
Mario Krehl
f463565770
Change target directory of completions to target/
2018-04-14 14:19:28 +02:00
Mario Krehl
38b4151b84
Fix: macro call build_subcommand
2018-04-14 14:19:28 +02:00
Mario Krehl
7e9c25fd63
Refactor: use App in the build_ui function of imag-init
2018-04-14 14:19:28 +02:00
Mario Krehl
84e1cffbe3
Fix: use mod ui and remove unused imports
2018-04-14 14:19:28 +02:00
Mario Krehl
d4c7019fc7
move target directory of the shell completions to target/shell-completions.d/
2018-04-14 14:19:28 +02:00
Mario Krehl
264a07239f
move the build_ui function of imag-ids into its own file
2018-04-14 14:19:28 +02:00
Mario Krehl
1d6e993ee8
fix copypasta fails
2018-04-14 14:19:28 +02:00
Mario Krehl
a7959a2e67
add all current imag binaries to the shell-completion script
2018-04-14 14:19:28 +02:00
Mario Krehl
a104d53919
build script for shell completion works again
2018-04-14 14:19:28 +02:00
Mario Krehl
de9ef077c3
add build.rs again
2018-04-14 14:19:28 +02:00
mario
ec2b8984bb
Add comment for &version!()[..]
2018-04-14 14:19:28 +02:00
mario
0f22941cd0
Add comments about functionality,
...
increase verbosity of some variables
2018-04-14 14:19:27 +02:00
mario
85cd326818
Add build_subcommand! macro
2018-04-14 14:19:27 +02:00
mario
a825f4aba6
Add additional dependencies
2018-04-14 14:19:27 +02:00
mario
d93b93fece
Change from types implementing build_ui to a mod for every binary.
...
Works with all available binaries.
Code cleanup
2018-04-14 14:19:27 +02:00
51b9b5c0db
Fix: Use qualification
2018-04-14 00:58:40 +02:00
1511d70fa3
Add lints
2018-04-14 00:39:43 +02:00
561008bd7f
Add lints
2018-04-14 00:39:43 +02:00
f92163f6d0
Add lints
2018-04-14 00:39:43 +02:00
e71019a2f2
Add lints
2018-04-14 00:39:43 +02:00
ad3269bbcc
Add lints
2018-04-14 00:39:43 +02:00
f6f1c23456
Add lints
2018-04-14 00:39:43 +02:00
461d59fcb0
Add lints
2018-04-14 00:39:43 +02:00
76c8443e50
Merge pull request #1395 from matthiasbeyer/clap-text-wrap
...
Clap text wrap
2018-04-13 22:46:09 +02:00
aeec10bf76
Use clap with wrap_help feature
2018-04-13 16:19:10 +02:00
b59c234588
Use clap "^2.29" instead of ">=2.29"
2018-04-13 16:17:43 +02:00
a53f130557
Merge pull request #1393 from matthiasbeyer/imag-diary/list-ids-sorted
...
Fix: List ids sorted
2018-04-13 15:54:32 +02:00
17ff619ca5
Merge pull request #1391 from matthiasbeyer/imag-grep/fix-count
...
Fix missing counting
2018-04-13 15:54:18 +02:00
532de484f2
Fix: List ids sorted
2018-04-13 13:51:56 +02:00
02985e5a0d
Fix missing counting
2018-04-13 13:27:08 +02:00
89cf979b13
Add functionality to filter for a collection
2018-04-13 11:25:59 +02:00
dce7c1b820
Update copyright years
2018-04-11 16:54:26 +02:00
2f47becef4
Merge pull request #1378 from matthiasbeyer/imag-view/ids-from-stdin
...
imag-view: Add support for piping entry ids into command
2018-04-07 10:51:10 +02:00
a14ab7b635
Merge pull request #1377 from matthiasbeyer/imag-contact/find-id
...
imag-contact: Add functionality to find contacts and print the storeid/file path
2018-04-07 10:51:02 +02:00
5061faaa74
Add support for piping entry ids into command
2018-04-06 16:16:22 +02:00
1d5171d770
Merge pull request #1376 from matthiasbeyer/imag-view/multiple-ids
...
imag-view: Add support for viewing multiple entries
2018-04-06 16:15:32 +02:00
3dfb17aabd
Add functionality to find contacts and print the storeid/file path
2018-04-06 15:42:15 +02:00
2cee4ba90f
Merge pull request #1375 from matthiasbeyer/imag-contact/find-format
...
imag-contact: Add format argument
2018-04-06 15:32:15 +02:00
f1cdb21430
Add support for viewing multiple entries
2018-04-06 15:30:12 +02:00
c6d0e37629
Fix formatted output, use seperator for lists
...
The formatted output should use ", " as seperator for lists of values
2018-04-06 14:26:46 +02:00
14fc6c7c7f
Add format argument
2018-04-06 14:24:30 +02:00
8c1b4124c0
Handle unknown subcommands in binaries with Runtime::handle_unknown_subcommand
2018-04-04 19:34:13 +02:00
e61ccc9561
Fix: Entry::to_str() should return Result<_>
...
Because serializing might fail.
Also fixes all usages of the API.
2018-03-26 14:24:42 +02:00
7907ed96c7
Merge pull request #1368 from matthiasbeyer/imag-link/list-output-table
...
imag-link: Do table output by default
2018-03-23 19:37:13 +01:00
f627d22057
Add header editing support
2018-03-23 17:16:40 +01:00
9c13c276fb
Do table output by default
2018-03-23 15:58:45 +01:00
fd91662ed9
Merge pull request #1363 from matthiasbeyer/imag-init/create-store-dir
...
Fix: Create store directory as well
2018-03-23 13:41:10 +01:00
8f1d3c4ffb
Fix: Create store directory as well
2018-03-23 10:12:39 +01:00
127681498f
Add debug output in tests
2018-03-23 10:05:58 +01:00
bcdfe3ceea
Use variable mutable, so we can create an instance
2018-03-22 21:32:58 +01:00
00d485c3d3
Add parameter to show done habits
2018-03-22 14:36:51 +01:00
64c8aee7fb
Add functionality to include store path (defaults to no)
2018-03-16 23:51:41 +01:00
dc76729bea
Merge pull request #1345 from matthiasbeyer/imag/inherit-stdio
...
Inherit stdio to child process
2018-03-12 23:22:17 +01:00
ee72e61b44
Merge pull request #1343 from matthiasbeyer/imag-tag/rewrite-cli
...
imag-tag: rewrite cli
2018-03-12 23:07:06 +01:00
45be292dd3
Inherit stdio to child process
2018-03-12 22:43:26 +01:00
fbc3bda54b
Rewrite CLI for more positional args
...
Also removed some non-working "+<tag>" and "-<tag>" handling.
2018-03-12 22:16:47 +01:00
8ae6e735e7
Allow reading store ids from stdin
2018-03-12 19:58:27 +01:00
e755bfd9de
Add JSON output support
2018-03-12 17:46:06 +01:00
6ec509709d
Merge pull request #1336 from matthiasbeyer/imag-contact/find-show
...
imag-contact: Add "find" command
2018-03-12 17:07:11 +01:00
cbe30fa9c2
Add "find" command
...
This patch adds a "find" command to imag-contact which can either list
or show the found contacts (defaults to "list").
2018-03-12 15:23:37 +01:00
af4fadf104
Join mails with comma
2018-03-12 14:46:24 +01:00
579c00b62a
Replace hard coded version strings with compiletime env
2018-03-06 12:45:41 +01:00
ee6e766c8d
Use generate_runtime_setup() to create Runtime object
2018-03-04 13:57:44 +01:00
50461b839a
Use output stream from Runtime::stdout()
2018-03-04 13:57:44 +01:00
f88884c321
Merge pull request #1321 from matthiasbeyer/libimagdiary/not-on-retrieve-for-module
...
libimagdiary: Do not rely on Store::retrieve_for_module
2018-03-03 13:53:18 +01:00
590a2e8f1d
Merge pull request #1317 from matthiasbeyer/imag-diary/daily
...
imag diary: "daily" support + Fixes for other timed entries
2018-03-03 13:29:10 +01:00
eccb52a85c
Fix imag-log for new Diary::entries() interface
2018-03-02 23:27:20 +01:00