Commit graph

645 commits

Author SHA1 Message Date
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