Skip to content

refactor: make encoding mechanisms version-free - #8021

Draft
Xuanwo wants to merge 3 commits into
xuanwo/exact-version-stack-03-v1from
xuanwo/exact-version-stack-04-encoding-mechanisms
Draft

refactor: make encoding mechanisms version-free#8021
Xuanwo wants to merge 3 commits into
xuanwo/exact-version-stack-03-v1from
xuanwo/exact-version-stack-04-encoding-mechanisms

Conversation

@Xuanwo

@Xuanwo Xuanwo commented Jul 27, 2026

Copy link
Copy Markdown
Collaborator

Part 4/12 of #7877. Depends on #8020.

This is an independently reviewable step toward the final layout demonstrated in #7979.

This PR separates reusable encoding mechanisms from file-version composition. lance-encoding exposes array-encoding, structural encoding, decoding, and compression mechanisms without selecting a file version. Exact V2.1, V2.2, and V2.3 modules in lance-file own their compression and encoding composition instead.

The goal is to make algorithm changes local and reusable while keeping the choice of algorithms isolated by exact file version. This removes the old previous encoding namespace and does not add a parallel compression abstraction.

Validation:

  • cargo clippy --all --tests --benches -- -D warnings
  • encoding benchmarks compile
  • exact-version compatibility fixtures remain unchanged

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-encoding Encoding, IO, file reader/writer

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant