Commit Graph

5408 Commits

Author SHA1 Message Date
Matthias Beyer 9c36fc8ac0
Merge pull request #1468 from matthiasbeyer/imag-ids/filters
imag-ids: filters
2018-05-03 10:22:20 +02:00
Matthias Beyer 33b52cc928
Merge pull request #1480 from matthiasbeyer/imag-contact/allow-non-absolut-pathes
Revert "Deny non-absolut import pathes"
2018-05-02 21:05:13 +02:00
Matthias Beyer 846de028cf Add trace output in filtering process 2018-05-02 20:42:56 +02:00
Matthias Beyer 191f049ea8 Add language documentation in commandline help 2018-05-02 20:42:56 +02:00
Matthias Beyer f618026305 Add store cache flushing after each 100st entry 2018-05-02 20:42:56 +02:00
Matthias Beyer c27349e94f Implement header filter language 2018-05-02 20:42:56 +02:00
Matthias Beyer f4e1c0864c Implement 'where' subcommand 2018-05-02 20:42:56 +02:00
Matthias Beyer d518322401 Add notes how the filter language should look like 2018-05-02 20:42:56 +02:00
Matthias Beyer 74c982984c Move collection filter to new module 2018-05-02 20:42:56 +02:00
Matthias Beyer f85dc02db6 Revert "Deny non-absolut import pathes"
This reverts commit b90abfb868.

Because `libimagcontact` is not based on `libimagentryref` anymore (as
of 2b10ab0b36), and thus does not put
pathes into the header, we can allow non-absolute pathes here.
2018-05-02 19:42:38 +02:00
Matthias Beyer eb20a9d881
Merge pull request #1477 from matthiasbeyer/libimagstore/remove-walk
Remove Store::walk()
2018-05-02 18:39:11 +02:00
Matthias Beyer 0dbef993c1 Adapt "imag store verify" implementation for removed Store::walk() 2018-05-02 17:46:45 +02:00
Matthias Beyer 258d9f90d3 Remove Store::walk()
This patch removes the Store::walk() interface.

It was cumbersome and unused anyways.
2018-05-02 17:46:45 +02:00
Matthias Beyer b52cb0d697
Merge pull request #1479 from matthiasbeyer/libimagstore/fix-fa-iter-checkfileexists
Fix: Do not check whether path exists - check whether its a file
2018-05-02 15:19:44 +02:00
Matthias Beyer 888b31377e Fix: Do not check whether path exists - check whether its a file
This fixes a bug introduced in 195d921218
where we didn't check whether the path is actually a file.
2018-05-02 14:04:59 +02:00
Matthias Beyer c4d10c7e4f
Merge pull request #1457 from matthiasbeyer/minor
Minor
2018-05-02 11:41:30 +02:00
Matthias Beyer 8f3b725b43 Show revision which merged the change in generated changelog 2018-05-01 22:32:02 +02:00
Matthias Beyer 2bf09e7737 Only create directory if it does not exist 2018-05-01 22:29:46 +02:00
Matthias Beyer 84f426297e Add debug output 2018-05-01 22:29:46 +02:00
Matthias Beyer b27b392f4b Add trace output 2018-05-01 22:29:46 +02:00
Matthias Beyer 9f99783c6e Add importer for ioverlander into imag-wiki 2018-05-01 22:29:46 +02:00
Matthias Beyer 9efa4c715f Add changelog for 0.7.1 2018-05-01 22:29:46 +02:00
Matthias Beyer eebe51b68e Add usage example 2018-05-01 22:29:46 +02:00
Matthias Beyer a35ebce73a Add helper to find contacts with imag-contact in mutt 2018-05-01 22:29:46 +02:00
Matthias Beyer 08ce39989f Remove duplicated script: scripts/gen-changelog exists 2018-05-01 22:29:46 +02:00
Matthias Beyer be62843608 Fix description 2018-05-01 22:29:46 +02:00
Matthias Beyer 195d921218
Merge pull request #1471 from matthiasbeyer/libimagstore/store-entries-do-not-collect
libimagstore: Do not collect in Iterators
2018-05-01 22:14:26 +02:00
Matthias Beyer 972327e35e Remove Store::reset_backend() 2018-05-01 21:09:51 +02:00
Matthias Beyer 2f0a557068 Fix for passing Arc<_> to store interface instead of Box<_> 2018-05-01 21:08:57 +02:00
Matthias Beyer 42e2f18fb3 Pass around Arc<FileAbstraction> internally
Because the iterators need to be able to check whether the file exists
_in the backend_ (not on disk, but in the backend, because of in-memory
test for example), we need to be able to pass the backend to the
iterator intermediate type.

This patch implements this. It does so by changing the internal backend
member of the store from `Box<FileAbstraction>` to
`Arc<FileAbstraction>`, which gives us the ability to clone the
reference to the backend easily without needing to rely on lifetimes
here, because of the Arc.

Also, less boxes are always good.
2018-05-01 21:08:57 +02:00
Matthias Beyer b86ed2ffa9 Refactor imag-wiki to new store iterator interface 2018-05-01 17:44:20 +02:00
Matthias Beyer 7aca84dd5e Refactor imag-mail to new store iterator interface 2018-05-01 17:44:17 +02:00
Matthias Beyer 519b6f7ef2 Refactor imag-habit to new store iterator interface 2018-05-01 17:44:14 +02:00
Matthias Beyer 11f9a9027e Refactor imag-diary to new store iterator interface 2018-05-01 17:44:09 +02:00
Matthias Beyer 829e425c12 Refactor imag-view to new store iterator interface 2018-05-01 17:44:05 +02:00
Matthias Beyer a9d0f3d53a Refactor imag-edit to new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer dd453659ed Refactor imag-mv to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer e6244d7e9e Refactor imag-todo to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer eaf8148cda Refactor imag-ids to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer 40a04376ed Refactor imag-link to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer d08c27e623 Rewrite StoreIdIterator extensions
This patch reimplements the iterator extensions.

As we iterate (in StoreIdIterator) over Result<StoreId> now anyways, we
don't need the extensions for Result iterators anymore.

This patch rewrites the extensions to be more simple in every way and
generic over the error type in the iterator.
All the errors have to do is implement From<StoreError>, which is what
they do when linking the generated error types with error_chain to the
libimagstore error types.
2018-05-01 17:44:01 +02:00
Matthias Beyer 6ee3f4a3f6 Refactor libimagentrycategory to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer 6f81d02445 Refactor libimagentryannotation to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer 40688a3c2d Refactor libimagwiki to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer 715753ed25 Refactor libimagtodo to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer 72c83ae3f7 Refactor libimagtimetrack to fit new store iterator interface 2018-05-01 17:44:01 +02:00
Matthias Beyer 08114bbf36 Refactor libimagnotes to fit new store iterator interface 2018-05-01 17:44:00 +02:00
Matthias Beyer e643f36fa3 Refactor libimaghabit to fit new store iterator interface 2018-05-01 17:44:00 +02:00
Matthias Beyer bf0bef058d Refactor libimagdiary to fit new store iterator interface 2018-05-01 17:44:00 +02:00
Matthias Beyer 8f03b4a71a Refactor libimagcontact to fit new store iterator interface 2018-05-01 17:44:00 +02:00