Fs2 Data Versions Save

streaming data parsing and transformation library

v1.11.0

1 month ago

This release brings new feature in the pretty printing domain!

  • Project
    • Update copyright and clarify it in CONTRIBUTING guidelines (#564 by @satabin)
  • Common
    • Add streaming pretty printing infrastructure (#567 by @satabin)
  • JSON
    • Use the new pretty printer under the hood (#567 by @satabin)
  • XML
    • Add pretty printing for XML (#565 and #567 by @satabin)

Following dependency updates are included (by @scala-steward):

  • Update sbt-scalajs, scalajs-compiler, ... to 1.16.0
  • Update fs2-core, fs2-io to 3.10.0
  • Update sbt-assembly to 2.2.0
  • Update scala3-library, ... to 3.3.3
  • Update sbt-typelevel, sbt-typelevel-site to 0.6.7
  • Update scala-library, scala-reflect to 2.12.19
  • Update kind-projector to 0.13.3
  • Update sbt to 1.9.9
  • Update scalafmt-core to 3.8.0
  • Update weaver-cats, weaver-scalacheck to 0.8.4
  • Update nscplugin, sbt-scala-native, ... to 0.4.17
  • Update fs2-core to 3.9.4
  • Update play-json to 3.0.2
  • Update shapeless3-deriving to 3.4.1
  • Update sbt-jmh to 0.4.7

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.10.0..v1.11.0
    23  Lucas Satabin
    20  Scala Steward

v1.10.0

5 months ago

This is a pure dependency update release. However, it is a minor increment as it contains two major releases:

  • cats-parse is bumped to 1.0.0
  • play-json is bumped to 3.0.1 and now uses the org.playframework group id

This also includes a documentation fix by @ubaldop (see #551). Welcome to your first contribution! :tada:

Following dependency updates are included (by @scala-steward):

  • Update diffson to 4.5.0
  • Update sbt-typelevel, sbt-typelevel-site to 0.6.3
  • Update play-json to 3.0.1
  • Update sbt-assembly to 2.1.5
  • Update scalafmt-core to 3.7.17
  • Update cats-parse to 1.0.0
  • Update fs2 to 3.9.3
  • Update sbt to 1.9.7
  • Update scala-native to 0.4.16

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.9.1..v1.10.0
    18  Scala Steward
     1  Ubaldo Pescatore

v1.9.1

7 months ago

This bugfix release contains one JSON fix

  • JSON
    • Fix emission of default value in jq to happen only when actually nothing matches (see #533 by @satabin)

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.9.0..v1.9.1
     2  Lucas Satabin

v1.9.0

7 months ago

This release adds a new new big feature for JSON and a total revamp of the website!

  • Global
    • Artifacts are now compiled to Java 11 bytecode (see #525)
    • The website has been entirely revamped, and now uses Laika (instead of nanoc) and pagefind for the search engine (instead of stork) (see #528, #502 by @satabin).
    • A new cookbook section has been added to demo bigger examples and integration of fs2-data (see #413, #529 by @satabin).
  • JSON
    • The big new feature of this release, is the addition of a JSON query language (similar to jq) operating in a streaming fashion (see #526, #426, #531, #371 by @satabin). This new feature allows to query sub-parts of a JSON input and generate a new JSON output out of the query, in a purely declarative way. Output JSON tokens are emitted as soon as they are produced, and processed input is discard, so that it does not need to hold the entire JSON data into memory.

In addition following dependency updates are included (by @scala-steward):

  • Update play-json to 2.10.1
  • Update cats-parse to 0.3.10
  • Update sbt-typelevel to 0.5.3
  • Update sbt-scalajs, scalajs-compiler, ... to 1.14.0
  • Update sbt-scoverage to 2.0.9
  • Update sbt to 1.9.6
  • Update sbt-scalafix to 0.11.1
  • Update scala3-library, ... to 3.3.1
  • Update scala-library, scala-reflect to 2.13.12
  • Update fs2-core, fs2-io to 3.9.2

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.8.1..v1.9.0
    54  Lucas Satabin
    31  Scala Steward

v1.8.1

7 months ago

This bugfix release contains one JSON fix

  • JSON
    • Avoid duplicated token when chunk ends with escape (see #515 and #516 by @alec-hauck and @ybasket)

In addition following dependency updates are included (by @scala-steward):

  • Update sbt-jmh to 0.4.6
  • Update scalafmt-core to 3.7.14
  • Update scala-native to 0.4.15
  • Update circe to 0.14.6
  • Update fs2-core, fs2-io to 3.9.1
  • Update sbt to 1.9.4
  • Update fs2 to 3.8.0
  • Update scalafmt-core to 3.7.11

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.8.0..v1.8.1
    13  Scala Steward
     3  Yannick Heiber
     1  Lucas Satabin

v1.8.0

9 months ago

This release mainly contains performance improvements for the JSON parser

  • JSON
    • Make the JSON parser allocate less data (mainly less strings and options). See #453 by @satabin
      • Some of these improvements are made directly in the CharLikeChunk type and as such should benefit every text base format using them
      • To leverage the full improvements made in CharLikeChunks, parsers need to be adapted
      • Inheritance of CharLikeChunks has been deprecated and will be sealed in the future
    • Avoid creation of JSON Token when unnecessary. See #491 by @satabin
      • When parsing an input stream directly to circe Json type (or any Json AST), intermediate tokens are not constructed anymore, improving the performance
      • According to our measurement, fs2-data-json-circe is now on par with circe-fs2 and can be used as a drop-in replacement.
  • Infrastructure
    • Artifacts are now published to s01.oss.sonatype.org. See #494 by @satabin

In addition following dependency updates are included (by @scala-steward):

  • Update scalafmt-core to 3.7.10
  • Update scala-xml to 2.2.0
  • Update sbt to 1.9.2
  • Update sbt-scala-native-crossproject, ... to 1.3.2
  • Update sbt-scalajs, scalajs-compiler, ... to 1.13.2
  • Update scala-collection-compat to 2.11.0
  • Update scala-library, scala-reflect to 2.13.11
  • Update scala-library, scala-reflect to 2.12.18
  • Update sbt-jmh to 0.4.5
  • Update sbt-typelevel to 0.4.22
  • Update nscplugin, sbt-scala-native, ... to 0.4.14
  • Update sbt-scoverage to 2.0.8
  • Update scala3-library, ... to 3.3.0
  • Update fs2-core, fs2-io to 3.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.7.1..v1.8.0
    30  Lucas Satabin
    24  Scala Steward
     4  Yannick Heiber

v1.7.1

1 year ago

This bugfix release contains one CBOR fix

  • CBOR
    • Fix CBOR number encoding (see #465 by @ybasket)

In addition following dependency updates are included (by @scala-steward):

  • Update scala-collection-compat to 2.10.0
  • Update sbt-typelevel to 0.4.20
  • Update sbt-scala-native-crossproject, ... to 1.3.1
  • Update weaver to 0.8.3
  • Update sbt-scalajs, scalajs-compiler, ... to 1.13.1
  • Update scalafmt-core to 3.7.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 v1.7.0..v1.7.1
    10  Scala Steward
     5  Lucas Satabin
     2  Yannick Heiber

v1.7.0

1 year ago

This release contains several improvements and bug fixes

  • CSV
    • Improved handling of broken CSV files (see #436 by @alycklama and @GerretS and #446 by @ybasket)
    • More flexible handling of empty and missing fields (see #459 by @satabin)
    • Bug fix for line numbers (see #462 by @ybasket)
  • CBOR
    • Make Bignum encode/decoe roundtrip (see #454 by @ybasket)
  • Finite State (experimental)
    • Add a generic regular language to be used by path DSLs (see #427 by @satabin)
    • Add a generic tree query language to be used by query DSLs (see #428 by @satabin)

In addition following dependency updates are included (by @scala-steward):

  • Update sbt-scala-native, ... to 0.4.12
  • Update sbt-typelevel to 0.4.19
  • Update diffson to 4.4.0
  • Update circe to 0.14.5
  • Update scalafmt to 3.7.2
  • Update sbt-scoverage to 2.0.7
  • Update fs2 to 3.6.1
  • Update sbt-jmh to 0.4.4
  • Update scala3 to 3.2.2
  • Update sbt-mdoc to 2.3.7
  • Update scalajs to 1.13.0
  • Update sbt to 1.8.2
  • Update shapeless3-deriving to 3.3.0
  • Update scala-collection-compat to 2.9.0
  • Update scala-java-time to 2.5.0
  • Update weaver to 0.8.1

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.6.1..v1.7.0
    61  Scala Steward
    24  Yannick Heiber
    21  Lucas Satabin
    15  Anton Lijcklama à Nijeholt
     2  Gerret Sanders

v1.6.1

1 year ago

This release fixes a bug in the CSV module.

  • CSV
    • Fix a bug that lead to missing columns falsely interpreted as empty when using derived decoders with headers on Scala 3 (see #437 by @GerretS and @ybasket).

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.6.0..v1.6.1
     5  Yannick Heiber
     2  Lucas Satabin
     1  Gerret Sanders

v1.6.0

1 year ago

This release contains several improvements

  • Common
    • Add support for Scala Native for most modules! (thanks to @ybasket, see #384) :tada:
    • Switch to sbt-typelevel for build, which allows for better build matrix and flexibility (thanks to @ybasket and @armanbilge, see #315 and #398)
  • XML
    • Fix XML rendering (see #385 by @ybasket)
  • CSV
    • Support for empty cell string derivation (see #391 by @ybasket)
    • Simplification in shapeless parts (see #387and #409 by @ybasket)
    • Add non empty access to rows (see #397 by @ybasket)
    • Add instances for DecoderResult (see #396 by @ybasket)
    • Improvement in documentation (see #390 by @zetashift)
  • Finite State
    • Add more streaming finite state implementations (see #369, #394, #399, #408, #410 by @satabin) paving the way to tree rewriting DSLs (such as XQuery or jq languages).

In addition following dependency updates are included:

  • Update sbt-scoverage to 2.0.6
  • Update scalafmt-core to 3.6.0
  • Update sbt-typelevel to 0.4.16
  • Update sbt-mdoc to 2.3.6
  • Update scala-library, scala-reflect to 2.13.10
  • Update play-json to 2.10.0-RC7
  • Update shapeless to 2.3.10

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.5.1..v1.6.0       
    40  Yannick Heiber
    29  Lucas Satabin
    10  Scala Steward
     1  zetashift