[Storage] Refactor extensions packaging + other misc changes#47092
Open
jalauzon-msft wants to merge 3 commits into
Open
[Storage] Refactor extensions packaging + other misc changes#47092jalauzon-msft wants to merge 3 commits into
jalauzon-msft wants to merge 3 commits into
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR refactors the azure-storage-extensions package layout to introduce a checksums subpackage and updates Azure Storage clients to use the new import path and an ext-checksums extra for installing the native extensions ahead of release.
Changes:
- Add a new
azure.storage.extensions.checksumspackage (includingcrc64extension wiring) and updateazure-storage-extensionspackaging/build config (including dropping Python 3.9). - Add
ext-checksumsextras toazure-storage-blob,azure-storage-file-share, andazure-storage-file-datalaketo pull inazure-storage-extensions. - Update shared validation helpers in storage libraries to import
azure.storage.extensions.checksumsand callchecksums.crc64.compute.
Reviewed changes
Copilot reviewed 15 out of 17 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| sdk/storage/azure-storage-queue/azure/storage/queue/_shared/validation.py | Switch extension presence check and CRC64 calls to azure.storage.extensions.checksums. |
| sdk/storage/azure-storage-file-share/setup.py | Add ext-checksums extra to install azure-storage-extensions. |
| sdk/storage/azure-storage-file-share/azure/storage/fileshare/_shared/validation.py | Update extension import/check and CRC64 usage to checksums subpackage. |
| sdk/storage/azure-storage-file-datalake/setup.py | Add ext-checksums extra to install azure-storage-extensions. |
| sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_shared/validation.py | Update extension import/check and CRC64 usage to checksums subpackage. |
| sdk/storage/azure-storage-extensions/tests/test_crc64.py | Update tests to import CRC64 via azure.storage.extensions.checksums. |
| sdk/storage/azure-storage-extensions/setup.py | Adjust packaging to ship checksums package and build the crc64 extension under it; raise minimum Python to 3.10. |
| sdk/storage/azure-storage-extensions/README.md | Update installation guidance to recommend installing via storage SDK extras and reflect Python 3.10+ support. |
| sdk/storage/azure-storage-extensions/pyproject.toml | Update cibuildwheel build targets to drop CPython 3.9. |
| sdk/storage/azure-storage-extensions/MANIFEST.in | Include native sources/headers and typing artifacts in source distributions. |
| sdk/storage/azure-storage-extensions/azure/storage/extensions/checksums/py.typed | Mark checksums as a typed package. |
| sdk/storage/azure-storage-extensions/azure/storage/extensions/checksums/crc64/helpers.h | Make constants/functions static in header to avoid multiple-definition/linkage issues. |
| sdk/storage/azure-storage-extensions/azure/storage/extensions/checksums/crc64/crc64module.c | Add the C extension module implementation under the new checksums/crc64 path. |
| sdk/storage/azure-storage-extensions/azure/storage/extensions/checksums/crc64.pyi | Provide typing stubs for the crc64 extension module. |
| sdk/storage/azure-storage-extensions/azure/storage/extensions/checksums/init.py | Expose crc64 from the checksums package. |
| sdk/storage/azure-storage-blob/setup.py | Add ext-checksums extra to install azure-storage-extensions. |
| sdk/storage/azure-storage-blob/azure/storage/blob/_shared/validation.py | Update extension import/check and CRC64 usage to checksums subpackage. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This change applies a few changes to
azure-storage-extensionsahead of release:checksumsmodule and convertazure.storage.extensionsto purely namespace packages for future expansion.