Skip to content

Commit f172d58

Browse files
authored
feat(file): make Footer::new public (#8602)
## Rationale for this change `vortex-file` already exposes everything needed to write a Vortex file without the bundled `VortexWriteOptions::write` driver — the `SegmentSink` trait, `accumulate_stats`, `FileStatistics`, `FooterSerializer`, etc. are all public — *except* the final step of constructing the `Footer`. `Footer::new` is `pub(crate)`, so downstream code that drives the layout/segment-write pipeline directly (e.g. a custom `LayoutStrategy` paired with a custom `SegmentSink`) has to either fork the crate or re-implement the writer inside it just to assemble the footer. This closes that single gap. ## What changes are included in this PR? - Change `Footer::new` from `pub(crate)` to `pub`. No behavioral change and no new dependencies. `cargo check` and `cargo fmt --check` pass locally. ## What APIs are changed? Are there any user-facing changes? One additive, non-breaking change: `vortex_file::Footer::new` is now public. Nothing else changes. --- **AI assistance disclosure:** prepared with an agentic AI coding assistant (Claude Code), per the project's AI policy. The author reviewed the change and verification steps. Signed-off-by: Tobias Humig <tobias@firebolt.io>
1 parent 9567467 commit f172d58

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

vortex-file/src/footer/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ pub struct Footer {
5050
}
5151

5252
impl Footer {
53-
pub(crate) fn new(
53+
pub fn new(
5454
root_layout: LayoutRef,
5555
segments: Arc<[SegmentSpec]>,
5656
statistics: Option<FileStatistics>,

0 commit comments

Comments
 (0)