Commit Graph

5890 Commits

Author SHA1 Message Date
Matthias Beyer 0ec080fc7d Merge branch 'imag-ref-list-dead-refs' into master 2019-04-27 02:04:59 +02:00
Matthias Beyer 989624cc5e Merge branch 'minor' into master 2019-04-27 02:00:49 +02:00
Matthias Beyer cf9b29484e Merge branch 'imag-contact-edit' into master 2019-04-27 02:00:20 +02:00
Matthias Beyer a7f2826bb9 Fix: Do only check entries which are a ref
We should not try to check entries that are not refs because this will
always fail. And because we fail _hard_, the execution of the command
fails on the first non-ref-entry and exits the program. Not good for a
filter... :-)

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-27 01:57:40 +02:00
Matthias Beyer 9c467d0462 Add debug output
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-27 01:33:04 +02:00
Matthias Beyer 29b04a269a doc: Rewrite section on error handling in libraries
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-26 16:15:34 +02:00
Matthias Beyer 3d8fef0688 Add changelog for version 0.9.1
This was cherry-picked from the 0.9.1 release, where I made the mistake
to add one commit for all updated stuff, instead of adding the changelog
in one commit and all other stuff in other commits.

But because we should have that information on master, we cherry-pick
the commit 7137a3ce7 partially here.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
(cherry picked from commit 7137a3ce7)
2019-04-26 16:12:23 +02:00
Matthias Beyer 535595a7c8 alias: Add note = notes
imag-notes should have been imag-note, but re-releasing it just because
of this slight inconvenience seems overblown.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-26 16:07:20 +02:00
Matthias Beyer b791eea8d7 Revert "Add vacation notice"
This reverts commit 3f9c98a851.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>

# Conflicts:
#	README.md
2019-04-26 16:06:21 +02:00
Matthias Beyer 37d8ae7430 Add contact editing.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 16:50:07 +02:00
Matthias Beyer 9945cb38b7 Refactor: Move contact-by-hash finding to utils
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 16:50:07 +02:00
Matthias Beyer 485779a176 Implement list-dead subcommand
This patch implements a helper in imag-ref to list all dead references
either by store id or by path which is referenced.

Suggested-by: Leon Schürmann <leon@is.currently.online>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 15:02:34 +02:00
Matthias Beyer dc60942111 Add CLI interface for listing dead refs
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 15:02:34 +02:00
Matthias Beyer 26664a5aec Merge branch 'libimagentryref-override-base' into master 2019-04-22 14:40:30 +02:00
Matthias Beyer c927eb49f9 Merge branch 'libimagcontact-force-override-ref-data' into master 2019-04-22 14:40:19 +02:00
Matthias Beyer 0d5229be10 Refactor error handling
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:40:07 +02:00
Matthias Beyer 9424661393 Add setting to override basepath setting
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:40:07 +02:00
Matthias Beyer 427eac76fe Add Ref::get_path_with_basepath_setting()
This function can be used to override the basepath setting from the
header of the entry so that another basepath is used for looking
up/constructing the actual filepath.

