From 56d5d83bd4e28636c76c82b0572428ff41d0808b Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Fri, 22 Nov 2019 08:08:07 -0500 Subject: switch to the log crate --- Cargo.lock | 12 ++++ teleterm-web/Cargo.toml | 2 + teleterm-web/src/lib.rs | 30 ++++------ teleterm/static/teleterm_web.js | 113 +++++++++++++++++++---------------- teleterm/static/teleterm_web_bg.wasm | Bin 389782 -> 395632 bytes 5 files changed, 88 insertions(+), 69 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a9a0a77..b8d6565 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -325,6 +325,16 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "console_log" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7871d2947441b0fdd8e2bd1ce2a2f75304f896582c0d572162d48290683c48" +dependencies = [ + "log", + "web-sys", +] + [[package]] name = "constant_time_eq" version = "0.1.4" @@ -2138,8 +2148,10 @@ dependencies = [ name = "teleterm-web" version = "0.1.0" dependencies = [ + "console_log", "futures", "js-sys", + "log", "seed", "serde", "serde_json", diff --git a/teleterm-web/Cargo.toml b/teleterm-web/Cargo.toml index 57a7d25..a7c82b6 100644 --- a/teleterm-web/Cargo.toml +++ b/teleterm-web/Cargo.toml @@ -11,8 +11,10 @@ publish = false crate-type = ["cdylib", "rlib"] [dependencies] +console_log = "0.1" futures = "0.1.29" js-sys = "0.3" +log = "0.4" seed = "0.4" serde = "1" serde_json = "1" diff --git a/teleterm-web/src/lib.rs b/teleterm-web/src/lib.rs index 453d086..c532242 100644 --- a/teleterm-web/src/lib.rs +++ b/teleterm-web/src/lib.rs @@ -4,12 +4,6 @@ mod ws; use crate::prelude::*; -#[wasm_bindgen] -extern "C" { - #[wasm_bindgen(js_namespace = console)] - fn log(s: &str); -} - #[allow(clippy::large_enum_variant)] #[derive(Clone)] enum Msg { @@ -20,7 +14,7 @@ enum Msg { } fn init(_: Url, orders: &mut impl Orders) -> Init { - log("init"); + log::trace!("init"); let model = crate::model::Model::default(); orders.perform_cmd(model.list()); Init::new(model) @@ -31,43 +25,44 @@ fn update( model: &mut crate::model::Model, orders: &mut impl Orders, ) { - log("update"); + log::trace!("update"); match msg { Msg::List(sessions) => match sessions { Ok(sessions) => { - log("got sessions"); + log::debug!("got sessions"); model.update_sessions(sessions); } Err(e) => { - log(&format!("error getting sessions: {:?}", e)); + log::error!("error getting sessions: {:?}", e); } }, Msg::Refresh => { + log::debug!("refreshing"); orders.perform_cmd(model.list()); } Msg::StartWatching(id) => { - log(&format!("watching {}", id)); + log::debug!("watching {}", id); model.watch(&id, orders); } Msg::Watch(id, event) => match event { ws::WebSocketEvent::Connected(_) => { - log("connected"); + log::info!("connected"); } ws::WebSocketEvent::Disconnected(_) => { - log("disconnected"); + log::info!("disconnected"); } ws::WebSocketEvent::Message(msg) => { - log(&format!("message from id {}: {:?}", id, msg)); + log::info!("message from id {}: {:?}", id, msg); } ws::WebSocketEvent::Error(e) => { - log(&format!("error from id {}: {:?}", id, e)); + log::error!("error from id {}: {:?}", id, e); } }, } } fn view(model: &crate::model::Model) -> impl View { - log("view"); + log::trace!("view"); let mut list = vec![]; for session in model.sessions() { list.push(seed::li![seed::button![ @@ -84,6 +79,7 @@ fn view(model: &crate::model::Model) -> impl View { #[wasm_bindgen(start)] pub fn start() { - log("start"); + console_log::init_with_level(log::Level::Debug).unwrap(); + log::debug!("start"); seed::App::build(init, update, view).build_and_start(); } diff --git a/teleterm/static/teleterm_web.js b/teleterm/static/teleterm_web.js index f7b9436..fcec751 100644 --- a/teleterm/static/teleterm_web.js +++ b/teleterm/static/teleterm_web.js @@ -18,31 +18,31 @@ function addHeapObject(obj) { return idx; } function __wbg_elem_binding0(arg0, arg1, arg2) { - wasm.__wbg_function_table.get(49)(arg0, arg1, addHeapObject(arg2)); + wasm.__wbg_function_table.get(42)(arg0, arg1, addHeapObject(arg2)); } function __wbg_elem_binding1(arg0, arg1, arg2) { - wasm.__wbg_function_table.get(49)(arg0, arg1, addHeapObject(arg2)); + wasm.__wbg_function_table.get(258)(arg0, arg1, addHeapObject(arg2)); } function __wbg_elem_binding2(arg0, arg1, arg2) { - wasm.__wbg_function_table.get(54)(arg0, arg1, arg2); + wasm.__wbg_function_table.get(42)(arg0, arg1, addHeapObject(arg2)); } function __wbg_elem_binding3(arg0, arg1, arg2) { - wasm.__wbg_function_table.get(49)(arg0, arg1, addHeapObject(arg2)); + wasm.__wbg_function_table.get(47)(arg0, arg1, arg2); } function __wbg_elem_binding4(arg0, arg1) { - wasm.__wbg_function_table.get(174)(arg0, arg1); + wasm.__wbg_function_table.get(188)(arg0, arg1); } function __wbg_elem_binding5(arg0, arg1, arg2) { - wasm.__wbg_function_table.get(244)(arg0, arg1, addHeapObject(arg2)); + wasm.__wbg_function_table.get(42)(arg0, arg1, addHeapObject(arg2)); } function __wbg_elem_binding6(arg0, arg1, arg2) { - wasm.__wbg_function_table.get(49)(arg0, arg1, addHeapObject(arg2)); + wasm.__wbg_function_table.get(42)(arg0, arg1, addHeapObject(arg2)); } function __wbg_elem_binding7(arg0, arg1, arg2, arg3, arg4) { - wasm.__wbg_function_table.get(271)(arg0, arg1, addHeapObject(arg2), arg3, addHeapObject(arg4)); + wasm.__wbg_function_table.get(285)(arg0, arg1, addHeapObject(arg2), arg3, addHeapObject(arg4)); } function __wbg_elem_binding8(arg0, arg1, arg2, arg3) { - wasm.__wbg_function_table.get(275)(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); + wasm.__wbg_function_table.get(289)(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); } /** */ @@ -50,6 +50,20 @@ export function start() { wasm.start(); } +function getObject(idx) { return heap[idx]; } + +function dropObject(idx) { + if (idx < 36) return; + heap[idx] = heap_next; + heap_next = idx; +} + +function takeObject(idx) { + const ret = getObject(idx); + dropObject(idx); + return ret; +} + let cachedTextDecoder = new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }); cachedTextDecoder.decode(); @@ -66,20 +80,6 @@ function getStringFromWasm(ptr, len) { return cachedTextDecoder.decode(getUint8Memory().subarray(ptr, ptr + len)); } -function getObject(idx) { return heap[idx]; } - -function dropObject(idx) { - if (idx < 36) return; - heap[idx] = heap_next; - heap_next = idx; -} - -function takeObject(idx) { - const ret = getObject(idx); - dropObject(idx); - return ret; -} - let WASM_VECTOR_LEN = 0; let cachedTextEncoder = new TextEncoder('utf-8'); @@ -225,15 +225,12 @@ function init(module) { let result; const imports = {}; imports.wbg = {}; - imports.wbg.__wbindgen_string_new = function(arg0, arg1) { - const ret = getStringFromWasm(arg0, arg1); - return addHeapObject(ret); - }; imports.wbg.__wbindgen_object_drop_ref = function(arg0) { takeObject(arg0); }; - imports.wbg.__wbg_log_93d35dab6e237612 = function(arg0, arg1) { - console.log(getStringFromWasm(arg0, arg1)); + imports.wbg.__wbindgen_string_new = function(arg0, arg1) { + const ret = getStringFromWasm(arg0, arg1); + return addHeapObject(ret); }; imports.wbg.__wbindgen_object_clone_ref = function(arg0) { const ret = getObject(arg0); @@ -735,9 +732,21 @@ function init(module) { const ret = getObject(arg0).fetch(getStringFromWasm(arg1, arg2), getObject(arg3)); return addHeapObject(ret); }; + imports.wbg.__widl_f_debug_1_ = function(arg0) { + console.debug(getObject(arg0)); + }; imports.wbg.__widl_f_error_1_ = function(arg0) { console.error(getObject(arg0)); }; + imports.wbg.__widl_f_info_1_ = function(arg0) { + console.info(getObject(arg0)); + }; + imports.wbg.__widl_f_log_1_ = function(arg0) { + console.log(getObject(arg0)); + }; + imports.wbg.__widl_f_warn_1_ = function(arg0) { + console.warn(getObject(arg0)); + }; imports.wbg.__wbg_call_aa56d0132fec7569 = function(arg0, arg1) { try { const ret = getObject(arg0).call(getObject(arg1)); @@ -871,16 +880,16 @@ function init(module) { imports.wbg.__wbindgen_throw = function(arg0, arg1) { throw new Error(getStringFromWasm(arg0, arg1)); }; - imports.wbg.__wbindgen_closure_wrapper214 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper213 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; const real = (arg0) => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding1(a, state.b, arg0); + return __wbg_elem_binding5(a, state.b, arg0); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(50)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(43)(a, state.b); else state.a = a; } } @@ -889,16 +898,16 @@ function init(module) { const ret = real; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper216 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper219 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; const real = (arg0) => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding0(a, state.b, arg0); + return __wbg_elem_binding2(a, state.b, arg0); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(50)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(43)(a, state.b); else state.a = a; } } @@ -907,16 +916,16 @@ function init(module) { const ret = real; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper218 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper217 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; const real = (arg0) => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding2(a, state.b, arg0); + return __wbg_elem_binding3(a, state.b, arg0); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(50)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(43)(a, state.b); else state.a = a; } } @@ -925,16 +934,16 @@ function init(module) { const ret = real; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper222 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper215 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; const real = (arg0) => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding3(a, state.b, arg0); + return __wbg_elem_binding6(a, state.b, arg0); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(50)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(43)(a, state.b); else state.a = a; } } @@ -943,16 +952,16 @@ function init(module) { const ret = real; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper506 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper221 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; - const real = () => { + const real = (arg0) => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding4(a, state.b, ); + return __wbg_elem_binding0(a, state.b, arg0); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(175)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(43)(a, state.b); else state.a = a; } } @@ -961,16 +970,16 @@ function init(module) { const ret = real; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper909 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper927 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; const real = (arg0) => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding5(a, state.b, arg0); + return __wbg_elem_binding1(a, state.b, arg0); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(245)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(259)(a, state.b); else state.a = a; } } @@ -979,16 +988,16 @@ function init(module) { const ret = real; return addHeapObject(ret); }; - imports.wbg.__wbindgen_closure_wrapper220 = function(arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper520 = function(arg0, arg1, arg2) { const state = { a: arg0, b: arg1, cnt: 1 }; - const real = (arg0) => { + const real = () => { state.cnt++; const a = state.a; state.a = 0; try { - return __wbg_elem_binding6(a, state.b, arg0); + return __wbg_elem_binding4(a, state.b, ); } finally { - if (--state.cnt === 0) wasm.__wbg_function_table.get(50)(a, state.b); + if (--state.cnt === 0) wasm.__wbg_function_table.get(189)(a, state.b); else state.a = a; } } diff --git a/teleterm/static/teleterm_web_bg.wasm b/teleterm/static/teleterm_web_bg.wasm index 254392e..7cdf809 100644 Binary files a/teleterm/static/teleterm_web_bg.wasm and b/teleterm/static/teleterm_web_bg.wasm differ -- cgit v1.2.3-54-g00ecf