Skip to content

Conversation

lifedraft
Copy link

@lifedraft lifedraft commented Jun 2, 2025

What:

Fix stack overflow error in React 19 caused by deepmerge attempting to merge children props. Fixes: #476

Why:

The library was crashing with "RangeError: Maximum call stack size exceeded" when used with Next.js 15 and React 19. This occurred because the WithStore HOC was trying to deepmerge this.props.children, which contains React elements with circular references that cause infinite recursion during the merge process.

How:

Modified the render() method in WithStore.jsx to extract children from props before passing the remaining props to deepMerge. The children are then passed directly to the wrapped component, avoiding the circular reference issue while maintaining the same functionality.

Checklist:

  • Documentation added/updated (N/A)
  • Typescript definitions updated (N/A)
  • Tests added and passing
  • Ready to be merged

@sk0le
Copy link

sk0le commented Sep 21, 2025

Any updates to this PR? I used this with an older version, we're migrating to the Next 15, so it would benefit us really much? I am more than happy to help with anything needed.

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.

NextJS 15 incompatibility

2 participants