This might come in handy at some point.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:40:07 +02:00
Matthias Beyer 41e981fa48 Add force-override option to "imag-contact import"
This patch adds the option to force-override the ref data in the
imported entries. This is necessary when importing contact data which is
already in the store, but where the reference data has changed (for
example if the hash of the file has changed, this might come in handy at
some point).

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:37:43 +02:00
Matthias Beyer ff5e6653ed Add option to override ref data in contact entries
This patch adds a flag to the ContactStore::retrieve* functions so one
can override the ref data in the store for the retrieved entry.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:37:43 +02:00
Matthias Beyer d561bef939 Merge branch 'imag-ignore-dotd-binaries' into master 2019-04-22 14:28:40 +02:00
Matthias Beyer 99576bf5bc Merge branch 'remove-libimagnotification' into master 2019-04-22 14:28:23 +02:00
Matthias Beyer 1861f6545d Merge branch 'libimagcontact-with-ref' into master 2019-04-22 14:27:05 +02:00
Matthias Beyer 9b7edfc6c1 Rewrite imag-contact to handle reference storing
This patch rewrites the imag-contact binary to be able to work with the
new libimagcontact interface, which now uses libimagentryref for storing
references to the actual vcard files.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:26:56 +02:00
Matthias Beyer 1c851bbb79 Rewrite store interface abstraction
Because we pull in libimagentryref here to create actual references to
the files we parse here, we need to rewrite the interface to be able to
pass the required information to the libimagentryref API.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:26:56 +02:00
Matthias Beyer 784cc85fdb Add example configuration for contact basepath 2019-04-22 14:26:56 +02:00
Matthias Beyer a410486016 Merge branch 'libimagentryref-partial' into master 2019-04-22 14:26:40 +02:00
Matthias Beyer fd980299a5 Ignore ".d" binaries in debug build
The comment in the patch should be self-explanatory.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:24:46 +02:00
Matthias Beyer 204da1b0bd Remove libimagnotification
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:05:55 +02:00
Matthias Beyer cf234437d7 Implement Partial for Config
With this implemented, we can fetch the appropriate configuration easily
from the configuration.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 13:06:26 +02:00
Matthias Beyer 2854e88dcc Rename: "ref.collection" to "ref.basepath"
The setting in the header should reflect the name of the setting in the
configuration file, for a better user experience.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 13:06:26 +02:00
Matthias Beyer 7ae2d926cc Use toml-query master branch during development
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 13:06:26 +02:00
Matthias Beyer 1876220d83 Rewrite github template 2019-04-21 13:51:55 +02:00
Matthias Beyer 31e3116b48 Revert "Remove GetIter"
This reverts commit a49522dc86770a741d61d548351ad69dfc56d1fa.
2019-04-14 00:16:47 +02:00
Matthias Beyer b8cd9c6efa Add debug output
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-14 00:16:47 +02:00
Matthias Beyer aa3fdb88d5 Remove GetIter
Because the code is not used.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-14 00:16:47 +02:00
Matthias Beyer 4afebbe9e4 Remove FilterLinksIter
Because the code is not used.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-14 00:16:47 +02:00
Matthias Beyer 1f515b1d0d Remove DeleteUnlinkedIter
Because the code is not used.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-14 00:16:47 +02:00
Matthias Beyer 0283c3af7a Merge branch 'fix-path-iterator' into master-ff
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 23:42:20 +02:00
Matthias Beyer a4bcefe660 Merge branch 'rewrite-module-entry-path'
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 23:08:36 +02:00
Matthias Beyer 526885ee19 Fix: PathIterBuilder should not yield directories
PathIterBuilder should yield iterator that does only yield file pathes,
not directories.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 23:00:06 +02:00
Matthias Beyer cb4d5367e4 Rewrite all usages of ModuleEntryPath
Because the code was so complex before, we had to create an object and
then cast that object into a `StoreId` rather than just creating a
`StoreId` object right away.

With this patch, we're using the code-generation approach to generate a
function that creates a `StoreId` object based on the name of the
current module. That's way easier and error handling was also improved
by the switch to the new implementation.

The patch also includes a rewrite of all usages of ModuleEntryPath and
changes them to `module_path::new_id()` calls.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 22:39:39 +02:00
Matthias Beyer de522ec0f2 Fix for rust beta compiler
The beta compiler reports duplicated input:

error: the item `IntoValues` is imported redundantly
   --> lib/entry/libimagentrylink/src/internal.rs:398:13
    |
36  | use self::iter::IntoValues;
    |     ---------------------- the item `IntoValues` is already imported here
...
398 |         use internal::iter::IntoValues;
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |

so we fix this here.

Other imports were fixed as well.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 22:06:53 +02:00
Matthias Beyer 630090dd57 travis: Update rustc to 1.32.0 / 1.33.0
We use 1.32.0 as minimum required version.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 18:54:51 +02:00
Matthias Beyer 82a2fa1528 Remove old TODO
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-03-09 13:30:12 +01:00
Matthias Beyer 19622f41ae Do not ignore errors when collecting links
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-03-09 13:30:12 +01:00
Matthias Beyer 581da9c9cf Remove old comment
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-03-09 13:30:12 +01:00
Matthias Beyer 71cccad665 Remove old comment
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-03-09 13:30:12 +01:00
Matthias Beyer ca2f130995 Rewrite: Diary::get_youngest_entry_id()
Rewrite to collect not so often internally. This removes one collect()
from the implementation. One is still there in the sorted_by() call,
though.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-03-09 13:30:12 +01:00
Matthias Beyer 205c2b09b6 Remove outcommented code
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-03-09 12:26:21 +01:00