Skip to content

chore(deps): bump guppy from 0.17.25 to 0.17.26#305

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/guppy-0.17.26
Open

chore(deps): bump guppy from 0.17.25 to 0.17.26#305
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/guppy-0.17.26

Conversation

@dependabot
Copy link
Copy Markdown

@dependabot dependabot Bot commented on behalf of github May 22, 2026

Bumps guppy from 0.17.25 to 0.17.26.

Release notes

Sourced from guppy's releases.

guppy 0.17.26

Fixed

A node with a self-loop edge -- typically a package with a path dev-dependency on its own crate, or a feature node like base/[base] arising from one -- was treated inconsistently by several APIs. The root cause was that self-edges were counted as incoming edges in the SCC and topological-sort machinery, which transitively confused everything built on top:

  • Sccs::externals / forward roots. Previously, a package whose only incoming edge was its own self-loop was excluded from the set of forward roots, so callers iterating over query_workspace().resolve().root_ids(_) did not see it, and forward link enumeration on it was broken. Now, self-loop edges no longer disqualify a node from being a forward root: a single-node SCC is external iff it has no incoming edges from outside its own SCC. (#586)
  • Topological sort. Previously, TopoWithCycles::new filtered self-looping nodes out of its root set for the same reason, dropping them from the DFS and then placing them and their descendants at the end of the topological order via a best-effort fallback. Now, the root-set predicate accepts a node whose only incoming edge is its own self-loop, so such nodes are visited in DFS order alongside other roots. (#589)
  • Cycles::is_cyclic and feature::Cycles::is_cyclic. Previously, these were reflexively true for every package or feature, regardless of actual cycle membership. Now, they return true only when the argument lies on a directed cycle: either in a multi-node SCC, or in a single-node SCC with a self-loop edge. This is a behavior change, but in the context of the rest of this release is being treated as a bugfix. (#590)
  • Cycles::all_cycles and feature::Cycles::all_cycles. Previously, these reported only SCCs of two or more elements. Now, they also yield single-node SCCs whose node has a self-loop edge, in topological order alongside multi-node SCCs. This makes all_cycles() and is_cyclic(x, x) agree on what counts as a cycle. (#590)
  • FeatureGraphWarning::SelfLoop. Previously, this warning was emitted for every self-loop edge in the feature graph, including legitimate ones such as a path dev-dependency on the package's own crate. Now, it is restricted to named-feature self-loops like [features] a = ["a"], which really are user errors. (#592)

Documentation

  • PackageGraph::directly_depends_on and FeatureGraph::directly_depends_on. Previously, both documented themselves as returning false when the two IDs were equal. The implementation has always called dep_graph.contains_edge(a, b), which correctly returns true for self-loop edges, so the

... (truncated)

Commits
  • 3f7c2dd [guppy] version 0.17.26
  • bc1c151 [target-spec-miette] version 0.4.8
  • b6dd690 set up pre-release replacements
  • e660e26 [target-spec-miette] version 0.4.7
  • fa2f007 [guppy] speed up graph test compilation (#596)
  • cc8d141 [guppy] more fixes for self-loop cycles (#595)
  • ac01af6 [guppy] update some doc comments
  • 28ac5b5 [guppy] gate proptest_summary_id_roundtrip on the summaries feature (#594)
  • 9a6d61f [guppy] assert topo fallback invariant and add multi-node-cycle test (#593)
  • e2c63a3 [guppy] restrict FeatureGraphWarning::SelfLoop to named-feature edges (#592)
  • 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 [guppy](https://github.com/guppy-rs/guppy) from 0.17.25 to 0.17.26.
- [Release notes](https://github.com/guppy-rs/guppy/releases)
- [Changelog](https://github.com/guppy-rs/guppy/blob/main/release.toml)
- [Commits](guppy-rs/guppy@guppy-0.17.25...guppy-0.17.26)

---
updated-dependencies:
- dependency-name: guppy
  dependency-version: 0.17.26
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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 May 22, 2026
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.

0 participants