rustic_rs/
lib.rs

1/*!
2rustic
3
4Application based on the [Abscissa] framework.
5
6[Abscissa]: https://github.com/iqlusioninc/abscissa
7*/
8
9#![warn(
10    // unreachable_pub, // frequently check
11    // TODO: Activate and create better docs
12    // missing_docs,
13    rust_2018_idioms,
14    trivial_casts,
15    unused_lifetimes,
16    unused_qualifications,
17    // TODO: Activate if you're feeling like fixing stuff 
18    // clippy::pedantic,
19    // clippy::correctness,
20    // clippy::suspicious,
21    // clippy::complexity,
22    // clippy::perf,
23    clippy::nursery,
24    bad_style,
25    dead_code,
26    improper_ctypes,
27    missing_copy_implementations,
28    missing_debug_implementations,
29    non_shorthand_field_patterns,
30    no_mangle_generic_items,
31    overflowing_literals,
32    path_statements,
33    patterns_in_fns_without_body,
34    trivial_numeric_casts,
35    unused_results,
36    unused_extern_crates,
37    unused_import_braces,
38    unconditional_recursion,
39    unused,
40    unused_allocation,
41    unused_comparisons,
42    unused_parens,
43    while_true,
44    clippy::cast_lossless,
45    clippy::default_trait_access,
46    clippy::doc_markdown,
47    clippy::manual_string_new,
48    clippy::match_same_arms,
49    clippy::semicolon_if_nothing_returned,
50    clippy::trivially_copy_pass_by_ref
51)]
52#![allow(
53    // Popped up in 1.83.0
54    non_local_definitions,
55    // False-positive in WebDavFs
56    mismatched_lifetime_syntaxes,
57    clippy::module_name_repetitions,
58    clippy::redundant_pub_crate,
59    clippy::missing_const_for_fn
60)]
61
62pub mod application;
63pub(crate) mod commands;
64pub(crate) mod config;
65pub(crate) mod error;
66pub(crate) mod filtering;
67pub(crate) mod helpers;
68#[cfg(any(feature = "prometheus", feature = "opentelemetry"))]
69pub(crate) mod metrics;
70pub(crate) mod repository;
71
72// rustic_cli Public API
73
74/// Abscissa core prelude
75pub use abscissa_core::prelude::*;
76
77/// Application state
78pub use crate::application::RUSTIC_APP;
79
80/// Rustic config
81pub use crate::config::RusticConfig;
82
83/// Completions
84pub use crate::commands::completions::generate_completion;