-
Notifications
You must be signed in to change notification settings - Fork 35
Announce version 2.0 #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| --- | ||
| title: Announcing xterm.js 2.0 | ||
| author: parisk | ||
| categories: xtermjs update | ||
| --- | ||
|
|
||
| We are excited to announce a new major update for xterm.js; **<a href="https://github.com/sourcelair/xterm.js" target="_blank">xterm.js 2.0</a>**! This new release includes the following great updates: | ||
|
|
||
| 1. Launch of official project website with [public API docs](/docs/) and [blog](/blog/) | ||
| 2. Migration of code base to ES2015 modules to make development much easier | ||
| 3. Significant features and improvements | ||
|
|
||
| Let's take a quick look on each one of this updates. | ||
|
|
||
| ## Project website | ||
| Xterm.js definitely deserved it's own place in the web, so we gifted [xtermjs.org](http://xtermjs.org) to it! Here you can find the official [docs](/docs/) for the public API of the project, including some high-level guides and a [blog](/blog/), where we will post articles about xterm.js, like releases, presentations, engineering etc. | ||
|
|
||
| **⚠️ Attention:** From now on, our public API is only the one documented in [http://xtermjs.org/docs/](http://xtermjs.org/docs/). Any other attributes, methods or events that you might be relying in previous versions should not be considered stable and might change without notice! | ||
|
|
||
| ## Migration to ES2015 | ||
| Xterm.js used to be a huge monolith and it was a real pain to work on, especially when dealing with core parts like rendering. We decided to take a big step forward, break the code base into multiple native ES2015 modules and ship xterm.js as a [UMD](https://github.com/umdjs/umd) monolith which can be imported using either native modules, CommonJS, RequireJS or no module system at all! | ||
|
|
||
| This will allow us to develop xterm.js faster, with less hassle and friction and at the end ship a better open source project to the world. | ||
|
|
||
| ### ⚠️ Migrating from xterm.js 1.0 to 2.0 | ||
| Since this is a major xterm.js release, we had to break our public API because of this update, so take a look here before migrating! | ||
|
|
||
| The only thing that you have to take into account when migrating from xterm.js 1.0 to 2.0 is importing the appropriate files. The xterm.js core is not stored as two built files (one JavaScript and one CSS) into the `dist` directory of the code base (instead of `src`, where they used to be). | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. A mention on the fact that the API is not strict would be good, meaning that people may have been relying on what we now consider to be private and could change at any time without notice.
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
|
|
||
| To learn more about how to import xterm.js properly into your project, take a look at the [Importing](/docs/guides/import/) documentation page. | ||
|
|
||
| **Note**: If you are importing xterm.js using CommonJS, there should be nothing to change there, since we updated the package.json file of the project accordingly. | ||
|
|
||
| ## Features and improvements | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Not sure the level of detail we want here but:
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 👍 Added |
||
| Xterm.js 2.0 ships with a few great improvements: | ||
|
|
||
| - New APIs to [get](http://xtermjs.org/docs/api/Terminal/#getoptionkey) and [set](http://xtermjs.org/docs/api/Terminal/#setoptionkey-value) terminal options | ||
| - New API to [clear](http://xtermjs.org/docs/api/Terminal/#clear) terminal | ||
| - Better mouse and mouse wheel support | ||
| - Improved scrolling in oh-my-zsh | ||
|
|
||
| As always, this release could not be made possible without the contribution of our [**amazing contributors**](https://github.com/sourcelair/xterm.js/blob/2.0.1/AUTHORS), so **THANK YOU** for making this happen! | ||
|
|
||
| Xterm.js 2.0 is available at [npm](http://npmjs.org/package/xterm), [bower](https://bower.io) and [GitHub Releases](https://github.com/sourcelair/xterm.js/releases/tag/2.0.1) as usual, so go get it and create amazing terminal apps now! | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not so important for an update announcement imo and should we mention it if we're moving to TypeScript?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's a good idea to have this here to encourage developers to contribute.
Considering TypeScript, since we are not settled on this yet let's leave it out of this "announcement".