Daniel Imms
38f77fd4ca
Merge branch 'master' into iip_enhancements
2026-05-27 20:16:36 -07:00
Daniel Imms
d3352cf1d5
Merge pull request #5873 from xtermjs/package_upgrades
...
package upgrades & linter fixes
2026-05-27 20:16:08 -07:00
Daniel Imms
0c4ec34df8
Remove unnecessary @types/lru-cache
2026-05-27 20:11:20 -07:00
Daniel Imms
743852b60c
Remove unneeded comment
2026-05-27 19:58:52 -07:00
Daniel Imms
2069176528
Fix lint
2026-05-27 19:58:21 -07:00
Daniel Imms
acd2472961
Merge remote-tracking branch 'upstream/master' into package_upgrades
2026-05-27 19:23:43 -07:00
Daniel Imms
c2ecfe7446
Merge pull request #5895 from xtermjs/dependabot/npm_and_yarn/multi-f792d6d6d9
...
Bump qs and express
2026-05-27 18:26:29 -07:00
Daniel Imms
5656443163
Merge pull request #5957 from xtermjs/cursor/fix-progress-webkit-flake-5577
...
fix(addon-progress): stabilize flaky WebKit integration test harness
2026-05-27 17:32:25 -07:00
Cursor Agent and Daniel Imms
38174907f3
fix(addon-progress): stabilize WebKit integration test harness
...
Remove unnecessary unawaited setViewportSize from ProgressAddon tests,
which was the line reported in flaky CI failures. Use serial mode and
scoped hooks per Playwright shared-page guidance, and guard afterAll
teardown when setup fails.
Fixes #5956
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-28 00:24:06 +00:00
Daniel Imms
91fcb46a1a
Merge pull request #5955 from xtermjs/cursor/gitignore-cursor-logs-5a86
...
Ignore .cursor/*.log files in git
2026-05-27 16:25:02 -07:00
Cursor Agent and Daniel Imms
1d569f873d
Ignore .cursor/*.log files in git
...
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 23:22:32 +00:00
dependabot[bot]
e89fbf2979
Bump qs and express
...
Bumps [qs](https://github.com/ljharb/qs ) to 6.15.2 and updates ancestor dependency [express](https://github.com/expressjs/express ). These dependencies need to be updated together.
Updates `qs` from 6.14.2 to 6.15.2
- [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ljharb/qs/compare/v6.14.2...v6.15.2 )
Updates `express` from 4.22.1 to 4.22.2
- [Release notes](https://github.com/expressjs/express/releases )
- [Changelog](https://github.com/expressjs/express/blob/v4.22.2/History.md )
- [Commits](https://github.com/expressjs/express/compare/v4.22.1...v4.22.2 )
---
updated-dependencies:
- dependency-name: express
dependency-version: 4.22.2
dependency-type: direct:development
- dependency-name: qs
dependency-version: 6.15.2
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-05-27 21:53:01 +00:00
Daniel Imms
db244ea5a8
Merge pull request #5954 from xtermjs/cursor/align-headless-marker-alt-buffer-2866
...
Allow markers on alt buffer in headless terminal
2026-05-27 14:51:35 -07:00
Cursor Agent and Daniel Imms
fdcd1c2720
Align xterm-headless marker JSDoc with xterm.d.ts
...
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 21:46:20 +00:00
Cursor Agent and Daniel Imms
57b48f6048
Allow markers on alt buffer in headless terminal
...
Remove the alt-buffer guard in headless registerMarker so behavior
matches the browser terminal. Update headless public API and typings
to return IMarker instead of IMarker | undefined.
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 21:28:36 +00:00
Daniel Imms
ec0c93fd5a
Merge pull request #5950 from xtermjs/cursor/writebuffer-dispose-timeout-124c
...
Cancel WriteBuffer innerWrite timers on dispose
2026-05-27 14:14:41 -07:00
Daniel Imms
be339bf796
Merge pull request #5947 from xtermjs/cursor/decoration-bucket-merge-loop-7132
...
Avoid spread when merging decoration line buckets
2026-05-27 13:15:37 -07:00
Daniel Imms
7294124736
Merge pull request #5945 from xtermjs/cursor/bufferline-stringbuilder-5939-79f8
...
Use StringBuilder in BufferLine.translateToString
2026-05-27 13:11:02 -07:00
Daniel Imms
2c3fad39af
Merge pull request #5948 from xtermjs/cursor/hoist-get-current-link-id-e29d
...
Hoist _getCurrentLinkId() in print() loop
2026-05-27 13:09:09 -07:00
Cursor Agent and Daniel Imms
edb4f89dd8
Add WriteBuffer regression tests for dispose and hot paths
...
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 20:00:06 +00:00
Cursor Agent and Daniel Imms
224c113b64
Move linkId declaration above use site in print loop
...
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 19:36:45 +00:00
Cursor Agent and Daniel Imms
3e0c7d18e5
Register WriteBuffer cleanup via toDisposable in constructor
...
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 19:35:58 +00:00
Daniel Imms
95d9224b8c
Merge pull request #5946 from xtermjs/cursor/fix-duplicate-buildnumber-guard-cbb8
...
Fix duplicate buildNumber guard in Windows ConPTY logic
2026-05-27 12:34:08 -07:00
Cursor Agent and Daniel Imms
7499a2181d
Use DisposableStore.isDisposed instead of duplicate flag
...
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 19:34:08 +00:00
Daniel Imms
7dc820f5fa
Merge pull request #5949 from xtermjs/cursor/rename-headless-register-marker-22c3
...
Rename headless core addMarker → registerMarker
2026-05-27 12:33:02 -07:00
Cursor Agent and Daniel Imms
e59a6c1f7b
Reuse shared StringBuilder in BufferLine.translateToString
...
Avoid per-call allocation when translating many lines in sequence by
resetting a module-level work StringBuilder before and after each use.
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 19:31:00 +00:00
Daniel Imms
f3e2c08a5d
Merge pull request #5944 from xtermjs/cursor/buffer-reflow-single-loop-sum-705e
...
perf: use single loop for cellsNeeded sum in BufferReflow
2026-05-27 12:28:08 -07:00
Daniel Imms
b138bf38d0
Merge pull request #5943 from xtermjs/cursor/remove-duplicate-defineproperty-57b2
...
Remove duplicate Object.defineProperty loop in headless Terminal
2026-05-27 12:26:36 -07:00
Cursor Agent and Daniel Imms
c6e4627b45
Hoist _getCurrentLinkId() in print() loop
...
Avoid calling _getCurrentLinkId() twice per codepoint when a hyperlink
is active by reading the link id once before the print loop.
Fixes #5940
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:18:24 +00:00
Cursor Agent and Daniel Imms
d91045dc5f
Cancel WriteBuffer innerWrite timers on dispose
...
Guard _innerWrite and public write methods after disposal so pending
setTimeout continuations cannot run against a disposed terminal.
Fixes #5936
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:18:22 +00:00
Cursor Agent and Daniel Imms
41dfdba2cf
Avoid spread when merging decoration line buckets
...
Replace existing.push(...bucket) with an indexed loop in
_mergeLineBucket to avoid intermediate array allocations during
buffer trim/insert/delete re-indexing.
Reuse _mergeLineBucket in _handleBufferLinesTrim for consistency.
Fixes #5941
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:18:13 +00:00
Cursor Agent and Daniel Imms
ba33decb68
Rename headless core addMarker to registerMarker
...
Align headless Terminal core API with browser CoreBrowserTerminal
and the public registerMarker naming.
Fixes #5938
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:18:01 +00:00
Cursor Agent and Daniel Imms
17e3b84bcc
perf: use single loop for cellsNeeded sum in BufferReflow
...
Replace map().reduce() with one accumulator loop in
reflowSmallerGetNewLineLengths to avoid allocating an intermediate
array when summing wrapped line trimmed lengths.
Fixes #5942
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:17:17 +00:00
Cursor Agent and Daniel Imms
182ff2f635
Remove duplicate Object.defineProperty loop in headless Terminal
...
The constructor defined property getters/setters twice on _publicOptions;
the first block was immediately overwritten by the second. Align with the
browser public Terminal implementation.
Fixes #5935
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:17:08 +00:00
Cursor Agent and Daniel Imms
bcb4e5298b
Fix duplicate buildNumber guard in Windows ConPTY logic
...
The windowsPty option change handler checked buildNumber twice
instead of requiring both backend and buildNumber to be defined.
This aligns with Buffer.ts and ensures ConPTY wrapping heuristics
are evaluated only when both fields are present.
Fixes #5934
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:16:54 +00:00
Cursor Agent and Daniel Imms
42facac2d9
Use StringBuilder in BufferLine.translateToString
...
Replace O(n²) string concatenation in the translate loop with
StringBuilder.append, matching the pattern used elsewhere in the project.
Fixes #5939
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 18:16:51 +00:00
Daniel Imms
2ab0f10a26
Merge pull request #5929 from xtermjs/cursor/atlas-cache-texture-size-7cad
...
fix(webgl): include texture size and cell dimensions in atlas cache equality
2026-05-27 10:31:32 -07:00
Daniel Imms
280dc0a36a
Merge pull request #5927 from xtermjs/cursor/webgl-vao-dispose-ef2f
...
fix(addon-webgl): delete VAOs on renderer dispose
2026-05-27 09:34:46 -07:00
Daniel Imms
ebe8cb749a
Merge pull request #5928 from xtermjs/cursor/fix-dcs-osc-apc-payload-o-n-f60b
...
Fix O(n²) payload accumulation in DCS/OSC/APC handlers
2026-05-27 09:32:42 -07:00
Daniel Imms
c28f3c8d73
Merge pull request #5922 from xtermjs/cursor/remove-stale-sgr-fixme-e362
...
Remove stale FIXME comments from charAttributes JSDoc
2026-05-27 09:28:29 -07:00
Daniel Imms
3bd7ac083a
Merge pull request #5923 from xtermjs/cursor/texture-atlas-remove-emitter-leak-75ac
...
Fix TextureAtlas remove-emitter leak on dispose
2026-05-27 09:27:51 -07:00
Cursor Agent and Daniel Imms
30b42838fd
Extract StringBuilder and LimitedStringBuilder with unit tests
...
Replace PayloadStringBuffer with LimitedStringBuilder from common.
Add thorough StringBuilder and LimitedStringBuilder test coverage.
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-27 16:27:26 +00:00
Daniel Imms
80e832e417
Merge pull request #5930 from xtermjs/cursor/webgl-ilogservice-5921-3745
...
fix(addon-webgl): use ILogService instead of console for logging
2026-05-27 09:21:12 -07:00
Daniel Imms
470947abd8
Merge pull request #5931 from xtermjs/cursor/headless-clear-markers-ccc0
...
fix(headless): clear markers when clear() is called
2026-05-27 09:18:17 -07:00
Daniel Imms
bb49a80ace
Merge branch 'master' into cursor/headless-clear-markers-ccc0
2026-05-27 09:13:38 -07:00
Daniel Imms
65b87e0f40
Merge pull request #5933 from xtermjs/cursor/replace-clone-with-structuredclone-34fc
...
Replace custom clone utility with structuredClone
2026-05-27 09:12:41 -07:00
Daniel Imms
39fc0f259e
Merge pull request #5932 from xtermjs/cursor/webgl-context-loss-timeout-dispose-3f04
...
Clear WebGL context-loss timeout on WebglRenderer dispose
2026-05-27 09:10:07 -07:00
Daniel Imms
b787ac8b1b
Merge pull request #5924 from xtermjs/cursor/selection-trim-listener-leak-135c
...
Fix SelectionService trim listener leak
2026-05-27 09:10:04 -07:00
Daniel Imms
457efbf55d
Merge pull request #5925 from xtermjs/cursor/fix-onwillopen-error-logging-7e14
...
Log onWillOpen handler errors instead of swallowing them
2026-05-27 09:00:33 -07:00
Daniel Imms
42270a0b68
Merge pull request #5926 from xtermjs/cursor/fix-flushsync-onwriteparsed-7a21
...
Fix flushSync() to fire onWriteParsed
2026-05-27 09:00:13 -07:00