Releases: gnieh/fs2-data
Release 1.0.1
This is the first fix release in the 1.x series.
This release contains following changes:
- CSV
- Cache access by header in CSV rows to improve performances (see #205 )
In addition following dependency updates are included:
- sbt-scalajs-crossproject to 1.1.0
- fs2-core, fs2-io to 3.1.0
- scalafmt-core to 3.0.0-RC6
- sbt-scalafmt to 2.4.3
- scala-collection-compat to 2.5.0
- scala3-library to 3.0.1
- sbt to 1.5.5
- shapeless3-deriving to 3.0.2
- sbt-mdoc to 2.2.22
- sbt-scalajs, scalajs-compiler to 1.7.0
For a complete list of issues and PRs, see the milestone
This release was brought to you by the following contributors:
$ git shortlog -sn --no-merges v1.0.0..v1.0.1
11 Scala Steward
1 Lucas Satabin
Release 1.0.0
This release is the final release for fs2-data 1.0.0 which brings tese main changes:
- Cats Effect 3.0 and fs2 3.0: These libraries are the foundation fs2-data builds on. As some fundamentals have changed significantly, fs2-data had to adjust as well and can now profit from the cleaner type class hierarchy and the performance improvements coming with these major updates. The current 0.10.x will be the last version line that builds against CE 2.x and fs2 2.x.
- More input flexibility: All text-based parsers now build on top of the
CharLikeChunks
, so the boilerplaty conversion of input streams toChar
is now obsolete.Char
,String
and to some extentByte
streams are now supported directly. To cover this change, there's a scalafix migration you can use from this repo directly or wait until they are availabe via Scala Steward. - New CSV data types & pipes: The CSV pipes known from the 0.x version of fs2-data work nicely, but for most use cases, several of them had to be combined, leading to more boilerplate than what should be necessary to solve the most common problems the library is used for. So 1.0.0 introduces a new high-level API on top of the existing (which is moved to
fs2.data.csv.lowlevel
) to provide more concise and easy-to-understand solutions to these. Also, theCsvRow
andRow
are now not separate classes anymore, but type aliases on a more generic implementation calledRowF
. Source compatibility should be given for (almost) all use cases. - Adds the line number in case of CSV error. This can be handy to debug where problems occurred in the data source file.
- Switches from contextual to literally for JSON selector interpolator.
The release is cross-published for Scala 2.12, 2.13, and 3, for both JVM and Scala.js.
All feedback to the new version is very welcome, either via GitHub issue or Gitter.
For a complete list of issues and PRs, see the milestone
This release was brought to you by the following contributors:
$ git shortlog -sn --no-merges v0.10.0..v1.0.0
41 Yannick Heiber
31 Scala Steward
29 Lucas Satabin
v1.0.0-RC3
This release is the third release candidate for fs2-data 1.0.0 which adds support for Scala 3.
In addition, some dependencies have been updated. More small changes are likely come before a final 1.0.0, especially around Scala 3 compatibility.
The release is cross-published for Scala 2.12.13, 2.13.5, and 3 for both JVM and Scala.js.
All feedback to the new version is very welcome, either via GitHub issue or Gitter.
v1.0.0-RC2
This release is the second release candidate for fs2-data 1.0.0 which brings two main changes:
- Adds the line number in case of CSV error. This can be handy to debug where problems occurred in the data source file.
- Switches from contextual to literally for JSON selector interpolator.
In addition, some dependencies have been updated. More small changes are likely come before a final 1.0.0, especially around Scala 3 compatibility.
The release is cross-published for Scala 2.12.13 and 2.13.5, for both JVM and Scala.js.
All feedback to the new version is very welcome, either via GitHub issue or Gitter.
v1.0.0-RC1
This release is the first release candidate for fs2-data 1.0.0 which brings three main changes:
- Cats Effect 3.0 and fs2 3.0: These libraries are the foundation fs2-data builds on. As some fundamentals have changed significantly, fs2-data had to adjust as well and can now profit from the cleaner type class hierarchy and the performance improvements coming with these major updates. The current 0.10.x will be the last version line that builds against CE 2.x and fs2 2.x.
- More input flexibility: All text-based parsers now build on top of the
CharLikeChunks
, so the boilerplaty conversion of input streams toChar
is now obsolete.Char
,String
and to some extentByte
streams are now supported directly. To cover this change, there's a scalafix migration you can use from this repo directly or wait until the final 1.0.0 that is supposed to have this migration via Scala Steward. - New CSV data types & pipes: The CSV pipes known from the 0.x version of fs2-data work nicely, but for most use cases, several of them had to be combined, leading to more boilerplate than what should be necessary to solve the most common problems the library is used for. So 1.0.0-RC1 introduces a new high-level API on top of the existing (which is moved to
fs2.data.csv.lowlevel
) to provide more concise and easy-to-understand solutions to these. Also, theCsvRow
andRow
are now not separate classes anymore, but type aliases on a more generic implementation calledRowF
. Source compatibility should be given for (almost) all use cases, a scalafix making some pattern more idiomatic on the new API is planned additionally.
In addition, some dependencies have been updated. More small changes are likely come before a final 1.0.0, especially around Scala 3 compatibility and error handling in CSV decoding.
The release is cross-published for Scala 2.12.13 and 2.13.5, for both JVM and Scala.js.
All feedback to the new version is very welcome, either via GitHub issue or Gitter.
Release 0.10.0
This is the last feature release in the 0.x
series. From now on, development will be focusing on release 1.0.0, with bug fixes only on this series.
This release contains following changes:
- General
- Move tests to GH actions
- CSV
- Add support for custom
java.time
formats (see #129)
- Add support for custom
- CBOR
- Add CBOR module (see #68)
In addition following dependency updates are included:
- scala 2.13.5/2.12.13
- sbt 1.4.9
- scalatest 3.2.6
- scala-java-time 2.2.0
- fs2 2.5.3
- scala-collection-compat 2.4.2
- sbt-mdoc 2.2.18
- sbt-scalajs 1.5.0
- sbt-ci-release 1.5.5
For a complete list of issues and PRs, see the milestone
This release was brought to you by the following contributors:
$ git shortlog -sn --no-merges v0.9.0..v0.10.0
35 Scala Steward
18 Lucas Satabin
1 Brandon Brown
Release 0.9.0
This release contains following improvements:
- General
- Release from CI (the first CI release can be seen here)
- CSV
- Add non failing CSV decoding
Pipe
(see #72)
- Add non failing CSV decoding
In addition following dependency updates are included:
- sbt-ci-release 1.5.4
- sbt-mdoc 2.2.11
- sbt 1.4.2
- sbt-site 1.4.1
- scalafmt 2.7.5
- sbt-scalajs 1.3.0
For a complete list of issues and PRs, see the milestone
This release was brought to you by the following contributors:
$ git shortlog -sn --no-merges 0.8.0..v0.9.0
8 Scala Steward
6 Lucas Satabin
1 Gavin Bisesi
Release 0.8.0
This release contains following improvements:
- General
- JSON
- CSV
In addition following dependency updates are included:
- scalafmt 2.7.4
- sbt 1.4.0
- diffson 4.0.3
For a complete list of issues and PRs, see the milestone
This release was brought to you by the following contributors:
$ git shortlog -sn --no-merges 0.7.0..0.8.0
13 Lucas Satabin
6 Daniel Robert
4 Scala Steward
3 Carlos Quiroz
1 Gavin Bisesi
1 Yannick Heiber
Release 0.7.0
This release brings various improvements to the library:
- General
- A website with full documentation and examples
- use of
RaiseThrowable
instead ofApplicativeError
in the pipe signatures (see #22)
- CSV
- JSON
- More JSON utilities, including pretty printers (see #27)
For a complete list of merged PR, see the milestone
This release was brought to you by these contributors:
$ git shortlog -sn --no-merges 0.6.1..0.7.0
26 Lucas Satabin
9 Yannick Heiber
2 Andrew W
1 Andrew Ward
1 ybasket
Version 0.6.1
Bugfix release, fixing a bug with @CsvName
annotation on optional fields (#21)