Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Azure Storage Common Laravel Package

microsoft/azure-storage-common

Deprecated common PHP library shared by Azure Storage Blob, Table, Queue and File SDKs. Used mainly for releases; development and issues are in azure-storage-php. Azure Storage PHP client libraries retire 17 March 2024—see retirement notice for alternatives.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: This package is deprecated and fundamentally incompatible with modern Laravel applications. It was designed for legacy Azure Storage SDKs (v1.x) and lacks support for current Laravel dependency standards (e.g., PSR-7 compliance, Guzzle 8+). The repository is explicitly marked "for releasing only" with no active development.

Integration feasibility: Near-zero for new projects. Microsoft has redirected all development to azure/storage-* packages (e.g., azure/storage-blob). The deprecated package has no maintained compatibility layer with Laravel's HTTP stack or modern PHP practices.

Technical risk: Critical. Unpatched security vulnerabilities (e.g., TLS 1.2 issues resolved in 2020 but no further updates), expired authentication protocols, and known bugs like GUID generation overflow (v1.5.2). Post-March 17, 2024 retirement, zero security patches will be available. High risk of compliance violations and system outages.

Key questions: What is the concrete migration timeline to azure/storage-blob? How will legacy storage operations be handled during the transition? Does the new SDK fully support Laravel's HTTP client ecosystem and middleware patterns?

Integration Approach

Stack fit: Unsuitable for any new Laravel project. Only applicable as a temporary stopgap in legacy systems with strict 2024 migration deadlines. Modern Laravel requires PHP 8.1+, Guzzle 7+, and PSR-18 support – all absent in this deprecated package.

Migration path: Mandatory migration to azure/storage-blob (or equivalent storage service SDKs). Steps: 1) Audit all dependencies via composer why microsoft/azure-storage-common, 2) Replace BlobRestProxy/TableRestProxy with BlobServiceClient/TableServiceClient, 3) Update authentication to use Azure Identity library (OAuth), 4) Refactor SAS token generation to use new BlobSasBuilder patterns.

Compatibility: None. The deprecated package uses legacy patterns (e.g., CommonMiddleWare constructor requiring service version) incompatible with the new SDK's fluent client interfaces. Guzzle 6/7 dependencies conflict with Laravel 10+ stack requirements.

Sequencing: 1) Immediate audit of all storage dependencies, 2) Prioritize high-risk systems (e.g., production workloads), 3) Refactor code using new SDK documentation, 4) Validate OAuth/TLS 1.2+ configurations, 5) Complete migration by March 17, 2024 – no fallback options exist post-retirement.

Operational Impact

Maintenance: Zero after March 17, 2024. No patching for bugs, security flaws, or compatibility issues. Internal teams would bear full burden of maintaining a dead dependency.

Support: Microsoft provides no support post-retirement. Any issues require internal debugging without official guidance or fixes. Documentation is archived and no longer updated.

Scaling: Unaddressed concurrency bugs (e.g., GUID overflow in v1.5.2) and lack of support for modern Azure Storage features (e.g., hierarchical namespaces) will limit scalability. No performance optimizations or new capabilities will be added.

Failure modes: Authentication failures due to deprecated TLS protocols, data corruption during blob operations, security breaches from unpatched vulnerabilities (e.g., CVE-2021-31538), and complete service outages after retirement when Azure sunsets legacy endpoints.

Ramp-up: Misdirected effort – teams should focus on learning the new SDK's API patterns (e.g., BlobServiceClient operations) rather than legacy helpers. Migration requires significant rework of storage logic but delivers long-term stability. No value in training on deprecated patterns.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport