Tags give the ability to mark specific points in history as being important
-
v0.1.0-alpha
aeed1287 · ·OxideUtils v0.1.0-alpha First public alpha of OxideUtils, a memory-safe Rust reimplementation of the classic GNU binutils userland tool surface (Zainium Dynamics). Behavioural reference is binutils 2.46.1 for QA comparison only — no GNU code is linked and this is not a GNU project. Included in this build: - 14-crate workspace: objdump, nm, readelf, size, strings, ar, strip, objcopy, addr2line, cxxfilt, elfedit, and oxideutils-core (dual std/no_std, usable from a no_std kernel context). - A real, scope-limited oxide-as / oxide-ld x86_64 assembler and ELF64 linker, verified end-to-end against real glibc: assembled, linked (static and dynamic via PLT/GOT), and executed real binaries, including .init_array/.fini_array symbol synthesis, initial-exec TLS, SSE/SSE2 float encoding, and a macro/conditional assembly preprocessor. - x86/x86_64 disassembly via iced-x86; early AArch64 decode via bad64, with an explicit hex-fallback rather than a silent guess when real decode isn't available. - oxide-ar create/list/delete round-trip with a symbol index. - GitLab CI: build, test, clippy/fmt gate, fuzz scaffold, benchmarks. Why "alpha": this is a working foundation, not a GNU drop-in yet. Known gaps (full detail in CHANGELOG.md and docs/AUDIT-REPORT-BINUTILS-2.46.1.md): - strip/objcopy: ELF32 strip can silently no-op; ELF64 strip lacks a full validation pass. Do not use as a default system strip/objcopy. - Disassembly: only x86_64 has full real-decode confidence. - readelf: versym, compressed-section detail, SFrame, and GOT depth are partial. - PE / Mach-O / Wasm support is stub/summary-level only. - oxide-as/oxide-ld: x86_64-only, no lazy PLT, no GOT-relative data imports, no full TLS/IFUNC matrix, no AVX/x87. - Golden/integration test coverage vs a real binutils 2.46.1 tree is still thin. Build health at this tag: cargo fmt --check clean, cargo clippy --workspace --all-targets 0 warnings, cargo test --workspace all passing. See CHANGELOG.md and ROADMAP.md for the full picture and the path to a non-alpha v0.1.0.