🚀 Features
📦 API
- New experimental link provider API (#2530, #2710) via @jmbockhorst. This flips around how links in the terminal work by asking an addon what links are available at a particular cell when its hovered, instead of pre-parsing the entire viewport using the current link matcher API. The plan is for this to eventually replace the
registerLinkMatcher
API. You can test this new API by setting the_useLinkProvider
parameter on the web links addon. - The alternate buffer can now be accessed via the experimental buffer API (#2713) via @JavaCS3. This breaks the previous API so if you're an early adopter be sure to update accordingly.
🐞 Bug fixes
- Remove duplicate CSS rule being added (#2715) via @kumaran-14
- Make cursor display on the last cell if it's off the edge of the screen (#2731) via @jerch
- Fix transparent theme colors on old Edge (#2739) via @felixse
- Fix addDisposableDomListener leaking events (#2767) via @JavaCS3
- Use role=list attribute when screenReaderMode is enabled (#2814) via @Tyriar
- Ensure multiple cursor blink animations aren't occurring at same time (#2817) via @Tyriar
📝 Documentation and internal improvements
- Typo, improving wording (#2698, #2766) via @Tyriar
- Consolidate integration test helper functions (#2711) via @jmbockhorst
- Migrate from puppeteer to playwright (#2712) @jmbockhorst
- Run tests in Firefox and WebKit (#2722, #2725) via @Tyriar
- Update to TypeScript 3.8 (#2730) via @Tyriar
- Document VT features in code and extract for the website (#2754) via @jerch
- Upgrade several dev dependencies (#2758, #2760, #2770, #2772, #2779, #2780, #2783, #2795, #2801, #2803, #2805, #2810, #2815, #2819, #2820) via @Tyriar, @dependabot, @dependabot-preview
- Migrate from tslint to eslint (#2786, #2799, #2827) via @Tyriar
- Upgrade mac agent in pipelines (#2800) via @Tyriar
- Use debug instead of warn log level for open on non-attached element (#2825) via @Tyriar
🛑 Breaking changes
- The buffer API has changed significantly:
// before 4.5.0 const activeBuffer = term.buffer // after 4.5.0 const activeBuffer = term.buffer.active
🎉 New real-world use cases
🤝 Compatible addon versions
xterm-addon-attach@0.5.0
xterm-addon-fit@0.3.0
xterm-addon-search@0.6.0
xterm-addon-serialize@0.2.0
xterm-addon-ligatures@0.2.1
xterm-addon-unicode11@0.1.1
xterm-addon-web-links@0.3.0
xterm-addon-webgl@0.6.0
🌐 Website
- Remove unused google analytics script (xtermjs/xtermjs.org#122) via @Tyriar
- Document VT features (xtermjs/xtermjs.org#121) via @jerch
- Add a guide on using the parser hooks API (xtermjs/xtermjs.org#123) via @jerch
- Upgrade dependencies (xtermjs/xtermjs.org#120, xtermjs/xtermjs.org#124, xtermjs/xtermjs.org#125) via @Tyriar, @dependabot