Files
Senbei/Cargo.toml
T
Momoko-Ayase f80749ffd6 Merge bfloat16-senbei workspace restructure, bump to 1.1.0
Adopts the fork's workspace split (senbei-cli / senbei-crypto / senbei-io /
senbei-metadata / senbei-pe), its structured error taxonomy, entry-transform
and layout validation, PE32 dd8 key-formula selection with a skip floor, the
CRT entry-stub dd8 oracle, and the extensionless-file scan skip.

Kept from senbei on top of the restructure:
- ManagedExe detection/routing and the CLR (COR20 + BSJB) metadata restore
  in the EXE pipeline.
- The RET+int3 padding fingerprint as the primary dd8 padding signal, ahead
  of the mutated-position 0xCC fallback.
- docs/, .github/, samples/, tests/ (moved to senbei-cli/tests), and the
  web/ wasm frontend (rewired to the split crates), all of which the fork
  had dropped.
- The fork's README compatibility matrix is not taken: it names real games,
  which the public-repo hygiene rules forbid.
- The wasm32 localtime fallback in logfile and unpack_bytes_force_exe (the
  web app's trap-recovery entry point), both lost in the restructure.

Golden corpus: 35/35 byte-identical. clippy -D warnings clean; wasm32 check
clean for the full workspace.
2026-08-30 22:31:21 +08:00

43 lines
872 B
TOML

[workspace]
members = [
"senbei-cli",
"senbei-crypto",
"senbei-io",
"senbei-metadata",
"senbei-pe",
]
default-members = ["senbei-cli"]
# The wasm frontend is its own crate (own Cargo.lock, cdylib) and stays outside
# the workspace.
exclude = ["web"]
resolver = "2"
[workspace.package]
version = "1.1.0"
edition = "2024"
license = "AGPL-3.0-only"
[workspace.dependencies]
anyhow = "1"
indicatif = "0.18"
libc = "0.2"
owo-colors = "4"
tempfile = "3"
thiserror = "2"
walkdir = "2"
windows = { version = "0.62", features = [
"Win32_Foundation",
"Win32_System_Console",
"Win32_System_SystemInformation",
] }
senbei-crypto = { path = "senbei-crypto" }
senbei-io = { path = "senbei-io" }
senbei-metadata = { path = "senbei-metadata" }
senbei-pe = { path = "senbei-pe" }
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true