diff --git a/common/supply-chain/audits.toml b/common/supply-chain/audits.toml index ce0c1e6..fe9d6df 100644 --- a/common/supply-chain/audits.toml +++ b/common/supply-chain/audits.toml @@ -6,12 +6,6 @@ who = "Felipe Balbi " criteria = "safe-to-run" version = "0.1.0" -[[audits.embedded-mcu-hal]] -who = "Felipe Balbi " -criteria = "safe-to-deploy" -version = "0.1.0@git:6956ebdaf9d3725959dae2c57c2ab6baefae9330" -importable = false - [[audits.supports-unicode]] who = "Felipe Balbi " criteria = "safe-to-deploy" diff --git a/common/supply-chain/config.toml b/common/supply-chain/config.toml index d4b7dda..5fa4d0c 100644 --- a/common/supply-chain/config.toml +++ b/common/supply-chain/config.toml @@ -22,9 +22,6 @@ url = "https://raw.githubusercontent.com/mozilla/supply-chain/main/audits.toml" [imports.zcash] url = "https://raw.githubusercontent.com/zcash/rust-ecosystem/main/supply-chain/audits.toml" -[policy.embedded-mcu-hal] -audit-as-crates-io = true - [[exemptions.addr2line]] version = "0.25.1" criteria = "safe-to-deploy" @@ -57,34 +54,10 @@ criteria = "safe-to-deploy" version = "0.3.76" criteria = "safe-to-deploy" -[[exemptions.bincode]] -version = "2.0.1" -criteria = "safe-to-deploy" - -[[exemptions.bitfield]] -version = "0.17.0" -criteria = "safe-to-deploy" - -[[exemptions.bitfield]] -version = "0.19.4" -criteria = "safe-to-deploy" - -[[exemptions.bitfield-macros]] -version = "0.19.4" -criteria = "safe-to-deploy" - -[[exemptions.bitfield-struct]] -version = "0.10.1" -criteria = "safe-to-deploy" - [[exemptions.bitflags]] version = "2.11.0" criteria = "safe-to-deploy" -[[exemptions.bitvec]] -version = "1.0.1" -criteria = "safe-to-deploy" - [[exemptions.cassowary]] version = "0.3.0" criteria = "safe-to-deploy" @@ -93,10 +66,6 @@ criteria = "safe-to-deploy" version = "0.2.4" criteria = "safe-to-deploy" -[[exemptions.cfg-if]] -version = "1.0.4" -criteria = "safe-to-deploy" - [[exemptions.clap]] version = "4.6.0" criteria = "safe-to-deploy" @@ -165,66 +134,10 @@ criteria = "safe-to-deploy" version = "0.23.0" criteria = "safe-to-deploy" -[[exemptions.deranged]] -version = "0.5.8" -criteria = "safe-to-deploy" - -[[exemptions.embassy-futures]] -version = "0.1.2" -criteria = "safe-to-deploy" - -[[exemptions.embassy-sync]] -version = "0.7.2" -criteria = "safe-to-deploy" - -[[exemptions.embassy-time]] -version = "0.5.1" -criteria = "safe-to-deploy" - -[[exemptions.embassy-time-driver]] -version = "0.2.2" -criteria = "safe-to-deploy" - -[[exemptions.embedded-hal]] -version = "1.0.0" -criteria = "safe-to-deploy" - -[[exemptions.embedded-hal-async]] -version = "1.0.0" -criteria = "safe-to-deploy" - -[[exemptions.embedded-io-async]] -version = "0.6.1" -criteria = "safe-to-deploy" - [[exemptions.eyre]] version = "0.6.12" criteria = "safe-to-deploy" -[[exemptions.funty]] -version = "2.0.0" -criteria = "safe-to-deploy" - -[[exemptions.futures-core]] -version = "0.3.32" -criteria = "safe-to-deploy" - -[[exemptions.futures-sink]] -version = "0.3.32" -criteria = "safe-to-deploy" - -[[exemptions.hash32]] -version = "0.3.1" -criteria = "safe-to-deploy" - -[[exemptions.hashbrown]] -version = "0.15.2" -criteria = "safe-to-deploy" - -[[exemptions.heapless]] -version = "0.8.0" -criteria = "safe-to-deploy" - [[exemptions.indenter]] version = "0.3.4" criteria = "safe-to-deploy" @@ -269,10 +182,6 @@ criteria = "safe-to-deploy" version = "0.4.15" criteria = "safe-to-deploy" -[[exemptions.litrs]] -version = "1.0.0" -criteria = "safe-to-deploy" - [[exemptions.lock_api]] version = "0.4.14" criteria = "safe-to-deploy" @@ -285,10 +194,6 @@ criteria = "safe-to-deploy" version = "0.4.3" criteria = "safe-to-deploy" -[[exemptions.matchers]] -version = "0.2.0" -criteria = "safe-to-deploy" - [[exemptions.memchr]] version = "2.8.0" criteria = "safe-to-deploy" @@ -305,30 +210,10 @@ criteria = "safe-to-deploy" version = "0.4.3" criteria = "safe-to-deploy" -[[exemptions.nu-ansi-term]] -version = "0.50.3" -criteria = "safe-to-deploy" - -[[exemptions.num-conv]] -version = "0.2.1" -criteria = "safe-to-deploy" - -[[exemptions.num_enum]] -version = "0.7.6" -criteria = "safe-to-deploy" - -[[exemptions.num_enum_derive]] -version = "0.7.6" -criteria = "safe-to-deploy" - [[exemptions.object]] version = "0.37.3" criteria = "safe-to-deploy" -[[exemptions.once_cell]] -version = "1.21.4" -criteria = "safe-to-deploy" - [[exemptions.once_cell_polyfill]] version = "1.70.2" criteria = "safe-to-deploy" @@ -349,30 +234,6 @@ criteria = "safe-to-deploy" version = "1.0.10" criteria = "safe-to-deploy" -[[exemptions.pin-project-lite]] -version = "0.2.17" -criteria = "safe-to-deploy" - -[[exemptions.portable-atomic]] -version = "1.13.1" -criteria = "safe-to-deploy" - -[[exemptions.powerfmt]] -version = "0.2.0" -criteria = "safe-to-deploy" - -[[exemptions.proc-macro2]] -version = "1.0.106" -criteria = "safe-to-deploy" - -[[exemptions.quote]] -version = "1.0.45" -criteria = "safe-to-deploy" - -[[exemptions.radium]] -version = "0.7.0" -criteria = "safe-to-deploy" - [[exemptions.ratatui]] version = "0.29.0" criteria = "safe-to-deploy" @@ -393,10 +254,6 @@ criteria = "safe-to-deploy" version = "0.4.14" criteria = "safe-to-deploy" -[[exemptions.regex-syntax]] -version = "0.8.10" -criteria = "safe-to-deploy" - [[exemptions.rustc-demangle]] version = "0.1.27" criteria = "safe-to-deploy" @@ -429,10 +286,6 @@ criteria = "safe-to-deploy" version = "1.4.8" criteria = "safe-to-deploy" -[[exemptions.stable_deref_trait]] -version = "1.2.1" -criteria = "safe-to-deploy" - [[exemptions.subenum]] version = "1.1.3" criteria = "safe-to-deploy" @@ -445,10 +298,6 @@ criteria = "safe-to-deploy" version = "0.33.1" criteria = "safe-to-deploy" -[[exemptions.sysinfo]] -version = "0.38.4" -criteria = "safe-to-deploy" - [[exemptions.thiserror]] version = "2.0.18" criteria = "safe-to-deploy" @@ -461,18 +310,6 @@ criteria = "safe-to-deploy" version = "0.3.47" criteria = "safe-to-deploy" -[[exemptions.time-core]] -version = "0.1.8" -criteria = "safe-to-deploy" - -[[exemptions.time-macros]] -version = "0.2.27" -criteria = "safe-to-deploy" - -[[exemptions.tokio]] -version = "1.42.0" -criteria = "safe-to-deploy" - [[exemptions.tokio]] version = "1.52.0" criteria = "safe-to-deploy" @@ -481,30 +318,10 @@ criteria = "safe-to-deploy" version = "2.7.0" criteria = "safe-to-deploy" -[[exemptions.tracing]] -version = "0.1.44" -criteria = "safe-to-deploy" - -[[exemptions.tracing-attributes]] -version = "0.1.31" -criteria = "safe-to-deploy" - -[[exemptions.tracing-core]] -version = "0.1.36" -criteria = "safe-to-deploy" - [[exemptions.tracing-error]] version = "0.2.1" criteria = "safe-to-deploy" -[[exemptions.tracing-log]] -version = "0.2.0" -criteria = "safe-to-deploy" - -[[exemptions.tracing-subscriber]] -version = "0.3.23" -criteria = "safe-to-deploy" - [[exemptions.tui-input]] version = "0.14.0" criteria = "safe-to-deploy" @@ -513,22 +330,10 @@ criteria = "safe-to-deploy" version = "0.1.8" criteria = "safe-to-deploy" -[[exemptions.unicode-ident]] -version = "1.0.24" -criteria = "safe-to-deploy" - -[[exemptions.unicode-segmentation]] -version = "1.13.2" -criteria = "safe-to-deploy" - [[exemptions.unicode-truncate]] version = "1.1.0" criteria = "safe-to-deploy" -[[exemptions.unty]] -version = "0.0.4" -criteria = "safe-to-deploy" - [[exemptions.wasi]] version = "0.11.1+wasi-snapshot-preview1" criteria = "safe-to-deploy" @@ -585,10 +390,6 @@ criteria = "safe-to-deploy" version = "0.2.0" criteria = "safe-to-deploy" -[[exemptions.windows-result]] -version = "0.57.0" -criteria = "safe-to-deploy" - [[exemptions.windows-strings]] version = "0.1.0" criteria = "safe-to-deploy" @@ -640,15 +441,3 @@ criteria = "safe-to-deploy" [[exemptions.windows_x86_64_msvc]] version = "0.52.6" criteria = "safe-to-deploy" - -[[exemptions.wyz]] -version = "0.5.1" -criteria = "safe-to-deploy" - -[[exemptions.zerocopy]] -version = "0.8.48" -criteria = "safe-to-deploy" - -[[exemptions.zerocopy-derive]] -version = "0.8.48" -criteria = "safe-to-deploy" diff --git a/common/supply-chain/imports.lock b/common/supply-chain/imports.lock index 9252872..d37f192 100644 --- a/common/supply-chain/imports.lock +++ b/common/supply-chain/imports.lock @@ -1,6 +1,13 @@ # cargo-vet imports lock +[[publisher.unicode-segmentation]] +version = "1.13.2" +when = "2026-03-26" +user-id = 1139 +user-login = "Manishearth" +user-name = "Manish Goregaokar" + [[publisher.unicode-width]] version = "0.1.14" when = "2024-09-19" @@ -15,12 +22,6 @@ user-id = 1139 user-login = "Manishearth" user-name = "Manish Goregaokar" -[[audits.OpenDevicePartnership.audits.aquamarine]] -who = "Robert Zieba " -criteria = "safe-to-deploy" -version = "0.6.0" -aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" - [[audits.OpenDevicePartnership.audits.bare-metal]] who = "Felipe Balbi " criteria = "safe-to-deploy" @@ -33,6 +34,27 @@ criteria = "safe-to-deploy" version = "0.13.2" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/mcxa-pac/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.bitfield]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.13.2 -> 0.15.0" +notes = "Delta audit: BitRange/Bit traits split into read-only and mutable variants (BitRangeMut/BitMut); added mask constant generation; clippy fixes; MSRV bump. No unsafe, no build script, no proc macros, no powerful imports. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.bitfield]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.15.0 -> 0.17.0" +notes = "Delta: adds bitwise op derives, constructor derives, arbitrary visibility. Pure declarative macros. No unsafe, no build script. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.bitfield-struct]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.10.1" +notes = "Proc-macro crate generating safe bitfield structs. No unsafe, no build script. Standard proc-macro deps only. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + [[audits.OpenDevicePartnership.audits.bitfield-struct]] who = "matteotullo " criteria = "safe-to-deploy" @@ -40,6 +62,20 @@ delta = "0.10.1 -> 0.12.1" notes = "Adds hash and bitenum derives, mostly parsing and refactoring changes. No code execution nor writing to the filesystem." aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.cfg-if]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "1.0.0 -> 1.0.3" +notes = "Delta 1.0.0->1.0.3: formatting/readability refactor of macro identifiers, removed compiler_builtins dep, updated CI. No unsafe, no build script, no imports. Pure macro_rules crate. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.cfg-if]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "1.0.3 -> 1.0.4" +notes = "Delta 1.0.3->1.0.4: macro refactored from two top-level rules to one using optional else syntax, fragment specifiers changed from :meta to :tt to support cfg(true)/cfg(false), internal helper renamed from @__identity to @__temp_group with added comment. MSRV 1.32 declared. No unsafe, no build script, no proc macros, no imports. Pure no_std macro_rules crate. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + [[audits.OpenDevicePartnership.audits.cortex-m]] who = "Felipe Balbi " criteria = "safe-to-deploy" @@ -52,6 +88,63 @@ criteria = "safe-to-deploy" version = "1.2.0" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/mcxa-pac/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.embassy-executor-timer-queue]] +who = "Felipe Balbi " +criteria = "safe-to-deploy" +version = "0.1.0" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embassy-imxrt/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-futures]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.1.2" +notes = "no_std future combinators. All unsafe is pin-projection and no-op RawWaker - reviewed and sound. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-sync]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.8.0" +notes = "no_std async sync primitives. Substantial unsafe for UnsafeCell-based interiors and Send/Sync impls -- all reviewed and sound, guarded by RawMutex/critical_section. Build script only reads TARGET env var. No proc macros, no powerful imports. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-time]] +who = "Felipe Balbi " +criteria = "safe-to-deploy" +version = "0.5.0" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/tps6699x/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-time]] +who = "Billy Price " +criteria = "safe-to-deploy" +delta = "0.5.0 -> 0.5.1" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-time-driver]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.2.1" +notes = "no_std driver trait for embassy-time. Minimal unsafe for extern Rust FFI calls (sound via links key). Empty build.rs. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-time-driver]] +who = "Billy Price " +criteria = "safe-to-deploy" +delta = "0.2.1 -> 0.2.2" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-time-queue-utils]] +who = "Felipe Balbi " +criteria = "safe-to-deploy" +version = "0.3.0" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embassy-imxrt/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embassy-time-queue-utils]] +who = "Felipe Balbi " +criteria = "safe-to-deploy" +delta = "0.3.0 -> 0.3.2" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embassy-imxrt/refs/heads/main/supply-chain/audits.toml" + [[audits.OpenDevicePartnership.audits.embedded-batteries]] who = "matteotullo " criteria = "safe-to-deploy" @@ -72,47 +165,235 @@ criteria = "safe-to-deploy" version = "1.0.0" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.embedded-fans]] +who = "Kurtis Dinelle " +criteria = "safe-to-deploy" +version = "0.1.0" +notes = "ODP crates are always trusted." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-fans-async]] +who = "Kurtis Dinelle " +criteria = "safe-to-deploy" +version = "0.2.0" +notes = "ODP crates are always trusted." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + [[audits.OpenDevicePartnership.audits.embedded-hal]] who = "Felipe Balbi " criteria = "safe-to-deploy" version = "0.2.7" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/mcxa-pac/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.embedded-hal]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.2.7 -> 1.0.0" +notes = "Pure no_std trait crate. Complete API redesign for 1.0: removed nb-based traits, CAN module, all unsafe code. Only defines traits/enums/types for digital, I2C, SPI, PWM, delay. No build script, no proc macros, no powerful imports. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-hal-async]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "1.0.0" +notes = "no_std async HAL trait definitions. No unsafe in library. Build script only runs rustc --version. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-io]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.6.1 -> 0.7.1" +notes = "Add core::error::Error trait bound (MSRV 1.81). defmt 0.3->1.0. Implement ReadReady/WriteReady for slices and VecDeque. Add seek_relative(). Fix method forwardings. Trusted publisher (Dirbaio from Embedded WG)." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embassy-imxrt/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-io-async]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.6.1" +notes = "No unsafe. Build script only detects nightly via rustc --version. Pure async trait definitions for embedded I/O. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-io-async]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.6.1 -> 0.7.0" +notes = "Delta 0.6.1->0.7.0: No unsafe. Build script removed (AFIT now stable). flush() made required, BufRead requires Read, new VecDeque impls. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-mcu-hal]] +who = "Felipe Balbi " +criteria = "safe-to-deploy" +version = "0.2.0" +notes = " Additionally, this is ODP owned crate." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-mcu/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-mcu-hal]] +who = "Felipe Balbi " +criteria = "safe-to-deploy" +delta = "0.2.0 -> 0.3.0" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-mcu/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-sensors-hal]] +who = "Kurtis Dinelle " +criteria = "safe-to-deploy" +version = "0.1.0" +notes = "ODP crates are always trusted." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-sensors-hal]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.0 -> 0.1.1" +notes = "Delta audit: #![forbid(unsafe_code)] and #![no_std] remain enforced. No build script (build=false). Changes: defmt dep bumped 0.3.7->1.0.0, added paste dep for identifier concatenation, added assert_approx_eq dev-dep. New decl_threshold_traits! declarative macro generates blocking ThresholdSet/Hysteresis traits (and async ThresholdWait variant). Temperature and humidity modules invoke the macro and add comprehensive tests. Doc example fixes (crate name, struct typo). Typo fixes in ErrorKind Display impl. No unsafe code, no proc macros, no filesystem/network/process access. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.embedded-sensors-hal-async]] +who = "Kurtis Dinelle " +criteria = "safe-to-deploy" +version = "0.3.0" +notes = "ODP crates are always trusted." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.futures-core]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.3.31 -> 0.3.32" +notes = "Delta audit: version bump, Cargo.toml cosmetic reorder, AtomicWaker correctness fix (fetch_and to swap for cleaner state transition), ready! macro doc update. No new unsafe code, no build script, no proc macros, no powerful imports. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.futures-sink]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.3.31 -> 0.3.32" +notes = "No source code changes, only Cargo.toml metadata reordering. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.hash32]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.3.1" +notes = "no_std 32-bit hashing (FNV, MurmurHash3). ~10 unsafe blocks in murmur3.rs for MaybeUninit buffer handling - all sound. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.hashbrown]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.13.2 -> 0.14.5" +notes = "SwissTable hash map delta. Major changes: allocator refactored out of RawTableInner, new InsertSlot type, NEON SIMD for aarch64, allocator-api2 integration, new HashTable API, strict provenance. Extensive unsafe reviewed for soundness. No build script, no proc macros, no powerful imports. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.heapless]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "0.9.2" +notes = "no_std fixed-capacity data structures. Extensive unsafe for MaybeUninit buffers, lock-free queues (Vyukov MPMC, SPSC), Treiber stack pools with ABA prevention (CAS tagged pointers + ARM LLSC). All Send/Sync bounds verified correct. Build script probes for ARM LLSC. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.heapless]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.9.2 -> 0.9.3" +notes = "Delta 0.9.2->0.9.3: Fixes unsoundness in Deque/HistoryBuf/IndexMap::clear when Drop panics (Guard pattern). Adds CString conversions (into_string, into_bytes, from_bytes_truncating_at_nul), Deque::pop_front_if/pop_back_if, const Vec::from_array. New transmute_copy in as_len_type is sound (closed type enum). Pointer-cast cleanups. Assisted-by: copilot-cli:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + [[audits.OpenDevicePartnership.audits.heck]] who = "Matteo Tullo " criteria = "safe-to-deploy" version = "0.4.1" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" -[[audits.OpenDevicePartnership.audits.include_dir]] -who = "Robert Zieba " +[[audits.OpenDevicePartnership.audits.litrs]] +who = "Jerry Xie " criteria = "safe-to-deploy" -version = "0.7.4" +delta = "0.4.1 -> 0.4.2" +notes = "Delta 0.4.1->0.4.2: Bug fixes for non-ASCII byte string escapes, removes CR LF normalization to align with spec, fixes error span for out-of-range Unicode escapes. No unsafe code, no build script, no powerful imports. Assisted-by: copilot-cli:claude-opus-4.6" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" -[[audits.OpenDevicePartnership.audits.include_dir_macros]] -who = "Robert Zieba " +[[audits.OpenDevicePartnership.audits.litrs]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.4.2 -> 1.0.0" +notes = "Delta 0.4.2->1.0.0: Adds C string literal support (CStringLit), marks Literal enum #[non_exhaustive], removes proc-macro2 from default features, bumps MSRV to 1.56, changes num_hashes from u32 to u8 with 256 max, changes Buffer::Cow/ByteCow for String to owned types (String/Vec) instead of Cow<'static,...>. Refactors escape internals: replaces Escapee trait with Unescape enum and EscapeContainer trait, moves span offset responsibility to callers. Adds nul byte checking for C strings. No unsafe code, no build script, no proc macros, no powerful imports. Pure parsing library. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.matchers]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.0 -> 0.2.0" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.nu-ansi-term]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.46.0 -> 0.50.1" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.num_enum]] +who = "Billy Price " +criteria = "safe-to-deploy" +version = "0.7.5" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embassy-imxrt/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.num_enum]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.7.5 -> 0.7.6" +notes = "Version bump with test infrastructure updates. No unsafe code, no build script, no powerful imports. Purely additive test changes." +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.num_enum_derive]] +who = "Billy Price " criteria = "safe-to-deploy" -version = "0.7.4" +version = "0.7.5" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embassy-imxrt/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.num_enum_derive]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.7.5 -> 0.7.6" +notes = "Minor update adding byte literal support for enum discriminants. No unsafe code, no build script, no powerful imports." aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" -[[audits.OpenDevicePartnership.audits.itertools]] +[[audits.OpenDevicePartnership.audits.once_cell]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +version = "1.20.1" +notes = "Single-assignment cells and lazy values. All unsafe reviewed: UnsafeCell access, Send/Sync impls, atomic waiter queue, strict provenance polyfill - all sound with correct bounds. No build script, no proc macros, no powerful imports beyond std::thread/atomic. Assisted-by: copilot-chat:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.once_cell]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "1.21.3 -> 1.21.4" +notes = "Delta: soundness fix for OnceCell::wait under parking_lot feature. The wait() in imp_pl.rs now wraps parking_lot_core::park in a while loop re-checking COMPLETE state, preventing uninitialized memory observation when concurrent get_or_try_init panics. Remaining changes: doc cfg guards, doc typo fix, new tests. No new unsafe, no build script, no proc macros, no new imports. Assisted-by: copilot-chat:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.pin-project-lite]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.2.16 -> 0.2.17" +notes = "Delta audit: no unsafe code, no build script, no proc macros, no powerful imports. Changes are cosmetic only: updated clippy lint suppressions, doc comment formatting, test stderr updates for newer compiler messages. No functional changes to macro logic. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.portable-atomic]] who = "Robert Zieba " criteria = "safe-to-deploy" -version = "0.10.5" +version = "1.11.1" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" -[[audits.OpenDevicePartnership.audits.proc-macro-error-attr2]] -who = "Felipe Balbi " +[[audits.OpenDevicePartnership.audits.portable-atomic]] +who = "Jerry Xie " criteria = "safe-to-deploy" -version = "2.0.0" -aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/mcxa-pac/refs/heads/main/supply-chain/audits.toml" +delta = "1.11.1 -> 1.13.1" +notes = "Delta audit: three minor releases (1.12.0, 1.13.0, 1.13.1). New unsafe-assume-privileged feature for multi-core interrupt-disable fallback. SeqCst sequential consistency fix in lock-based fallback. x86_64 VMOVDQA detection simplified to AVX check. Arm support expanded to all 32-bit targets. PowerPC64 asm stabilized. Major interrupt module refactoring to RAII guard pattern. All unsafe changes reviewed: sound. No new ambient capabilities. Assisted-by: copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" -[[audits.OpenDevicePartnership.audits.proc-macro-error2]] -who = "Felipe Balbi " +[[audits.OpenDevicePartnership.audits.regex-syntax]] +who = "Jerry Xie " criteria = "safe-to-deploy" -version = "2.0.1" -aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/mcxa-pac/refs/heads/main/supply-chain/audits.toml" +delta = "0.8.5 -> 0.8.10" +notes = "Delta audit: crate uses #![forbid(unsafe_code)], no build.rs, no proc macros, no powerful imports. Changes are cosmetic: inline format args migration, typo fixes in comments/docs, switched docsrs cfg to docsrs_regex, added Cargo include list, deleted shell test script, minor test additions for negated unicode property classes. No security-relevant changes. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" [[audits.OpenDevicePartnership.audits.rustc_version]] who = "Felipe Balbi " @@ -164,6 +445,72 @@ criteria = "safe-to-deploy" version = "1.0.1" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.stable_deref_trait]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "1.2.0 -> 1.2.1" +notes = """ +Delta audit: metadata-only Cargo.toml changes (license format, explicit lib section). +src/lib.rs adds new unsafe impl StableDeref for Cow types - all sound since Cow::deref() +returns a stable heap or borrowed address across moves. Arc import and impls now correctly +gated behind target_has_atomic=ptr. No build script, no proc macros, no powerful imports. +Assisted-by: copilot-chat:claude-opus-4.6 +""" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.41 -> 0.1.44" +notes = "Delta audit: one new unsafe (FieldName::as_str using str::from_utf8_unchecked) — sound because private field is only constructed from const fn new() which processes &str input by removing r#, preserving UTF-8 validity; compile-time assert guards N. No build script (build=false). No proc macros. No powerful imports (fs/net/process). Key changes: valueset! macro split into valueset!/valueset_all! to fix record_all panic (#3432); FieldName added for raw identifier support; stdlib.rs removed in favor of #![no_std] + extern crate std; lifetime elision cleanup; doc fixes; MSRV 1.63→1.65. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing-attributes]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.28 -> 0.1.30" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing-attributes]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.30 -> 0.1.31" +notes = "Delta audit 0.1.30->0.1.31: Proc macro crate. Adds support for constant expression field names in #[instrument(fields(...))] via new FieldName::Expr variant. No unsafe code. No build script. No new dependencies. No filesystem/network/process access. Removes dead code (AsyncTraitBlockReplacer). Generated code is safe - wraps user expressions in braces for tracing span fields. Comprehensive tests added. Assisted-by: copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing-core]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.33 -> 0.1.34" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing-core]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.34 -> 0.1.36" +notes = "Delta audit: major refactor replacing crate::stdlib shim with direct alloc::/core::/std:: imports and unconditional #![no_std]. Removed stdlib.rs, added sync.rs (extracted Mutex wrapper). New Values::All enum variant for efficient ValueSet construction (value_set_all, #[doc(hidden)]). Two downcast_raw calls wrapped in unsafe blocks (sound - type ID checked first). No new unsafe patterns, no build script, no proc macros, no filesystem/network access. No new dependencies. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing-log]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.1.3 -> 0.2.0" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.tracing-subscriber]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.3.20 -> 0.3.23" +notes = "Delta audit of tracing-subscriber 0.3.20->0.3.23. Changes: (1) no_std support refactoring - imports moved from std to alloc/core, unconditional #![no_std] with extern crate std gated on feature; (2) ANSI sanitization made configurable via with_ansi_sanitization(bool), defaulting to true (secure default preserved); (3) Escape renamed to EscapeGuard with conditional sanitize flag; (4) downcast_raw calls wrapped in unsafe blocks to match trait signature change in tracing-core 0.1.35 - all call sites forward to existing safe implementations; (5) Registry enter/exit simplified - removes clone_span on enter and try_close on exit for performance; (6) Layered now propagates on_register_dispatch to inner+layer; (7) Doc fixes and test improvements. No new filesystem/network/process access. No build script. No proc macros. Unsafe changes are mechanical wrapping of existing downcast_raw calls. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.unicode-ident]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "1.0.18 -> 1.0.24" +notes = "Delta: Unicode 16->17 table data update only. No unsafe, no build.rs, no new deps. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + [[audits.OpenDevicePartnership.audits.uuid]] who = "Jerry Xie " criteria = "safe-to-deploy" @@ -182,6 +529,20 @@ criteria = "safe-to-deploy" version = "0.2.2" aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/mcxa-pac/refs/heads/main/supply-chain/audits.toml" +[[audits.OpenDevicePartnership.audits.zerocopy]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.8.27 -> 0.8.48" +notes = "Delta audit 0.8.27->0.8.48. Large refactor (34K lines, 648 files) but bulk is benchmarks, agent docs, UI test stderr, and CI scripts. Core changes: (1) build.rs inverted cfg logic (emit cfg if version < threshold) with new cfgs for x86 AVX-512 and aarch64 big-endian SIMD - still only reads env vars and emits cargo:rustc-cfg, no I/O. (2) Pointer module refactored cast system from ad-hoc PtrInner::cast into trait-based Project/Cast/CastExact with thorough SAFETY comments. (3) impls.rs simplified atomic/Cell/UnsafeCell transmute patterns, added tuple trait impls up to 26 elements with HasField/ProjectField. (4) Error types gained Clone/PartialEq/Eq impls, field renames. (5) Macros updated for Sized->unsized transmute_ref!/transmute_mut! support. (6) New ReadOnly wrapper type. No new ambient capabilities, no proc macros in this crate. All unsafe code has SAFETY comments citing specific Rust documentation versions. No build script I/O beyond cargo:rustc-cfg. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + +[[audits.OpenDevicePartnership.audits.zerocopy-derive]] +who = "Jerry Xie " +criteria = "safe-to-deploy" +delta = "0.8.27 -> 0.8.48" +notes = "Delta audit. Major refactor into derive/ modules and util.rs. No build.rs. No fs/net in proc-macro. All unsafe in generated code with SAFETY docs. Assisted-by: GitHub Copilot:claude-opus-4.6" +aggregated-from = "https://raw.githubusercontent.com/OpenDevicePartnership/embedded-services/refs/heads/main/supply-chain/audits.toml" + [[audits.bytecode-alliance.audits.allocator-api2]] who = "Chris Fallin " criteria = "safe-to-deploy" @@ -191,6 +552,12 @@ The changes appear to be reasonable updates from Rust's stdlib imported into `allocator-api2`'s copy of this code. """ +[[audits.bytecode-alliance.audits.cfg-if]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +version = "1.0.0" +notes = "I am the author of this crate." + [[audits.bytecode-alliance.audits.embedded-io]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -220,6 +587,27 @@ who = "Dan Gohman " criteria = "safe-to-deploy" delta = "0.3.9 -> 0.3.10" +[[audits.bytecode-alliance.audits.futures-core]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +version = "0.3.27" +notes = "Unsafe used to implement a concurrency primitive AtomicWaker. Well-commented and not obviously incorrect. Like my other audits of these concurrency primitives inside the futures family, I couldn't certify that it is correct without formal methods, but that is out of scope for this vetting." + +[[audits.bytecode-alliance.audits.futures-core]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +delta = "0.3.28 -> 0.3.31" + +[[audits.bytecode-alliance.audits.futures-sink]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +version = "0.3.27" + +[[audits.bytecode-alliance.audits.futures-sink]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +delta = "0.3.28 -> 0.3.31" + [[audits.bytecode-alliance.audits.gimli]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -244,12 +632,34 @@ criteria = "safe-to-deploy" delta = "0.32.0 -> 0.32.3" notes = "Ever more dwarf, it never ends! (nothing out of the ordinary)" +[[audits.bytecode-alliance.audits.hashbrown]] +who = "Chris Fallin " +criteria = "safe-to-deploy" +delta = "0.12.3 -> 0.13.1" +notes = "The diff looks plausible. Much of it is low-level memory-layout code and I can't be 100% certain without a deeper dive into the implementation logic, but nothing looks actively malicious." + +[[audits.bytecode-alliance.audits.hashbrown]] +who = "Trevor Elliott " +criteria = "safe-to-deploy" +delta = "0.13.1 -> 0.13.2" +notes = "I read through the diff between v0.13.1 and v0.13.2, and verified that the changes made matched up with the changelog entries. There were very few changes between these two releases, and it was easy to verify what they did." + +[[audits.bytecode-alliance.audits.hashbrown]] +who = "Chris Fallin " +criteria = "safe-to-deploy" +delta = "0.14.5 -> 0.15.2" + [[audits.bytecode-alliance.audits.heck]] who = "Alex Crichton " criteria = "safe-to-deploy" delta = "0.4.1 -> 0.5.0" notes = "Minor changes for a `no_std` upgrade but otherwise everything looks as expected." +[[audits.bytecode-alliance.audits.matchers]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +version = "0.1.0" + [[audits.bytecode-alliance.audits.miniz_oxide]] who = "Alex Crichton " criteria = "safe-to-deploy" @@ -286,6 +696,30 @@ criteria = "safe-to-deploy" delta = "0.8.5 -> 0.8.9" notes = "No new unsafe code, just refactorings." +[[audits.bytecode-alliance.audits.nu-ansi-term]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +version = "0.46.0" +notes = "one use of unsafe to call windows specific api to get console handle." + +[[audits.bytecode-alliance.audits.nu-ansi-term]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "0.50.1 -> 0.50.3" +notes = "CI changes, Rust changes, nothing out of the ordinary." + +[[audits.bytecode-alliance.audits.num-conv]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "0.2.0 -> 0.2.1" +notes = "Minor update, nothing major" + +[[audits.bytecode-alliance.audits.pin-project-lite]] +who = "Alex Crichton " +criteria = "safe-to-deploy" +delta = "0.2.13 -> 0.2.14" +notes = "No substantive changes in this update" + [[audits.bytecode-alliance.audits.pkg-config]] who = "Pat Hickey " criteria = "safe-to-deploy" @@ -318,13 +752,21 @@ criteria = "safe-to-deploy" version = "1.1.4" notes = "uses unsafe to implement thread local storage of objects" -[[audits.embark-studios.audits.ident_case]] -who = "Johan Andersson " +[[audits.bytecode-alliance.audits.tracing-log]] +who = "Alex Crichton " criteria = "safe-to-deploy" -version = "1.0.1" -notes = "No unsafe usage or ambient capabilities" +version = "0.1.3" +notes = """ +This is a standard adapter between the `log` ecosystem and the `tracing` +ecosystem. There's one `unsafe` block in this crate and it's well-scoped. +""" -[[audits.embark-studios.audits.tap]] +[[audits.bytecode-alliance.audits.tracing-subscriber]] +who = "Pat Hickey " +criteria = "safe-to-deploy" +version = "0.3.17" + +[[audits.embark-studios.audits.ident_case]] who = "Johan Andersson " criteria = "safe-to-deploy" version = "1.0.1" @@ -482,55 +924,239 @@ delta = "1.4.0 -> 1.5.0" notes = "Unsafe review notes: https://crrev.com/c/5650836" aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" -[[audits.google.audits.log]] -who = "danakj " +[[audits.google.audits.log]] +who = "danakj " +criteria = "safe-to-deploy" +version = "0.4.22" +notes = """ +Unsafe review in https://docs.google.com/document/d/1IXQbD1GhTRqNHIGxq6yy7qHqxeO4CwN5noMFXnqyDIM/edit?usp=sharing + +Unsafety is generally very well-documented, with one exception, which we +describe in the review doc. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.log]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "0.4.22 -> 0.4.25" +notes = "No impact on `unsafe` usage in `lib.rs`." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.log]] +who = "Daniel Cheng " +criteria = "safe-to-deploy" +delta = "0.4.25 -> 0.4.26" +notes = "Only trivial code and documentation changes." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.nb]] +who = "George Burgess IV " +criteria = "safe-to-deploy" +version = "1.0.0" +aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" + +[[audits.google.audits.nb]] +who = "George Burgess IV " +criteria = "safe-to-deploy" +delta = "1.0.0 -> 0.1.3" +aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" + +[[audits.google.audits.nb]] +who = "George Burgess IV " +criteria = "safe-to-deploy" +delta = "1.0.0 -> 1.1.0" +aggregated-from = "https://chromium.googlesource.com/chromiumos/third_party/rust_crates/+/refs/heads/main/cargo-vet/audits.toml?format=TEXT" + +[[audits.google.audits.num-traits]] +who = "Manish Goregaokar " +criteria = "safe-to-deploy" +version = "0.2.19" +notes = "Contains a single line of float-to-int unsafe with decent safety comments" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.pin-project-lite]] +who = "David Koloski " +criteria = "safe-to-deploy" +version = "0.2.9" +notes = "Reviewed on https://fxrev.dev/824504" +aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.pin-project-lite]] +who = "David Koloski " +criteria = "safe-to-deploy" +delta = "0.2.9 -> 0.2.13" +notes = "Audited at https://fxrev.dev/946396" +aggregated-from = "https://fuchsia.googlesource.com/fuchsia/+/refs/heads/main/third_party/rust_crates/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +version = "1.0.78" +notes = """ +Grepped for \"crypt\", \"cipher\", \"fs\", \"net\" - there were no hits +(except for a benign \"fs\" hit in a doc comment) + +Notes from the `unsafe` review can be found in https://crrev.com/c/5385745. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Adrian Taylor " +criteria = "safe-to-deploy" +delta = "1.0.78 -> 1.0.79" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Adrian Taylor " +criteria = "safe-to-deploy" +delta = "1.0.79 -> 1.0.80" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Dustin J. Mitchell " +criteria = "safe-to-deploy" +delta = "1.0.80 -> 1.0.81" +notes = "Comment changes only" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "danakj " +criteria = "safe-to-deploy" +delta = "1.0.81 -> 1.0.82" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Dustin J. Mitchell " +criteria = "safe-to-deploy" +delta = "1.0.82 -> 1.0.83" +notes = "Substantive change is replacing String with Box, saving memory." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.83 -> 1.0.84" +notes = "Only doc comment changes in `src/lib.rs`." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "danakj@chromium.org" +criteria = "safe-to-deploy" +delta = "1.0.84 -> 1.0.85" +notes = "Test-only changes." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Lukasz Anforowicz " +criteria = "safe-to-deploy" +delta = "1.0.85 -> 1.0.86" +notes = """ +Comment-only changes in `build.rs`. +Reordering of `Cargo.toml` entries. +Just bumping up the version number in `lib.rs`. +Config-related changes in `test_size.rs`. +""" +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "danakj " +criteria = "safe-to-deploy" +delta = "1.0.86 -> 1.0.87" +notes = "No new unsafe interactions." +aggregated-from = "https://chromium.googlesource.com/chromium/src/+/main/third_party/rust/chromium_crates_io/supply-chain/audits.toml?format=TEXT" + +[[audits.google.audits.proc-macro2]] +who = "Liza Burakova for time_alarm_service_messages::AcpiTimerId { +impl From for time_alarm_service_interface::AcpiTimerId { fn from(arg: TimerIdArg) -> Self { match arg { TimerIdArg::Ac => Self::AcPower, diff --git a/ec/test-cli/src/debug.rs b/ec/test-cli/src/debug.rs index c1772cd..d5cb2ac 100644 --- a/ec/test-cli/src/debug.rs +++ b/ec/test-cli/src/debug.rs @@ -8,7 +8,7 @@ // // They have been upstreamed, but are currently not published to crates.io. -pub struct DebugBstReturn<'a>(pub &'a battery_service_messages::BstReturn); +pub struct DebugBstReturn<'a>(pub &'a battery_service_interface::BstReturn); impl std::fmt::Debug for DebugBstReturn<'_> { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { @@ -21,7 +21,7 @@ impl std::fmt::Debug for DebugBstReturn<'_> { } } -pub struct DebugBixFixedStrings<'a>(pub &'a battery_service_messages::BixFixedStrings); +pub struct DebugBixFixedStrings<'a>(pub &'a battery_service_interface::BixFixedStrings); fn str_from_bytes(bytes: &[u8]) -> &str { core::ffi::CStr::from_bytes_until_nul(bytes) diff --git a/ec/test-lib/Cargo.toml b/ec/test-lib/Cargo.toml index 195758c..bf39ccb 100644 --- a/ec/test-lib/Cargo.toml +++ b/ec/test-lib/Cargo.toml @@ -9,8 +9,10 @@ rust-version.workspace = true [dependencies] uuid = { version = "1.17.0", default-features = false } -time-alarm-service-messages.workspace = true -battery-service-messages.workspace = true +time-alarm-service-interface.workspace = true +time-alarm-service-relay.workspace = true +battery-service-interface.workspace = true +battery-service-relay.workspace = true embedded-mcu-hal = { workspace = true } @@ -30,8 +32,8 @@ scopeguard = { version = "1.2" } # Serial specific serialport = { version = "4.8.1" } smbus-pec = "1.0.1" -embedded-services = { git = "https://github.com/OpenDevicePartnership/embedded-services", branch = "v0.2.0" } -thermal-service-messages = { git = "https://github.com/OpenDevicePartnership/embedded-services", branch = "v0.2.0" } +embedded-services.workspace = true +thermal-service-relay.workspace = true [lints] workspace = true diff --git a/ec/test-lib/src/acpi.rs b/ec/test-lib/src/acpi.rs index 9005dca..3b52bdf 100644 --- a/ec/test-lib/src/acpi.rs +++ b/ec/test-lib/src/acpi.rs @@ -1,9 +1,9 @@ use crate::{BatterySource, ErrorType, RtcSource, ThermalSource, Threshold, common}; -use battery_service_messages::{ - BatteryState, BixFixedStrings, BstReturn, bat_swap_try_from_u32, bat_tech_try_from_u32, power_unit_try_from_u32, +use battery_service_interface::{ + BatteryState, BatterySwapCapability, BatteryTechnology, BixFixedStrings, BstReturn, PowerUnit, }; use scopeguard::defer; -use time_alarm_service_messages::{ +use time_alarm_service_interface::{ AcpiTimerId, AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; use windows::Win32::Devices::DeviceAndDriverInstallation::*; @@ -584,10 +584,11 @@ impl BatterySource for Acpi { } else { Ok(BixFixedStrings { revision: data.arg(0)?.data_32, - power_unit: power_unit_try_from_u32(data.arg(1)?.data_32).map_err(|_| Error::InvalidData)?, + power_unit: PowerUnit::try_from(data.arg(1)?.data_32).map_err(|_| Error::InvalidData)?, design_capacity: data.arg(2)?.data_32, last_full_charge_capacity: data.arg(3)?.data_32, - battery_technology: bat_tech_try_from_u32(data.arg(4)?.data_32).map_err(|_| Error::InvalidData)?, + battery_technology: BatteryTechnology::try_from(data.arg(4)?.data_32) + .map_err(|_| Error::InvalidData)?, design_voltage: data.arg(5)?.data_32, design_cap_of_warning: data.arg(6)?.data_32, design_cap_of_low: data.arg(7)?.data_32, @@ -603,7 +604,7 @@ impl BatterySource for Acpi { serial_number: data.arg(17)?.data.clone().try_into().map_err(|_| Error::InvalidData)?, battery_type: data.arg(18)?.data.clone().try_into().map_err(|_| Error::InvalidData)?, oem_info: data.arg(19)?.data.clone().try_into().map_err(|_| Error::InvalidData)?, - battery_swapping_capability: bat_swap_try_from_u32(data.arg(20)?.data_32) + battery_swapping_capability: BatterySwapCapability::try_from(data.arg(20)?.data_32) .map_err(|_| Error::InvalidData)?, }) } diff --git a/ec/test-lib/src/lib.rs b/ec/test-lib/src/lib.rs index 0c90bdd..381ff2b 100644 --- a/ec/test-lib/src/lib.rs +++ b/ec/test-lib/src/lib.rs @@ -1,7 +1,7 @@ // Multiple source features may be enabled simultaneously; the binary selects one at runtime. -use battery_service_messages::{BixFixedStrings, BstReturn}; -use time_alarm_service_messages::{ +use battery_service_interface::{BixFixedStrings, BstReturn}; +use time_alarm_service_interface::{ AcpiTimerId, AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; diff --git a/ec/test-lib/src/mock.rs b/ec/test-lib/src/mock.rs index 26e0a02..b540970 100644 --- a/ec/test-lib/src/mock.rs +++ b/ec/test-lib/src/mock.rs @@ -1,11 +1,11 @@ use crate::{BatterySource, ErrorType, RtcSource, ThermalSource, Threshold}; -use battery_service_messages::{ +use battery_service_interface::{ BatteryState, BatterySwapCapability, BatteryTechnology, BixFixedStrings, BstReturn, PowerUnit, }; -use embedded_mcu_hal::time::{Datetime, Month, UncheckedDatetime}; +use embedded_mcu_hal::time::{Datetime, DatetimeFields, Month}; use std::sync::Mutex; use std::time::Instant; -use time_alarm_service_messages::{ +use time_alarm_service_interface::{ AcpiDaylightSavingsTimeStatus, AcpiTimeZone, AcpiTimeZoneOffset, AcpiTimerId, AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; @@ -372,7 +372,7 @@ impl MockRtc { fn new() -> Self { Self { time: AcpiTimestamp { - datetime: Datetime::new(UncheckedDatetime { + datetime: Datetime::new(DatetimeFields { year: 2026, month: Month::January, day: 1, diff --git a/ec/test-lib/src/serial.rs b/ec/test-lib/src/serial.rs index 9620c73..39749ef 100644 --- a/ec/test-lib/src/serial.rs +++ b/ec/test-lib/src/serial.rs @@ -1,16 +1,17 @@ use crate::{BatterySource, ErrorType, RtcSource, ThermalSource, Threshold, common}; -use battery_service_messages::{AcpiBatteryRequest, AcpiBatteryResponse, BixFixedStrings, BstReturn, Btp}; +use battery_service_interface::{BixFixedStrings, BstReturn, Btp}; +use battery_service_relay::{AcpiBatteryRequest, AcpiBatteryResponse}; use embedded_services::relay::{MessageSerializationError, SerializableMessage}; use serialport::SerialPort; use std::{ sync::{Arc, Mutex}, time::Duration, }; -use thermal_service_messages::{ThermalRequest, ThermalResponse}; -use time_alarm_service_messages::{ - AcpiTimeAlarmRequest, AcpiTimeAlarmResponse, AcpiTimerId, AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, - TimeAlarmDeviceCapabilities, TimerStatus, +use thermal_service_relay::{ThermalRequest, ThermalResponse}; +use time_alarm_service_interface::{ + AcpiTimerId, AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; +use time_alarm_service_relay::{AcpiTimeAlarmRequest, AcpiTimeAlarmResponse}; /// Errors produced by serial data source operations. #[derive(Debug)] @@ -291,7 +292,7 @@ impl ThermalSource for Serial { let response = self.send(Destination::Thermal, request)?; if let ThermalResponse::ThermalGetTmpResponse { temperature } = response { - Ok(common::dk_to_c(temperature)) + Ok(common::dk_to_c(temperature.0)) } else { Err(Error::UnexpectedResponse) } @@ -334,12 +335,12 @@ impl ThermalSource for Serial { impl BatterySource for Serial { fn get_bst(&self) -> Result { - let request = AcpiBatteryRequest::BatteryGetBstRequest { + let request = AcpiBatteryRequest::GetBst { battery_id: BATTERY_INSTANCE, }; let response = self.send(Destination::Battery, request)?; - if let AcpiBatteryResponse::BatteryGetBstResponse { bst } = response { + if let AcpiBatteryResponse::GetBst { bst } = response { Ok(bst) } else { Err(Error::UnexpectedResponse) @@ -347,12 +348,12 @@ impl BatterySource for Serial { } fn get_bix(&self) -> Result { - let request = AcpiBatteryRequest::BatteryGetBixRequest { + let request = AcpiBatteryRequest::GetBix { battery_id: BATTERY_INSTANCE, }; let response = self.send(Destination::Battery, request)?; - if let AcpiBatteryResponse::BatteryGetBixResponse { bix } = response { + if let AcpiBatteryResponse::GetBix { bix } = response { Ok(bix) } else { Err(Error::UnexpectedResponse) @@ -360,13 +361,13 @@ impl BatterySource for Serial { } fn set_btp(&self, trip_point: u32) -> Result<(), Self::Error> { - let request = AcpiBatteryRequest::BatterySetBtpRequest { + let request = AcpiBatteryRequest::SetBtp { battery_id: BATTERY_INSTANCE, btp: Btp { trip_point }, }; let response = self.send(Destination::Battery, request)?; - if matches!(response, AcpiBatteryResponse::BatterySetBtpResponse {}) { + if matches!(response, AcpiBatteryResponse::SetBtp {}) { Ok(()) } else { Err(Error::UnexpectedResponse) diff --git a/ec/test-script/Cargo.toml b/ec/test-script/Cargo.toml index 6d22551..62b85af 100644 --- a/ec/test-script/Cargo.toml +++ b/ec/test-script/Cargo.toml @@ -14,8 +14,8 @@ rust-version.workspace = true [dependencies] ec-test-lib = { path = "../test-lib" } -time-alarm-service-messages.workspace = true -battery-service-messages.workspace = true +time-alarm-service-interface.workspace = true +battery-service-interface.workspace = true [dev-dependencies] critical-section.workspace = true diff --git a/ec/test-script/src/exec.rs b/ec/test-script/src/exec.rs index 7d24dbb..c916ca2 100644 --- a/ec/test-script/src/exec.rs +++ b/ec/test-script/src/exec.rs @@ -13,9 +13,9 @@ use crate::parser::{Call, Method, Operand, Stmt, Threshold, Verb}; use crate::runner::{Outcome, Runner}; use crate::value::Value; use crate::verbs; -use battery_service_messages::{BixFixedStrings, BstReturn}; +use battery_service_interface::{BixFixedStrings, BstReturn}; use ec_test_lib::{BatterySource, RtcSource, Source, ThermalSource}; -use time_alarm_service_messages::{ +use time_alarm_service_interface::{ AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; @@ -237,7 +237,7 @@ fn wake_status_to_value(s: TimerStatus) -> Value { } fn timestamp_to_value(t: AcpiTimestamp) -> Value { - let unix = t.datetime.to_unix_time_seconds() as f64; + let unix = t.datetime.unix_timestamp() as f64; Value::Struct(vec![ ( "datetime".into(), diff --git a/ec/test-script/src/parser.rs b/ec/test-script/src/parser.rs index a235784..71b9bf9 100644 --- a/ec/test-script/src/parser.rs +++ b/ec/test-script/src/parser.rs @@ -17,7 +17,7 @@ use std::fmt; use std::time::Duration; -use time_alarm_service_messages::AcpiTimerId; +use time_alarm_service_interface::AcpiTimerId; /// Local mirror of [`ec_test_lib::Threshold`] (which is not `Clone`/`Debug`). #[derive(Debug, Clone, Copy)] diff --git a/ec/test-tui/Cargo.toml b/ec/test-tui/Cargo.toml index a0cdb53..abb9807 100644 --- a/ec/test-tui/Cargo.toml +++ b/ec/test-tui/Cargo.toml @@ -8,6 +8,10 @@ authors = ["Phil Weber "] repository.workspace = true rust-version.workspace = true +# Needed to link embassy-time symbols +[package.metadata.cargo-machete] +ignored = ["embassy-time"] + [dependencies] # Async runtime and observability tokio = { version = "1", features = [ @@ -31,13 +35,15 @@ strum = { version = "0.27", default-features = false, features = ["derive"] } tui-input = "0.14.0" # Data type dependencies used by TUI widgets -time-alarm-service-messages.workspace = true +time-alarm-service-interface.workspace = true embedded-mcu-hal.workspace = true -battery-service-messages.workspace = true +battery-service-interface.workspace = true critical-section.workspace = true # EC transport library ec-test-lib = { path = "../test-lib" } +embassy-time.workspace = true + [lints] workspace = true diff --git a/ec/test-tui/src/battery.rs b/ec/test-tui/src/battery.rs index 3108a82..78bebeb 100644 --- a/ec/test-tui/src/battery.rs +++ b/ec/test-tui/src/battery.rs @@ -2,7 +2,9 @@ use crate::common::{self, SYMBOLS, unicode_enabled}; use crate::source::DynSource; use crate::state::{BatteryCommand, BatteryState}; use crate::widgets::battery; -use battery_service_messages::{BatteryState as BatteryStateFlag, BatterySwapCapability, BatteryTechnology, PowerUnit}; +use battery_service_interface::{ + BatteryState as BatteryStateFlag, BatterySwapCapability, BatteryTechnology, PowerUnit, +}; use core::ffi::CStr; use std::sync::mpsc; use tracing::{debug, instrument, warn}; @@ -556,7 +558,7 @@ impl Battery { mod tests { use super::*; use crate::source::DynSource; - use battery_service_messages::{BatterySwapCapability, BatteryTechnology, BixFixedStrings, BstReturn, PowerUnit}; + use battery_service_interface::{BatterySwapCapability, BatteryTechnology, BixFixedStrings, BstReturn, PowerUnit}; use color_eyre::eyre::eyre; // ── test doubles ───────────────────────────────────────────────────────── @@ -600,28 +602,28 @@ mod tests { fn set_rpm(&self, _: f64) -> color_eyre::Result<()> { Err(eyre!("unused")) } - fn get_capabilities(&self) -> color_eyre::Result { + fn get_capabilities(&self) -> color_eyre::Result { Err(eyre!("unused")) } - fn get_real_time(&self) -> color_eyre::Result { + fn get_real_time(&self) -> color_eyre::Result { Err(eyre!("unused")) } fn get_wake_status( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_expired_timer_wake_policy( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_timer_value( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } } @@ -655,28 +657,28 @@ mod tests { fn set_rpm(&self, _: f64) -> color_eyre::Result<()> { Err(eyre!("unused")) } - fn get_capabilities(&self) -> color_eyre::Result { + fn get_capabilities(&self) -> color_eyre::Result { Err(eyre!("unused")) } - fn get_real_time(&self) -> color_eyre::Result { + fn get_real_time(&self) -> color_eyre::Result { Err(eyre!("unused")) } fn get_wake_status( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_expired_timer_wake_policy( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_timer_value( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } } diff --git a/ec/test-tui/src/rtc.rs b/ec/test-tui/src/rtc.rs index 8aa32c9..ccb6b4e 100644 --- a/ec/test-tui/src/rtc.rs +++ b/ec/test-tui/src/rtc.rs @@ -11,7 +11,7 @@ use ratatui::{ text::{Line, Span}, widgets::{Block, Paragraph}, }; -use time_alarm_service_messages::{ +use time_alarm_service_interface::{ AcpiDaylightSavingsTimeStatus, AcpiTimeZone, AcpiTimerId, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, }; @@ -354,11 +354,11 @@ fn format_time(time: Datetime) -> String { #[cfg(test)] mod tests { use super::*; - use embedded_mcu_hal::time::{Month, UncheckedDatetime}; - use time_alarm_service_messages::AcpiTimeZoneOffset; + use embedded_mcu_hal::time::{DatetimeFields, Month}; + use time_alarm_service_interface::AcpiTimeZoneOffset; fn make_datetime(year: u16, month: Month, day: u8, hour: u8, min: u8, sec: u8) -> Datetime { - Datetime::new(UncheckedDatetime { + Datetime::new(DatetimeFields { year, month, day, diff --git a/ec/test-tui/src/source.rs b/ec/test-tui/src/source.rs index cc6898b..972f1b6 100644 --- a/ec/test-tui/src/source.rs +++ b/ec/test-tui/src/source.rs @@ -11,10 +11,10 @@ use std::sync::Arc; -use battery_service_messages::{BixFixedStrings, BstReturn}; +use battery_service_interface::{BixFixedStrings, BstReturn}; use color_eyre::Result; use ec_test_lib::Threshold; -use time_alarm_service_messages::{ +use time_alarm_service_interface::{ AcpiTimerId, AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; diff --git a/ec/test-tui/src/state.rs b/ec/test-tui/src/state.rs index dac673d..9282041 100644 --- a/ec/test-tui/src/state.rs +++ b/ec/test-tui/src/state.rs @@ -1,5 +1,5 @@ -use battery_service_messages::{BixFixedStrings, BstReturn}; -use time_alarm_service_messages::{ +use battery_service_interface::{BixFixedStrings, BstReturn}; +use time_alarm_service_interface::{ AcpiTimestamp, AlarmExpiredWakePolicy, AlarmTimerSeconds, TimeAlarmDeviceCapabilities, TimerStatus, }; diff --git a/ec/test-tui/src/thermal.rs b/ec/test-tui/src/thermal.rs index 7764893..b7b8aa2 100644 --- a/ec/test-tui/src/thermal.rs +++ b/ec/test-tui/src/thermal.rs @@ -554,37 +554,37 @@ mod tests { fn set_rpm(&self, _: f64) -> color_eyre::Result<()> { Ok(()) } - fn get_bst(&self) -> color_eyre::Result { + fn get_bst(&self) -> color_eyre::Result { Err(eyre!("unused")) } - fn get_bix(&self) -> color_eyre::Result { + fn get_bix(&self) -> color_eyre::Result { Err(eyre!("unused")) } fn set_btp(&self, _: u32) -> color_eyre::Result<()> { Err(eyre!("unused")) } - fn get_capabilities(&self) -> color_eyre::Result { + fn get_capabilities(&self) -> color_eyre::Result { Err(eyre!("unused")) } - fn get_real_time(&self) -> color_eyre::Result { + fn get_real_time(&self) -> color_eyre::Result { Err(eyre!("unused")) } fn get_wake_status( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_expired_timer_wake_policy( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_timer_value( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } } @@ -609,37 +609,37 @@ mod tests { fn set_rpm(&self, _: f64) -> color_eyre::Result<()> { Err(eyre!("test error")) } - fn get_bst(&self) -> color_eyre::Result { + fn get_bst(&self) -> color_eyre::Result { Err(eyre!("unused")) } - fn get_bix(&self) -> color_eyre::Result { + fn get_bix(&self) -> color_eyre::Result { Err(eyre!("unused")) } fn set_btp(&self, _: u32) -> color_eyre::Result<()> { Err(eyre!("unused")) } - fn get_capabilities(&self) -> color_eyre::Result { + fn get_capabilities(&self) -> color_eyre::Result { Err(eyre!("unused")) } - fn get_real_time(&self) -> color_eyre::Result { + fn get_real_time(&self) -> color_eyre::Result { Err(eyre!("unused")) } fn get_wake_status( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_expired_timer_wake_policy( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } fn get_timer_value( &self, - _: time_alarm_service_messages::AcpiTimerId, - ) -> color_eyre::Result { + _: time_alarm_service_interface::AcpiTimerId, + ) -> color_eyre::Result { Err(eyre!("unused")) } } diff --git a/ec/test-tui/src/updater.rs b/ec/test-tui/src/updater.rs index 13a0f47..a8814a1 100644 --- a/ec/test-tui/src/updater.rs +++ b/ec/test-tui/src/updater.rs @@ -2,7 +2,7 @@ use std::sync::{Arc, RwLock, mpsc}; use std::time::{Duration, Instant}; use ec_test_lib::Threshold; -use time_alarm_service_messages::AcpiTimerId; +use time_alarm_service_interface::AcpiTimerId; use tracing::{debug, info, trace, warn}; use crate::battery::{poll_bix, poll_bst};