on master help sign in
Don't rely on LTO to remove logging
5b0f773Nick Fitzgerald
Cargo.lock+1
@@ -83,6 +83,7 @@ name = "dodrio"
83version = "0.1.0"
83version = "0.1.0"
84dependencies = [
84dependencies = [
85 "bumpalo 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
85 "bumpalo 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
86+ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
86 "console_log 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
87 "console_log 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
87 "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
88 "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
88 "js-sys 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
89 "js-sys 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
Cargo.toml+4−5
@@ -4,16 +4,14 @@ version = "0.1.0"
4authors = ["Nick Fitzgerald <fitzgen@gmail.com>"]
4authors = ["Nick Fitzgerald <fitzgen@gmail.com>"]
5edition = "2018"
5edition = "2018"
6
6
7−[features]
8−default = []
9−
10[dependencies]
7[dependencies]
11bumpalo = "2.1.0"
8bumpalo = "2.1.0"
9+cfg-if = "0.1.6"
12futures = "0.1.25"
10futures = "0.1.25"
13wasm-bindgen = "0.2.36"
11wasm-bindgen = "0.2.36"
14wasm-bindgen-futures = "0.3.13"
12wasm-bindgen-futures = "0.3.13"
15js-sys = "0.3.13"
13js-sys = "0.3.13"
16−log = "0.4.6"
14+log = { version = "0.4.6", optional = true }
17
15
18[dependencies.web-sys]
16[dependencies.web-sys]
19version = "0.3.13"
17version = "0.3.13"
@@ -27,8 +25,9 @@ features = [
27]
25]
28
26
29[dev-dependencies]
27[dev-dependencies]
30−wasm-bindgen-test = "0.2.36"
31console_log = "0.1.2"
28console_log = "0.1.2"
29+log = "0.4.6"
30+wasm-bindgen-test = "0.2.36"
32
31
33[dev-dependencies.web-sys]
32[dev-dependencies.web-sys]
34version = "0.3.13"
33version = "0.3.13"
src/change_list.rs−1
@@ -1,6 +1,5 @@
1use crate::Listener;
1use crate::Listener;
2use bumpalo::Bump;
2use bumpalo::Bump;
3−use log::*;
4use std::fmt;
3use std::fmt;
5use std::sync::Once;
4use std::sync::Once;
6use wasm_bindgen::prelude::*;
5use wasm_bindgen::prelude::*;
src/events.rs−1
@@ -1,6 +1,5 @@
1use crate::vdom::{VdomInner, VdomWeak};
1use crate::vdom::{VdomInner, VdomWeak};
2use crate::{Listener, ListenerCallback};
2use crate::{Listener, ListenerCallback};
3−use log::*;
4use std::cell::RefCell;
3use std::cell::RefCell;
5use std::collections::HashMap;
4use std::collections::HashMap;
6use std::fmt;
5use std::fmt;
src/lib.rs+3
@@ -53,6 +53,9 @@
53// Re-export the `bumpalo` crate.
53// Re-export the `bumpalo` crate.
54pub use bumpalo;
54pub use bumpalo;
55
55
56+#[macro_use]
57+mod logging;
58+
56// Only `pub` so that the wasm-bindgen bindings work.
59// Only `pub` so that the wasm-bindgen bindings work.
57#[doc(hidden)]
60#[doc(hidden)]
58pub mod change_list;
61pub mod change_list;
src/logging.rsnew file+73
@@ -0,0 +1,73 @@
1+use cfg_if::cfg_if;
2+
3+cfg_if! {
4+ if #[cfg(feature = "log")] {
5+ pub use log::*;
6+ } else {
7+ #[allow(unused_macros)]
8+ macro_rules! debug {
9+ ( $( $e:expr ),* $(,)* ) => {
10+ if false {
11+ $(
12+ let _ = $e;
13+ )*
14+ }
15+ }
16+ }
17+
18+ #[allow(unused_macros)]
19+ macro_rules! error {
20+ ( $( $e:expr ),* $(,)* ) => {
21+ if false {
22+ $(
23+ let _ = $e;
24+ )*
25+ }
26+ }
27+ }
28+
29+ #[allow(unused_macros)]
30+ macro_rules! info {
31+ ( $( $e:expr ),* $(,)* ) => {
32+ if false {
33+ $(
34+ let _ = $e;
35+ )*
36+ }
37+ }
38+ }
39+
40+ #[allow(unused_macros)]
41+ macro_rules! log {
42+ ( $( $e:expr ),* $(,)* ) => {
43+ if false {
44+ $(
45+ let _ = $e;
46+ )*
47+ }
48+ }
49+ }
50+
51+ #[allow(unused_macros)]
52+ macro_rules! trace {
53+ ( $( $e:expr ),* $(,)* ) => {
54+ if false {
55+ $(
56+ let _ = $e;
57+ )*
58+ }
59+ }
60+ }
61+
62+ #[allow(unused_macros)]
63+ macro_rules! warn {
64+ ( $( $e:expr ),* $(,)* ) => {
65+ if false {
66+ $(
67+ let _ = $e;
68+ )*
69+ }
70+ }
71+ }
72+ }
73+}
src/vdom.rs−1
@@ -4,7 +4,6 @@ use super::RootRender;
4use crate::events::EventsRegistry;
4use crate::events::EventsRegistry;
5use bumpalo::Bump;
5use bumpalo::Bump;
6use futures::future::Future;
6use futures::future::Future;
7−use log::*;
8use std::cell::Cell;
7use std::cell::Cell;
9use std::cell::RefCell;
8use std::cell::RefCell;
10use std::cmp;
9use std::cmp;