Commit graph

389 commits

Author SHA1 Message Date
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
a386d50df3 Refactoring: Use function chaining rather than matching 2018-01-05 11:37:09 +01:00
e7d5e9ebc2 Refactoring: Use function chaining rather than matching 2018-01-05 11:37:09 +01:00
4bb0d0f073 Refactor: Use function chaining instead of matching 2018-01-05 11:37:09 +01:00
d5ce99b170 Refactor toml destructure matching.
Use accessor functionality and function chaining now.
2018-01-05 11:37:09 +01:00
4184a1e5d0 Replace matching with function chaining 2018-01-05 11:37:09 +01:00
fa8ac03701 Replace matching with function chaining 2018-01-05 11:37:09 +01:00
dbd9a2faaf Replace matching with function chaining 2018-01-05 11:37:09 +01:00
c1ff2b14f0 Replace matching with function chaining 2018-01-05 11:37:09 +01:00
a9135a80fb Replace matching with command chaining 2018-01-05 11:37:09 +01:00
7d1d41884c Replace matching with function chaining 2018-01-05 11:37:09 +01:00
57cf5003bd Move common functionality to utility module 2018-01-05 11:37:09 +01:00
0640bdeb73 Add second-support in libimagdiary 2018-01-04 19:39:07 +01:00
01bd020419 Remove unused imports 2018-01-04 19:35:35 +01:00
02f38fb209 Fix comments: Use two instead of three slashes 2018-01-04 19:34:55 +01:00
e518598351 Remove unneeded "mut" 2018-01-04 19:34:43 +01:00
af819f0fca Remove unneeded "mut" 2018-01-04 19:34:21 +01:00
0c9c9e26c1
Merge pull request #1183 from matthiasbeyer/libimaglog/init
libimaglog: init
2018-01-01 21:18:22 +01:00
529f3f83da
Merge pull request #1187 from matthiasbeyer/libimagerror/display-fix
Improve error output
2018-01-01 20:47:24 +01:00
774933ae4a
Merge pull request #1163 from matthiasbeyer/libimagstore/mighty-iters
libimagstore: More powerful iterator extensions
2017-12-25 22:02:56 +01:00
198e304be9 Initial import of libimaglog implementation 2017-12-25 21:55:04 +01:00
92d4a0237e Initial import: libimaglog 2017-12-25 21:46:04 +01:00
9890371652
Merge pull request #1185 from matthiasbeyer/bump-version-strings
Update version strings: 0.5.0 -> 0.6.0
2017-12-25 21:06:14 +01:00
0ae7b6b387 Do not call description() when displaying the error 2017-12-25 19:44:29 +01:00
46a8d373b3 Allow dead code in whole module 2017-12-25 19:23:41 +01:00
7d67b67440 Update version strings in tests 2017-12-25 19:17:07 +01:00
3c8dd19d11 Update version strings: 0.5.0 -> 0.6.0 2017-12-25 19:17:07 +01:00
9128d04866 Remove test
This test is not applicable anymore because it tests (and tested) the
wrong thing.

It was to check whether the function failed because the "imag" key
contained the wrong type, but this is not tested by that function. The
function only checks whether the "imag" key is present.
2017-12-25 17:59:50 +01:00
35410aaa2e Refactor: Remove unneccessary functions 2017-12-25 17:59:50 +01:00
20a552f527 Refactor header checking to use toml-query 2017-12-25 17:59:50 +01:00
2bf91fab09 Enhance error types 2017-12-25 17:59:50 +01:00
986dbad2fd
Merge pull request #1176 from matthiasbeyer/libimagstore/remove-config
libimagstore: remove config
2017-12-25 17:58:16 +01:00
0870665668 Add iterator extension for iterators over Result<T, E> 2017-12-24 13:52:50 +01:00
67410b3ad2 Implement iter extension for all iterators over StoreId 2017-12-24 13:52:50 +01:00
0ed636bb06 Refactor libimagrt+libimagstore to pass whole configuration object
Before we extracted the store configuration from the configuration
toml::Value object and passed it to the store.

This is unecessary overhead.

Now we pass the whole configuration object and let the store extract the
required values.
2017-12-24 13:52:18 +01:00
174d8d76e9 Remove configuration member, reduce configuration
We only need the configuration to check whether creating the store
directory is actually allowed.
2017-12-24 13:52:13 +01:00
38b56df406 Add new dependency: toml-query 2017-12-24 13:52:13 +01:00
cf5b4239c4 Update version string
Holy crap this should really not happen. We accidentially released this
crate as 0.4.0 instead of 0.5.0.
2017-12-24 13:31:59 +01:00
9ecd1849d7 Fix README path 2017-12-24 13:31:59 +01:00
f0ae628687 Transform to use error-chain 2017-12-23 14:20:46 +01:00
7bdaaf35fc Initial import 2017-12-23 14:20:46 +01:00
840bc86c90
Merge pull request #1178 from matthiasbeyer/libimaghabit/fix-until
Fix: Until date is still optional
2017-12-22 14:39:41 +01:00
6246d25c9d Fix: Until date is still optional 2017-12-22 13:20:11 +01:00
09c9eb6090
Merge pull request #1175 from matthiasbeyer/libimaghabit/remove-unused
libimaghabit: Remove unused things
2017-12-22 12:29:50 +01:00
9bf4b9604b Remove unused variables 2017-12-22 11:03:42 +01:00
90ed0c0e10 Remove unused macro import 2017-12-22 11:02:55 +01:00
96b51280ab Remove unused imports 2017-12-22 11:01:35 +01:00
cd8f0beae8 Add until-date support 2017-12-22 10:59:27 +01:00
ddf703eaa0 Add HabitTemplate::next_instance_date_after()
Rewrite HabitTemplate::next_instance_date() to use the new function
2017-12-19 19:13:12 +01:00
6f244a52ff Add function to instantiate with a given date
Use that function in the `create_instance()` function which was renamed
to `create_instance_today()`.
2017-12-19 19:13:04 +01:00
13e9ee3ffa Add Habit::next_instance_date() 2017-12-08 14:54:49 +01:00
f81faa3f6a Make "util" pub 2017-12-08 14:54:49 +01:00
999bdf8d0d Add HabitTemplate::linked_instances() function 2017-12-08 14:54:49 +01:00
3b319fd4f0 Add HabitInstanceStoreIdIterator::new 2017-12-08 14:54:49 +01:00
30e05d21f9 Add debugging output 2017-12-08 14:54:49 +01:00
90a4139ede Make builder consuming 2017-12-08 14:54:49 +01:00
dc7a315176 Getter for all instances 2017-12-08 14:54:45 +01:00
b181b488a2 Add extension to check whether an Entry or a StoreId points to a habit instance/template 2017-12-08 14:54:45 +01:00
9af2f34b58 Outsource instance id creation to helper fn 2017-12-08 14:54:45 +01:00
6a13567efc dependency: kairos: beta-1 -> beta-2 2017-12-08 14:54:45 +01:00
0ffbb2ef1a Add kairos error chain integration 2017-12-08 14:54:45 +01:00
2c655daa39 Add IsValidHabitObj helper trait 2017-12-08 14:54:45 +01:00
6b33fc9e6f Update kairos: master -> 0.1.0-beta-1 2017-12-08 14:54:45 +01:00
a6a36455f5 Add recur spec with kairos support 2017-12-08 14:54:41 +01:00
42cabffa64 Implement HabitInstance for Entry 2017-12-08 14:54:41 +01:00
533d97532b Move date-string conversion utils to util module 2017-12-08 14:54:40 +01:00
a71c9281ec Initial import 2017-12-08 14:54:40 +01:00
167511afec Fix formatting and adjust module/lib documentation
Also add symlink in module implementation to lib-documentation.
2017-12-08 14:54:40 +01:00
3fa2995c5f
Merge pull request #1168 from matthiasbeyer/libimagentrylist/print-empty-list
Add flag and check whether to print empty table
2017-12-07 22:08:47 +01:00
13768322d2 Add flag and check whether to print empty table 2017-12-06 20:31:18 +01:00
af67ff51c8 Remove accidentially slipped-in println!() 2017-12-06 19:51:02 +01:00
b17772041f TableLister: If configured with index, also print index row 2017-12-03 21:20:23 +01:00
77f93e77f0 Fix syntax 2017-11-18 12:28:20 +01:00
04d5af8d50 Switch to upstream rust-vobject 2017-11-09 11:21:17 +01:00
dfbc69400a Let ContactData be unpacked and derefd 2017-10-31 19:10:11 +01:00
4fa41faa59 Add iterator for contacts 2017-10-31 19:10:11 +01:00
b05c8c6f6d Replace search_contact() with all_contacts()
We can then use filters to filter out the non relevant ones.
2017-10-31 19:10:11 +01:00