Commit graph

261 commits

Author SHA1 Message Date
8bbaeeef45 Fix: Store::delete() should check FS as well
This patch fixes a problem where the Store::delete() function only
checked the store-internal cache whether an entry exists, but not the
Filesystem. After this patch is applied, the Store::delete() function
also checks the filesystem whether the entry exists.
2017-09-20 22:24:59 +02:00
e2bf6c48ef Merge pull request #1096 from matthiasbeyer/fix-log-output
Register the no-escape escape functionality in handlebars
2017-09-20 22:00:53 +02:00
de69d31a58 Register the no-escape escape functionality in handlebars
Before, handlebars automatically applied html escaping, which resulted
in <>'& beeing escaped. But we don't need to escape for terminal output.
2017-09-20 19:12:08 +02:00
79b6c26502 Serialize TOML pretty 2017-09-20 18:38:31 +02:00
c558addbd6 Add debug/trace output in Store 2017-09-20 12:05:44 +02:00
162b36d6ee Update dependency specs
Most notably:

* env_logger: 0.4 -> 0.5
* hoedown: 5.0.0 -> 6.0.0
* itertools: 0.5 -> 0.6
* lazy_static: 0.1.15 -> 0.2
* regex: 0.1 -> 0.2
* semver: 0.5 -> 0.8
* url: 1.2 -> 1.5
* uuid: 0.3 -> 0.5

(This list is most surely not complete)
2017-09-19 17:16:19 +02:00
a01a2c18f8 Check in Store::move_by_id() whether target exists, not only in cache but also on FS 2017-09-17 15:44:19 +02:00
29e1107d3e Add file abstraction function to check whether path exists 2017-09-17 15:43:57 +02:00
22b9f8ecdd Do not insert the links array in the core header 2017-09-16 19:44:09 +02:00
8b8e4e9c6e Minify iterator helper implementation 2017-09-15 13:17:12 +02:00
fce5df48c8 Add simple iterator helpers for StoreIdIterator -> CRUD Iterator 2017-09-15 13:07:49 +02:00
53c7d602eb Merge pull request #1062 from matthiasbeyer/libimagstore/error-opt
libimagstore: Optimize errors
2017-09-10 11:45:59 +02:00
785e17a4a3 Add param to StoreIdHasNoBaseError 2017-09-10 10:48:51 +02:00
a670172880 Add param to StoreIdLocalPartAbsoluteError 2017-09-10 10:48:50 +02:00
b772908697 Add params to EntryRenameError 2017-09-10 10:48:50 +02:00
2ce2ba54da Replace GlobError with link to ::glob::PatternError 2017-09-10 10:48:50 +02:00
6aa695974c Add param to EntryAlreadyExists error 2017-09-10 10:48:50 +02:00
126aa75a2c Add param to ConfigTypeError 2017-09-09 22:24:58 +02:00
307165d1b2 Remove ConfigReadError because ::toml_query::error::Error is now linked in 2017-09-09 22:15:18 +02:00
a015b07f6a Remove TomlReadError by linking in ::toml_query::error::Error 2017-09-09 22:09:36 +02:00
4849cc4822 Remove TemplateStringRegistrationError by linking in handlebars error type 2017-09-09 22:04:32 +02:00
83f9350d98 Add param to EntryAlreadyBorrowed error 2017-09-09 21:59:36 +02:00
a28613b889 Add param to StorePathCreate 2017-09-09 21:59:36 +02:00
ff8569809b Add parameter to StorePathExists error 2017-09-09 21:59:36 +02:00
78db822917 Remove unused error type 2017-09-09 21:59:36 +02:00
ca9123c740 Add parameter to IdNotFound error 2017-09-09 21:27:10 +02:00
b682e7f8db Remove warning which is printed by the store 2017-09-09 21:14:08 +02:00
21440d58aa Remove outdated comment 2017-09-09 21:13:38 +02:00
3d8f75300d Remove unecessary error chaining 2017-09-09 21:13:21 +02:00
976f280511 Update toml-query: 0.3.* -> ^0.3.1
This release contains a bugfix for a critical bug in the
`TomlValueInsertExt::insert()` algorithm which was triggered by an
edgecase.
2017-09-06 19:30:32 +02:00
b10d63c134 Rewrite Store::entries() implementation
As we rely on the filesystem in Store::entries(), which is a bug and
shouldn't be done, we rewrite this function and use the file_abstraction
framework.
2017-09-06 16:11:19 +02:00
c115215fa4 Merge branch 'master' into libimagerror/integration
This merge solved a _LOT_ of conflicts and was a rather complicated one,
as parts of the conflict-resolution involved rewriting of half the
stuff.

