diff --git a/Cargo.lock b/Cargo.lock index eb8a397..5550d9d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -66,9 +66,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.50" +version = "1.2.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f50d563227a1c37cc0a263f64eca3334388c01c5e4c4861a9def205c614383c" +checksum = "7a0aeaff4ff1a90589618835a598e545176939b97874f7abc7851caa0618f203" dependencies = [ "find-msvc-tools", "shlex", @@ -163,9 +163,9 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "find-msvc-tools" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" +checksum = "645cbb3a84e60b7531617d5ae4e57f7e27308f6445f5abf653209ea76dec8dff" [[package]] name = "foldhash" @@ -222,17 +222,7 @@ dependencies = [ ] [[package]] -name = "indexmap" -version = "2.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" -dependencies = [ - "equivalent", - "hashbrown 0.16.1", -] - -[[package]] -name = "irsdk" +name = "ibt" version = "0.1.0" dependencies = [ "aligned-vec", @@ -248,11 +238,21 @@ dependencies = [ "thiserror", ] +[[package]] +name = "indexmap" +version = "2.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" +dependencies = [ + "equivalent", + "hashbrown 0.16.1", +] + [[package]] name = "itoa" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ee5b5339afb4c41626dde77b7a611bd4f2c202b897852b4bcf5d03eddc61010" +checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" [[package]] name = "js-sys" @@ -339,9 +339,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.103" +version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +checksum = "9695f8df41bb4f3d222c95a67532365f569318332d03d5f3f67f37b20e6ebdf0" dependencies = [ "unicode-ident", ] @@ -363,9 +363,9 @@ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ryu" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62049b2877bf12821e8f9ad256ee38fdc31db7387ec2d3b3f403024de2034aea" +checksum = "a50f4cf475b65d88e057964e0e9bb1f0aa9bbb2036dc65c64596b42932536984" [[package]] name = "saphyr" @@ -428,9 +428,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.111" +version = "2.0.112" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" +checksum = "21f182278bf2d2bcb3c88b1b08a37df029d71ce3d3ae26168e3c653b213b99d4" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 844f8f2..8deb446 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,24 +1,29 @@ -[package] -name = "irsdk" -version = "0.1.0" +[workspace] +resolver = "3" +members = ["crates/ibt"] + +[workspace.package] edition = "2024" +rust-version = "1.85.0" +repository = "https://github.com/igneousflock/irsdk-rs" +license = "MIT" +keywords = ["iracing", "ibt", "irsdk"] +categories = ["encodings"] -[dependencies] -aligned-vec = "0.6.4" -bit-iter = "1.3.1" -bytemuck = { version = "1.24.0", features = ["derive", "extern_crate_alloc"] } -chrono = "0.4.42" -indexmap = "2.12.1" -num_enum = "0.7.5" +[workspace.dependencies] +aligned-vec = "0.6" +bit-iter = "1.3" +bytemuck = "1.24" +chrono = "0.4" +indexmap = "2.12" +num_enum = "0.7" saphyr = "0.0.6" -serde = { version = "1.0.228", features = ["derive"] } -thiserror = "2.0.17" - -[dev-dependencies] -claims = "0.8.0" -csv = "1.4.0" +serde = "1.0" +thiserror = "2.0" +claims = "0.8" +csv = "1.4" -[lints.clippy] +[workspace.lints.clippy] cloned_instead_of_copied = "warn" copy_iterator = "warn" dbg_macro = "warn" diff --git a/crates/ibt/Cargo.toml b/crates/ibt/Cargo.toml new file mode 100644 index 0000000..ea54da6 --- /dev/null +++ b/crates/ibt/Cargo.toml @@ -0,0 +1,28 @@ +[package] +name = "ibt" +version = "0.1.0" +edition.workspace = true +rust-version.workspace = true +repository.workspace = true +license.workspace = true +keywords.workspace = true +categories.workspace = true + +[lints] +workspace = true + +[dependencies] +aligned-vec.workspace = true +bit-iter.workspace = true +bytemuck = { workspace = true, features = ["derive", "extern_crate_alloc"] } +chrono.workspace = true +indexmap.workspace = true +num_enum.workspace = true +saphyr.workspace = true +serde = { workspace = true, features = ["derive"] } +thiserror.workspace = true + +[dev-dependencies] +claims = "0.8.0" +csv = "1.4.0" + diff --git a/examples/dump_bitfield.rs b/crates/ibt/examples/dump_bitfield.rs similarity index 97% rename from examples/dump_bitfield.rs rename to crates/ibt/examples/dump_bitfield.rs index cae4b6f..ee76083 100644 --- a/examples/dump_bitfield.rs +++ b/crates/ibt/examples/dump_bitfield.rs @@ -1,4 +1,4 @@ -use irsdk::{ +use ibt::{ IbtFile, telemetry::{Value, VarType}, }; diff --git a/examples/dump_file.rs b/crates/ibt/examples/dump_file.rs similarity index 94% rename from examples/dump_file.rs rename to crates/ibt/examples/dump_file.rs index 78fcd66..7155bee 100644 --- a/examples/dump_file.rs +++ b/crates/ibt/examples/dump_file.rs @@ -1,4 +1,4 @@ -use irsdk::IbtFile; +use ibt::IbtFile; fn main() { let file_name = std::env::args() diff --git a/examples/dump_session_string.rs b/crates/ibt/examples/dump_session_string.rs similarity index 96% rename from examples/dump_session_string.rs rename to crates/ibt/examples/dump_session_string.rs index 96e5488..e453e77 100644 --- a/examples/dump_session_string.rs +++ b/crates/ibt/examples/dump_session_string.rs @@ -1,4 +1,4 @@ -use irsdk::IbtFile; +use ibt::IbtFile; use saphyr::YamlEmitter; fn main() { diff --git a/examples/dump_var.rs b/crates/ibt/examples/dump_var.rs similarity index 95% rename from examples/dump_var.rs rename to crates/ibt/examples/dump_var.rs index 5424c78..11f5e9d 100644 --- a/examples/dump_var.rs +++ b/crates/ibt/examples/dump_var.rs @@ -1,4 +1,4 @@ -use irsdk::IbtFile; +use ibt::IbtFile; const USAGE: &str = "Usage: dump_var "; diff --git a/examples/list_available_vars.rs b/crates/ibt/examples/list_available_vars.rs similarity index 95% rename from examples/list_available_vars.rs rename to crates/ibt/examples/list_available_vars.rs index 8b32ae7..ac15151 100644 --- a/examples/list_available_vars.rs +++ b/crates/ibt/examples/list_available_vars.rs @@ -1,5 +1,5 @@ use csv::Writer; -use irsdk::IbtFile; +use ibt::IbtFile; fn main() { let file_name = std::env::args() diff --git a/src/aligned.rs b/crates/ibt/src/aligned.rs similarity index 100% rename from src/aligned.rs rename to crates/ibt/src/aligned.rs diff --git a/src/file.rs b/crates/ibt/src/file.rs similarity index 100% rename from src/file.rs rename to crates/ibt/src/file.rs diff --git a/src/lib.rs b/crates/ibt/src/lib.rs similarity index 100% rename from src/lib.rs rename to crates/ibt/src/lib.rs diff --git a/src/raw.rs b/crates/ibt/src/raw.rs similarity index 100% rename from src/raw.rs rename to crates/ibt/src/raw.rs diff --git a/src/telemetry/bitfields.rs b/crates/ibt/src/telemetry/bitfields.rs similarity index 100% rename from src/telemetry/bitfields.rs rename to crates/ibt/src/telemetry/bitfields.rs diff --git a/src/telemetry/enums.rs b/crates/ibt/src/telemetry/enums.rs similarity index 100% rename from src/telemetry/enums.rs rename to crates/ibt/src/telemetry/enums.rs diff --git a/src/telemetry/headers.rs b/crates/ibt/src/telemetry/headers.rs similarity index 100% rename from src/telemetry/headers.rs rename to crates/ibt/src/telemetry/headers.rs diff --git a/src/telemetry/mod.rs b/crates/ibt/src/telemetry/mod.rs similarity index 100% rename from src/telemetry/mod.rs rename to crates/ibt/src/telemetry/mod.rs diff --git a/src/telemetry/sample.rs b/crates/ibt/src/telemetry/sample.rs similarity index 100% rename from src/telemetry/sample.rs rename to crates/ibt/src/telemetry/sample.rs diff --git a/src/telemetry/var.rs b/crates/ibt/src/telemetry/var.rs similarity index 100% rename from src/telemetry/var.rs rename to crates/ibt/src/telemetry/var.rs diff --git a/src/test_utils.rs b/crates/ibt/src/test_utils.rs similarity index 100% rename from src/test_utils.rs rename to crates/ibt/src/test_utils.rs diff --git a/test-data/raw_header b/crates/ibt/test-data/raw_header similarity index 100% rename from test-data/raw_header rename to crates/ibt/test-data/raw_header diff --git a/test-data/raw_sub_header b/crates/ibt/test-data/raw_sub_header similarity index 100% rename from test-data/raw_sub_header rename to crates/ibt/test-data/raw_sub_header diff --git a/test-data/raw_var_header b/crates/ibt/test-data/raw_var_header similarity index 100% rename from test-data/raw_var_header rename to crates/ibt/test-data/raw_var_header