Skip to content

Azure Storage STG 102 New Features#6980

Open
Jinming-Hu wants to merge 12 commits intoAzure:mainfrom
Jinming-Hu:feature/storage/stg102
Open

Azure Storage STG 102 New Features#6980
Jinming-Hu wants to merge 12 commits intoAzure:mainfrom
Jinming-Hu:feature/storage/stg102

Conversation

@Jinming-Hu
Copy link
Member

Pull Request Checklist

Please leverage this checklist as a reminder to address commonly occurring feedback when submitting a pull request to make sure your PR can be reviewed quickly:

See the detailed list in the contributing guide.

  • C++ Guidelines
  • Doxygen docs
  • Unit tests
  • No unwanted commits/changes
  • Descriptive title/description
    • PR is single purpose
    • Related issue listed
  • Comments in source
  • No typos
  • Update changelog
  • Not work-in-progress
  • External references or docs updated
  • Self review of PR done
  • Any breaking changes?

Copilot AI review requested due to automatic review settings March 2, 2026 02:35
@github-actions github-actions bot added the Storage Storage Service (Queues, Blobs, Files) label Mar 2, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Azure Storage C++ SDK to align with newer STG 102 service capabilities across Files Shares, Blobs, and Data Lake, including new REST surface area, new enum values, and corresponding unit test coverage.

Changes:

  • Azure Files Shares: add support for FilePropertySemantics and create-file-with-body (including CRC structured message path) and bump service version to 2026-06-06.
  • Azure Blobs: add Smart tier support, SmartAccessTier parsing, and Virtual Directory SAS support; bump swagger to 2026-06-06.
  • Azure Data Lake: add GetSystemProperties and path tag operations (GetTags/SetTags) with new tests.

Reviewed changes

Copilot reviewed 27 out of 27 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
sdk/storage/azure-storage-files-shares/test/ut/share_file_client_test.cpp Adds tests for create-with-data and SMB permission semantics.
sdk/storage/azure-storage-files-shares/test/ut/share_directory_client_test.cpp Adds tests for directory permission semantics.
sdk/storage/azure-storage-files-shares/swagger/README.md Updates swagger input and api-version enum/customizations for 2026-06-06.
sdk/storage/azure-storage-files-shares/src/share_file_client.cpp Implements create-with-body, structured CRC message path, and wires property semantics.
sdk/storage/azure-storage-files-shares/src/share_directory_client.cpp Wires FilePropertySemantics into directory create.
sdk/storage/azure-storage-files-shares/src/rest_client.cpp Updates API version headers; adds property semantics and structured body handling in protocol layer.
sdk/storage/azure-storage-files-shares/inc/azure/storage/files/shares/share_options.hpp Adds CreateFileOptions::Content, ValidationOptions, and PropertySemantics.
sdk/storage/azure-storage-files-shares/inc/azure/storage/files/shares/rest_client.hpp Adds FilePropertySemantics, structured body fields, and updates create signature to accept a request body stream.
sdk/storage/azure-storage-files-datalake/test/ut/datalake_path_client_test.cpp Adds tag get/set test coverage.
sdk/storage/azure-storage-files-datalake/test/ut/datalake_file_client_test.cpp Adds GetSystemProperties test coverage for files.
sdk/storage/azure-storage-files-datalake/test/ut/datalake_directory_client_test.cpp Adds GetSystemProperties test coverage for directories.
sdk/storage/azure-storage-files-datalake/swagger/README.md Adds swagger directive for GetPathSystemProperties and adjusts enum transforms.
sdk/storage/azure-storage-files-datalake/src/rest_client.cpp Adds protocol-layer GetSystemProperties implementation for paths.
sdk/storage/azure-storage-files-datalake/src/datalake_path_client.cpp Adds public GetSystemProperties, and forwards path tags to blob endpoint.
sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/rest_client.hpp Adds PathSystemProperties model and protocol options/operation.
sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_responses.hpp Adds SetPathTagsResult alias.
sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_path_client.hpp Adds public GetSystemProperties, SetTags, GetTags.
sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_options.hpp Adds GetPathSystemPropertiesOptions and tag option aliases.
sdk/storage/azure-storage-common/test/ut/test_base.hpp Switches storage test default credential mode to token credential.
sdk/storage/azure-storage-blobs/test/ut/block_blob_client_test.cpp Adds tests for Smart tier and rehydrate-to-smart behavior.
sdk/storage/azure-storage-blobs/test/ut/blob_sas_test.cpp Adds live-only test for virtual directory SAS behavior.
sdk/storage/azure-storage-blobs/swagger/README.md Updates swagger input and enum customizations to include Smart tier and smart access tier header.
sdk/storage/azure-storage-blobs/src/rest_client.cpp Adds Smart tier constants and parses SmartAccessTier from list/properties responses.
sdk/storage/azure-storage-blobs/src/blob_sas_builder.cpp Adds virtual directory resource type + sdd query parameter support.
sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/rest_client.hpp Adds AccessTier::Smart, ArchiveStatus::RehydratePendingToSmart, and SmartAccessTier fields.
sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/blob_sas_builder.hpp Extends SAS resource enum and adds virtual directory fields.
sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/blob_client.hpp Fixes SetTags return type wording in doc comment.

@Jinming-Hu
Copy link
Member Author

/azp run cpp - storage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@Jinming-Hu
Copy link
Member Author

/azp run cpp - storage

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@Jinming-Hu Jinming-Hu force-pushed the feature/storage/stg102 branch from b8e00b8 to 31be14c Compare March 10, 2026 06:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Storage Storage Service (Queues, Blobs, Files)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants