tiptap: 2.0.0-beta.204 breaks tiptap/react
What’s the bug you are facing?
Updating from 2.0.0-beta.203 to 204 gives us an error message and the tiptap editor no longer renders correctly in react.
Error: Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.
Call Stack
checkForNestedUpdates
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (27292:0)
scheduleUpdateOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (25475:0)
enqueueSetState
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (14067:0)
Component.prototype.setState
node_modules/.pnpm/react@18.2.0/node_modules/react/cjs/react.development.js (354:0)
removeRenderer/<
node_modules/.pnpm/@tiptap+react@2.0.0-beta.204_z5f4pk2xasrno4tu55p73jy46e/node_modules/@tiptap/react/dist/tiptap-react.esm.js (99:0)
flushSync
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (26189:0)
flushSync$1
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (29823:0)
maybeFlushSync
node_modules/.pnpm/@tiptap+react@2.0.0-beta.204_z5f4pk2xasrno4tu55p73jy46e/node_modules/@tiptap/react/dist/tiptap-react.esm.js (81:21)
removeRenderer
node_modules/.pnpm/@tiptap+react@2.0.0-beta.204_z5f4pk2xasrno4tu55p73jy46e/node_modules/@tiptap/react/dist/tiptap-react.esm.js (98:0)
destroy
node_modules/.pnpm/@tiptap+react@2.0.0-beta.204_z5f4pk2xasrno4tu55p73jy46e/node_modules/@tiptap/react/dist/tiptap-react.esm.js (229:0)
destroy
node_modules/.pnpm/@tiptap+react@2.0.0-beta.204_z5f4pk2xasrno4tu55p73jy46e/node_modules/@tiptap/react/dist/tiptap-react.esm.js (337:0)
destroy
node_modules/.pnpm/prosemirror-view@1.29.0/node_modules/prosemirror-view/dist/index.js (1487:0)
destroy
node_modules/.pnpm/prosemirror-view@1.29.0/node_modules/prosemirror-view/dist/index.js (676:0)
updateStateInner
node_modules/.pnpm/prosemirror-view@1.29.0/node_modules/prosemirror-view/dist/index.js (5033:0)
update
node_modules/.pnpm/prosemirror-view@1.29.0/node_modules/prosemirror-view/dist/index.js (4964:0)
setProps
node_modules/.pnpm/prosemirror-view@1.29.0/node_modules/prosemirror-view/dist/index.js (4978:0)
componentWillUnmount
node_modules/.pnpm/@tiptap+react@2.0.0-beta.204_z5f4pk2xasrno4tu55p73jy46e/node_modules/@tiptap/react/dist/tiptap-react.esm.js (112:0)
callComponentWillUnmountWithTimer
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (22852:0)
safelyCallComponentWillUnmount
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (22873:0)
disappearLayoutEffects_begin
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24745:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24538:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24464:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24332:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24332:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24510:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24464:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24332:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24346:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24576:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24332:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24332:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24293:0)
recursivelyTraverseMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24273:0)
commitMutationEffectsOnFiber
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24432:0)
commitMutationEffects
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (24243:0)
commitRootImpl
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (26810:0)
commitRoot
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (26682:0)
performSyncWorkOnRoot
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (26117:0)
flushSyncCallbacks
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (12042:0)
commitRootImpl
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (26959:0)
commitRoot
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (26682:0)
finishConcurrentRender
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (25981:0)
performConcurrentWorkOnRoot
node_modules/.pnpm/react-dom@18.2.0_react@18.2.0/node_modules/react-dom/cjs/react-dom.development.js (25809:0)
workLoop
node_modules/.pnpm/scheduler@0.23.0/node_modules/scheduler/cjs/scheduler.development.js (266:0)
flushWork
node_modules/.pnpm/scheduler@0.23.0/node_modules/scheduler/cjs/scheduler.development.js (239:0)
performWorkUntilDeadline
node_modules/.pnpm/scheduler@0.23.0/node_modules/scheduler/cjs/scheduler.development.js (533:0)
Which browser was this experienced in? Are any special extensions installed?
Firefox latest, chrome latest. Starterkit extension Couple own extensions that have state in them to render images or files.
How can we reproduce the bug on our side?
This is a nextjs 13 project with react 18.2 and typescript.
I’ll try to create a sandbox
Can you provide a CodeSandbox?
No response
What did you expect to happen?
Tiptap editor rendering like in 203
Anything to add? (optional)
No response
Did you update your dependencies?
- Yes, I’ve updated my dependencies to use the latest version of all packages.
Are you sponsoring us?
- Yes, I’m a sponsor. 💖
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Reactions: 2
- Comments: 21 (15 by maintainers)
stumbled upon this today, I was on 220 and I was receiving this error. Removing node_modules and installing them again did the trick, in case anyone else is experiencing this.
It might have happened because I only upgraded the packages and did not do a clean install.
@bdbch thanks, just confirmed in my repro the error no longer appears with 219.
I have a fix for the flushSync issue merged in main. I’ll do a release next week on monday.
@bdbch We have now come across this issue again, tested against latest 2.0.0-beta.217 and could replicate it now with the starter kit. A reproduction repository is available here: https://github.com/arendjantetteroo/tiptap-flushsyncerror
Looks like it’s also coming from the
parseHTML()within a custom node.