From 3de5f7f3e92ce3d44ac8a5bb36457c85717cc0b5 Mon Sep 17 00:00:00 2001 From: Chris Wong <lambda.fairy@gmail.com> Date: Sun, 30 Jul 2017 22:18:26 +1200 Subject: [PATCH] Move lints into their own maud_lints crate --- .travis.yml | 2 +- Cargo.toml | 1 + maud_lints/Cargo.toml | 22 +++++++++++++++ .../src/lints => maud_lints/src}/doctype.rs | 0 maud_lints/src/lib.rs | 27 +++++++++++++++++++ .../src/lints => maud_lints/src}/util.rs | 0 maud_macros/src/lib.rs | 12 --------- maud_macros/src/lints/mod.rs | 14 ---------- 8 files changed, 51 insertions(+), 27 deletions(-) create mode 100644 maud_lints/Cargo.toml rename {maud_macros/src/lints => maud_lints/src}/doctype.rs (100%) create mode 100644 maud_lints/src/lib.rs rename {maud_macros/src/lints => maud_lints/src}/util.rs (100%) delete mode 100644 maud_macros/src/lints/mod.rs diff --git a/.travis.yml b/.travis.yml index a4c7571..589b106 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,7 +11,7 @@ script: - | if command -v cargo-clippy > /dev/null; then CLIPPY_STATUS=0 - for package in maud_htmlescape maud_macros maud maud_extras; do + for package in maud_htmlescape maud_macros maud maud_lints maud_extras; do cargo clippy --manifest-path $package/Cargo.toml -- -D warnings || CLIPPY_STATUS=$? done (exit $CLIPPY_STATUS) diff --git a/Cargo.toml b/Cargo.toml index 87876cd..eea673a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,5 +3,6 @@ members = [ "maud_htmlescape", "maud_macros", "maud", + "maud_lints", "maud_extras", ] diff --git a/maud_lints/Cargo.toml b/maud_lints/Cargo.toml new file mode 100644 index 0000000..9a53f24 --- /dev/null +++ b/maud_lints/Cargo.toml @@ -0,0 +1,22 @@ +[package] + +name = "maud_lints" +# When releasing a new version, please update html_root_url in src/lib.rs +version = "0.17.0" +authors = ["Chris Wong <lambda.fairy@gmail.com>"] + +license = "MIT/Apache-2.0" +documentation = "https://docs.rs/maud_lints/" +homepage = "https://maud.lambda.xyz/" +repository = "https://github.com/lfairy/maud" +description = "Lint plugin for the Maud template engine." + +[dependencies] +if_chain = "0.1" + +[lib] +name = "maud_lints" +plugin = true + +[badges] +travis-ci = { repository = "lfairy/maud" } diff --git a/maud_macros/src/lints/doctype.rs b/maud_lints/src/doctype.rs similarity index 100% rename from maud_macros/src/lints/doctype.rs rename to maud_lints/src/doctype.rs diff --git a/maud_lints/src/lib.rs b/maud_lints/src/lib.rs new file mode 100644 index 0000000..d286222 --- /dev/null +++ b/maud_lints/src/lib.rs @@ -0,0 +1,27 @@ +#![feature(plugin_registrar)] +#![feature(rustc_private)] +#![recursion_limit = "1000"] // if_chain + +#![doc(html_root_url = "https://docs.rs/maud_lints/0.17.0")] + +#[macro_use] +extern crate if_chain; +#[macro_use] +extern crate rustc; +extern crate rustc_plugin; +extern crate syntax; + +use rustc_plugin::Registry; + +#[macro_use] +mod util; + +mod doctype; + +#[plugin_registrar] +pub fn plugin_registrar(reg: &mut Registry) { + reg.register_late_lint_pass(Box::new(doctype::Doctype)); + reg.register_lint_group("maud", vec![ + doctype::MAUD_DOCTYPE, + ]); +} diff --git a/maud_macros/src/lints/util.rs b/maud_lints/src/util.rs similarity index 100% rename from maud_macros/src/lints/util.rs rename to maud_lints/src/util.rs diff --git a/maud_macros/src/lib.rs b/maud_macros/src/lib.rs index 409c7ab..aaa07da 100644 --- a/maud_macros/src/lib.rs +++ b/maud_macros/src/lib.rs @@ -1,5 +1,4 @@ #![feature(proc_macro)] -#![recursion_limit = "1000"] // if_chain #![doc(html_root_url = "https://docs.rs/maud_macros/0.16.3")] @@ -7,8 +6,6 @@ extern crate literalext; extern crate maud_htmlescape; extern crate proc_macro; -// TODO move lints into their own `maud_lints` crate -// mod lints; mod parse; mod render; @@ -34,12 +31,3 @@ pub fn html_debug(args: TokenStream) -> TokenStream { Err(e) => panic!(e), } } - -/* -#[plugin_registrar] -pub fn plugin_registrar(reg: &mut Registry) { - reg.register_macro("html", expand_html); - reg.register_macro("html_debug", expand_html_debug); - lints::register_lints(reg); -} -*/ diff --git a/maud_macros/src/lints/mod.rs b/maud_macros/src/lints/mod.rs deleted file mode 100644 index 37b5acd..0000000 --- a/maud_macros/src/lints/mod.rs +++ /dev/null @@ -1,14 +0,0 @@ -use rustc_plugin::Registry; - -#[macro_use] -mod util; - -mod doctype; - -pub fn register_lints(reg: &mut Registry) { - reg.register_late_lint_pass(Box::new(doctype::Doctype)); - - reg.register_lint_group("maud", vec![ - doctype::MAUD_DOCTYPE, - ]); -}