X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Flib.rs;h=7161d888151b997f6fcfcf5a40e7141e4711aa0f;hb=676e15910c1a681e5ff2019bc7e53540119ceee5;hp=23645ab189aec1c06de223a6a6cad88f1eeceaac;hpb=b5723c7d4837a26156ac22672e62aa2c955b95ba;p=rust-lightning diff --git a/lightning/src/lib.rs b/lightning/src/lib.rs index 23645ab1..7161d888 100644 --- a/lightning/src/lib.rs +++ b/lightning/src/lib.rs @@ -10,7 +10,6 @@ //! instead of having a rather-separate lightning appendage to a wallet. #![cfg_attr(not(feature = "fuzztarget"), deny(missing_docs))] -#![forbid(unsafe_code)] // In general, rust is absolutely horrid at supporting users doing things like, // for example, compiling Rust code for real environments. Disable useless lints @@ -21,6 +20,7 @@ extern crate bitcoin; #[cfg(test)] extern crate rand; #[cfg(test)] extern crate hex; +#[cfg(all(test, feature = "mutation_testing"))] extern crate mutagen; #[macro_use] pub mod util; @@ -28,3 +28,8 @@ pub mod chain; pub mod ln; pub mod routing; +#[cfg(all( + any(feature = "mutation_testing", feature = "fuzztarget"), + not(any(test, debug_assertions)) + ))] +const ERR: () = "You should never be building with feature = mutation_testing or feature = fuzztarget! They are used to compile with broken code for testing only!";