Skip to content

2.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 16 Apr 13:32
· 5 commits to master since this release

2.0.0 introduces massive ergonomic improvements and some breaking changes.

New features

Breaking change for AWS S3 and Minio users

Factory methods for S3 do not have bucket name anymore. Instead, you need to pass bucket name as a part of the file path.

Before v2: /directory/object.

Since v2: /bucket/directory/object.

This syntax makes accessing multiple buckets more ergonomic. In addition to that, Ls operation on root folder simply returns the list of buckets.

Breaking change for Azure Storage users

In azure storage, URL now must start with container name.

Before v2: /directory/object.

Since v2: /container/directory/object.

Ls operation on root folder simply returns the list of containers.

Other new features

  • breaking: Rm operation now has no recurse flag. Passing a file deletes a file, passing a folder deletes the folder recursively. It should have been as easy as that, not sure why that flag was there in the first place!
  • breaking: .NET Core support is dropped. The minimum supported framework is now .NET 5.
  • New operation Stat retrieves object information without downloading it.
  • Azure Blob storage supports new authentication type - with Entra Id Service Principals.

Improvements

  • AWS CLI configuration parser also picks up default region from ~/.aws/config file.
  • S3 error messages are improved, taking response message from HTTP API response.
  • S3 accepts session token when authenticating, allowing you to use credentials from AWS STS.
  • Azure storage provider protocol upgraded to 2020-10-02.
  • Enabled nullable reference types and fixed a lot of null checks.

Bugs fixed

  • AWS Rm on folders was not deleting recursively.
  • Azure Ls command did not return more than 5k items.