Skip to content

Releases: aloneguid/stowage

2.0.1

31 May 10:39
Compare
Choose a tag to compare

Local disk file storage provider now implements ILocalDiskFileStorage interface, which exposes ToNativeLocalPath method returning full path to the file on the local disk, specific to the OS you are running on. This is useful when you need to pass file paths to external tools or libraries that need native OS paths.

2.0.0

16 Apr 13:32
Compare
Choose a tag to compare

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.

1.5.1

23 Nov 09:18
Compare
Choose a tag to compare

Improvement: "Minio" factory method is missing region parameter by @zitmen in #20.

1.5.0

22 Nov 17:10
Compare
Choose a tag to compare

New features

  • S3 provider supports authentication with local AWS CLI profiles.
  • S3 factory methods allow specifying session token (for STS temporary credentials).

Bugs fixed

  • S3 Ls operation was returning it's own folder object in the list.
  • S3 Ls was facing number parsing overflow on multi-gigabyte files.
  • On some platforms hmac256 was not working resulting in failure to sign AWS requests.
  • Multi-part uploads in S3 were sometimes not calculating chunk sizes properly.

1.4.0

15 Nov 16:28
Compare
Choose a tag to compare

New features

  • Minio is officially supported. Additional factory method added allowing to connect to Minio instances without knowing the internals.
  • IOPath has a new member - Prefix() allowing to add prefix to an existing path.

Bugs fixed

  • S3 provider was ignoring continuationToken which resulted in returning only the first page in Ls operation.

1.3.0

15 Nov 10:17
Compare
Choose a tag to compare

Bugs fixed

  • S3 buffer size needs to be at least 5Mb when performing multipart upload by @alexhughes05 in #14.
  • S3 authentication would fail if file name contains spaces by @alexhughes05 in #14.
  • S3 authentication would fail if custom port number is used by @zitmen in #16.

Improvements

  • Targeting .NET 8.
  • Removing unused parameter in S3 factory method by @zitmen in #16.

Internal changes

  • CI/CD pipeline split into "build" and "release".
  • Added release notes document to be used when publishing a github release.
  • Applying consistent code style from my other projects.

1.2.7

04 Sep 13:28
f7c3091
Compare
Choose a tag to compare

Fixed #11: Writing Azure blob larger than 10MiB fails with 400 Bad Request

1.2.6

23 Feb 16:21
Compare
Choose a tag to compare
bump to 1.2.6

1.2.5

17 Jan 15:55
Compare
Choose a tag to compare
bump version

1.2.4

26 Jul 10:17
Compare
Choose a tag to compare
add readme file to package