2328c8b2b0
Take AsRef<str> rather than &String
2018-02-19 12:14:32 +01:00
cbb47cffcb
Implement Ref functions
2018-02-19 12:14:32 +01:00
ed69fd4b35
Enrich error types
2018-02-19 12:14:32 +01:00
81a8826740
Add impl for RefStore::{get,create,retrieve}_ref()
2018-02-19 12:14:32 +01:00
1014f58cfc
Rewrite interface
2018-02-19 12:14:32 +01:00
73af121882
Remove old concepts
2018-02-19 12:14:32 +01:00
5f99018807
Simplify store debug print
2018-02-19 11:51:21 +01:00
c2dfb2ef52
Refactor timetrack subcommands output for broken pipe errors
2018-02-19 11:14:18 +01:00
6a341d3723
Abstract exit code as a type
2018-02-19 11:14:18 +01:00
256bc47222
Refactor into two independent extensions
2018-02-19 10:40:26 +01:00
39107c5296
Add result extension for translating io errors to exit codes
2018-02-19 10:40:26 +01:00
841d3ffb60
Remove OnErr extension which is not used
2018-02-18 20:04:22 +01:00
2b26db70ed
Make HabitBuilder derive Debug
2018-02-18 20:03:50 +01:00
3341e3640c
Merge pull request #1224 from matthiasbeyer/git-version-in-version
...
Git version in version
2018-02-18 20:03:09 +01:00
3bd8822f4f
Use version string from git, if present
2018-02-13 11:53:51 +01:00
f5f4fbc397
Add buildscript and infrastructure to include git information in version
2018-02-13 11:38:34 +01:00
5b07baddf8
Add error convenience extension
2018-02-12 21:22:39 +01:00
50b0ffa6ae
Remove calls to trace_error_exit()
2018-02-12 21:19:48 +01:00
074f9826fd
Implement own displaying implementation for the chain
2018-02-12 21:19:48 +01:00
503b042690
Adapt libimagrt to new error handling
2018-02-12 21:19:47 +01:00
6dd24f3da3
Keep trace_error{,_dbg} for backwards compatibility
2018-02-12 21:19:47 +01:00
e481dbfd12
Rewrite libimagerror to be thin layer over error-chain
2018-02-12 21:19:47 +01:00
4a4e528aed
Refactor error handling
...
Refactor error handling so we do chain the error with the `?`
operator rather than wrapping it with own types.
Links to other error chains are created with error chain. All unneeded
error kinds were removed.
No API changes.
2018-02-11 23:44:27 +01:00
77be32d80f
Remove "get" iterator, store provides this now
2018-02-11 23:44:27 +01:00
9e3c966d84
Merge pull request #1273 from matthiasbeyer/update-version-numbers
...
Update version string: 0.6.0 -> 0.7.0
2018-02-11 17:50:52 +01:00
2e4c29dd07
Merge pull request #1277 from matthiasbeyer/libimagstore/store-debug-output-prettify
...
Prettify Store debug output implementation
2018-02-11 15:19:13 +01:00
30d2c28a22
Update version string: 0.6.0 -> 0.7.0
2018-02-11 14:22:24 +01:00
8fcd2a6c8c
Prettify Store debug output implementation
2018-02-11 13:36:37 +01:00
fa8af0c053
Merge pull request #1275 from matthiasbeyer/clap-features
...
Clap features
2018-02-11 13:29:17 +01:00
863b52c2f0
Add TraceIterator::trace_unwrap_exit()
...
* Exits on the first Err(_)
* Introduces new Iterator type for iterating with unwrap and exit on
error
2018-02-10 16:41:06 +01:00
8656a38c50
Update dependency: clap: 2.17 -> 2.29
2018-02-10 16:40:34 +01:00
9d2900a7dc
Compile clap with suggestions and color support
2018-02-10 16:40:34 +01:00
3b710e082d
Add missing Cargo.toml metadata
2018-02-10 14:11:46 +01:00
d5a9e4930d
Update dates in license header
...
And add missing header in one file
2018-02-07 02:48:53 +01:00
29e88c5de0
Fix: Header entry setting
...
The header was not set properly. This fixes this bug.
2018-02-06 20:42:43 +01:00
346e5a9444
Add link to toml_query error types
2018-02-06 20:42:43 +01:00
e2e3b4f6e2
Update kairos dependency: 0.1.0-beta-2 -> 0.1.0
2018-02-05 16:20:05 +01:00
de613c9ebd
Merge pull request #1227 from matthiasbeyer/libimagentryutil/filtered-iterators
...
libimagentryutil: filtered iterators
2018-02-01 20:22:12 +01:00
3aa2e6edec
Add iterator helper for filtering
2018-02-01 16:46:57 +01:00
06cb8d50fb
Make StoreId::is_in_collection() generic over AsRef<str>
2018-02-01 16:46:57 +01:00
eb6ab8f029
Add IsInCollection helper type
2018-02-01 16:46:57 +01:00
da0c1fa594
Rewrite From<> implementations for habit iterators
...
to be generic over all iterators over StoreIds, so they can be build
directly from them.
2018-02-01 16:46:38 +01:00
3c1a0a51c9
Transform iterator to forget Store reference here
2018-02-01 16:46:38 +01:00
b3f546129a
Add StoreIdIteratorWithStore::without_store()
2018-02-01 16:46:38 +01:00
8e931cd79f
Change calls to into_get_iter() to not take argument
2018-02-01 16:46:38 +01:00
3b01a9eb2f
Add API in StoreIdIteratorWithStore to get acting iterators
...
This patch adds API functions in the StoreIdIteratorWithStore iterator
type to transform it into a iterator which _does_ something (as in the
`libimagstore::iter` API).
It mimics the API which is offered by `libimagstore::iter`.
2018-02-01 15:47:39 +01:00
030e32e44f
Provide StoreId Iterator which has a ref to the Store
...
This change is needed so we can refactor the "get" iterator to not take
an argument (the store) later, which improves the API.
2018-02-01 15:47:39 +01:00
da4b823048
Merge pull request #1219 from matthiasbeyer/minor
...
Minor patches
2018-02-01 13:18:31 +01:00
92c04c606c
Refactor to use AsRef<str>
2018-02-01 09:26:33 +01:00
7e53ad9f78
Add datetime <-> string conversion utility
2018-02-01 09:26:33 +01:00
4d94791b1f
Move date <-> string conversion utility to libimagutil
2018-02-01 09:26:33 +01:00
7ecaad830c
Refactor to use Iterator::fold()
2018-01-29 09:38:32 +01:00
164b6b7f10
Move documentation to appropriate place
2018-01-29 09:38:32 +01:00
7731b88c97
Remove map_err_trace_exit() calls in favour of map_err_trace_exit_unwrap()
2018-01-29 09:38:32 +01:00
4bd156fdb3
Remove unecessary String instantiation
2018-01-29 09:38:32 +01:00
fcfc397fc8
env_logger: 0.5.0-rc.2 -> 0.5
2018-01-18 14:15:40 +01:00
8d9c7dce4f
env_logger: 0.5.0-rc.1 -> 0.5.0-rc.2
2018-01-15 11:22:09 +01:00
635d000344
log: 0.4.0-rc.1 -> 0.4.0
2018-01-15 11:21:52 +01:00
c45130ddd0
env_logger: 0.4.* -> 0.5.0-rc.1
2018-01-15 11:20:27 +01:00
0aba7d2939
Adapt libimagrt for new log setup
2018-01-15 11:20:07 +01:00
f209e12410
Update dependency: log: 0.3.* -> 0.4.0-rc.1
2018-01-15 11:20:07 +01:00
68fedfb13a
libimagentryutil: Replace read with typed read
2018-01-13 01:14:03 +01:00
a34cae03e5
libimagentryref: Replace read with typed read
2018-01-13 01:14:03 +01:00
e9ae81a2ce
libimagentrylink: Replace read with typed read
2018-01-13 01:14:03 +01:00
18a6e9b64e
libimagentryfilter: Replace read with typed read
2018-01-13 01:14:03 +01:00
6c36c97895
libimagentrydatetime: Replace read with typed read
2018-01-13 01:14:03 +01:00
7176c130ff
libimagentrycategory: Replace read with typed read
2018-01-13 01:14:03 +01:00
163bf249ff
libimagentryannotation: Replace read with typed read
2018-01-13 01:14:03 +01:00
13ff09d8c6
libimagtodo: Replace read with typed read
2018-01-13 01:14:03 +01:00
397f79b238
libimagtimetrack: Replace read with typed read
2018-01-13 01:14:03 +01:00
cb0cb21220
libimagnotes: Replace read with typed read
2018-01-13 01:14:03 +01:00
014b54ad4e
libimaglog: Replace read with typed read
2018-01-13 01:14:03 +01:00
f2b72f4738
libimaghabit: Replace read with typed read
2018-01-13 01:14:03 +01:00
46774d765b
libimagdiary: Replace read with typed read
2018-01-13 01:14:03 +01:00
3ef5fcfab6
libimagstore: Replace read with typed read
2018-01-13 01:14:03 +01:00
febecd85e5
libimagrt: Replace read with typed read
2018-01-13 01:14:03 +01:00
0c4be78223
Update dependency: toml-query -> 0.6
2018-01-13 01:14:03 +01:00
bfc35e0517
Remove dependency "version"
...
Because the "version" crate is licensed as GPL, which would us require
to release imag as GPL, we remove the crate now.
2018-01-12 13:33:40 +01:00
9a9701fce5
Add flag settings/Contact::is_contact in libimagcontact
2018-01-08 23:46:36 +01:00
7fb13acf15
Add Ref::is_ref()
2018-01-08 23:46:36 +01:00
1f133eac3b
Use libimagentryutil::isa::Is in libimaghabit
2018-01-08 23:31:10 +01:00
00d09e618e
Use libimagentryutil::isa::Is in libimagentryannotation
2018-01-08 23:31:10 +01:00
a7c8fa1212
Add Is::set_isflag() helper function
2018-01-08 23:31:10 +01:00
a246144c26
Add Is helper trait
2018-01-08 23:31:10 +01:00
2d83796ef2
Initial import: libimagentryutil
2018-01-08 23:31:10 +01:00
7cf60d5bec
Merge pull request #1208 from matthiasbeyer/libimagdiary-bookmarkcollection-nonwrapping
...
libimagdiary: Do not wrap store types
2018-01-08 23:11:54 +01:00
689310edfe
Rename Store::retrieve_copy
to Store::get_copy
...
The function was named falsely and nobody noticed. So nobody uses this
function yet - hopefully - as this change is a breaking API change.
2018-01-08 15:16:41 +01:00
80c460dac9
Transform BookmarkCollection into two traits
...
One trait is implemented on the Store, it retrieves BookmarkCollection
objects.
The other is implemented on `libimagstore::store::Entry` which then
represents a BookmarkCollection.
2018-01-08 15:16:14 +01:00
c0f4a20367
Merge pull request #1200 from matthiasbeyer/refactor-matching-into-command-chaining
...
Refactor matching into command chaining
2018-01-05 15:19:32 +01:00
2c0f35e1a4
Merge pull request #1195 from matthiasbeyer/libimagdiary/support-seconds
...
Add second-support in libimagdiary
2018-01-05 13:54:12 +01:00
824f88e4fd
Refactoring: Use function chaining rather than matching
2018-01-05 13:32:31 +01:00
66b0611103
Refactoring: Use function chaining rather than matching
2018-01-05 11:37:09 +01:00
dac817f318
Refactor: Use function chaining and new error type link
2018-01-05 11:37:09 +01:00
1e2ac14d3b
Refactoring: Use function chaining rather than matching
2018-01-05 11:37:09 +01:00
c92e459e3a
Refactoring: Use function chaining rather than matching
2018-01-05 11:37:09 +01:00
5db3d0c278
Refactor: Use function chaining rather than matching
...
And use a helper function for common functionality
2018-01-05 11:37:09 +01:00
feaa32196b
Refactoring: Use function chaining rather than matching
...
Also introduce error links for this.
2018-01-05 11:37:09 +01:00
3294a77346
Refactoring: Use function chaining rather than matching
2018-01-05 11:37:09 +01:00
40490c10d6
Refactoring: Use function chaining rather than matching
2018-01-05 11:37:09 +01:00
dd66936e48
Refactoring: Use function chaining rather than matching
2018-01-05 11:37:09 +01:00