Releases: fs2-blobstore/fs2-blobstore
v0.9.8
Important note:
This release updates cats-effect to 3.5.0, which includes an important change to the behavior of the Async#async and IO.async methods.
Please check the cats-effect release notes for v3.5.0 for more details, in case the behavior change impacts your codebase.
v0.9.6
The 0.9.x series is compiled against fs2 3.x and cats-effect 3.x. It is published for Scala 2.12, 2.13 and 3.
Features
- Provide ability to use native S3 client (via S3 Transfer Manager) to speed-up uploads/downloads (#585) @gafiatulin
- Calculate storage class types (#363) @jgogstad
Bug fixes
- Fix runnning on Java 8 (#481) @gafiatulin
Dependency updates
- Swap jsch dependency to a maintained fork. (#480) @gafiatulin
- S3: fix potential deadlock (#447) @gafiatulin
- Prevent allocating hotswap for empty stream/last part (#444) @gafiatulin
- Move to suffix path (#443) @gafiatulin
- Scala 3 (#442) @gafiatulin
- Batch recursive delete for GCS, S3 and Azure (#441) @gafiatulin
- S3 multipart with know size and other fixes (#435) @gafiatulin
Other
- Separate workflow for integration tests, also carry forward with codecov (#371) @jgogstad
- Upgrade to cats-effect 3 and FS2 3.x, (#265) @gafiatulin
v0.8.6
The 0.8.x series is compiled against fs2 2.5.x and cats-effect 2.x. It is published for Scala 2.12, 2.13 and 3. The 0.8 release receives critical bug fixes.
Features
- New abstractions for stores and paths. Separate flat and hierarchical storage providers, #214 @jgogstad
- backport Provide ability to use native S3 client (via S3 Transfer Manager) to speed-up uploads/downloads (#585) @gafiatulin
Bug fixes
- backport, Fix running on Java 8 (#481) @gafiatulin
- backport, Fix potential S3 deadlock (#440) @gafiatulin
- backport, prevent allocating hotswap for empty stream & tests (#440) @gafiatulin
- move to suffix path (#443) @gafiatulin
- backport batch recursive delete for GCS, S3 and Azure (#441) @gafiatulin
- Fix S3 bug & write-read symmetry check (#345) @gafiatulin
- Support empty paths in SFTP, (#308) @jgogstad
Dependency updates
- fs2 2.5.10
- cats-core 2.7.0
- jsch 0.1.72
- azure-storage-blob 12.14.2
- box-java-sdk 2.58.0
- software.amazon.awssdk, s3 2.17.107
- google-cloud-storage, 2.2.3
Upgrades by @gafiatulin and Scala Steward, also:
- remove cats-effect-laws dependency because we don't use instances from TestInstances (#346) @gafiatulin
Other
- CI on Github Actions, @gafiatulin
- Leverage testcontainers for tests, @gafiatulin
Gcs Direct Download & Dependency updates
In this release:
-
Expose direct download (see related: googleapis/google-cloud-java#5791) in
GcsStore[F].get
method.
This is opt-in, default behavior doesn't change (chunked reader-based). -
Dependency updates.
API improvements, build/release improvements, dependency updates
API Improvements
- Introduced new
putRotate
pipe. #106 - Introduced
SftpPath
for capturing sftp path attributes. #70 list
operation now takes a flag to enable recursive listing. #77put
operation now takes a flag to enable overwriting existing files. Unified behavior across allStore
implementations. #74list
on a concreteStore
implementation now retains information about narrowed type. #70
Bug fixes
Build/Release improvements
Dependency Updates
- Thanks @scala-steward for keeping our dependencies fresh:
org.scala-sbt:sbt 1.3.9 -> 1.3.10
ch.epfl.scala:sbt-scalafix 0.9.13 -> 0.9.15
org.scalameta:sbt-scalafmt 2.3.2 -> 2.3.4
com.geirsson:sbt-ci-release 1.5.2 -> 1.5.3
org.scala-lang.modules:scala-collection-compat 2.1.4 -> 2.1.6
org.typelevel:cats-effect-laws 2.1.2 -> 2.1.3
com.azure:azure-storage-blob 12.5.0 -> 12.6.0
software.amazon.awssdk:s3 2.11.9 -> 2.13.5
com.google.cloud:google-cloud-storage 1.106.0 -> 1.107.0
com.google.cloud:google-cloud-nio 0.120.0-alpha -> 0.121.0
com.box:box-java-sdk 2.45.0 -> 2.47.0
New encoding of Path abstraction & AWS-SDK V2 & Azure Store
Breaking changes
This release changes encoding of the Path
abstraction. Path
is now an open trait, concrete Store implementations can choose to provide their own implementations to allow access to store-specific meta information like storageClass
or version. This change is both source and binary incompatible. #36
Azure Store
Added AzureStore
– Store implementation for Azure Blob Stroge. Released as a new module azure
. #55
Various improvements to build and release process
Thanks @jgogstad for updating mergify configuration #25, enabling Box integration tests on CI #50, and other improvements to CI pipelines. #64, #65, #67
Dependency updates
Changed AWS S3 dependency to use AWS SDK V2. #40
Thanks @scala-steward for keeping dependencies updated:
v0.6.2
v0.6.1
This marks the first release to the new maven coordinates, the new coordinates are reflected in the readme.
Critical bugs
- Fix deadlock in SftpStore list (@gafiatulin, #6)
Bugs
- SftpStore correctly handle directory removals (@robertbutacu, #9)
- SftpStore support for servers not configured with
ChrootDirectory
(@jgogstad, #5)
Other improvements
- Google, AWS and various build dependencies update (@gafiatulin, #7)
- New build and release setup with sbt-ci-release, mdoc. Releases to new maven coordinates. (@jgogstad , #4, #10)