Commit Graph

113 Commits

Author SHA1 Message Date
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
Matthias Beyer 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
Matthias Beyer 82873d82ba Merge pull request #143 from TheNeikos/add-store_update
Implement storenetry:write_entry
2016-01-24 20:25:57 +01:00
Matthias Beyer 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
Matthias Beyer bbd08d9526 Add Store::retrieve_for_module() 2016-01-24 17:40:06 +01:00
Matthias Beyer 36770abac5 Add iterator type for StoreId 2016-01-24 17:39:41 +01:00
Matthias Beyer e951666e3d Use glob 2016-01-24 17:39:41 +01:00
Matthias Beyer 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
Matthias Beyer 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
Matthias Beyer 796cd01343 Init the header with default values 2016-01-23 16:41:22 +01:00
Matthias Beyer 38292ea8cb Dont pass the table to the header object, but generate it in ::new() 2016-01-23 16:40:00 +01:00
Matthias Beyer c48f3afcf4 Return error if create() fails 2016-01-23 11:57:40 +01:00
Matthias Beyer 0c3bcc3f15 Add error kind: Create errors 2016-01-23 11:57:40 +01:00
Matthias Beyer 80b0501d03 Introduce error if the store path exists but is a file 2016-01-23 11:57:40 +01:00
Matthias Beyer 4f71563eb4 Store::new(): Create path if nonexistent 2016-01-23 11:57:40 +01:00
Matthias Beyer ffe56c4993 Add test with current version 2016-01-23 11:44:48 +01:00
Matthias Beyer e01f70aaad Use version
We use this not only for tests, but for the whole crate, as I assume
that we might need this crate later on in the non-test sources anyways.
2016-01-23 11:44:48 +01:00
Matthias Beyer a8ac1593e7 Add dep: version = 1.1.0 2016-01-23 11:44:48 +01:00
Matthias Beyer b0859c3e2f Use semver parser instead of regex 2016-01-23 11:44:47 +01:00
Matthias Beyer b486960720 Add version-string verification 2016-01-23 11:30:54 +01:00
Matthias Beyer dd11e32d82 Include regex 2016-01-23 11:30:54 +01:00
Matthias Beyer f4fbbb688d Add dep: regex 2016-01-23 11:30:54 +01:00
Matthias Beyer 775d724a8c Add header test: Invalid version string 2016-01-23 11:30:54 +01:00
Matthias Beyer 1187f7d9b3 Add header verification test 2016-01-23 11:30:53 +01:00
Matthias Beyer 9884f78dae Move header verifying into helper function 2016-01-23 11:30:53 +01:00
Matthias Beyer 2a4f3baf0b Add tests on header checkers 2016-01-23 11:30:53 +01:00
Matthias Beyer 3e661439e8 Add sanity-check to header parsing 2016-01-23 11:30:53 +01:00
Matthias Beyer 6be3011e85 Add: EntryHeader::parse()
Introduce Error + Error-kind for it, return Result<> from the ::parse()
function.
2016-01-23 11:28:20 +01:00
Marcel Müller 03c2ded21b
Move tempdir to dev-dependencies 2016-01-22 21:08:56 +01:00
Marcel Müller 4d28b57658
Remove remaining Cargo.lock files 2016-01-22 20:15:32 +01:00
Homu 2e77afbb3c Auto merge of #125 - TheNeikos:add-store_utils, r=matthiasbeyer
Add store utils

Do not merge yet!!
2016-01-22 10:31:02 -08:00
Homu 7511e220c8 Auto merge of #110 - neithernut:remove-residual-storeentry-methods, r=matthiasbeyer
Remove methods which are not needed anymore

These methods were intended for managing cached entries. Sice it was
decided not to serve caching in the store, these methods are no longer
needed.
2016-01-23 03:06:09 +09:00
Marcel Müller 40572d946d iQIcBAABCgAGBQJWomU5AAoJEN1O030MrHbiHZgQAKF7BnDgNMMMLS0B5EkN+rtJ
KDMJjn8iaHcww1H2GMAPxW24xTNdD4JbWOBBC/g76YUtO9XdpXgeiz7JvtfAtZuQ
 mltpTAUncCRFRuTHqvDnKKPWXv4s0NpTJthJOtse+FwhWF8hgCKkXef8lJeMDxLg
 7ipF/bIFnUAYq1BUc2NVguAVD23c+l05lgTEaUlzqNENozJWGqA8EwpE2ShEpjSH
 RmOD9FowY1pFqfIOOTdNcVSNAnIM2LnCEqS9BgeE1vtToeOo9yz9B+ffyqoJgjEp
 AD8Q0S4Kp0pMkduUpZbCEu3KCcSUcdRpojdsAbMKPiiMW/CDQQk3RUavO41zSci3
 gUOqnURaEbLBG4j3h47sA3PZOcsDrBLYL9G4aWk/6BG8kctrC4b3yzDU50InWOJQ
 2b1ppTCcQYnTUOLMvYkm1sFk/LhofH+Wk3GypGlIvw9xJISNHj73G9Qo3tF6OhWL
 /FaMlPPJYTbWsCaQcJTNKO7QcLyV72bJUDBaN9Z8+2ueQvqEwNvBOEcbJnce51+b
 1sOoklhEjpLpGUGvQn0l8Ig2ezV98CJrOwHPqQSTrFBcrCRB2sHLMmt0AzLjINEH
 SCRUj3ZUqp9TMU3X/zH1f1d8lglJhmZcPBomclbliyeXHiSvrBKGytfzeKG+aNIK
 6Ionaq9akACh5kbjctGZ
 =Y00k
 -----END PGP SIGNATURE-----

