Skip to content

gh-132983: Introduce _zstd bindings module - #133027

Merged
gpshead merged 59 commits into
python:mainfrom
emmatyping:3.14-zstd-c-code
May 4, 2025
Merged

gpshead merged 59 commits into
python:mainfrom
emmatyping:3.14-zstd-c-code

Conversation

@emmatyping

@emmatyping emmatyping commented Apr 26, 2025 •

Copy link
Copy Markdown
Member

This is part 2 (but parallel to part 1) for implementing PEP 784. This is probably the meat of the implementation making up ~half of the LOC in the overall diff.

This change:

  • Adds the pyzstd license, since this is the first code introduced based on pyzstd
  • Adds the code for the _zstd module in Modules/_zstd. Tests will be included when the Python compression.zstd module is added. If people think the tests should be included, I can merge the compression.zstd changes into the PR, but I wanted to separate them to make the PRs a bit more manageable.
  • Adds unix build changes (Windows requires changes in cpython-source-deps and will be added in a follow-up PR)

I added skip news as I'd like to write a holistic NEWS/What's New entry once the entire implementation has landed. If people think each PR should have NEWS I can write something up.

TODO before merge:

  • try running tests on top of this branch
  • format PEP 7 style
  • run buildbots on this PR
  • verify _zstd gets installed

📚 Documentation preview 📚: https://cpython-previews--133027.org.readthedocs.build/

Loading
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.

10 participants