microsoft/azure-storage-table
PHP client library for Microsoft Azure Table storage. Create, read, update, and delete entities; run queries and batch operations; authenticate with account keys or SAS tokens. A straightforward SDK for NoSQL table data in Azure.
azure/azure-storage-php), archived, with its last release in September 2022. The only product decision it genuinely informs today is "how fast do we get off this?" — not "should we build on it?"azure/data-tables from the current Azure/azure-sdk-for-php, or Cosmos DB Table API — not this package. This package is the legacy answer to that question.composer.lock, that's a scheduled migration workstream, not a passive dependency. The API surface (entities, partition/row keys, batch operations, OData filters) maps reasonably directly onto the successor SDK, so this is usually a contained sprint-sized task — but it must be scheduled, because there is no upstream to fix anything.Consider it only when:
Look elsewhere when:
azure/data-tables or Cosmos DB Table API.Important nuance on the metrics: this is a release-only repo. Stars and dependent counts here badly understate real-world installs — the Composer package was widely pulled in via the old azure-storage-php split. Low stars is not evidence of low usage in your own estate; check composer.lock, not GitHub.
To executives: This is a deprecated Microsoft SDK with no security updates and no upstream maintenance path. It's acceptable as a short-term dependency in an existing application, but it is not a strategic choice and should not appear in any new design. Migration effort is modest because the successor SDK keeps the same core concepts — the risk is in staying, not in moving.
To engineering: Pin the version exactly, wrap it behind an internal interface so call sites don't depend on the vendor namespace, and add it to the dependency-review list (composer audit, abandoned-package checks). Expect no fixes; if you need one, it's a fork and you own it. The migration path is azure/data-tables in the current Azure SDK — mostly namespace, auth, and pipeline changes rather than a data-model rewrite.
The ask: either approve a scoped migration ticket with a named owner and a dated target, or explicitly document the accepted risk with a review date. What we should not do is leave it unowned and undated — that's how a contained dependency becomes an unplanned incident.
How can I help you explore Laravel packages today?