Releases: j-mie6/parsley
Parsley 4.5.0-RC1
This release is a deprecating release, which flags as much functionality as possible that will be removed in 5.0.0
for removal.
What's Changed
- Runtime parser result debugger with frontend support by @MF42-DZH in #219
- Wiki Improvements by @j-mie6 in #214
Full Changelog: v4.4.0...v4.5.0-RC1
Parsley 4.4.0
This is a minor release, which adds several new combinators with no changes to existing functionality or deprecations.
- Add
satisfyMap
- Add support for explicit register tracking in
debug
- Add
profile
combinator for light-weight analysis of what parsers take up the most time. - Expose
partialAmend
andpartialAmendThenDislodge
- Expose
range
combinators - Expose more unicode compliant combinators
- Generalise
stringOfMany
andstringOfSome
to take character predicates - Add the
preventative
combinators as per thesis - Add a
filterWith
,verifiedErrorWith
andpreventWith
builder combinators, with genericErrorGen
functionality to help form messages. - New
empty
combinator inParsley
that has variable width caret - The
label
combinator now supports multiple labels at once. - Introduce
atomic
alias forattempt
(no deprecation until 4.5) - Add configuration to
TillNextWhitespace
and helpers for specifying what whitespace is. - Add the
span
combinator
What's Changed
- Wiki migration to
sbt-typelevel-site
by @roccojiang in #213 - Parsley 4.4.0 by @j-mie6 in #207
New Contributors
- @roccojiang made their first contribution in #213
Full Changelog: v4.3.1...v4.4.0
Parsley 4.4.0-RC1
Added alias for unsafe()
namely, impure
; moved the UnexpectedItem
functionality into the VanillaGen
object, where it should more appropriately live. Documentation of milestone releases completed. From here on out, there will be no further binary incompatible changes, and no new features ahead of 4.4.0
.
Full Changelog: v4.4.0-M8...v4.4.0-RC1
Parsley 4.4.0-M8
Added x: A
to the update width on ErrorGen
, allowing for finer control. Also exposed withWidth
to position
, allowing for concise custom definitions of the verified/preventative error patterns in required.
Full Changelog: v4.4.0-M7...v4.4.0-M8
Parsley 4.4.0-M7
Added the profile
combinator, optimised character reading when results are unused, and added ErrorGen
for customising the prevent, verify, and filters. Note that label
introduced in M1 has been removed, so code may require a recompile.
Full Changelog: v4.4.0-M6...v4.4.0-M7
Parsley 4.4.0-M6
Added span
combinator, which allows for the extraction of the input consumed by a parser, as well as an optimisation that tries to drop the generation of results in parsers whose results are not needed. Added first-class combinator support for the Preventative Error pattern in parsley.errors.patterns
. The debug
combinator now supports any number of registers to be specified, allowing for tracking values within the state in a user-friendly way.
What's Changed
- Wiki migration to
sbt-typelevel-site
by @roccojiang in #213
New Contributors
- @roccojiang made their first contribution in #213
Full Changelog: v4.4.0-M5...v4.4.0-M6
Parsley 4.4.0-M5
Milestone release mainly with some internal improvements that help improve efficiency.
What's Changed
Full Changelog: v4.4.0-M4...v4.4.0-M5
Parsley 4.4.0-M4
Fourth milestone release of 4.4.0: just adds some small optimisations and generalisations.
Full Changelog: v4.4.0-M3...v4.4.0-M4
Parsley 4.4.0-M3
This milestone release exposes the following new combinators:
atomic
, the new alias forattempt
, which will replace it moving forward.count
andcount1
for counting how many times a parser succeeds.count
,range
, andrange_
combinators that parse a parser within a range of possible times.- Allowed for the configuration of the meaning of whitespace in
TillNextWhitespace
. - Added the
empty(n)
combinator toparsley.Parsley
, allowing for fine caret control. - Added the
guard
helper combinator, which fails if the given parser does not successfully returntrue
.
Happy 100th release! 🥳 🎉
Full Changelog: v4.4.0-M2...v4.4.0-M3
Parsley 4.4.0-M2
Second milestone release for 4.4.0
, adding the unicode
object with all the same combinators as character
. Some slightly generalisations to the digit parsers as well, and made crlf
atomic, as advertised in docs.
Full Changelog: v4.4.0-M1...v4.4.0-M2