v0.3.7
What's Changed
This is a maintenance release. This is binary and source compatible with previous releases (with a minor exception in the BitSetUtil for scalajs changing, but that type was never intended for users to access and we hope has not reached any user code). The main user facing changes are:
- better error messages for when working with optional parsers or rep0 parsers followed by
Parser
instances (parsers that must parse at least one character). - better performance of several combinators and parsers (especially stringIn, which no longer allocates on match).
- addition of Parser.fromCharMap and fromStringMap to make parsers from
Map[Char, A]
andMap[String, A]
conveniently.
Code updates
- Fix typo by @stephenjudkins in #336
- String interpolator parsers by @stephenjudkins in #339
- Optimize .as(()) to .void by @johnynek in #347
- introduce hasKnownResult to optimize several parsers. by @johnynek in #348
- Improve RadixNode add a few more benchmarks by @johnynek in #352
- Fix RadixNode.matchAt by @johnynek in #362
- Optimize Not error condition by @johnynek in #363
- Fast charIn for ranges like 'A' to 'Z' by @Odomontois in #360
- Add fromCharMap and fromStringMap by @johnynek in #373
- Remove allocations from StringIn when returning a string by @johnynek in #368
- Improve String generation by @johnynek in #385
- update: use java.util.BitSet on js platform by @i10416 in #384
- Optimize
a.? ~ b
for better error reporting by @johnynek in #389 - Remove parser interpolator by @johnynek in #399
- minor improvement to cheapOneOf0 by @johnynek in #400
- Improve error reporting for rep0, repAs0 by @johnynek in #396
- remove some unneeded code in Peek/Not by @johnynek in #401
Dependency updates
- Bump Readme versions and add some tests by @johnynek in #314
- Update scalafmt-core to 3.1.2 by @scala-steward in #315
- Update cats-core to 2.7.0 by @scala-steward in #317
- Update scalafmt-core to 3.2.0 by @scala-steward in #318
- Update sbt-scalafmt to 2.4.5 by @scala-steward in #325
- Update sbt to 1.5.6 by @scala-steward in #326
- Update sbt-scalajs, scalajs-compiler, ... to 1.8.0 by @scala-steward in #327
- Update scalafmt-core to 3.2.1 by @scala-steward in #324
- Update sbt to 1.5.7 by @scala-steward in #328
- Update sbt to 1.5.8 by @scala-steward in #331
- Update scalafmt-core to 3.2.2 by @scala-steward in #332
- Update scalafmt-core to 3.3.0 by @scala-steward in #334
- Update sbt-scalafmt to 2.4.6 by @scala-steward in #333
- Update sbt to 1.6.0 by @scala-steward in #335
- Update sbt to 1.6.1 by @scala-steward in #338
- Update scala to 2.13.7 by @regadas in #337
- Update scalafmt-core to 3.3.1 by @scala-steward in #343
- Update sbt-github-actions and sbt-spiewak-sonatype by @regadas in #322
- Update jawn-ast to 1.3.2 by @scala-steward in #345
- Update sbt-scoverage to 1.9.3 by @scala-steward in #349
- Update scala-library, scala-reflect to 2.13.8 by @scala-steward in #351
- Update scalafmt-core to 3.3.2 by @scala-steward in #353
- Migrate to sbt-typelevel by @armanbilge in #354
- Update sbt-typelevel to 0.4.1 by @scala-steward in #355
- Update scalafmt-core to 3.3.3 by @scala-steward in #356
- Update sbt-typelevel to 0.4.3 by @scala-steward in #358
- Add scala3 mima rules for RadixNode by @regadas in #361
- Use scalafmt scala213 runner dialect by @regadas in #359
- Update sbt-mdoc to 2.3.0 by @scala-steward in #364
- Update scalafmt-core to 3.4.0 by @scala-steward in #365
- Update scalafmt-core to 3.4.1 by @scala-steward in #369
- Update scalafmt-core to 3.4.2 by @scala-steward in #370
- Update sbt-typelevel to 0.4.4 by @scala-steward in #372
- Update scalafmt-core to 3.4.3 by @scala-steward in #375
- Update sbt-assembly to 1.1.1 by @scala-steward in #377
- Update sbt to 1.6.2 by @scala-steward in #366
- Update sbt-typelevel to 0.4.5 by @scala-steward in #374
- Update sbt-assembly to 1.2.0 by @scala-steward in #378
- Update sbt-buildinfo to 0.11.0 by @scala-steward in #383
- Update sbt-scalajs, scalajs-compiler, ... to 1.9.0 by @scala-steward in #380
- Update sbt-mdoc to 2.3.1 by @scala-steward in #387
- Update parboiled to 2.4.0 by @scala-steward in #388
- Update sbt-typelevel to 0.4.6 by @scala-steward in #390
- Update sbt-scalajs-crossproject to 1.2.0 by @scala-steward in #394
- Update sbt-api-mappings to 3.0.2 by @scala-steward in #393
- Update sbt-mdoc to 2.3.2 by @scala-steward in #397
- Update sbt-typelevel to 0.4.7 by @scala-steward in #398
New Contributors
- @armanbilge made their first contribution in #354
- @Odomontois made their first contribution in #360
- @i10416 made their first contribution in #384
Full Changelog: v0.3.6...v0.3.7