Skip to content

Conversation

@Aaron-Wrote-This
Copy link

Fixes stack overflow seen when accessing the Callback Graph when there are circular callbacks present.
Solves: #1656

image

Contributor Checklist

  • I have broken down my PR scope into the following TODO tasks
    • Add cycle breaker to CallbackGraphEffects updateSelectedNode
  • I have run the tests locally and they passed. (refer to testing section in contributing)
  • I have added tests, or extended existing tests, to cover any new features or bugs fixed in this PR

optionals

  • I have added entry in the CHANGELOG.md
  • If this PR needs a follow-up in dash docs, community thread, I have mentioned the relevant URLS as follows
    • this GitHub #PR number updates the dash docs
    • here is the show and tell thread in Plotly Dash community

@Aaron-Wrote-This Aaron-Wrote-This force-pushed the bugfix/callback_graph_recursion_on_circular_dependencies branch from 6672da7 to 8c748b1 Compare November 1, 2025 04:28
@Aaron-Wrote-This Aaron-Wrote-This force-pushed the bugfix/callback_graph_recursion_on_circular_dependencies branch from 8c748b1 to fd083aa Compare November 4, 2025 02:18
Copy link
Contributor

@T4rk1n T4rk1n left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just need to run npm run format to fix the linting issue.

Comment on lines +30 to +32
function ascend(node, collection, visited = new Set()) {
// FIXME: Should we include State parents but non-recursively?
if (visited.has(node.id())) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can remove that fixme comment now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants