From 029d62cb53f769710397b0711f9e2c7f59a2c41d Mon Sep 17 00:00:00 2001 From: shadow cat Date: Tue, 25 Nov 2025 15:00:07 -0500 Subject: [PATCH] debug stuff + switch to cranelift --- Cargo.toml | 5 +++++ src/bin/client/debug.rs | 28 ++++++++++++++++++++++++++++ src/bin/client/main.rs | 8 ++++++-- 3 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 src/bin/client/debug.rs diff --git a/Cargo.toml b/Cargo.toml index 1c71021..edc4fe1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,3 +1,5 @@ +cargo-features = ["codegen-backend"] + [package] name = "openworm" version = "0.1.0" @@ -27,5 +29,8 @@ path = "src/bin/client/main.rs" name = "openworm-server" path = "src/bin/server/main.rs" +[profile.dev] +codegen-backend = "cranelift" + [profile.dev.package."*"] opt-level = 1 diff --git a/src/bin/client/debug.rs b/src/bin/client/debug.rs new file mode 100644 index 0000000..8d9d728 --- /dev/null +++ b/src/bin/client/debug.rs @@ -0,0 +1,28 @@ +use openworm::net::Msg; + +use crate::Client; + +pub fn debug(_client: &mut Client) { + // let mut file = std::fs::OpenOptions::new() + // .write(true) + // .create(true) + // .truncate(true) + // .open("./old_msgs") + // .unwrap(); + // bincode::encode_into_std_write( + // self.msgs.clone(), + // &mut file, + // openworm::net::BINCODE_CONFIG, + // ) + // .unwrap(); + let mut file = std::fs::OpenOptions::new() + .read(true) + .open("./old_msgs") + .unwrap(); + let msgs: Vec = + bincode::decode_from_std_read(&mut file, openworm::net::BINCODE_CONFIG).unwrap(); + for msg in msgs { + println!("{msg:?}"); + } + // client.ui.debug_layers(); +} diff --git a/src/bin/client/main.rs b/src/bin/client/main.rs index edf1065..d4d4146 100644 --- a/src/bin/client/main.rs +++ b/src/bin/client/main.rs @@ -11,7 +11,7 @@ use arboard::Clipboard; use input::Input; use iris::prelude::*; use openworm::{ - net::{ClientMsg, ServerMsg, install_crypto_provider}, + net::{ClientMsg, Msg, ServerMsg, install_crypto_provider}, rsc::DataDir, }; use render::Renderer; @@ -23,6 +23,7 @@ use winit::{ }; mod app; +mod debug; mod input; mod net; mod render; @@ -52,6 +53,7 @@ pub struct Client { data: ClientData, handle: AppHandle, error: Option>, + msgs: Vec, ime: usize, last_click: Instant, } @@ -81,6 +83,7 @@ impl Client { error: None, ime: 0, last_click: Instant::now(), + msgs: Vec::new(), }; ui::init(&mut s); s @@ -103,6 +106,7 @@ impl Client { ServerMsg::LoadMsgs(msgs) => { if let Some(msg_area) = &self.channel { for msg in msgs { + self.msgs.push(msg.clone()); let msg = msg_widget(msg).add(&mut self.ui); self.ui[msg_area].children.push(msg.any()); } @@ -182,7 +186,7 @@ impl Client { button: MouseButton::Middle, .. } => { - // self.ui.debug_layers(); + debug::debug(self); } WindowEvent::Ime(ime) => { if let Some(sel) = &self.focus {