From 3efcba2d6592f1c3683859e9e6f218a6998427f1 Mon Sep 17 00:00:00 2001 From: Kyle Clemens Date: Mon, 3 Sep 2018 16:44:51 -0400 Subject: [PATCH] refactor: add feature gates for use as a model library --- Cargo.toml | 18 ++++++++++++++---- src/lib.rs | 7 +++++-- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 87772fa..84e2605 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,11 +7,21 @@ authors = ["Kyle Clemens "] edition = "2018" +[features] +default-features = [] + +logic = [ + "cssparser", + "failure", + "lazy_static", + "scraper", +] + [dependencies] -cssparser = "0.23" -failure = "0.1" -lazy_static = "1" -scraper = "0.7" +cssparser = { version = "0.23", optional = true } +failure = { version = "0.1", optional = true } +lazy_static = { version = "1", optional = true } +scraper = { version = "0.7", optional = true } serde = "1" serde_derive = "1" serde_json = "1" diff --git a/src/lib.rs b/src/lib.rs index ce38930..27cab38 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,9 +1,12 @@ #![feature(macro_at_most_once_rep)] -#[macro_use] extern crate failure; -#[macro_use] extern crate lazy_static; +#[cfg(feature = "logic")] #[macro_use] extern crate failure; +#[cfg(feature = "logic")] #[macro_use] extern crate lazy_static; #[macro_use] extern crate serde_derive; +#[cfg(feature = "logic")] pub mod error; +#[cfg(feature = "logic")] pub mod logic; + pub mod models;