Skip to content

test: extend file format version matrices to include 2.2#6036

Merged
Xuanwo merged 4 commits intomainfrom
xuanwo/file-format-v2-2-regression-coverage
Feb 27, 2026
Merged

test: extend file format version matrices to include 2.2#6036
Xuanwo merged 4 commits intomainfrom
xuanwo/file-format-v2-2-regression-coverage

Conversation

@Xuanwo
Copy link
Copy Markdown
Collaborator

@Xuanwo Xuanwo commented Feb 27, 2026

This PR adds file format 2.2 to existing 2.0/2.1 version coverage matrices across Python and Rust test/benchmark paths.


Parts of this PR were drafted with assistance from Codex (with gpt-5.3-codex) and fully reviewed and edited by me. I take full responsibility for all changes.

@github-actions
Copy link
Copy Markdown
Contributor

PR Review

This PR extends test coverage for file format 2.2 across Python and Rust test/benchmark suites. The changes are straightforward additions to existing version matrices.

P1 Issue: Incorrect min_version in BasicTypes2_2

In python/python/tests/compat/test_file_formats.py:

@compat_test(min_version="2.0.0")
class BasicTypes2_2(UpgradeDowngradeTest):

The min_version="2.0.0" appears incorrect. Looking at the pattern:

  • BasicTypes2_1 uses min_version="0.38.0" (when format 2.1 became stable)
  • The library is currently at 0.x.x versioning

With min_version="2.0.0", this test would never execute since no such library version exists yet. This should be set to the Lance version where file format 2.2 became stable.

Verification

  • The LanceFileVersion::V2_2 enum variant already exists in rust/lance-encoding/src/version.rs
  • The version number mapping V2_2 => (2, 2) matches the Python test expectation in test_version

Automated review by Claude

@codecov
Copy link
Copy Markdown

codecov Bot commented Feb 27, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown
Member

@westonpace westonpace left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't have to do it now but by the time 2.3 rolls around we probably just want a file_format_versions function in python that returns a list of all the versions so we don't have to repeat ourselves all over.

@Xuanwo Xuanwo merged commit 4d563c1 into main Feb 27, 2026
29 checks passed
@Xuanwo Xuanwo deleted the xuanwo/file-format-v2-2-regression-coverage branch February 27, 2026 14:37
wjones127 pushed a commit to wjones127/lance that referenced this pull request Mar 4, 2026
…t#6036)

This PR adds file format `2.2` to existing `2.0/2.1` version coverage
matrices across Python and Rust test/benchmark paths.


---

**Parts of this PR were drafted with assistance from Codex (with
`gpt-5.3-codex`) and fully reviewed and edited by me. I take full
responsibility for all changes.**
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants