Skip to content

Release 1.0.0

Compare
Choose a tag to compare
@satabin satabin released this 27 Jun 11:56
· 1161 commits to main since this release
v1.0.0
cd2d8da

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 to Char is now obsolete. Char, String and to some extent Byte 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, the CsvRow and Row are now not separate classes anymore, but type aliases on a more generic implementation called RowF. 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