This merge commit fixes all the things so a `cargo check --all`
succeeds, but I did not yet check whether tests run without failure.
2017-09-04 23:02:45 +02:00
7ce44e8090 Remove "IntoError" trait, use error_chain functionality 2017-09-03 21:34:07 +02:00
28d7085b2d Remove error_chain dependency, not needed 2017-09-03 21:33:55 +02:00
b6909a2c86 libimagrt: Rewrite error handling 2017-09-03 21:33:54 +02:00
2df99524e7 libimagstore: rewrite error handling code 2017-09-03 21:33:54 +02:00
603808a9fa Impl IntoError for error kinds 2017-09-03 15:42:06 +02:00
9713a4632c Remove error_gen module entirely 2017-09-03 15:42:06 +02:00
a309fdb280 Add recursion limits to crates 2017-09-03 15:42:06 +02:00
11d881d3a9 Add dependency to crates: error_chain = 0.10 2017-09-03 15:42:06 +02:00
e77d353c52 Rewrite macros to do error-chain behind the scenes 2017-09-03 15:42:03 +02:00
4908cc6aaa Add more helpers 2017-09-03 13:48:05 +02:00
0683bf198b Fix recursion problem 2017-09-03 13:48:05 +02:00
93444be412 Light code cleanup 2017-09-03 13:48:05 +02:00
64f96092cd Fix aggregation 2017-09-03 13:48:05 +02:00
482377abb9 Actually print error here (as logging isnt initialized at this point) 2017-09-03 13:48:05 +02:00
5ec1cd48a0 Implement format-fetching from config/cli 2017-09-03 13:48:05 +02:00
ae24954020 Implement templating 2017-09-03 13:48:05 +02:00
2c66dcdf37 Rewrite logging: Types
This is the first part of a series of patches that reimplements the
logging backend to be more powerful and configurable.

This first patch adds types and infrastructure to be able to implement a
powerful logging abstraction.

It does not implement much functionality, except for a check whether a
module is enabled or not when logging (if configured in the config
file).
2017-09-03 13:48:05 +02:00
ab06263507 Add store extraction to Runtime
This is necessary to be able to re-build a Runtime object with an new
set of "commandline arguments". For example if a test wants to test two
calls to imag, for example a "add" operation followed by a "remove" operation.

These functions are feature-gated therefor and should only be used in
tests.
2017-09-02 10:42:11 +02:00
048517a3c2 Fix readme links in cargo metadata 2017-09-01 18:48:02 +02:00
a710a5b72b Remove unused variable 2017-08-31 10:57:19 +02:00
ac804bd839 Remove unused keyword "mut" where not needed 2017-08-31 10:57:11 +02:00
ae5255c7c7 Remove unused crate imports
This patch removes unused crate imports reported by newer rust versions.

Some crates were only required for tests, some only for tests with
macro_import - these things were fixed with feature gates.
2017-08-31 10:56:15 +02:00
c987130cc1 Merge pull request #1018 from matthiasbeyer/remove-toml-ext
Remove toml ext
2017-08-28 14:10:40 +02:00
c0c62bd1b5 Change crates to use toml-query crate 2017-08-28 12:22:37 +02:00
3024fefcb9 Remove toml_ext module 2017-08-28 12:22:13 +02:00
43ca0b43b1 Move "Header" trait for toml::Value to store module 2017-08-28 12:22:13 +02:00
d0f8002682 Ensure deny() for warnings is in all crates 2017-08-27 20:08:03 +02:00
2fcead5f53 Fix broken README symlinks
Along: Add files in documentation for modules that not yet had one.
2017-08-27 15:13:25 +02:00
59a3662ac4 Reorganize code in subdirs 2017-08-27 15:12:09 +02:00