Skip to content

chore(deps): bump syn from 2.0.119 to 3.0.6 - #4

Merged
deangrant merged 3 commits into
mainfrom
dependabot/cargo/syn-3.0.6
Oct 12, 2026
Merged

deangrant merged 3 commits into
mainfrom
dependabot/cargo/syn-3.0.6

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 11, 2026

Copy link
Copy Markdown
Contributor

Bumps syn from 2.0.119 to 3.0.6.

Release notes

Sourced from syn's releases.

3.0.6

  • Fix parsing interpolated lifetime at statement start (#2082)

3.0.5

3.0.4

  • Allow safe fn in impl Parse for ForeignItemFn (#2078)

3.0.3

  • Documentation improvements

3.0.2

3.0.1

3.0.0

This release contains adjustments to the syntax tree to account for ongoing Rust language development from the 3 years since syn 2.0.0 and to anticipate some in-flight Rust language RFCs.

These include: default values in fields, pinned type sugar, raw lifetimes, generator blocks and functions, unnamed enum variants, attributes in tuple types and tuple patterns, named arguments in parenthesized generic argument lists, lightweight clones, const traits, const function pointers, mutability restricted fields, supertrait auto implementation, final associated functions, trait implementability restrictions, const blocks in path arguments, item-level const blocks, return type notation, never patterns, function delegation, mutable by-reference bindings, in-place initialization, field projections, explicitly dyn-compatible traits, view types, file-level frontmatter, generic const arguments, guard patterns, lazy type aliases, explicitly safe foreign items, super let, unsafe fields, pattern types, heterogeneous try-blocks, function contracts, async function trait bounds, static closure coroutine syntax, unsafe binder types, move expressions, for-await loops, and postfix keywords.

Breaking changes

Modifiers

To reserve more room for language evolution, there are 10 new non-exhaustive structs in the syntax tree having the following commonality:

  • Name ending in Modifiers. {BlockModifiers, ClosureModifiers, ConstModifiers, FieldModifiers, FnModifiers, ImplModifiers, LocalModifiers, TraitBoundModifiers, TraitModifiers, TypeModifiers}

  • Each implements Default. The default value is guaranteed to comprise no tokens.

  • Non-exhaustive. Can only be instantiated by Syn's parser or by creating and then mutating ▁▁Modifiers::default().

  • Does not implement Parse. When parsing, they are parsed by the enclosing syntax tree node.

  • Does not implement ToTokens. In some cases the syntax that these nodes might hold in the future is not necessarily contiguous tokens.

  • Provides .require_empty() -> Result<()> which returns a meaningfully spanned error if the modifiers are different from the empty default. This enables a caller to reject syntax it does not recognize without knowing what that syntax may be.

Types

... (truncated)

Commits
  • 559cab5 Release 3.0.6
  • 9088cad Merge pull request #2082 from dtolnay/lifetimevar
  • 3eb43bb Fix parsing interpolated lifetime at statement start
  • 7b2f6f9 Add regression test for issue 2081
  • d55bcd2 Update test suite to nightly-2026-09-13
  • 8e37bca Resolve non_kebab_case_bins warning
  • 4dfd88f Update test suite to nightly-2026-09-06
  • e0ad92d Release 3.0.5
  • 74e7d75 Merge pull request #2080 from sunshowers/lit-str-span
  • 4c264f3 In LitStr::parse_with, report correct span for lex errors
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually 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 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)

Bumps [syn](https://github.com/dtolnay/syn) from 2.0.119 to 3.0.6.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](dtolnay/syn@2.0.119...3.0.6)

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

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot requested a review from deangrant as a code owner October 11, 2026 07:24
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Oct 11, 2026
Syn 3 narrowed `ItemImpl::trait_` to `(Path, For)`, so the syn 2 three-element pattern no longer compiles. Updating the
destructure restores builds on the Dependabot syn 3 bump, including coverage CI.

* Change `trait_path_name` to match the syn 3 `trait_` tuple shape.
Local dry-rs (sibling dry-score) flagged type_1/type_2 twins across analysis helpers, CLI lookups, and optional-flag tests,
failing `--fail-on-findings`. Deduplicating real clones and differentiating parallel shapes restores a clean dry report
without changing metrics.

* Extract shared `leading_by_metric` and route effort/ownership leaders through it.
* Rewrite several filter/lookup helpers to distinct control flow to break type_2 matches.
* Mark intentional optional-flag and expand fixtures with `// dry-rs:ignore`.
* Cover nested symbol preference and the new helper so llvm-cov stays at 100%.
@deangrant deangrant self-assigned this Oct 12, 2026
@deangrant
deangrant merged commit be270f1 into main Oct 12, 2026
13 checks passed
@dependabot
dependabot Bot deleted the dependabot/cargo/syn-3.0.6 branch October 12, 2026 18:20
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.

1 participant