Skip to content

chore(deps): bump nom from 7.1.3 to 8.0.0 #54

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 27, 2025

Bumps nom from 7.1.3 to 8.0.0.

Changelog

Sourced from nom's changelog.

8.0.0 2025-01-25

This versions represents a significant refactoring of nom to reduce the amount of code generated by prsers, 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 write combinator(arg).parse(input).

This release also marks th introduction of the nom-language crate, which will hold tools more focused on language parsing than the rest of nom, like the VerboseError type and the newly added precedence parsing combinators.

Thanks

... (truncated)

Commits

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps [nom](https://github.com/rust-bakery/nom) from 7.1.3 to 8.0.0.
- [Changelog](https://github.com/rust-bakery/nom/blob/main/CHANGELOG.md)
- [Commits](rust-bakery/nom@7.1.3...8.0.0)

---
updated-dependencies:
- dependency-name: nom
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels Jan 27, 2025
@UserIsntAvailable
Copy link
Collaborator

UserIsntAvailable commented Mar 17, 2025

@nenikitov this version brought quite a lot of breaking changes, so before doing any changes, I want to know if you want to continue using nom or would you rather use other alternatives? I know you wanted to move into binrw before.

@nenikitov
Copy link
Owner

Oof, nom 8.0....

binrw is a good crate which could work, but there are some questions pending, especially around pointer types. My discussion isn't resolved yet.

Here is a quick comparison (of what I remember, I really need to get back into this project)

  • Advantages of binrw
    • Declarative, easy to understand
    • We can get writing for free (modding?)
    • Everything is in types and annotations, less code to write once we wrote all necessary extensions
  • Advantages of nom
    • Imperative, easy to inject code
    • We are already using it

If you want, we can focus on making a proof of concept with some easy (texture) and complex (packfile itself) types to see how it handles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file rust Pull requests that update Rust code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants