docs(rust): refresh migration boundary
Document that the frame epilogue, produced-output flush policy, and gzip codec leaf now execute in Rust. Narrow the remaining C-owned list to the generic compression state machine, MT scheduling/outer flush orchestration, and the xz/lzma/lz4 codec leaves so the README remains an accurate progress boundary. Test Plan: - git diff --cached --check
This commit is contained in:
+9
-7
@@ -99,8 +99,9 @@ zstd ABI:
|
|||||||
- `zstd_cli` owns the Rust parser, safety policy, and dispatch. It is built
|
- `zstd_cli` owns the Rust parser, safety policy, and dispatch. It is built
|
||||||
by the separate `cli/` static-library package only for program archives,
|
by the separate `cli/` static-library package only for program archives,
|
||||||
so library builds do not acquire program-only dependencies. The C
|
so library builds do not acquire program-only dependencies. The C
|
||||||
`fileio` layer retains format-specific codec callbacks and metadata, while
|
`fileio` layer retains the remaining format-specific codec callbacks and
|
||||||
Rust owns the mixed-format probe/dispatch loop. Rust already owns the file
|
metadata, while Rust owns the mixed-format probe/dispatch loop and gzip
|
||||||
|
codec leaf. Rust already owns the file
|
||||||
preference policy, filename decisions, source/destination opening,
|
preference policy, filename decisions, source/destination opening,
|
||||||
dictionary buffers, asynchronous I/O pools, and pass-through copy leaf.
|
dictionary buffers, asynchronous I/O pools, and pass-through copy leaf.
|
||||||
- `timefn` provides the monotonic nanosecond clock behind `UTIL_time_t`,
|
- `timefn` provides the monotonic nanosecond clock behind `UTIL_time_t`,
|
||||||
@@ -112,11 +113,12 @@ zstd ABI:
|
|||||||
feature, because the parser layer requires the C `fileio` backend that
|
feature, because the parser layer requires the C `fileio` backend that
|
||||||
tests do not compile.
|
tests do not compile.
|
||||||
|
|
||||||
High-level frame-compression orchestration, multithreaded job scheduling and
|
Generic high-level frame-compression state-machine orchestration,
|
||||||
flush orchestration, and several format-specific CLI codec paths are still C.
|
multithreaded job scheduling and the remaining outer flush orchestration, and
|
||||||
They must move before the rewrite is complete. Keeping that boundary explicit
|
the xz/lzma/lz4 CLI codec paths are still C. The frame epilogue, produced-output
|
||||||
prevents a passing hybrid build from being mistaken for the final all-Rust
|
flush policy, and gzip codec leaf now run in Rust. The remaining C paths must
|
||||||
result.
|
move before the rewrite is complete. Keeping that boundary explicit prevents
|
||||||
|
a passing hybrid build from being mistaken for the final all-Rust result.
|
||||||
|
|
||||||
## Legacy decoding
|
## Legacy decoding
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user