Commit Graph

468 Commits

Author SHA1 Message Date
Leon Schuermann aa851a87f5 imag-link: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann 208d6e62e6 imag-init: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann 0739fed666 imag-ids: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann 97c46da599 imag-header: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann a7d55930d7 imag-grep: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann 58ac2caf20 imag-gps: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann bfe15c9157 imag-git: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann 861af28724 imag-edit: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann a34450a37e imag-diagnostics: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann 79cfa8d9d8 imag-category: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Leon Schuermann ec75892516 imag-annotate: implement ImagApplication
Signed-off-by: Leon Schuermann <leon@is.currently.online>
2019-10-26 14:41:31 +02:00
Matthias Beyer a6bbcd65f4 Change output to not have quotes when printing string, int, float or bool
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-20 15:05:19 +02:00
Matthias Beyer eb85635bef Add trace output
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-20 14:48:17 +02:00
Matthias Beyer cc0f2bf3de Fix: Add ID reporting
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-13 12:21:47 +02:00
Matthias Beyer b29afc2dda Add more debug output
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-13 12:21:41 +02:00
Matthias Beyer 5edb470a5f Update dependency: handlebars: 1.1.0 -> 2 2019-10-07 18:18:28 +02:00
Matthias Beyer 07f949056e Update dependency: env_logger: 0.6.1 -> 0.7
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-07 18:18:28 +02:00
Matthias Beyer bddd29dfe4 Update dependency: indicatif: 0.11 -> 0.12 2019-10-07 18:06:29 +02:00
Matthias Beyer ee5348ea23 Update dependency: url: 1.7.2 -> 2
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-10-07 18:05:58 +02:00
Matthias Beyer fd3b46fa46 Add imag-create plumbing command for creating entries
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-09-28 19:55:35 +02:00
Matthias Beyer 74810d9ccc Fix: Print processed IDs if output is not a pipe.
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-31 13:44:19 +02:00
flip1995 42f6a3040d [No-auto] bin/core/tag: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 a2d3a8cffc [No-auto] bin/core/store: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 5b0817bcb6 [No-auto] bin/core/ref: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 4579187549 [No-auto] bin/core/grep: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 0befd68c95 [No-auto] bin/core/gps: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 20de35d91b [No-auto] bin/core/git: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 d9d82d7441 [No-auto] bin/core/diagnostics: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 cba336e1dd [No-auto] bin/core/category: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 846304e687 [No-auto] bin/core/annotate: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 3a1f0dde9d [No-auto] bin/core/imag: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 3a32be23c5 [Auto] bin/core/view: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 8db954c79a [Auto] bin/core/tag: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 4d11ad2ac1 [Auto] bin/core/store: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 b8e9c17dc8 [Auto] bin/core/ref: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 ed8f56aa46 [Auto] bin/core/mv: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 8e40f68d32 [Auto] bin/core/markdown: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 c8a68af2ce [Auto] bin/core/link: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 7fcbacd1de [Auto] bin/core/init: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 dfa2c97c8d [Auto] bin/core/header: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 e2395b0474 [Auto] bin/core/grep: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 1635dd4665 [Auto] bin/core/gps: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 451020187e [Auto] bin/core/git: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 e010ef554d [Auto] bin/core/edit: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 98ccb41f7f [Auto] bin/core/diagnostics: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 25e5936b08 [Auto] bin/core/category: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 40c1f12b25 [Auto] bin/core/annotate: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
flip1995 6b4c716388 [Auto] bin/core/imag: Fix Clippy warnings
Signed-off-by: flip1995 <hello@philkrones.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-28 18:18:40 +02:00
Matthias Beyer 605b98276d Run "cargo fix --all-features" in root of project
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-25 12:17:07 +02:00
Matthias Beyer ce4a026858 Fix description
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-08-10 09:21:34 +02:00
Matthias Beyer 598b6ec9a6 Merge branch 'imag-ids-split-into-more-tools' into master 2019-07-28 12:54:34 +02:00
Matthias Beyer fc5bfb43bf Reimplement behaviour in imag-header
This patch changes imag-header to do not printing of the found values,
but simply filtering.

Chaining can then be used to read the values:

    imag ids | imag header string "imag.version" | imag header read "imag.version"

for example.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-28 12:54:24 +02:00
Matthias Beyer 981c6f852e Add imag-id-in-collection core command
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-28 11:08:42 +02:00
Matthias Beyer 38021753a8 Remove in-collection filtering
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-28 10:49:47 +02:00
Matthias Beyer 109292c65a Remove "where" clause filtering
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-28 10:48:00 +02:00
Matthias Beyer 5ec1a8a2d4 Merge branch 'refactor-runtime' into master-ff 2019-07-26 23:47:45 +02:00
Matthias Beyer f1e14a0d46 Remove use of Runtime functions, hardcode strings
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-26 23:20:28 +02:00
flip1995 8469fd5596 Fix float comparison bug found by clippy
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-26 23:05:09 +02:00
Matthias Beyer 5f10ab976f Rewrite get_rtp_match() to not panic
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-07-24 21:32:21 +02:00
Matthias Beyer d53e306459 Merge branch 'imag-diagnostics-more-output' into master 2019-07-14 13:40:28 +02:00
Matthias Beyer b5d439cef7 Add imag-diagnostics --more output switch
For more output, which is right now: List unverified entries.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-06-30 19:38:50 +02:00
Matthias Beyer 2185d44011 Update all dependencies
This patch updates all dependencies but not "nom".

Done with `cargo upgrade --all` and manual editing.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-06-30 16:44:23 +02:00
Matthias Beyer 3eff42be5a Update dependency: toml-query: 0.9.2 for index-out-of-bounds fixes
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-06-29 21:36:59 +02:00
Matthias Beyer 5dc6829354 Rename module: linker -> linkable
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-06-21 23:22:48 +02:00
Matthias Beyer ef17930c29 Rename interface
With this patch, the libimagentrylink library interface gets renamed.

The trait gets renamed to the more descriptive name "Linkable", the
functions get renamed to not contain any notion of "internal" anymore.

This patch also adapts the whole source tree for the new libimagentrylink
interface, also renaming variables to not contain "_internal_" anymore.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-06-21 23:22:47 +02:00
Matthias Beyer f21b6e53a2 Merge branch 'libimagentrylink-split' into master 2019-06-15 16:48:50 +02:00
Matthias Beyer 901502b67e Split "internal" module into several submodules
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-31 12:48:00 +02:00
Matthias Beyer d2a5e8fb59 Rename functions: *_external_link -> *_url
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-31 12:48:00 +02:00
Matthias Beyer 14ea375ca4 Fix imag-link for new url library 2019-05-31 12:48:00 +02:00
Matthias Beyer c33c29e8e2 Fix import for new libimagentryurl lib
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-31 12:48:00 +02:00
Matthias Beyer a157b23258 Fix imag-view to ignore broken pipes
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-30 11:12:46 +02:00
Matthias Beyer a7d53e47d1 Update toml-query to 0.9.0
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-29 18:39:25 +02:00
Matthias Beyer 1482f70320 Update dependency: toml: 0.4 -> 0.5
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-29 18:39:25 +02:00
Leon Schuermann ed457495c8 Introduce proper error handling in IdPathProvider
Prior to this change, the IdPathProvider implementation would be
responsible for exiting the process on insufficient / wrong arguments.
However, such error handling should be performed together with the
business logic and not in CLI-parsing related code.

This change introduces a clear separation: both parsing errors and
insufficient id path arguments can now be return from inside the
`get_ids`-method, and get passed up to the application logic to be
handled.

This change is reflected in all instances of IdPathProvider and their
surrounding code.

Signed-off-by: Leon Schuermann <leon.git@is.currently.online>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-24 21:03:34 +02:00
Matthias Beyer b7d91f0905 Remove buildscripts
When installing (a subcrate) from crates.io, it fails because it cannot
find the buildscript. This is the quickfix, simply remove the
buildscript itself and the setup of the buildscript in all Cargo.toml
files.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-22 22:18:57 +02:00
Matthias Beyer 1d89844613 Run 'cargo fix' for rust-2018
With this patch we move the codebase to Rust-2018.

The diff was generated by executing

    cargo fix --all --all-features --edition

on the codebase.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-18 00:20:59 +02:00
Matthias Beyer df62e6f1b3 Add support to only list links
This patch adds support in imag-markdown to only list links that are
found in the markdown.

The list format includes the link title, which I consider convenient in
this case, but still easily scriptable.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-17 21:59:15 +02:00
Matthias Beyer 632062caed Add imag-markdown
This patch adds a tool to process one or more entries as markdown and
print them as html.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-05-17 21:54:43 +02:00
Matthias Beyer a7f2826bb9 Fix: Do only check entries which are a ref
We should not try to check entries that are not refs because this will
always fail. And because we fail _hard_, the execution of the command
fails on the first non-ref-entry and exits the program. Not good for a
filter... :-)

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-27 01:57:40 +02:00
Matthias Beyer 485779a176 Implement list-dead subcommand
This patch implements a helper in imag-ref to list all dead references
either by store id or by path which is referenced.

Suggested-by: Leon Schürmann <leon@is.currently.online>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 15:02:34 +02:00
Matthias Beyer dc60942111 Add CLI interface for listing dead refs
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 15:02:34 +02:00
Matthias Beyer 0d5229be10 Refactor error handling
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:40:07 +02:00
Matthias Beyer 9424661393 Add setting to override basepath setting
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:40:07 +02:00
Matthias Beyer fd980299a5 Ignore ".d" binaries in debug build
The comment in the patch should be self-explanatory.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-22 14:24:46 +02:00
Matthias Beyer de522ec0f2 Fix for rust beta compiler
The beta compiler reports duplicated input:

error: the item `IntoValues` is imported redundantly
   --> lib/entry/libimagentrylink/src/internal.rs:398:13
    |
36  | use self::iter::IntoValues;
    |     ---------------------- the item `IntoValues` is already imported here
...
398 |         use internal::iter::IntoValues;
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
    |

so we fix this here.

Other imports were fixed as well.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-04-13 22:06:53 +02:00
Matthias Beyer dfc02a5679 Move helper function to libimagentref::util
This moves the helper function for getting the `Config` object from the
configuration file via the runtime.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-20 16:22:52 +01:00
Matthias Beyer 198c59f717 Revert "Remove imag-mail"
This reverts commit f9a980c344.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-20 16:22:52 +01:00
Matthias Beyer 27c0a30494 Add config fetching function for Ref::get_path() parameter
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-20 14:43:42 +01:00
Matthias Beyer 6681f9fcfd Remove unused code
Because the store is more efficient when reading and writing entries to
disk, we do not need to flush the cache anymore.

Hence, remove the flushing.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-18 16:02:49 +01:00
Matthias Beyer f9a980c344 Remove imag-mail
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-17 11:09:49 +01:00
Matthias Beyer 49df7f54a9 Rewrite imag-ref 2019-02-17 11:09:48 +01:00
Matthias Beyer a6ad19a14f Merge branch 'redefine-storeid'
Finally merging the redefine of the StoreId implementation, which allows
easier handling of StoreId objects.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 22:15:58 +01:00
Matthias Beyer 08b7a46c74 Use StoreId::local_display_string() for less errorhandling here
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 22:15:06 +01:00
Matthias Beyer aa5ea533c7 Add imag-header
imag-header is a tool for querying information of an entry in a defined
format.

imag-header is intended for scripting with imag commands.
The output format is not stable yet, though.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:54:52 +01:00
Matthias Beyer 0888e4345c Use StoreId::local_display_string() for less errorhandling here
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
Matthias Beyer f558556b3a Fix for new all_annotations() interface
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
Matthias Beyer 1bbd2173b7 Fix for new StoreId::new() interface
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
Matthias Beyer 5fe139e02b Adapt StoreId::new() calls
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
Matthias Beyer 39d638daee Adapt for new StoreId API
When printing the storepath with the ID (when requested by the user), we
have to ask the store for its path.

This is a rather naive implementation which could be improved by only
checking for a boolean in the last iteration and then use a prepared
variable, rather than making the storepath part of the iterator.

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:29 +01:00
Matthias Beyer 642702b724 Rewrite: StoreId::new_baseless() -> StoreId::new()
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2019-02-15 20:53:28 +01:00