LearnNewsExamplesServices
Frontmatter
id8618
titleImplement insertNodeBatch support for StringBasedRenderer
stateClosed
labels
aiperformancecore
assigneestobiu
createdAtJan 13, 2026, 8:53 PM
updatedAtJan 14, 2026, 12:24 AM
githubUrlhttps://github.com/neomjs/neo/issues/8618
authortobiu
commentsCount1
parentIssue8601
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 14, 2026, 12:24 AM

Implement insertNodeBatch support for StringBasedRenderer

Closed v11.21.0 aiperformancecore
tobiu
tobiu commented on Jan 13, 2026, 8:53 PM

Currently, DeltaUpdates.update only enables insertNodeBatch optimization if NeoConfig.useDomApiRenderer is true. StringBasedRenderer users miss out on this performance gain (sequential inserts causing multiple reflows).

Goal: Update DeltaUpdates.update logic to allow batching for StringBasedRenderer. Implement insertNodeBatch logic for StringBasedRenderer (concatenating HTML strings or creating a DocumentFragment from multiple HTML strings) to perform a single DOM insertion.

tobiu added the ai label on Jan 13, 2026, 8:53 PM
tobiu added the performance label on Jan 13, 2026, 8:53 PM
tobiu added the core label on Jan 13, 2026, 8:53 PM
tobiu added parent issue #8601 on Jan 13, 2026, 8:54 PM
tobiu assigned to @tobiu on Jan 13, 2026, 8:59 PM
tobiu referenced in commit ac77ab2 - "perf(DeltaUpdates): Enable insertNodeBatch for StringBasedRenderer (#8618)" on Jan 14, 2026, 12:23 AM
tobiu
tobiu Jan 14, 2026, 12:23 AM

Input from Gemini 3 Pro:

✦ Enabled insertNodeBatch support for StringBasedRenderer in DeltaUpdates.

  • Removed NeoConfig.useDomApiRenderer restriction on batching.
  • Updated insertNodeBatch to handle StringBasedRenderer creation via createNode.
  • Verified with new test case in FragmentDeltaUpdates.spec.mjs.
tobiu closed this issue on Jan 14, 2026, 12:24 AM