Skip to content

[Blob][STG78]Object Imutability Policy (Version Level Worm) - #19098

Merged
Xiaoxi Fu (xiafu-msft) merged 15 commits into
Azure:feature/storage-stg78from
xiafu-msft:vlw
Jul 22, 2021
Merged

[Blob][STG78]Object Imutability Policy (Version Level Worm)#19098
Xiaoxi Fu (xiafu-msft) merged 15 commits into
Azure:feature/storage-stg78from
xiafu-msft:vlw

Conversation

@xiafu-msft

Copy link
Copy Markdown
Contributor

No description provided.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

public API looks good. Please ask Kamil about the bundled vs unbundled immutabilitypolicy stuff

Comment on lines +1418 to +1422
:keyword ~datetime.datetime immutability_policy_expiry_time:
Specifies the date time when the blobs immutability policy is set to expire.
:keyword immutability_policy_mode:
Specifies the immutability policy mode to set on the blob.
:paramtype immutability_policy_mode: ~azure.storage.blob.BlobImmutabilityPolicyMode or str

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Hi Kamil Sobol (@kasobol-msft) I think we need your thoughts here.
Gauri Gauri Lamunion (@gapra-msft) and I were discussing about these two parameters. For Java and .Net these two parameters are grouped into a class called BlobImmutabilityPolicy, while in Python we don't have the overloading concern so usually we just list the parameters. Do you have any thoughts? Should we keep it consistent with Java and .Net or leave it like this?
Also Anna suggested to rename these two parameters to expiry and mode, and I put the reason why I haven't renamed them yet https://apiview.dev/Assemblies/Review/266426541eba45098d08bbddfb5ce8ac/7977909c50af4022868fd86d76bbc17c#azure.storage.blob.aio.BlobClient.set_immutability_policy:async.param(immutability_policy_mode

Thanks for your input!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I'd group them together in both places. (we seem to do this from time to time for inputs that belong together

:keyword ~azure.storage.blob.ContentSettings content_settings:
ContentSettings object used to set blob properties. Used to set content type, encoding,
language, disposition, md5, and cache control.
)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

We can group them together just some params are not grouped together and they are all for conditional match

:keyword ~datetime.datetime if_modified_since:
A DateTime value. Azure expects the date value passed in to be UTC.
If timezone is included, any non-UTC datetimes will be converted to UTC.
If a date is passed in without timezone info, it is assumed to be UTC.
Specify this header to perform the operation only
if the resource has been modified since the specified time.
:keyword ~datetime.datetime if_unmodified_since:
A DateTime value. Azure expects the date value passed in to be UTC.
If timezone is included, any non-UTC datetimes will be converted to UTC.
If a date is passed in without timezone info, it is assumed to be UTC.
Specify this header to perform the operation only if
the resource has not been modified since the specified date/time.
:keyword str etag:
The destination ETag value, or the wildcard character (*). Used to check if the resource has changed,
and act according to the condition specified by the `match_condition` parameter.
:keyword ~azure.core.MatchConditions match_condition:
The destination match condition to use upon the etag.

@xiafu-msft

Copy link
Copy Markdown
Contributor Author

/azp run storage - python - tests

@azure-pipelines

Copy link
Copy Markdown
No pipelines are associated with this pull request.

@xiafu-msft

Copy link
Copy Markdown
Contributor Author

/azp run python - storage - tests

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

@xiafu-msft
Xiaoxi Fu (xiafu-msft) merged commit ed1b036 into Azure:feature/storage-stg78 Jul 22, 2021
Xiaoxi Fu (xiafu-msft) added a commit that referenced this pull request Jul 27, 2021
* [Blob][STG78]Object Imutability Policy (Version Level Worm)
Xiaoxi Fu (xiafu-msft) added a commit that referenced this pull request Jul 28, 2021
* generated from swaggers

* new support service versions

* regenrated

* [STG78] Added Quick Query Parquet Dialect (#18904)

* Added Quick Query Dialect

* fixed ci

* fix ci path

* anna comments

* removed parquet type

* reverted versions

* reverted versions

* fixed dep

* [Blob][STG78]List Deleted Root Blob with Versions (#19097)

* [Blob][STG78]List Deleted Root Blob with Versions

* Update test_container_async.py

* [STG78] Copy Source OAuth Token Support (#18998)

* OAuth Copy Source Support

* added tokens to blob client

* added support in file client

* Added tests

* regenerated

* Added sync tests and renamed param

* added some async tests

* removed import and fixed desc and validation

* added more tests

* remove import

* fixed ci

* [Blob][STG78]Object Imutability Policy (Version Level Worm) (#19098)

* [Blob][STG78]Object Imutability Policy (Version Level Worm)

* [STG78][FileShare]List Files v2 (#19017)

* [STG78][FileShare]List Files v2

* fix pylint

* fix live test

Co-authored-by: Xiaoxi Fu <49707495+xiafu-msft@users.noreply.github.com>
Co-authored-by: xiafu <xiafu@microsoft.com>
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.

4 participants