1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
//! # Install
//!
//! The project CI/CD pipeline is not currently building binary executables for
//! download, so you must have `rust` and `cargo` installed. Then you may
//! install the latest version of `rucksack` with the following:
//!
//! ```shell
//! cargo install rucksack
//! ```
//!
//! # Getting Started
//!
//! The quickest way to get started is to explore the CLI help text:
//!
//! ```shell
//! rucksack help
//! ```
//!
//!
//! ```text
//! rucksack: A terminal-based secrets manager, generator, and importer/exporter (Firefox, Chrome) backed with a concurrent hashmap
//!
//! Usage: rucksack [OPTIONS] [COMMAND]
//!
//! Commands:
//!   add     Add a new secret
//!   export  Export the rucksack db
//!   gen     Generate a secret
//!   import  Pull in creds from other sources
//!   list    List all secrets
//!   rm      Delete a single record [aliases: delete, remove]
//!   set     Perform various 'write' operations
//!   show    Display rucksack-specific information
//!   help    Print this message or the help of the given subcommand(s)
//!
//! Options:
//!       --config-file <config-file>  The path to the config file to use or create [default: "<user config dir>/rucksack/config.toml"]
//!       --log-level <log-level>      Override the configured log-level setting [default: ] [possible values: error, warn, info, debug, trace, ]
//!       --completions <SHELL>        Emit shell tab completions [possible values: bash, elvish, fish, powershell, zsh]
//!   -v, --version                    Print version information
//!   -h, --help                       Print help
//! ```
//!
//! # Example Usage
//!
//! Be sure to see the documentation for the following `rucksack` CLI subcommands
//! here:
//! * [add](command/add/index.html)
//! * [export](command/export/index.html)
//! * [gen](command/gen/index.html)
//! * [import](command/import/index.html)
//! * [list](command/list/index.html)
//! * [rm](command/rm/index.html)
//! * [set](command/set/index.html)
//! * [show](command/show/index.html)
//!
//! # License
//!
//! Copyright © 2022-2023, Oxur Group
//!
//! Apache License, Version 2.0
//!
#[doc(hidden)]
pub mod app;
pub mod command;
#[doc(hidden)]
pub mod constant;
#[doc(hidden)]
pub mod option;
#[doc(hidden)]
pub mod prompt;
#[doc(hidden)]
pub mod query;
#[doc(hidden)]
pub mod setup;

#[doc(hidden)]
pub use app::App;

pub fn version() -> versions::SemVer {
    versions::SemVer::new(env!("CARGO_PKG_VERSION")).unwrap()
}