Title: Implement PEP 784 - Adding Zstandard to the Python standard library · Issue #132983 · python/cpython · GitHub
Open Graph Title: Implement PEP 784 - Adding Zstandard to the Python standard library · Issue #132983 · python/cpython
X Title: Implement PEP 784 - Adding Zstandard to the Python standard library · Issue #132983 · python/cpython
Description: Feature or enhancement This is a tracking issue for implementing PEP 784. See the PEP text for more details. Since the diff is significant (~10k lines) I wanted to split up the PRs a bit. Implementation Plan: Add compression module just ...
Open Graph Description: Feature or enhancement This is a tracking issue for implementing PEP 784. See the PEP text for more details. Since the diff is significant (~10k lines) I wanted to split up the PRs a bit. Implement...
X Description: Feature or enhancement This is a tracking issue for implementing PEP 784. See the PEP text for more details. Since the diff is significant (~10k lines) I wanted to split up the PRs a bit. Implement...
Opengraph URL: https://github.com/python/cpython/issues/132983
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Implement PEP 784 - Adding Zstandard to the Python standard library","articleBody":"# Feature or enhancement\n\nThis is a tracking issue for implementing [PEP 784](https://peps.python.org/pep-0784/). See the PEP text for more details.\n\nSince the diff is significant (~10k lines) I wanted to split up the PRs a bit.\n\n### Implementation Plan:\n\n- [x] Add `compression` module just re-exporting existing compression modules. Move the `_compression` module.\n- [x] Add `_zstd` native module with Unix build config\n- [x] Add Windows build config for `_zstd` ~~(blocked on adding `libzstd` to cpython-source-deps) and SBOM config.~~\n- [x] Add `zstd` Python module with tests\n- [x] add NEWS/What's New section\n- [x] Add documentation for `zstd`\n- [x] Decide on whether or not to check parameter types for options\n- [x] Verify style conformance of C and Python code\n - [x] Python\n - [x] C\n- [x] Refactor `_train_dict` and `_finalize_dict` to share common code\n- [x] Fix https://github.com/python/cpython/issues/133885\n- [x] Improve error message when `options` value can't be converted to int\n\n\u003c!-- gh-linked-prs --\u003e\n### Linked PRs\n* gh-133018\n* gh-133027\n* gh-133063\n* gh-133076\n* gh-133086\n* gh-133185\n* gh-133282\n* gh-133365\n* gh-133366\n* gh-133479\n* gh-133495\n* gh-133502\n* gh-133535\n* gh-133547\n* gh-133550\n* gh-133565\n* gh-133629\n* gh-133670\n* gh-133674\n* gh-133694\n* gh-133695\n* gh-133723\n* gh-133736\n* gh-133756\n* gh-133757\n* gh-133762\n* gh-133775\n* gh-133784\n* gh-133785\n* gh-133786\n* gh-133788\n* gh-133791\n* gh-133792\n* gh-133793\n* gh-133799\n* gh-133854\n* gh-133856\n* gh-133857\n* gh-133859\n* gh-133860\n* gh-133911\n* gh-133915\n* gh-133921\n* gh-133924\n* gh-133947\n* gh-133950\n* gh-133962\n* gh-133974\n* gh-134001\n* gh-134230\n* gh-134305\n* gh-134425\n* gh-134432\n* gh-134442\n* gh-134459\n* gh-134463\n* gh-134601\n* gh-134602\n* gh-134605\n* gh-134609\n* gh-134723\n* gh-134838\n* gh-134930\n* gh-134998\n* gh-136617\n* gh-137052\n* gh-137320\n* gh-137321\n* gh-137343\n* gh-137360\n\u003c!-- /gh-linked-prs --\u003e\n","author":{"url":"https://github.com/emmatyping","@type":"Person","name":"emmatyping"},"datePublished":"2025-04-26T00:55:59.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":24},"url":"https://github.com/132983/cpython/issues/132983"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:62f66ab3-7d01-0bd0-8318-fadff71fec86 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | CB9E:38004D:2E56CF:3DD16D:6969C1D0 |
| html-safe-nonce | 407d91fb4a285a5a201ea804fc72c8069d256fc66d02ba6a5276fecd16eff8a8 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQjlFOjM4MDA0RDoyRTU2Q0Y6M0REMTZEOjY5NjlDMUQwIiwidmlzaXRvcl9pZCI6IjgzNTkzNTc1NDM2MTA5NTgyODgiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 5a93fdcb6de56651fc368cc094d54e94903398759c3c3355d4452825964094be |
| hovercard-subject-tag | issue:3021300364 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/python/cpython/132983/issue_layout |
| twitter:image | https://opengraph.githubassets.com/bb866c53208a19d7a09678560aa1e43bf97c89baa83eca949202eb902f12f808/python/cpython/issues/132983 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/bb866c53208a19d7a09678560aa1e43bf97c89baa83eca949202eb902f12f808/python/cpython/issues/132983 |
| og:image:alt | Feature or enhancement This is a tracking issue for implementing PEP 784. See the PEP text for more details. Since the diff is significant (~10k lines) I wanted to split up the PRs a bit. Implement... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | emmatyping |
| hostname | github.com |
| expected-hostname | github.com |
| None | acedec8b5f975d9e3d494ddd8f949b0b8a0de59d393901e26f73df9dcba80056 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 83c08c21cdda978090dc44364b71aa5bc6dcea79 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width