Update Rust crate nom to v8 #97
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
Test plan: CI should pass with updated dependencies. No review required: this is an automated dependency update PR.
Release Notes
rust-bakery/nom (nom)
v8.0.0Compare Source
This version represents a significant refactoring of nom to reduce the amount of code generated by parsers, and reduce the API surface. As such, it comes with some breaking changes, mostly around the move from closure based combinators to trait based ones. In practice, it means that instead of writing
combinator(arg)(input), we now writecombinator(arg).parse(input).This release also marks the introduction of the nom-language crate, which will hold tools more focused on language parsing than the rest of nom, like the
VerboseErrortype and the newly added precedence parsing combinators.Thanks
Added
Parser::map_resParser::map_optmanyandfoldcombinators using rangesmanycan collect into other types thanVecErrorandVerboseErrorcan be converted to owned versionsRemoved
nom::bits::*is no longer re-exported at the crate root. This export caused frequent confusion, since e.g.nom::complete::tagreferred tonom::bits::complete::taginstead of the much more commonly usednom::bytes::complete::tag. To migrate, change any imports ofnom::{complete::*, streaming::*, bits, bytes}tonom::bits::[...].parsecombinatorInputIter,InputTakeAtPosition,InputLength,InputTakeandSliceare now merged in theInputtraitChanged
Parser::mapandParser::flat_mapnow take aFnMutas argumentv7.1.3Compare Source
v7.1.2Compare Source
Thanks
Changed
many_m_nto 64kiBParserimplementors instead of only functionsAdded
Tupleparsing for the unit type as a special caseErrorConverton the unit type to make it usable as error type for bits parsersv7.1.1Compare Source
Thanks
Changed
Configuration
📅 Schedule: Branch creation - "on the 1st through 7th day of the month" in timezone America/Los_Angeles, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.