Skip to content
This repository has been archived by the owner on May 8, 2024. It is now read-only.

Releases: Azure/azure-storage-php

Storage Client Library for Queue 1.0.0

11 Jan 01:42
89e7bcd
Compare
Choose a tag to compare

2018.01 - version 1.0.0

  • Created QueueSharedAccessSignatureHelper and moved method SharedAccessSignatureHelper::generateQueueServiceSharedAccessSignatureToken() into QueueSharedAccessSignatureHelper.
  • Added static builder methods createQueueService into QueueRestProxy.
  • Removed dataSerializer parameter from QueueRextProxy constructor.
  • Deprecated PHP 5.5 support.

Storage Client Library for File 1.0.0

11 Jan 01:42
89e7bcd
Compare
Choose a tag to compare

2018.01 - version 1.0.0

  • Created FileSharedAccessSignatureHelper and moved method SharedAccessSignatureHelper::generateFileServiceSharedAccessSignatureToken() into FileSharedAccessSignatureHelper.
  • Added static builder methods createFileService into FileRestProxy.
  • Removed dataSerializer parameter from FileRextProxy constructor.
  • Added setUseTransactionalMD5 method for option of FileRestProxy::CreateFileFromContent. Default false, enabling transactional MD5 validation will take more cpu and memory resources.
  • Deprecated PHP 5.5 support.

Storage Client Library for Common 1.0.0

11 Jan 01:41
89e7bcd
Compare
Choose a tag to compare

2018.01 - version 1.0.0

  • Removed ServiceBuilder.php, moved static builder methods into BlobRestProxy, TableRestProxy, QueueRestProxy and FileRestProxy.
  • Moved method SharedAccessSignatureHelper::generateBlobServiceSharedAccessSignatureToken() into BlobSharedAccessSignatureHelper.
  • Moved method SharedAccessSignatureHelper::generateTableServiceSharedAccessSignatureToken() into TableSharedAccessSignatureHelper.
  • Moved method SharedAccessSignatureHelper::generateQueueServiceSharedAccessSignatureToken() into QueueSharedAccessSignatureHelper.
  • Moved method SharedAccessSignatureHelper::generateFileServiceSharedAccessSignatureToken() into FileSharedAccessSignatureHelper.
  • CommonMiddleWare constructor requires storage service version as parameter now.
  • AccessPolicy class is now an abstract class, added children classes BlobAccessPolicy, ContainerAccessPolicy, TableAccessPolicy, QueueAccessPolicy, FileAccessPolicy and ShareAccessPolicy.
  • Fixed a bug that Utilities::allZero() will return true for non-zero data chunks.
  • Deprecated PHP 5.5 support.

Storage Client Library for Blob 1.0.0

11 Jan 01:41
89e7bcd
Compare
Choose a tag to compare

2018.01 - version 1.0.0

  • Created BlobSharedAccessSignatureHelper and moved method SharedAccessSignatureHelper::generateBlobServiceSharedAccessSignatureToken() into BlobSharedAccessSignatureHelper.
  • Added static builder methods createBlobService and createContainerAnonymousAccess into BlobRestProxy.
  • Removed dataSerializer parameter from BlobRextProxy constructor.
  • Added setUseTransactionalMD5 method for options of BlobRestProxy::CreateBlockBlob and BlobRestProxy::CreatePageBlobFromContent. Default false, enabling transactional MD5 validation will take more cpu and memory resources.
  • Fixed a bug that CopyBlobFromURLOptions not found.
  • Deprecated PHP 5.5 support.

Storage Client Library 0.19.1

25 Sep 09:11
Compare
Choose a tag to compare
Pre-release

2017.09 - version 0.19.1

ALL

  • Fixed a syntax error for PHP 5.5 and 5.6 in MicrosoftAzure\Storage\Common\Internal::Utilities:isoDate.

Storage Client Library 0.19.0

22 Sep 08:46
Compare
Choose a tag to compare
Pre-release

2017.09 - version 0.19.0

ALL

  • Fixed wrong XmlSerializer in ServiceException.php.
  • Fixed formatting of non-UTC dates when using instances of DateTime to generate shared access signatures.
  • Fixed class loading errors on case-sensitive file systems when testing.

Blob

  • Added CopyBlobFromURL to support copy blob from a source URL including resources in other storage accounts.
  • Added support for Incremental Copy Page Blob. This allows efficient copying and backup of page blob snapshots.
  • Fixed a bug that BlobRestProxy::createPageBlobFromContent cannot work.
  • Populate content MD5 for range gets on Blobs.
    • MicrosoftAzure\Storage\Blob\Models\BlobProperties::getContentMD5() will always return the value of the whole blob’s MD5 value.
    • Added MicrosoftAzure\Storage\Blob\Models\BlobProperties::getRangeContentMD5() to get MD5 of a blob range.
  • Renamed 2 methods inside MicrosoftAzure\Storage\Blob\Models\GetBlobOptions:
    • getComputeRangeMD5() -> getRangeGetContentMD5()
    • setComputeRangeMD5() -> setRangeGetContentMD5()
  • The public access level of a container is now returned from the List Containers and Get Container Properties APIs.
  • MicrosoftAzure\Storage\Blob\Models\GetBlobOptions and MicrosoftAzure\Storage\Blob\Models\ListPageBlobRangesOptions now provide setRange() and getRange() to accept a MicrosoftAzure\Storage\Common\Models\Range object. Following methods are removed:
    • setRangeStart()
    • getRangeStart()
    • setRangeEnd()
    • getRangeEnd()

Queue

  • The QueueRestProxy::createMessage now returns information about the message that was just added, including the pop receipt.

File

  • Fixed a bug that setting content MD5 cannot work when creating files.
  • Option parameter ListDirectoriesAndFilesOptions of FileRestProxy::listDirectoriesAndFiles is now able to set a prefix which limits the listing to a specified prefix.
  • Populate content MD5 for range gets on Files.
    • MicrosoftAzure\Storage\File\Models\FileProperties::getContentMD5() will always return the value of the whole file’s MD5 value.
    • Added MicrosoftAzure\Storage\File\Models\FileProperties::getRangeContentMD5() to get MD5 of a file range.

Storage Client Library 0.18.0

29 Aug 06:35
Compare
Choose a tag to compare
Pre-release

2017.08 - version 0.18.0

All

  • Updated SharedAccessSignatureHelper to accept Datetime type as signedExpiry or signedStart parameter when generating SAS tokens.
  • Added samples under samples foder to generate account level or service level SAS tokens with SharedAccessSignatureHelper.
  • Fixed wrong PHPUnit @covers tags in unit and functional test.
  • Removed unused imports declarations.

Blob

  • Added BlobRestProxy::listPageBlobRangesDiff and BlobRestProxy::listPageBlobRangesDiffAsync for getting page ranges difference. Refer to https://msdn.microsoft.com/en-us/library/azure/mt736912.aspx for more detailed information.
  • Following methods of MicrosoftAzure\Storage\Blob\BlobRestProxy now return the x-ms-request-server-encrypted response header. This header is set to true if the contents of the request have been successfully encrypted.
    • createBlockBlob, createPageBlob, createAppendBlob, createBlobPages, createBlobBlock, appendBlock, commitBlobBlocks and setBlobMetadata.
  • Following methods of MicrosoftAzure\Storage\Blob\BlobRestProxy now return the x-ms-server-encrypted response header. This header is set to true if the blob data and application metadata are completely encrypted. If the blob is not encrypted, or if only parts of the blob/application metadata are encrypted, this header is set to false.
    • getBlob and getBlobProperties.

Storage Client Library 0.17.0

07 Aug 02:11
Compare
Choose a tag to compare
Pre-release

2017.07 - version 0.17.0

All

  • REST API version upgraded to 2016-05-31.
  • Added support for anonymous read access to containers. User can now call MicrosoftAzure\Storage\Common\ServiceBuilder::createContainerAnonymousAccess to create service proxy to access containers/blobs without credential.
  • Refined code logic for continuation token. Now continuation token will be null if there are no more instance to be queried/listed.

Blob

  • Removed MicrosoftAzure\Storage\Tests\unit\Blob\Models\BlobContinuationToken, now use MicrosoftAzure\Storage\Common\MarkerContinuationToken instead for better code structure and reuse.
  • Added MicrosoftAzure\Storage\Tests\unit\Blob\BlobRestProxy::blockSize for user to control block size.

Table

  • Deprecated ATOM support for Table service.

Queue

  • Removed MicrosoftAzure\Storage\Tests\unit\Queue\Models\QueueContinuationToken, now use MicrosoftAzure\Storage\Common\MarkerContinuationToken instead for better code structure and reuse.

File

  • Removed MicrosoftAzure\Storage\Tests\unit\File\Models\FileContinuationToken, now use MicrosoftAzure\Storage\Common\MarkerContinuationToken instead for better code structure and reuse.

Storage Client Library 0.16.0

16 Jun 10:00
Compare
Choose a tag to compare
Pre-release

2017.06 - version 0.16.0

All

  • Renamed and moved MicrosoftAzure\Storage\Blob\Models\PageRange to MicrosoftAzure\Storage\Common\Models\Range.
  • Added support for Service Shared Access Signature.
  • With File service feature parity to 2015-04-05 and Service Shared Access Signature support in this release, the SDK now have full parity for Blob, Table, Queue and File services to REST API version 2015-04-05.

Table

  • Created new types for the following APIs to support specifying accepted content type of response payload. Payload is now by default application/json;odata=minimalmetadata.
    • MicrosoftAzure\Storage\Table\TableRestProxy::createTable & MicrosoftAzure\Storage\Table\TableRestProxy::createTableAsync now uses MicrosoftAzure\Storage\Table\Models\TableServiceCreateOptions.
    • MicrosoftAzure\Storage\Table\TableRestProxy::insertEntity & MicrosoftAzure\Storage\Table\TableRestProxy::insertEntityAsync now uses MicrosoftAzure\Storage\Table\Models\TableServiceCreateOptions.
    • MicrosoftAzure\Storage\Table\TableRestProxy::getTable & MicrosoftAzure\Storage\Table\TableRestProxy::getTableAsync now uses MicrosoftAzure\Storage\Table\Models\GetTableOptions.
    • MicrosoftAzure\Storage\Table\TableRestProxy::getEntity & MicrosoftAzure\Storage\Table\TableRestProxy::getEntityAsync now uses MicrosoftAzure\Storage\Table\Models\GetEntityOptions.
  • E-Tag can now be null value since when user specified to return minimal/no metadata, E-Tag will not be returned with response.
  • When specifying NO_METADATA for querying entities, some Edm type, including Edm.Binary, Edm.DateTime and Edm.Guid, could not be determined through the type detection heuristics. For more information, please see Payload Format for Table Service Operations.

Queue

  • Renamed MicrosoftAzure\Storage\Queue\Models\MicrosoftAzureQueueMessage to MicrosoftAzure\Storage\Queue\Models\QueueMessage

File

  • Added full support for File service, with parity to REST API 2015-04-05.

Storage Client Library 0.15.0

03 May 09:13
Compare
Choose a tag to compare
Pre-release

2017.04 - version 0.15.0

All

  • Removed setRequestOptions for service options, instead, added middlewares, middlewareStack, numberOfConcurrency, isStreaming, locationMode and decodeContent for user to specify the corresponding options.
  • Added MicrosoftAzure\Storage\Common\Middlewares\RetryMiddleware to support retry from secondary endpoint. Advice to use this instead of Guzzle's retry middleware for secondary endpoint retry support.
  • By setting $locationMode in MicrosoftAzure\Storage\Common\Models\ServiceOptions, user can perform read operations from secondary endpoint.
  • Added support for user to use proxies. If HTTP_PROXY is set as a system variable, the proxy specified with it will be used for HTTP connections.
  • Removed MicrosoftAzure\Storage\Common\Models\ServiceProperties::getMetrics and MicrosoftAzure\Storage\Common\Models\ServiceProperties::setMetrics. Added following methods to access hour metrics and minute metrics.
MicrosoftAzure\Storage\Common\Models\ServiceProperties::getHourMetrics
MicrosoftAzure\Storage\Common\Models\ServiceProperties::setHourMetrics
MicrosoftAzure\Storage\Common\Models\ServiceProperties::getMinuteMetrics
MicrosoftAzure\Storage\Common\Models\ServiceProperties::setMinuteMetrics

Blob

  • Access condition feature parity:

    • Single AccessCondition has been changed to multiple AccessCondition for the options which support access conditions.
    • Added appendPosition, maxBlobSize, ifSequenceNumberLessThan, ifSequenceNumberEqual and ifSequenceNumberLessThanOrEqual to AccessCondition class.
    • Added access conditions support for getContainerProperties, setContainerProperties, getContainerMetadata and setContainerMetadata.
  • Copy blob feature parity:

    • Added new API abortCopy.
    • Added setIncludeCopy to ListBlobsOptions to support getting copy state information when listing blobs.
    • Added properties and getters/setters for CopyId and CopyStatus to CopyBlobResult class.
  • Lease feature parity

    • Added lease support for getContainerProperties, setContainerProperties, getContainerMetadata, setContainerMetadata and deleteContainer.
    • Renamed LeaseBlobResult to LeaseResult to support container and blob lease.
    • Added container lease support - passing null to $blob parameter of the lease related APIs.
    • Added new parameters $proposedLeaseId and $leaseDuration to acquireLease API and changed the $options parameter from AcquireLeaseOptions to BlobServiceOptions.
    • Added the API changeLease to support changing lease.
    • Added new parameter $breakPeriod to breakLease API and removed the $leaseId parameter.
    • Added properties and getters/setters for LeaseStatus, LeaseState and LeaseDuration to ContainerProperties class.
  • Container/Blob properties feature parity:

    • Added properties and getters/setters for ContentDisposition, LeaseState, LeaseDuration and CopyState to BlobProperties class.
  • Refactored Options class:

    • Exracted getLeaseId, setLeaseId, getAccessConditions and setAccessConditions to the base options class BlobServiceOptions.
    • Refactored the CreateBlobOptions, CommitBlobBlocksOptions class to remove duplicate options and standardize the content settings related properties like ContentType, ContentMD5, ContentEncoding, ContentLanguage, CacheControl and ContentDisposition.
  • Blob service properties feature parity:

    • Added getDefaultServiceVersion, setDefaultServiceVersion, getMinuteMetrics and setMinuteMetrics to ServiceProperties class.
  • Changed the return type of API commitBlobBlocks from void to PutBlobResult.

  • Removed the useless API ctrCrypt from Utilities class.

  • Added getServiceStats and getServiceStatsAsync for user to request service statistics from the server's secondary endpoint.

Table

  • Removed MicrosoftAzure\Storage\Table\Models\BatchError. When batch operation fails, exception is thrown immediately instead.
  • Added getServiceStats and getServiceStatsAsync for user to request service statistics from the server's secondary endpoint.

Queue

  • Added getServiceStats and getServiceStatsAsync for user to request service statistics from the server's secondary endpoint.