Skip to content

liblzma->xz#7756

Merged
youknowone merged 1 commit into
RustPython:mainfrom
youknowone:xz
Jun 3, 2026
Merged

liblzma->xz#7756
youknowone merged 1 commit into
RustPython:mainfrom
youknowone:xz

Conversation

@youknowone

@youknowone youknowone commented May 1, 2026

Copy link
Copy Markdown
Member

Summary by CodeRabbit

  • Chores
    • Updated LZMA compression library dependencies to newer implementations for enhanced compatibility and performance.

@coderabbitai

coderabbitai Bot commented May 1, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

Pull request was closed or merged during review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 858f4ac4-ab53-4c67-896a-6114da343ae9

📥 Commits

Reviewing files that changed from the base of the PR and between 8e35cc9 and c79d78e.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (3)
  • Cargo.toml
  • crates/stdlib/Cargo.toml
  • crates/stdlib/src/lzma.rs

📝 Walkthrough

Walkthrough

This PR migrates LZMA compression backend from liblzma/liblzma-sys to xz/xz-sys across workspace and stdlib manifests, then updates the LZMA module FFI bindings to use the new sys crate's stream types, constants, and exposed functions.

Changes

LZMA backend migration from liblzma to xz

Layer / File(s) Summary
Dependency declaration migration
Cargo.toml, crates/stdlib/Cargo.toml
Workspace and crate-specific dependencies replace liblzma/liblzma-sys at version 0.4 with xz/xz-sys at version 0.4.6-rc.0.
Backend implementation wiring
crates/stdlib/src/lzma.rs
Module imports are switched from liblzma_sys to xz_sys and xz::stream; exposed Python constants (filter IDs, check IDs, mode IDs, match-finder constants) are updated to reference the new sys crate, default parameter constants use xz_sys values, and FFI calls like is_check_supported() now invoke xz_sys::lzma_check_is_supported().

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Suggested reviewers

  • fanninpm

Poem

🐰 From liblzma we did hop away,
To xz crates, bright and new!
Constants mapped, FFI calls ring true,
Compression bound in a fresher way. 🎯

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 33.33% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'liblzma->xz' directly and concisely describes the main change: replacing liblzma/liblzma-sys dependencies with xz/xz-sys across Cargo.toml files and the lzma.rs module.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@youknowone youknowone force-pushed the xz branch 2 times, most recently from 0421d15 to 7593c31 Compare May 4, 2026 12:22
@youknowone youknowone marked this pull request as ready for review June 3, 2026 15:17
@youknowone youknowone changed the title xz liblzma->xz Jun 3, 2026
@youknowone youknowone enabled auto-merge (squash) June 3, 2026 15:18
@youknowone youknowone disabled auto-merge June 3, 2026 15:18
@youknowone youknowone merged commit f43ae46 into RustPython:main Jun 3, 2026
25 of 26 checks passed
@youknowone youknowone deleted the xz branch June 3, 2026 15:18
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