3413646934
Revert "Check whether the StoreId is inside the store, before doing anything on the FS"
...
This reverts commit 373502217e
as this commit was introducing a bug.
The StoreId type says `/test/example` for a store id path, which is
completely valid, as the root (`/`) is the store itself. The
id_in_store() function assumed that the store-id is the full
(file-system) path to the store entry, which is false.
This commit does not introduce a fix but revert the check.
2016-03-10 18:14:53 +01:00
df1fd31771
libimagstore: Update glob 0.2.10 -> 0.2.11
2016-03-07 17:46:58 +01:00
257fe1880e
EntryHeader: Function to get toml object
2016-03-06 11:51:09 +01:00
74634227e0
Use unused result
2016-03-01 21:23:09 +01:00
22e9f8a93b
Remove unused import
2016-03-01 21:21:14 +01:00
1a8106dfd2
Add missing error-forwarding
2016-03-01 21:20:53 +01:00
38b9e15615
Remove unreachable statement
2016-03-01 21:19:15 +01:00
08c37c5fcb
Remove unused "mut" from EntryHeader::delete()
2016-03-01 21:18:17 +01:00
ed3da38701
Remove unused "mut" from EntryHeader::read_with_sep()
2016-03-01 21:18:10 +01:00
309e70df14
Remove unused "mut" from EntryHeader::set_with_sep()
2016-03-01 21:18:04 +01:00
85e69f083e
Remove unused "mut" from EntryHeader::insert_with_sep()
2016-03-01 21:17:49 +01:00
4390c39a6c
Remove unused "mut" from Store::delete()
2016-03-01 21:17:40 +01:00
8dfccba0b8
Remove unused "mut" from Store::retrieve_copy()
2016-03-01 21:17:33 +01:00
87bf7854c7
store: Update regex = 0.1.54
2016-02-23 13:13:22 +01:00
df4bc13018
use lazy_static so we do not compile regex multiple times
2016-02-20 21:06:47 +01:00
0cab0f114d
Merge pull request #149 from matthiasbeyer/libimagstore/header-field-path-util
...
Add header field addressing by str
2016-02-14 16:10:56 +01:00
9951422dc4
Impl From<Table> for EntryHeader
2016-02-12 22:07:15 +01:00
794e7617e3
Impl Into<Table> for EntryHeader
2016-02-12 22:02:33 +01:00
df9313c599
Add EntryHeader::insert_with_sep()
2016-02-12 21:57:53 +01:00
54ba22d0ef
Add EntryHeader::set_with_sep()
2016-02-12 21:56:48 +01:00
bca0143343
Add EntryHeader::read_with_sep() which allows seperator modification
2016-02-12 21:55:06 +01:00
a4fa1bac07
Add split-char setting
2016-02-12 21:50:44 +01:00
6397068ddc
Add test for EntryHeader::delete()
2016-02-12 20:02:57 +01:00
cb87f31a23
Add EntryHeader::delete()
2016-02-12 20:02:56 +01:00
30e8afeced
Add tests for inserting values
2016-02-12 20:02:56 +01:00
965c3445a1
Add test for setting value at new path
2016-02-12 20:02:56 +01:00
dd53e467d7
Add EntryHeader::set() test
2016-02-12 20:02:56 +01:00
b4362f5c65
Alter: EntryHeader should contain a Value, not the BTreeMap<>
2016-02-12 20:02:56 +01:00
74a9b844ca
Add debugging output in tests
2016-02-12 20:02:41 +01:00
60ccf58f84
Merge pull request #148 from neithernut/impl-store-retrieve_copy
...
Implement Store::retrieve_copy()
2016-02-12 18:59:56 +01:00
103a0dea17
Add test: EntryHeader::read()
2016-02-11 15:45:48 +01:00
731a446546
Implement EntryHeader::read()
2016-02-11 15:45:47 +01:00
548aee8d5f
Implement EntryHeader::set()
2016-02-11 15:45:47 +01:00
4d94f8a67f
Implement: EntryHeader::insert()
2016-02-11 15:45:47 +01:00
3b09e0c214
Move helper functions outside of walk_header(), so we can use them
2016-02-11 15:45:47 +01:00
42aade5cef
Add tests for path-to-value extractor functionality
2016-02-11 15:43:58 +01:00
4759076249
Implement walk_header()
2016-02-11 15:43:58 +01:00
a2e3598c01
Add more error types for header walking
2016-02-11 15:43:58 +01:00
0727fca797
Add tokenizer helper function
2016-02-11 15:43:58 +01:00
2f6cfb5868
Add interface for header field addressing by str
2016-02-11 15:43:58 +01:00
00ccc22ef5
Add some debugging output for {create,retrieve,delete}
2016-02-09 20:09:12 +01:00
d85f985694
Fixup path-includes-path checker
2016-02-09 20:08:58 +01:00
ddd54e03ad
Add store path getter
2016-02-09 13:45:13 +01:00
a0afc9245b
Merge pull request #186 from TheNeikos/verify-toml_table
...
Verify that nothing but tables exist in base table
2016-02-07 01:54:35 +01:00
ebb076c9fd
Merge pull request #184 from matthiasbeyer/libimagstore/fix-179
...
Check whether the StoreId is inside the store
2016-02-07 01:45:48 +01:00
Marcel Müller
e315fa9dcf
Remove unwrap in drop and warn users
2016-02-07 01:28:16 +01:00
Marcel Müller
9ba2439da3
Add debug output
2016-02-07 01:28:15 +01:00
Marcel Müller
6173cff762
Verify that nothing but tables exist in base table
2016-02-07 01:27:50 +01:00
Marcel Müller
293fd0da00
Add verify
2016-02-06 18:57:39 +01:00
Marcel Müller
e079628397
Remove unneeded closure
2016-02-06 18:52:17 +01:00
373502217e
Check whether the StoreId is inside the store, before doing anything on the FS
2016-02-06 18:48:59 +01:00
eb0d1dba69
Merge pull request #176 from matthiasbeyer/update-crate-version
...
libimagstore: Update dep: version: 1.1.0 -> 2.0.1
2016-02-05 22:04:27 +01:00
ddd61f9c1f
libimagstore: Update dep: version: 1.1.0 -> 2.0.1
2016-02-05 21:53:26 +01:00
959a68f1a6
Merge pull request #153 from matthiasbeyer/libimagstore/add-debugging-output
...
Libimagstore/add debugging output
2016-02-05 16:03:23 +01:00
0931ede580
Merge pull request #165 from matthiasbeyer/remove-unused-imports
...
Remove unused imports
2016-01-30 13:47:57 +01:00
213cb32a88
Fix: Add EntryHeader::toml_mut()
2016-01-30 12:38:36 +01:00
f6e03c804e
store/store: Remove unused imports
2016-01-29 23:06:15 +01:00
814e85508b
store/error: Remove unused imports
2016-01-29 23:06:04 +01:00
33b6a89a02
Merge pull request #156 from matthiasbeyer/libimagstore/fix-private-intostoreid
...
Fix: Make IntoStoreId public
2016-01-29 19:11:03 +01:00
618d39cf7c
Merge pull request #155 from matthiasbeyer/libimagstore/fix-missing-doc
...
Fix: Add missing documentation for mod module_path
2016-01-29 19:10:56 +01:00
fbb296495b
Merge pull request #154 from matthiasbeyer/libimagstore/fix-152
...
Fix: negation error
2016-01-29 19:10:51 +01:00
72cf550c9f
Fix: seek() file back on reading it
2016-01-29 18:17:41 +01:00
69bebfcfc0
Fix: Make IntoStoreId public
2016-01-29 17:03:24 +01:00
c64cdad63b
Fix: Add missing documentation for mod module_path
2016-01-29 17:03:05 +01:00
38791ea2f9
Fix: negation error
...
Suggested-by: Marcel Müller <neikos@neikos.email>
2016-01-29 16:53:13 +01:00
3b51328aa7
Merge pull request #145 from neithernut/fix-store-retrieve
...
Fix Store::retrieve()
2016-01-29 16:29:38 +01:00
b04c676eb9
Add store debugging output
2016-01-28 21:06:49 +01:00
4bc905c692
Add debug output for LazyFile::{get_file_mut,create_file}()
2016-01-28 21:00:33 +01:00
2c398d941b
Let LazyFile derive Debug
2016-01-28 21:00:13 +01:00
88f6086c97
Add dep: log = 0.3.5
2016-01-28 20:59:43 +01:00
Julian Ganz
c6ec47a8af
Change status _after_ calling StoreEntry::get_entry()
...
StoreEntry::get_entry() will return an error if the store entry's status
is "borrowed".
2016-01-28 20:47:34 +01:00
Julian Ganz
355ec697c1
Implement Store::retrieve_copy()
2016-01-25 22:26:00 +01:00
Julian Ganz
1085127036
Add missing error handling
...
We don't want to panick if a lock inside the store is broken. We want to
notify the user, so she can start panicking.
2016-01-25 20:38:45 +01:00
6c53f172dc
Minify implementation of Store::retrieve()
2016-01-25 15:32:50 +01:00
Julian Ganz
540348380e
Mark store entry as borrowed
2016-01-25 12:34:37 +01:00
Julian Ganz
86ab4ba4b1
Slimline translation from entry to file lock entry
2016-01-25 12:32:30 +01:00
Julian Ganz
9760f72e79
get_entry() already asserts the entry is not borrowed
2016-01-25 12:31:22 +01:00
Julian Ganz
acfbb16eb2
Fix Store::retrieve()
...
The previous version of `Store::retrieve()` required the entry to be
already registered in the store's hashmap.
2016-01-24 22:57:11 +01:00
4a08eed700
Merge pull request #144 from matthiasbeyer/libimagstore/add-missing-pub
...
Fix: Add missing "pub" on Entry functions
2016-01-24 20:29:11 +01:00
82873d82ba
Merge pull request #143 from TheNeikos/add-store_update
...
Implement storenetry:write_entry
2016-01-24 20:25:57 +01:00
d24f661778
Fix: Add missing "pub" on Entry functions
2016-01-24 20:20:43 +01:00
Marcel Müller
4e990465c8
Implement storeentry:write_entry
2016-01-24 20:05:33 +01:00
bbd08d9526
Add Store::retrieve_for_module()
2016-01-24 17:40:06 +01:00
36770abac5
Add iterator type for StoreId
2016-01-24 17:39:41 +01:00
e951666e3d
Use glob
2016-01-24 17:39:41 +01:00
1d69aa5066
Add dep: glob = 0.2.10
2016-01-24 17:39:41 +01:00
Marcel Müller
ee8cf35fcc
Implement store::create
2016-01-24 17:34:29 +01:00
Marcel Müller
c7f584a81a
Add from_str to Entry
2016-01-24 17:04:33 +01:00
Marcel Müller
fdc3dde95b
Change names to reflect changes
2016-01-24 17:04:33 +01:00
Marcel Müller
15931d3471
Remove EntryHeader::new_current
2016-01-24 17:04:33 +01:00
Marcel Müller
a64ffdfc56
Implement entry reading
2016-01-24 17:04:33 +01:00
Marcel Müller
97b7090824
Partially implement get_entry
2016-01-24 17:04:33 +01:00
Marcel Müller
50413101c4
Move entry, content and header into store
2016-01-24 17:04:32 +01:00
Marcel Müller
ba2e52788b
Add entry_creation
2016-01-24 17:04:32 +01:00
Marcel Müller
d949cddc65
Implement Store::retrieve
2016-01-24 17:04:32 +01:00
24ebe6736e
Merge pull request #114 from matthiasbeyer/libimagstore/store-new-behaviour
...
Store::new(): Create path if nonexistent
2016-01-23 19:57:44 +01:00
796cd01343
Init the header with default values
2016-01-23 16:41:22 +01:00
38292ea8cb
Dont pass the table to the header object, but generate it in ::new()
2016-01-23 16:40:00 +01:00
c48f3afcf4
Return error if create() fails
2016-01-23 11:57:40 +01:00
0c3bcc3f15
Add error kind: Create errors
2016-01-23 11:57:40 +01:00