Add lints to make sure macro does not generate warnings
2016-01-22 18:22:01 +01:00
Marcel Müller 560e7106f8 iQIcBAABCgAGBQJWomPqAAoJEN1O030MrHbiYEEQALGQfJYEfbCgvVejgiwOKMjv
m7U7nEQbMMVYHVbeCdUs2PXHwCFr8slSccyWoF0QNHX4/Tx5t+XJ9JnRsyIhQyzi
 UWRQo3mHDErn2lP+M+4kfDWPpOdJicJKAxyiLgGo/Aw5CblX9MAaKfE85rZh7atx
 JM567tN+O/Cflt676Mva3xnzpisHFKVJKG58k+QzmZOgNtROWg3PTyAb+/T2c6Vd
 Ty+zW4zt7LwKjGlK9YEDqEwpg3STKUPT9T5S6ZFkPHBbjPVtM5yXK1oTWOpE7zn+
 iXSjCqfC2Ok+MT9YB1loexY2f6bzwqZkmWHl3M+4f1fJfhBQR0Zdz4a/hyp2YLcv
 hVW/X/AeVCdoMOBZ9PCaFjY6aXFycB6HlDDU1jldCN5U08BfY+h6hDtW5xaPLj2s
 WWeyIZgnqLJsGk7VK+/KAdDZMAZVwoC69AVXQS+IjejetQWHY5OFhCBfRVZ02/aX
 jwdZSfw5oNCGsvrzknkcECL9bPQAGRptoLbGuuLNPaACNd8ebWTmw4gwxFYwwAGY
 Dq6NDA33S3uRDvK24MpUA8g5OxsU8kzblhP6iYqGTg0dLnGFRzioKDg3v7NFKN9/
 Yy7g1uQCZIVbrVnZF6w68jfuX6IoIHWl6eg6De2AmMNClYGZflDzbSoYCZkiz1d4
 AR6HHXLT84nAJ2tCgK0S
 =6TMR
 -----END PGP SIGNATURE-----

Add macro to create ModuleEntryPath
2016-01-22 18:16:26 +01:00
Marcel Müller a85d658f33 iQIcBAABCgAGBQJWol+6AAoJEN1O030MrHbiP6YP/0gq5zudvb0JtDAxbwYUuY0H
kl+2eDAclmvugaOyzCi4LC1CHPakJVauEwmWqJ50IrJt6uBsf4tCbWCtMnPXnnVe
 K3yYGbzHwObTALk6TxfnQltdIUcghVuFwC93gE+lsNi/JrL3pzxXyU7t/bs4canP
 QluV6o3HW4Y4vXn/d0Lnjkb7gpNxDaeMShm1xvb3OcKKUtO4ni4xOUsVi5zlI+kk
 UYuh+V/FJFA0tmKbvJqVan20/Xt462vyGCL36JmAOEFmOLZ+PIL6bpTzoupJYEtc
 9yWZD7VQLU6SurFMNhEoALoS3/Vn+F/kBvAzjO8hUs9at/ocs/1WzG59RiV/TBKF
 mJbRyiODdASqBRWUW9S4vULX3tVsNrUFtit3quxh4YDVmtGcT/YEF/kmE2s9QFxH
 3yECBdo6FZXWtIWeGiLaLxr5L4eqNIsfhDTfa0Dtn/0w8SIZlUCDBanEyFpaCBtI
 2wjwea8ywk9ydkOCCZv5TCnYJewYuMvFmQrhOZTMw5ZAo1urT7wa7AhTVXbZ9B0E
 7wheTkQ5fNx2SmrB06Tdzt8ZnizjOhTEmzLYlB3T7E2hFfoohGxPqT1iAh/RGCvL
 PdQCA0QCKXenjiaIbA4zBwrvOIpsgs/keJ1HnK9EVmwddXdkLqdqzAlpb/BwATVL
 TH3JxmTYRZ1+eJkN1jpj
 =Fk4L
 -----END PGP SIGNATURE-----

Add semver crate to Cargo.toml
2016-01-22 17:58:32 +01:00
Matthias Beyer af411fbdb0 Add Entry mutable getters 2016-01-22 14:25:03 +01:00
Matthias Beyer c21bed3af9 Add Entry getters 2016-01-22 14:24:20 +01:00
Matthias Beyer cfa8c29eaf error.rs: Add documentation 2016-01-21 21:31:48 +01:00
Matthias Beyer 434a766536 lazyfile.rs: Add documentation 2016-01-21 21:30:41 +01:00
Matthias Beyer 64ee182d63 entry.rs: Add documentation 2016-01-21 21:28:29 +01:00