Skip to content

Upgrade pylance to 8.0.0; blob-table compaction now works#11

Merged
FANNG1 merged 1 commit into
mainfrom
pylance-8-upgrade
Jul 6, 2026
Merged

Upgrade pylance to 8.0.0; blob-table compaction now works#11
FANNG1 merged 1 commit into
mainfrom
pylance-8-upgrade

Conversation

@FANNG1

@FANNG1 FANNG1 commented Jul 6, 2026

Copy link
Copy Markdown
Owner

Summary

pylance 8.0.0 (released 2026-07-01) ships the fix for lance-format/lance#7071 — compaction of blob v2 tables (what daft-lance blob_columns writes, i.e. both asset tables) previously failed inside lance's decoder. Verified in isolated envs before upgrading: both the minimal pure-pylance repro and a daft-lance-written table with null blobs now compact correctly, with blobs readable afterwards.

Changes

  • Pin pylance>=8.0.0 (7.0.0 → 8.0.0; daft-lance/lance-ray resolve cleanly).
  • manage.py: compaction is no longer best-effort. The try/except + [warn] downgrade existed only because blob tables could not be compacted; deletion-triggered compaction failures should be loud again. The explicit compaction_options={} stays — that works around a separate lance-ray 0.4.x defect (lance-format/lance-ray#5224, fix pending in #5225).
  • Tests: local_ray (hermetic local cluster) promoted to tests/conftest.py (module-scoped) and attached to every test reaching Ray via compact_files, since delete_by_date hard-depends on Ray again. New test_delete_and_compact_blob_table compacts a daft-lance-written blob v2 table — a regression test that raises on pylance 7.x.
  • README: the "blob tables cannot be compacted" known limitation is replaced by the pylance ≥ 8.0.0 requirement; verified-versions table bumped.

Testing

pytest tests/ -q          55 passed, 1 deselected   (includes the new blob compaction test)
pytest tests/ -q -m ray   1 passed

Note: may conflict trivially with the media-workflow-reorg branch in README; whichever merges second rebases.

pylance 8.0.0 ships the fix for lance-format/lance#7071 (blob v2
tables failed to compact inside the decoder), verified against both
the minimal repro and a daft-lance-written table with null blobs.

- Pin pylance>=8.0.0.
- manage.py: compaction is no longer best-effort — the try/except
  added when blob tables could not be compacted is removed. The
  explicit compaction_options={} stays: that works around a separate
  lance-ray 0.4.x defect (lance-format/lance-ray#5224).
- Promote the hermetic local_ray fixture to tests/conftest.py and
  attach it to every test that reaches Ray through compact_files,
  since delete_by_date once again hard-depends on Ray.
- Add test_delete_and_compact_blob_table: regression test compacting
  a daft-lance-written blob v2 table — raises on pylance 7.x.
- README: replace the "blob tables cannot be compacted" limitation
  with the version requirement; bump verified pylance version.
@FANNG1 FANNG1 merged commit 4e7f9d0 into main Jul 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant