warning: profiles for the non root package will be ignored, specify profiles at the workspace root:
package:   E:\Administrator\Documents\codebuddy-projects\ts-native\tsnp-abi\Cargo.toml
workspace: E:\Administrator\Documents\codebuddy-projects\ts-native\Cargo.toml
 Downloading crates ...
  Downloaded wasmi_core v0.2.1 (registry `rsproxy-sparse`)
  Downloaded memory_units v0.4.0 (registry `rsproxy-sparse`)
  Downloaded parity-wasm v0.45.0 (registry `rsproxy-sparse`)
  Downloaded wasmi v0.13.2 (registry `rsproxy-sparse`)
  Downloaded wasmi-validation v0.5.0 (registry `rsproxy-sparse`)
    Checking smallvec v1.15.1
    Checking parity-wasm v0.45.0
    Checking memory_units v0.4.0
   Compiling tsn-runtime v0.1.0 (E:\Administrator\Documents\codebuddy-projects\ts-native\runtime)
    Checking num-rational v0.4.2
    Checking icu_normalizer v2.2.0
    Checking wasmi_core v0.2.1
    Checking idna_adapter v1.2.2
    Checking wasmi-validation v0.5.0
    Checking idna v1.1.0
    Checking wasmi v0.13.2
    Checking url v2.5.8
    Checking ureq v2.12.1
error[E0428]: the name `ts_native_shim_dayjs_format` is defined multiple times
    --> runtime\src\lib.rs:9269:1
     |
9026 | pub extern "C" fn ts_native_shim_dayjs_format(_date: f64, template: f64) -> f64 {
     | ------------------------------------------------------------------------------- previous definition of the value `ts_native_shim_dayjs_format` here
...
9269 | pub extern "C" fn ts_native_shim_dayjs_format(date_val: f64, format_str: f64) -> f64 {
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `ts_native_shim_dayjs_format` redefined here
     |
     = note: `ts_native_shim_dayjs_format` must be defined only once in the value namespace of this module

error[E0432]: unresolved imports `wasmi::Engine`, `wasmi::Store`, `wasmi::Linker`, `wasmi::Value`, `wasmi::Extern`, `wasmi::TypedFunc`
    --> runtime\src\lib.rs:5284:17
     |
5284 |     use wasmi::{Engine, Store, Linker, Module, Value, Extern, TypedFunc};
     |                 ^^^^^^  ^^^^^  ^^^^^^          ^^^^^  ^^^^^^  ^^^^^^^^^ no `TypedFunc` in the root
     |                 |       |      |               |      |
     |                 |       |      |               |      no `Extern` in the root
     |                 |       |      |               no `Value` in the root
     |                 |       |      no `Linker` in the root
     |                 |       no `Store` in the root
     |                 no `Engine` in the root
     |
help: a similar name exists in the module (notice the capitalization)
     |
5284 -     use wasmi::{Engine, Store, Linker, Module, Value, Extern, TypedFunc};
5284 +     use wasmi::{Engine, Store, Linker, Module, value, Extern, TypedFunc};
     |

error[E0425]: cannot find type `Instance` in crate `wasmi`
    --> runtime\src\lib.rs:5289:54
     |
5289 |             std::collections::HashMap<String, wasmi::Instance>
     |                                                      ^^^^^^^^ not found in `wasmi`

warning: unused doc comment
    --> runtime\src\lib.rs:4414:1
     |
4414 | /// 存储 writeHead 设置的响应头
     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
     |
     = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default

warning: unnecessary parentheses around function argument
    --> runtime\src\lib.rs:4125:22
     |
4125 |         set("speed", (2000.0 + (i * 100) as f64)); // approximate speed MHz
     |                      ^                         ^
     |
     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
help: remove these parentheses
     |
4125 -         set("speed", (2000.0 + (i * 100) as f64)); // approximate speed MHz
4125 +         set("speed", 2000.0 + (i * 100) as f64); // approximate speed MHz
     |

warning: unnecessary parentheses around function argument
    --> runtime\src\lib.rs:4129:38
     |
4129 |             js_object_set(times, tk, ((3600000 + i * 10000) as f64));
     |                                      ^                            ^
     |
help: remove these parentheses
     |
4129 -             js_object_set(times, tk, ((3600000 + i * 10000) as f64));
4129 +             js_object_set(times, tk, (3600000 + i * 10000) as f64);
     |

warning: unnecessary parentheses around function argument
    --> runtime\src\lib.rs:4131:38
     |
4131 |             js_object_set(times, tk, ((1800000 + i * 5000) as f64));
     |                                      ^                           ^
     |
help: remove these parentheses
     |
4131 -             js_object_set(times, tk, ((1800000 + i * 5000) as f64));
4131 +             js_object_set(times, tk, (1800000 + i * 5000) as f64);
     |

warning: unnecessary parentheses around function argument
    --> runtime\src\lib.rs:4133:38
     |
4133 |             js_object_set(times, tk, ((7200000 + i * 20000) as f64));
     |                                      ^                            ^
     |
help: remove these parentheses
     |
4133 -             js_object_set(times, tk, ((7200000 + i * 20000) as f64));
4133 +             js_object_set(times, tk, (7200000 + i * 20000) as f64);
     |

warning: unused import: `Write`
    --> runtime\src\lib.rs:4315:25
     |
4315 |     use std::io::{Read, Write};
     |                         ^^^^^
     |
     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default

error[E0015]: cannot call non-const associated function `HashMap::<u64, (Child, Vec<u8>, Vec<u8>)>::new` in statics
    --> runtime\src\lib.rs:5190:117
     |
5190 | ...ocess::Child, Vec<u8>, Vec<u8>)>> = Mutex::new(std::collections::HashMap::new());
     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
     = note: calls in statics are limited to constant functions, tuple structs and tuple variants
     = note: consider wrapping this expression in `std::sync::LazyLock::new(|| ...)`

error[E0599]: no function or associated item named `new` found for struct `Module` in the current scope
    --> runtime\src\lib.rs:5301:36
     |
5301 |         let module = match Module::new(&WASM_ENGINE.with(|e| e.clone()), &wasm_bytes) {
     |                                    ^^^ function or associated item not found in `Module`
     |
note: if you're trying to build a new `Module` consider using one of the following associated functions:
      Module::from_parity_wasm_module
      Module::from_buffer
    --> C:\Users\Administrator\.cargo\registry\src\rsproxy.cn-e3de039b2554c837\wasmi-0.13.2\src\lib.rs:356:5
     |
 356 |     pub fn from_parity_wasm_module(module: parity_wasm::elements::Module) -> Result<Module, Error> {
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
 448 |     pub fn from_buffer<B: AsRef<[u8]>>(buffer: B) -> Result<Module, Error> {
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0015]: cannot call non-const associated function `HashMap::<u64, u64>::new` in statics
    --> runtime\src\lib.rs:9387:86
     |
9387 | static TRAY_CLICK_CALLBACKS: Mutex<std::collections::HashMap<u64, u64>> = Mutex::new(std::collections::HashMap::new());
     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
     = note: calls in statics are limited to constant functions, tuple structs and tuple variants
     = note: consider wrapping this expression in `std::sync::LazyLock::new(|| ...)`

warning: unreachable expression
    --> runtime\src\lib.rs:9616:5
     |
9613 |             return (hwnd as u64) as f64;
     |             --------------------------- any code following this expression is unreachable
...
9616 |     f64::from_bits(TAG_UNDEFINED)
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression
     |
     = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default

warning: unreachable expression
    --> runtime\src\lib.rs:9675:5
     |
9673 |         return store_string(result_str.to_string());
     |         ------------------------------------------- any code following this expression is unreachable
9674 |     }
9675 |     store_string("ok".to_string())
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression

warning: unreachable pattern
   --> runtime\src\lib.rs:984:17
    |
984 |                 _ => print!("[object]"),
    |                 ^ no value can reach this
    |
note: multiple earlier patterns match some of the same values
   --> runtime\src\lib.rs:984:17
    |
980 |                 TAG_UNDEFINED => print!("undefined"),
    |                 ------------- matches some of the same values
981 |                 TAG_NULL => print!("null"),
    |                 -------- matches some of the same values
982 |                 TAG_BOOLEAN => print!("{}", if value.to_bits() & 1 == 1 { "true" } else { "false" }),
    |                 ----------- matches some of the same values
983 |                 TAG_NAN => print!("NaN"),
    |                 ------- matches some of the same values
984 |                 _ => print!("[object]"),
    |                 ^ collectively making this unreachable
    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `TAG_NAN`
   --> runtime\src\lib.rs:983:17
    |
983 |                 TAG_NAN => print!("NaN"),
    |                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_TAG_NAN`
    |
    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default

warning: variable does not need to be mutable
    --> runtime\src\lib.rs:1321:9
     |
1321 |     let mut elements: Vec<f64> = Vec::new();
     |         ----^^^^^^^^
     |         |
     |         help: remove this `mut`
     |
     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:1924:5
     |
1924 |     unsafe {
     |     ^^^^^^ unnecessary `unsafe` block
     |
     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default

warning: unused variable: `target`
    --> runtime\src\lib.rs:1952:14
     |
1952 | fn proxy_get(target: f64, key: f64, receiver: f64) -> Option<f64> {
     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`

warning: unused variable: `target`
    --> runtime\src\lib.rs:1968:14
     |
1968 | fn proxy_set(target: f64, key: f64, value: f64, receiver: f64) -> Option<f64> {
     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`

warning: unused variable: `target`
    --> runtime\src\lib.rs:2082:40
     |
2082 | pub extern "C" fn js_reflect_construct(target: f64, args: f64) -> f64 {
     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_target`

warning: unused variable: `zero`
    --> runtime\src\lib.rs:2736:21
     |
2736 |                 let zero = 0.0;
     |                     ^^^^ help: if this is intentional, prefix it with an underscore: `_zero`

warning: unused variable: `atime`
    --> runtime\src\lib.rs:3576:48
     |
3576 | pub extern "C" fn js_fs_utimes_sync(path: f64, atime: f64, mtime: f64) -> f64 {
     |                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_atime`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:4198:26
     |
4198 |         if let Some(h) = unsafe { get_object(headers) } {
     |                          ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `msg`
    --> runtime\src\lib.rs:4427:9
     |
4427 |     let msg = get_string(status_message).unwrap_or_else(|| "OK".to_string());
     |         ^^^ help: if this is intentional, prefix it with an underscore: `_msg`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:4650:5
     |
4650 |     unsafe {
     |     ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `mask`
    --> runtime\src\lib.rs:5124:36
     |
5124 | pub extern "C" fn js_process_umask(mask: f64) -> f64 {
     |                                    ^^^^ help: if this is intentional, prefix it with an underscore: `_mask`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:5206:28
     |
5206 |         if let Some(arr) = unsafe { get_array(args) } {
     |                            ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `pid_clone`
    --> runtime\src\lib.rs:5230:17
     |
5230 |             let pid_clone = child.id();
     |                 ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pid_clone`

warning: unused variable: `on_key`
    --> runtime\src\lib.rs:5260:17
     |
5260 |             let on_key = store_string("on".to_string());
     |                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_on_key`

warning: unused variable: `exit_evt`
    --> runtime\src\lib.rs:5261:17
     |
5261 |             let exit_evt = store_string("exit".to_string());
     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_exit_evt`

warning: unused variable: `db_val`
    --> runtime\src\lib.rs:5462:34
     |
5462 | pub extern "C" fn js_sqlite_exec(db_val: f64, sql: f64) -> f64 {
     |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_val`

warning: unused variable: `sql`
    --> runtime\src\lib.rs:5462:47
     |
5462 | pub extern "C" fn js_sqlite_exec(db_val: f64, sql: f64) -> f64 {
     |                                               ^^^ help: if this is intentional, prefix it with an underscore: `_sql`

warning: unused variable: `db_val`
    --> runtime\src\lib.rs:5480:33
     |
5480 | pub extern "C" fn js_sqlite_run(db_val: f64, sql: f64, params: f64) -> f64 {
     |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_val`

warning: unused variable: `sql`
    --> runtime\src\lib.rs:5480:46
     |
5480 | pub extern "C" fn js_sqlite_run(db_val: f64, sql: f64, params: f64) -> f64 {
     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_sql`

warning: unused variable: `params`
    --> runtime\src\lib.rs:5480:56
     |
5480 | pub extern "C" fn js_sqlite_run(db_val: f64, sql: f64, params: f64) -> f64 {
     |                                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_params`

warning: unused variable: `db_val`
    --> runtime\src\lib.rs:5514:33
     |
5514 | pub extern "C" fn js_sqlite_get(db_val: f64, sql: f64, _params: f64) -> f64 {
     |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_val`

warning: unused variable: `sql`
    --> runtime\src\lib.rs:5514:46
     |
5514 | pub extern "C" fn js_sqlite_get(db_val: f64, sql: f64, _params: f64) -> f64 {
     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_sql`

warning: unused variable: `db_val`
    --> runtime\src\lib.rs:5549:35
     |
5549 | pub extern "C" fn js_sqlite_close(db_val: f64) -> f64 {
     |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_val`

warning: unused variable: `db_val`
    --> runtime\src\lib.rs:5563:33
     |
5563 | pub extern "C" fn js_sqlite_all(db_val: f64, sql: f64, _params: f64) -> f64 {
     |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_val`

warning: unused variable: `sql`
    --> runtime\src\lib.rs:5563:46
     |
5563 | pub extern "C" fn js_sqlite_all(db_val: f64, sql: f64, _params: f64) -> f64 {
     |                                              ^^^ help: if this is intentional, prefix it with an underscore: `_sql`

warning: unused variable: `options`
    --> runtime\src\lib.rs:5624:65
     |
5624 | pub extern "C" fn js_child_process_exec_sync_opts(command: f64, options: f64) -> f64 {
     |                                                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:5637:9
     |
5637 |         unsafe {
     |         ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `rrtype`
    --> runtime\src\lib.rs:5742:49
     |
5742 | pub extern "C" fn js_dns_resolve(hostname: f64, rrtype: f64, callback: f64) -> f64 {
     |                                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_rrtype`

warning: unused variable: `state`
    --> runtime\src\lib.rs:5846:17
     |
5846 |     if let Some(state) = get_stream_state(obj_bits) {
     |                 ^^^^^ help: if this is intentional, prefix it with an underscore: `_state`

warning: unused variable: `pipe_handler_key`
    --> runtime\src\lib.rs:5849:13
     |
5849 |         let pipe_handler_key = store_string("__tsn_pipe_handler".to_string());
     |             ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_pipe_handler_key`

warning: unused variable: `dest_key`
    --> runtime\src\lib.rs:5851:13
     |
5851 |         let dest_key = store_string("__tsn_pipe_dest".to_string());
     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dest_key`

warning: unused variable: `socket_type`
    --> runtime\src\lib.rs:6338:42
     |
6338 | pub extern "C" fn js_dgram_create_socket(socket_type: f64, callback: f64) -> f64 {
     |                                          ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket_type`

warning: unused variable: `callback`
    --> runtime\src\lib.rs:6338:60
     |
6338 | pub extern "C" fn js_dgram_create_socket(socket_type: f64, callback: f64) -> f64 {
     |                                                            ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_callback`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6366:9
     |
6366 |         unsafe { get_buffer(msg).map(|b| b.bytes.clone()).unwrap_or_default() }
     |         ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `socket`
    --> runtime\src\lib.rs:6362:40
     |
6362 | pub extern "C" fn js_dgram_socket_send(socket: f64, msg: f64, port: f64, address: f64, callback: f64) -> f64 {
     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`

warning: unused variable: `socket`
    --> runtime\src\lib.rs:6388:41
     |
6388 | pub extern "C" fn js_dgram_socket_close(socket: f64, callback: f64) -> f64 {
     |                                         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`

warning: unused variable: `callback`
    --> runtime\src\lib.rs:6388:54
     |
6388 | pub extern "C" fn js_dgram_socket_close(socket: f64, callback: f64) -> f64 {
     |                                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_callback`

warning: unused variable: `options`
    --> runtime\src\lib.rs:6414:48
     |
6414 | pub extern "C" fn js_readline_create_interface(options: f64) -> f64 {
     |                                                ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`

warning: unused variable: `rl`
    --> runtime\src\lib.rs:6421:40
     |
6421 | pub extern "C" fn js_readline_question(rl: f64, query: f64, callback: f64) -> f64 {
     |                                        ^^ help: if this is intentional, prefix it with an underscore: `_rl`

warning: unused variable: `rl`
    --> runtime\src\lib.rs:6444:37
     |
6444 | pub extern "C" fn js_readline_close(rl: f64) -> f64 {
     |                                     ^^ help: if this is intentional, prefix it with an underscore: `_rl`

warning: unused variable: `filename`
    --> runtime\src\lib.rs:6467:33
     |
6467 | pub extern "C" fn js_worker_new(filename: f64) -> f64 {
     |                                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_filename`

warning: unused variable: `worker`
    --> runtime\src\lib.rs:6474:42
     |
6474 | pub extern "C" fn js_worker_post_message(worker: f64, data: f64) -> f64 {
     |                                          ^^^^^^ help: if this is intentional, prefix it with an underscore: `_worker`

warning: unused variable: `data`
    --> runtime\src\lib.rs:6474:55
     |
6474 | pub extern "C" fn js_worker_post_message(worker: f64, data: f64) -> f64 {
     |                                                       ^^^^ help: if this is intentional, prefix it with an underscore: `_data`

warning: unused variable: `worker`
    --> runtime\src\lib.rs:6480:39
     |
6480 | pub extern "C" fn js_worker_terminate(worker: f64) -> f64 {
     |                                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_worker`

warning: unused variable: `worker`
    --> runtime\src\lib.rs:6486:40
     |
6486 | pub extern "C" fn js_worker_on_message(worker: f64, callback: f64) -> f64 {
     |                                        ^^^^^^ help: if this is intentional, prefix it with an underscore: `_worker`

warning: unused variable: `callback`
    --> runtime\src\lib.rs:6486:53
     |
6486 | pub extern "C" fn js_worker_on_message(worker: f64, callback: f64) -> f64 {
     |                                                     ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_callback`

warning: unused variable: `stream`
    --> runtime\src\lib.rs:6500:12
     |
6500 |         Ok(stream) => {
     |            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_stream`

warning: unused variable: `options`
    --> runtime\src\lib.rs:6522:40
     |
6522 | pub extern "C" fn js_tls_create_server(options: f64, callback: f64) -> f64 {
     |                                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_options`

warning: unused variable: `callback`
    --> runtime\src\lib.rs:6522:54
     |
6522 | pub extern "C" fn js_tls_create_server(options: f64, callback: f64) -> f64 {
     |                                                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_callback`

warning: unused variable: `data`
    --> runtime\src\lib.rs:6619:54
     |
6619 | pub extern "C" fn js_crypto_hash_update(handle: f64, data: f64) -> f64 {
     |                                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_data`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6692:9
     |
6692 |         unsafe {
     |         ^^^^^^ unnecessary `unsafe` block

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6734:9
     |
6734 |         unsafe { get_buffer(password).map(|b| b.bytes.clone()).unwrap_or_default() }
     |         ^^^^^^ unnecessary `unsafe` block

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6740:9
     |
6740 |         unsafe { get_buffer(salt).map(|b| b.bytes.clone()).unwrap_or_default() }
     |         ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `algo`
    --> runtime\src\lib.rs:6727:9
     |
6727 |     let algo = get_string(algorithm).unwrap_or_else(|| "sha256".to_string());
     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_algo`

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6786:9
     |
6786 |         unsafe { get_buffer(key).map(|b| b.bytes.clone()).unwrap_or_default() }
     |         ^^^^^^ unnecessary `unsafe` block

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6789:9
     |
6789 |         unsafe { get_buffer(iv).map(|b| b.bytes.clone()).unwrap_or_default() }
     |         ^^^^^^ unnecessary `unsafe` block

warning: unnecessary `unsafe` block
    --> runtime\src\lib.rs:6816:29
     |
6816 | ...                   unsafe { get_buffer(data).map(|b| b.bytes.clone()).unwrap_or_default() }
     |                       ^^^^^^ unnecessary `unsafe` block

warning: unused variable: `iv_bytes`
    --> runtime\src\lib.rs:6811:31
     |
6811 |                     if let Ok(iv_bytes) = hex::decode(parts[3]) {
     |                               ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_iv_bytes`

warning: unused variable: `description`
    --> runtime\src\lib.rs:8147:33
     |
8147 | pub extern "C" fn js_symbol_new(description: f64) -> f64 {
     |                                 ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_description`

warning: unused variable: `spec`
    --> runtime\src\lib.rs:8313:9
     |
8313 |     let spec = get_string(specifier).unwrap_or_default();
     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_spec`

warning: irrefutable `if let` pattern
    --> runtime\src\lib.rs:9282:8
     |
9282 |     if let Ok(dt) = chrono::Local::now().format(&chrono_format).to_string().parse() {
     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     |
     = note: this pattern will always match, so the `if let` is useless
     = help: consider replacing the `if let` with a `let`
     = note: `#[warn(irrefutable_let_patterns)]` on by default

warning: unused variable: `hwnd`
    --> runtime\src\lib.rs:9427:17
     |
9427 |             let hwnd = CreateWindowExW(0, class_name.as_ptr(), title_wide.as_ptr(),
     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_hwnd`

error[E0133]: call to unsafe function `PostQuitMessage` is unsafe and requires unsafe function or block
    --> runtime\src\lib.rs:9551:37
     |
9468 |         unsafe {
     |         ------ items do not inherit unsafety from separate enclosing items
...
9551 |                         0x0002 => { PostQuitMessage(0); return 0; }
     |                                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
     |
     = note: consult the function's documentation for information on how to avoid undefined behavior

error[E0384]: cannot assign twice to immutable variable `idx`
    --> runtime\src\lib.rs:9537:45
     |
9533 | ...                   let idx = (cmd_id - 1001) as i32;
     |                           --- first assignment to `idx`
...
9537 | ...                               idx = (idx - (_mid - 1001) as i32) - 1; break;
     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot assign twice to immutable variable
     |
help: consider making this binding mutable
     |
9533 |                                 let mut idx = (cmd_id - 1001) as i32;
     |                                     +++

warning: variable `last_mid` is assigned to, but never used
    --> runtime\src\lib.rs:9502:49
     |
9502 | ...                   let mut last_mid = 1000u32;
     |                           ^^^^^^^^^^^^
     |
     = note: consider using `_last_mid` instead

warning: value assigned to `last_mid` is never read
    --> runtime\src\lib.rs:9505:49
     |
9505 | ...                   last_mid = mid;
     |                       ^^^^^^^^^^^^^^
     |
     = help: maybe it is overwritten before being read?
     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default

Some errors have detailed explanations: E0015, E0133, E0384, E0425, E0428, E0432, E0599.
For more information about an error, try `rustc --explain E0015`.
warning: `tsn-runtime` (lib) generated 74 warnings
error: could not compile `tsn-runtime` (lib) due to 8 previous errors; 74 warnings emitted
