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
// Copyright 2021 MaidSafe.net limited. // // This SAFE Network Software is licensed to you under The General Public License (GPL), version 3. // Unless required by applicable law or agreed to in writing, the SAFE Network Software distributed // under the GPL Licence is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY // KIND, either express or implied. Please review the Licences for the specific language governing // permissions and limitations relating to use of the SAFE Network Software. //! Implementation of the "Node" node for the SAFE Network. // For quick_error #![recursion_limit = "256"] #![doc( html_logo_url = "https://raw.githubusercontent.com/maidsafe/QA/master/Images/maidsafe_logo.png", html_favicon_url = "https://maidsafe.net/img/favicon.ico", test(attr(deny(warnings))) )] // Forbid some very bad patterns. Forbid is stronger than `deny`, preventing us from suppressing the // lint with `#[allow(...)]` et-all. #![forbid( arithmetic_overflow, mutable_transmutes, no_mangle_const_items, unknown_crate_types, unsafe_code )] // Turn on some additional warnings to encourage good style. #![warn( missing_debug_implementations, missing_docs, trivial_casts, trivial_numeric_casts, unreachable_pub, unused_extern_crates, unused_import_braces, unused_qualifications, unused_results, clippy::unicode_not_nfc )] #[macro_use] extern crate tracing; pub mod client; mod dbs; pub use dbs::UsedSpace; pub mod messaging; pub mod node; pub mod routing; pub mod types; pub mod url; #[cfg(test)] #[ctor::ctor] fn test_setup() { // If you look down the call stack for `color_eyre::install`, the only error can come from // `OnceCell::set` if it's called twice. We could ignore the error, but it would be better to // ensure we only call it once. color_eyre::install().expect("color_eyre::install can only be called once"); }