diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..93f1361 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules +npm-debug.log diff --git a/README.md b/README.md index e1a02da..a050ac3 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,46 @@ ##### [MIT Licensed](LICENSE) +## Project Structure + +- [./content]() contains the source articles, organized by language-team groupings. + Articles are written in + [Github-flavoured Markdown](https://help.github.com/articles/github-flavored-markdown/). +- [./gulp]() organizes the [Gulp.js](http://gulpjs.com/)-driven build scripts used + by the project. +- [./public]() **currently** contains the full library of website content generated + by the build scripts. Changes should not be made directly here. Soon, we'll + be switching over to leveraging [iojs/build](https://github.com/iojs/build) + to help automate this. +- [./source] houses the reusable styling and structural elements used by the + project. +- [./wg-meetings] is an archive of the meeting minutes from this project's + Working Group (see [./GOVERNANCE.md]()). + +## Running Locally + +### Dependencies +``` +git pull https://github.com/iojs/website.git +npm install -g gulp +npm install +``` + +### Local Development +``` +gulp +``` +Runs a local HTTP server on port 4657 with live-reload, which will update +your browser immediately with content or style changes. Generated assets +are provided to the [./public]() directory for publishing. + +## Deployment + +The website is currently hosted on a (sponsored) 3rd party provider with a deployment +process managed via the [io.js build team](https://github.com/iojs/build). As repo +changes are approved and merged to the master branch, changes are automatically +deployed within a few minutes. + ## Current Project Team Members * Trent Oswald (@therebelrobot) **Facilitator** diff --git a/TRANSLATION.md b/TRANSLATION.md new file mode 100644 index 0000000..73b0213 --- /dev/null +++ b/TRANSLATION.md @@ -0,0 +1,19 @@ +# io.js Website Translation Policy + +io.js is a global platform and so this site has many translations. The translation of the site into +separate languages is handled by the localization working group of the language in question. If you +would like to contribute to the translation of iojs.org, please refer to the following process: + +## For Individuals wanting to contribute +* Contact your appropriate localization group, and discuss with them the best possible way to contribute. A list of the localization groups can be found here: [TBD] + +## For Localization Groups +* Ensure that any site translations are done as pull requests into this repo. This will ensure the build process, layout, and styling, remain consistent across the different translations of the site. +* You can find the appropriate language folder within `content/` +* There needs to be the following files in your language folder: + * `template.json` (this fills in the buttons and title bar with the appropriate translation) + * `index.md` (this contains the markdown translation for the home page. The paragraph order is important here, so please maintain it) + * `faq.md` (this contains markdown for the faq page) + * `es6.md` (this contains markdown for the ES6 explanation page) + * Any additional md files that are to be added can be done here, and will be dynamically generated into html using the template. +* Do not make language specific changes to layout or styling in a translation PR. If they are needed, make a separate styling/layout pr and chat with one of the website WG about the change. We want to make sure, for example, a Chinese layout change doesn't cascade failure to the German page. \ No newline at end of file diff --git a/content/cn/es6.md b/content/cn/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/cn/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/cn/faq.md b/content/cn/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/cn/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/cn/index.md b/content/cn/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/cn/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/cn/template.json b/content/cn/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/cn/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/cs/es6.md b/content/cs/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/cs/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/cs/faq.md b/content/cs/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/cs/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/cs/index.md b/content/cs/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/cs/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/cs/template.json b/content/cs/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/cs/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/da/es6.md b/content/da/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/da/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/da/faq.md b/content/da/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/da/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/da/index.md b/content/da/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/da/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/da/template.json b/content/da/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/da/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/de/es6.md b/content/de/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/de/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/de/faq.md b/content/de/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/de/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/de/index.md b/content/de/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/de/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/de/template.json b/content/de/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/de/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/el/es6.md b/content/el/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/el/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/el/faq.md b/content/el/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/el/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/el/index.md b/content/el/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/el/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/el/template.json b/content/el/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/el/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/en/es6.md b/content/en/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/en/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/en/faq.md b/content/en/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/en/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/en/index.md b/content/en/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/en/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/en/template.json b/content/en/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/en/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/es/es6.md b/content/es/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/es/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/es/faq.md b/content/es/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/es/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/es/index.md b/content/es/index.md new file mode 100644 index 0000000..f70a139 --- /dev/null +++ b/content/es/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Traer [ES6](es6.html) a la Comunidad Nodo! + +[io.js](https://github.com/iojs/io.js) es una plataforma compatible [npm](https://www.npmjs.org/) originalmente basado en [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Descargar de +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +o +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Cambios](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Lanzamientos nocturnos](https://iojs.org/download/nightly/) están disponibles para las pruebas. + +[Preguntas más frecuentes](/faq.html) \ No newline at end of file diff --git a/content/es/template.json b/content/es/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/es/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/es_AR/es6.md b/content/es_AR/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/es_AR/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/es_AR/faq.md b/content/es_AR/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/es_AR/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/es_AR/index.md b/content/es_AR/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/es_AR/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/es_AR/template.json b/content/es_AR/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/es_AR/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/es_CO/es6.md b/content/es_CO/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/es_CO/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/es_CO/faq.md b/content/es_CO/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/es_CO/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/es_CO/index.md b/content/es_CO/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/es_CO/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/es_CO/template.json b/content/es_CO/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/es_CO/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/es_ES/es6.md b/content/es_ES/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/es_ES/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/es_ES/faq.md b/content/es_ES/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/es_ES/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/es_ES/index.md b/content/es_ES/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/es_ES/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/es_ES/template.json b/content/es_ES/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/es_ES/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/fr/es6.md b/content/fr/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/fr/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/fr/faq.md b/content/fr/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/fr/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/fr/index.md b/content/fr/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/fr/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/fr/template.json b/content/fr/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/fr/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/he/es6.md b/content/he/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/he/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/he/faq.md b/content/he/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/he/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/he/index.md b/content/he/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/he/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/he/template.json b/content/he/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/he/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/hi/es6.md b/content/hi/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/hi/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/hi/faq.md b/content/hi/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/hi/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/hi/index.md b/content/hi/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/hi/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/hi/template.json b/content/hi/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/hi/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/hu/es6.md b/content/hu/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/hu/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/hu/faq.md b/content/hu/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/hu/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/hu/index.md b/content/hu/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/hu/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/hu/template.json b/content/hu/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/hu/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/id/es6.md b/content/id/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/id/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/id/faq.md b/content/id/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/id/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/id/index.md b/content/id/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/id/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/id/template.json b/content/id/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/id/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/it/es6.md b/content/it/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/it/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/it/faq.md b/content/it/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/it/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/it/index.md b/content/it/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/it/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/it/template.json b/content/it/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/it/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/jp/es6.md b/content/jp/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/jp/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/jp/faq.md b/content/jp/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/jp/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/jp/index.md b/content/jp/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/jp/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/jp/template.json b/content/jp/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/jp/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/ka/es6.md b/content/ka/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/ka/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/ka/faq.md b/content/ka/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/ka/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/ka/index.md b/content/ka/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/ka/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/ka/template.json b/content/ka/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/ka/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/kr/es6.md b/content/kr/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/kr/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/kr/faq.md b/content/kr/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/kr/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/kr/index.md b/content/kr/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/kr/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/kr/template.json b/content/kr/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/kr/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/mk/es6.md b/content/mk/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/mk/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/mk/faq.md b/content/mk/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/mk/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/mk/index.md b/content/mk/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/mk/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/mk/template.json b/content/mk/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/mk/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/nl/es6.md b/content/nl/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/nl/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/nl/faq.md b/content/nl/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/nl/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/nl/index.md b/content/nl/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/nl/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/nl/template.json b/content/nl/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/nl/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/no/es6.md b/content/no/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/no/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/no/faq.md b/content/no/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/no/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/no/index.md b/content/no/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/no/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/no/template.json b/content/no/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/no/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/pl/es6.md b/content/pl/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/pl/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/pl/faq.md b/content/pl/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/pl/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/pl/index.md b/content/pl/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/pl/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/pl/template.json b/content/pl/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/pl/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/pt_BR/es6.md b/content/pt_BR/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/pt_BR/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/pt_BR/faq.md b/content/pt_BR/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/pt_BR/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/pt_BR/index.md b/content/pt_BR/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/pt_BR/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/pt_BR/template.json b/content/pt_BR/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/pt_BR/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/pt_PT/es6.md b/content/pt_PT/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/pt_PT/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/pt_PT/faq.md b/content/pt_PT/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/pt_PT/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/pt_PT/index.md b/content/pt_PT/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/pt_PT/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/pt_PT/template.json b/content/pt_PT/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/pt_PT/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/ru/es6.md b/content/ru/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/ru/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/ru/faq.md b/content/ru/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/ru/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/ru/index.md b/content/ru/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/ru/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/ru/template.json b/content/ru/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/ru/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/sv/es6.md b/content/sv/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/sv/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/sv/faq.md b/content/sv/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/sv/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/sv/index.md b/content/sv/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/sv/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/sv/template.json b/content/sv/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/sv/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/content/tr/es6.md b/content/tr/es6.md new file mode 100644 index 0000000..fca7a5f --- /dev/null +++ b/content/tr/es6.md @@ -0,0 +1,69 @@ +# ES6 on io.js + +io.js is built against modern versions of [V8](https://code.google.com/p/v8/). By keeping up-to-date with the latest releases of this engine we ensure new features from the [JavaScript ECMA-262 specification](http://www.ecma-international.org/publications/standards/Ecma-262.htm) are brought to io.js developers in a timely manner, as well as continued performance and stability improvements. + +Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x. + +## No more --harmony flag + +On joyent/node@0.12.x (V8 3.26), the `--harmony` runtime flag enabled all **completed**, **staged** and **in progress** ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for `typeof` which were hidden under `--harmony-typeof`). This meant that some really buggy or even broken features like [proxies](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy) were just as readily available for developers as [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. `--harmony-generators`), or simply enable all of them and then use a restricted subset. + +With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for **shipping**, **staged** and **in progress** features: + +* All **shipping** features, the ones that V8 has considered stable, like [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*), [templates](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings), [new string methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) and many others are turned **on by default on io.js** and do **NOT** require any kind of runtime flag. +* Then there are **staged** features which are almost-completed features that haven't been completely tested or updated to the latest spec yet and therefore are not considered stable by the V8 team (e.g. there might be some edge cases left to discover). This is probably the equivalent of the state of [generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) on 3.26. These are the "use at your own risk" type of features that now require a runtime flag: `--es_staging` (or its synonym, `--harmony`). +* Finally, all **in progress** features can be activated individually by their respective harmony flag (e.g. `--harmony_arrow_functions`), although this is highly discouraged unless for testing purposes. + +## Which ES6 features ship with io.js by default (no runtime flag required)? + + +* Block scoping + + * [let](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) + + * [const](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const) + + * `function`-in-blocks + + >As of v8 3.31.74.1, block-scoped declarations are [intentionally implemented with a non-compliant limitation to strict mode code](https://groups.google.com/forum/#!topic/v8-users/3UXNCkAU8Es). Developers should be aware that this will change as v8 continues towards ES6 specification compliance. + +* Collections + + * [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map) + + * [WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) + + * [Set](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set) + + * [WeakSet](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakSet)* [Generators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) + +* [Binary and Octal literals](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals) + +* [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) + +* [New String methods](https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla#Additions_to_the_String_object) + +* [Symbols](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) + +* [Template strings](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings) + +You can view a more detailed list, including a comparison with other engines, on the [compat-table](https://kangax.github.io/compat-table/es6/) project page. + +## Which ES6 features are behind the --es_staging flag? + +* [Classes](https://github.com/lukehoban/es6features#classes) (strict mode only) +* [Object literal extensions](https://github.com/lukehoban/es6features#enhanced-object-literals) + +* [`Symbol.toStringTag`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol) (user-definable results for `Object.prototype.toString`) + +## I have my infrastructure set up to leverage the --harmony flag. Should I remove it? + +The current behaviour of the `--harmony` flag on io.js is to enable **staged** features only. After all, it is now a synonym of `--es_staging`. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard. + +## How do I find which version of V8 ships with a particular version of io.js? + +io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the `process` global object. In case of the V8 engine, type the following in your terminal to retrieve its version: + +```sh +iojs -p process.versions.v8 +``` diff --git a/content/tr/faq.md b/content/tr/faq.md new file mode 100644 index 0000000..bd0c0f4 --- /dev/null +++ b/content/tr/faq.md @@ -0,0 +1,34 @@ +# FAQ + +## What is io.js? + +[io.js](https://github.com/iojs/io.js) is a JavaScript platform built on [Chrome's V8 runtime](http://code.google.com/p/v8/). This project began as a fork of [Joyent's Node.js™](https://nodejs.org/) and is compatible with the [npm](https://www.npmjs.org/) ecosystem. + +Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries. + +This project aims to continue development of io.js under an "[open governance model](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme)" as opposed to corporate stewardship. + +## Version 1.0.x? + +io.js has moved to [Semver](http://semver.org/) and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment. + +Our [CHANGELOG](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) for v1.x provides a [summary of changes from Node.js v0.10.35 to io.js v1.0.x](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md#summary-of-changes-from-nodejs-v01035-to-iojs-v100). + +## How can I contribute? + +Everyone can help. io.js adheres to a [code of conduct](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-of-conduct), and contributions, releases, and contributorship are under an [open governance](https://github.com/iojs/io.js/blob/v1.x/GOVERNANCE.md#readme) model. + +To get started, there are open [ discussions on GitHub](https://github.com/iojs/io.js/issues), and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please [make a pull request](https://github.com/iojs/io.js/blob/v1.x/CONTRIBUTING.md#code-contributions). + +In addition, using [Nodebug.me](http://nodebug.me/) is a good way to help Triage the issues in the backlog. + +## Where do discussions take place? + +There is an #io.js channel on Freenode IRC. We keep logs of the channel [here](http://logs.libuv.org/io.js/latest). + +## What is open source governance? + +Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [[source]](https://en.wikipedia.org/wiki/Open-source_governance) \ No newline at end of file diff --git a/content/tr/index.md b/content/tr/index.md new file mode 100644 index 0000000..4fc104c --- /dev/null +++ b/content/tr/index.md @@ -0,0 +1,22 @@ +# JavaScript I/O + +Bringing [ES6](es6.html) to the Node Community! + +[io.js](https://github.com/iojs/io.js) is an [npm](https://www.npmjs.org/) compatible platform originally based on [node.js](https://nodejs.org/)™. + +[](https://iojs.org/dist/v1.1.0/) + +[Version 1.1.0](https://iojs.org/dist/v1.1.0/) + +Download for +[Linux](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-linux-x64.tar.xz), +[Win32](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x86.msi), [Win64](https://iojs.org/dist/v1.1.0/iojs-v1.1.0-x64.msi), +or +[Mac](https://iojs.org/dist/v1.1.0/iojs-v1.1.0.pkg). + + +[Changelog](https://github.com/iojs/io.js/blob/v1.x/CHANGELOG.md) + +[Nightly releases](https://iojs.org/download/nightly/) are available for testing. + +[Frequently Asked Questions](/faq.html) \ No newline at end of file diff --git a/content/tr/template.json b/content/tr/template.json new file mode 100644 index 0000000..f5d3584 --- /dev/null +++ b/content/tr/template.json @@ -0,0 +1,12 @@ +{ + "browser-title":"io.js - JavaScript I/O", + "logo-text":"io.js", + "faq-link":"FAQ", + "es6-link":"ES6", + "api-link":"API Docs", + "issues-link":"GitHub Issues", + "org-link":"GitHub Org", + "irc-link":"IRC Chat", + "irc-logs-link":"Logs", + "gov-link":"Governance" +} diff --git a/gulp/config.js b/gulp/config.js new file mode 100644 index 0000000..f4ac5c3 --- /dev/null +++ b/gulp/config.js @@ -0,0 +1,39 @@ +var dest = "./public"; +var src = './source'; +var content = './content'; + +module.exports = { + stylus: { + src: src + "/styles/**/*.styl", + dest: dest, + settings: { + // put stylus settings here + } + }, + templates: { + templateSrc: src + "/templates/**/*.html", + contentSrc: content + "/**/*.md", + templateJSONsrc: content + "/**/template.json", + dest: dest + }, + images: { + src: dest + "/img/**", + dest: dest + "/img" + }, + del: { + files: [ + dest + "/**/*.html", + dest + "/**/*.js", + dest + "/**/*.css", + '!'+ dest + '/index.html', + '!'+ dest + '/es6.html', + '!'+ dest + '/faq.html', + ] + }, + cssSrc: dest + '/*.css', + htmlSrc: dest + '/*.html', + dest: dest, + server: { + port: 4657 + } +}; diff --git a/gulp/tasks/build.js b/gulp/tasks/build.js new file mode 100644 index 0000000..c0c5ea2 --- /dev/null +++ b/gulp/tasks/build.js @@ -0,0 +1,8 @@ +var gulp = require('gulp'); +var runSequence = require('run-sequence'); + +gulp.task('build', function(cb){ + runSequence('clean', + ['stylus', 'templates'], + cb); +}); diff --git a/gulp/tasks/clean.js b/gulp/tasks/clean.js new file mode 100644 index 0000000..f46f062 --- /dev/null +++ b/gulp/tasks/clean.js @@ -0,0 +1,8 @@ +var gulp = require('gulp'); +var del = require('del'); +var config = require('../config'); + +gulp.task('clean', function(cb) { + // clean out directory before build + del(config.del.files, cb); +}); diff --git a/gulp/tasks/default.js b/gulp/tasks/default.js new file mode 100644 index 0000000..bcc8c8e --- /dev/null +++ b/gulp/tasks/default.js @@ -0,0 +1,8 @@ +var gulp = require('gulp'); +var runSequence = require('run-sequence'); + +gulp.task('default', function(cb){ + runSequence('clean', + ['stylus', 'templates', 'watch', 'server'], + cb); +}); diff --git a/gulp/tasks/imageOptimize.js b/gulp/tasks/imageOptimize.js new file mode 100644 index 0000000..aa2f007 --- /dev/null +++ b/gulp/tasks/imageOptimize.js @@ -0,0 +1,11 @@ +var changed = require('gulp-changed'); +var gulp = require('gulp'); +var imagemin = require('gulp-imagemin'); +var config = require('../config').images; + +gulp.task('images', function() { + return gulp.src(config.src) + .pipe(changed(config.dest)) // Ignore unchanged files + .pipe(imagemin()) // Optimize + .pipe(gulp.dest(config.dest)); +}); diff --git a/gulp/tasks/minifyCss.js b/gulp/tasks/minifyCss.js new file mode 100644 index 0000000..9446211 --- /dev/null +++ b/gulp/tasks/minifyCss.js @@ -0,0 +1,20 @@ +var gulp = require('gulp'); +var config = require('../config'); +var postcss = require('gulp-postcss'); +var autoprefixer = require('autoprefixer-core'); +var csswring = require('csswring'); +var size = require('gulp-filesize'); +var rename = require('gulp-rename'); + +gulp.task('minifyCss', function() { + return gulp.src(config.cssSrc) + .pipe(postcss([ + autoprefixer(), + csswring + ])) + .pipe(rename(function(path){ + path.extname = ".min.css"; + })) + .pipe(gulp.dest(config.dest)) + .pipe(size()); +}) diff --git a/gulp/tasks/minifyHtml.js b/gulp/tasks/minifyHtml.js new file mode 100644 index 0000000..23c365e --- /dev/null +++ b/gulp/tasks/minifyHtml.js @@ -0,0 +1,11 @@ +var gulp = require('gulp'); +var config = require('../config'); +var minifyHTML = require('gulp-htmlmin'); +var size = require('gulp-filesize'); + +gulp.task('minifyHtml', function() { + return gulp.src(config.htmlSrc) + .pipe(minifyHTML()) + .pipe(gulp.dest(config.dest)) + .pipe(size()); +}) diff --git a/gulp/tasks/server.js b/gulp/tasks/server.js new file mode 100644 index 0000000..8d211d8 --- /dev/null +++ b/gulp/tasks/server.js @@ -0,0 +1,16 @@ +var config = require('../config'); +var gulp = require('gulp'); + +function startExpress(cb) { + var express = require('express'); + var app = express(); + app.use(express.static(config.dest)); + app.listen(config.server.port, function() { + console.log('Development server running on http://127.0.0.1:'+config.server.port); + cb(); + }); +} + +gulp.task('server', function(cb) { + startExpress(cb) +}); diff --git a/gulp/tasks/stylus.js b/gulp/tasks/stylus.js new file mode 100644 index 0000000..2408dfb --- /dev/null +++ b/gulp/tasks/stylus.js @@ -0,0 +1,11 @@ +var gulp = require('gulp'); +var config = require('../config').stylus; +var stylus = require('gulp-stylus'); +var size = require('gulp-filesize'); + +gulp.task('stylus', function() { + return gulp.src(config.src) + .pipe(stylus()) + .pipe(gulp.dest(config.dest)) + .pipe(size()); +}); diff --git a/gulp/tasks/templates.js b/gulp/tasks/templates.js new file mode 100644 index 0000000..b566bac --- /dev/null +++ b/gulp/tasks/templates.js @@ -0,0 +1,58 @@ +var _ = require('lodash'); // to handle collections gracefully +var config = require('../config').templates; // pull in the pathing config file +var fs = require('fs'); // used to work with substack's module +var glob = require('glob'); // to dynamically read in all content md files +var gulp = require('gulp'); // because this is a gulp task. duh. +var HTMLtemplate = require('html-template'); // substack's html template implementation +var md = require('markdown-it')(); // to convert markdown to html +var source = require('vinyl-source-stream'); // used to convert substack's readStream to vinylStream +var replaceStream = require('replacestream'); // used to add an element to the html: making sure each page has it's own class if needed in css + +gulp.task('templates', function() { + var contentFiles = glob.sync(config.contentSrc); // read in all content files in the repo + + var languages = _.uniq(_.map(contentFiles, function(str) { // extrapolate the languages from the content filepaths + return str.split('/')[2]; + })); + + _.forEach(languages, function(lang) { // loop through languages to make separate folder outputs + var templateJSON = require('../../content/' + lang + '/template.json'); // read in the template JSON file + + var templateFiles = _.where(contentFiles, function(str) { // return list of content files in this language alone + return str.indexOf('./content/' + lang) > -1; + }); + + templateFilesInThisLang = _.map(templateFiles, function(str) { // expand the file list to include the extrapolated filename + var obj = {}; + obj.srcPath = str; + obj.filename = str.split('/'); + obj.filename = obj.filename[obj.filename.length - 1].split('.md')[0]; + return obj; + }); + + _.forEach(templateFilesInThisLang, function(file) { // iterate over the md files present in this language to apply the template to them + var markdown = String(fs.readFileSync(file.srcPath)); // read in the md file, convert buffer to string + var html = md.render(markdown); // convert md string to html string + var thisFileJSON = _.cloneDeep(templateJSON); // clone in the template JSON object + var pageTitle = thisFileJSON['browser-title']; + thisFileJSON = _.omit(thisFileJSON,'browser-title'); + var finalJSON = {}; + _.forEach(thisFileJSON, function(value, key){ + finalJSON['[i18n-'+key+']'] = value; + }) + finalJSON['[i18n-content]'] = html; // Attach md2html string to the interpolation object + var htmlObj = HTMLtemplate(); // finally using that holder for the template stream + i18nObj = htmlObj.template('i18n',{include:false}); // same + var filepath = __dirname.split('gulp/tasks')[0] + 'source/templates/main.html'; // get the main template file location. There can be multiple, this is just a proof of concept + var fileStream = fs.createReadStream(filepath) // pulling this code from substack's example on html-template + .pipe(replaceStream('
io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+Bringing ES6 to the Node Community!
+io.js is an npm compatible platform originally based on node.js™.
+ + +Download for +Linux, +Win32, Win64, +or +Mac.
+ +Nightly releases are available for testing.
+ +io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+Bringing ES6 to the Node Community!
+io.js is an npm compatible platform originally based on node.js™.
+ + +Download for +Linux, +Win32, Win64, +or +Mac.
+ +Nightly releases are available for testing.
+ +io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+Bringing ES6 to the Node Community!
+io.js is an npm compatible platform originally based on node.js™.
+ + +Download for +Linux, +Win32, Win64, +or +Mac.
+ +Nightly releases are available for testing.
+ +io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+Bringing ES6 to the Node Community!
+io.js is an npm compatible platform originally based on node.js™.
+ + +Download for +Linux, +Win32, Win64, +or +Mac.
+ +Nightly releases are available for testing.
+ +io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+Bringing ES6 to the Node Community!
+io.js is an npm compatible platform originally based on node.js™.
+ + +Download for +Linux, +Win32, Win64, +or +Mac.
+ +Nightly releases are available for testing.
+ +io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+Bringing ES6 to the Node Community!
+io.js is an npm compatible platform originally based on node.js™.
+ + +Download for +Linux, +Win32, Win64, +or +Mac.
+ +Nightly releases are available for testing.
+ +io.js is built against modern versions of V8. By keeping up-to-date with the latest releases of this engine we ensure new features from the JavaScript ECMA-262 specification are brought to io.js developers in a timely manner, as well as continued performance and stability improvements.
+Version 1.1.0 of io.js ships with V8 4.1.0.14, which includes ES6 features well beyond version 3.26.33 that will be shipped with joyent/node@0.12.x.
+On joyent/node@0.12.x (V8 3.26), the --harmony
runtime flag enabled all completed, staged and in progress ES6 features together, in bulk (with the exception of nonstandard/non-harmonious semantics for typeof
which were hidden under --harmony-typeof
). This meant that some really buggy or even broken features like proxies were just as readily available for developers as generators, which had very little or even no known-issues. As such, it was best practice to either enable only certain features by using specific runtime harmony feature flags (e.g. --harmony-generators
), or simply enable all of them and then use a restricted subset.
With io.js@1.x (V8 4.1+), all that complexity goes away. All harmony features are now logically split into three groups for shipping, staged and in progress features:
+--es_staging
(or its synonym, --harmony
).--harmony_arrow_functions
), although this is highly discouraged unless for testing purposes.Block scoping
+ +++As of v8 3.31.74.1, block-scoped declarations are intentionally implemented with a non-compliant limitation to strict mode code. Developers should be aware that this will change as v8 continues towards ES6 specification compliance.
+
Collections
+You can view a more detailed list, including a comparison with other engines, on the compat-table project page.
+Classes (strict mode only)
+Symbol.toStringTag
(user-definable results for Object.prototype.toString
)
The current behaviour of the --harmony
flag on io.js is to enable staged features only. After all, it is now a synonym of --es_staging
. As mentioned above, these are completed features that have not been considered stable yet. If you want to play safe, especially on production environments, consider removing this runtime flag until it ships by default on V8 and, consequently, on io.js. If you keep this enabled, you should be prepared for further io.js upgrades to break your code if V8 changes their semantics to more closely follow the standard.
io.js provides a simple way to list all dependencies and respective versions that ship with a specific binary through the process
global object. In case of the V8 engine, type the following in your terminal to retrieve its version:
iojs -p process.versions.v8
+
+io.js is a JavaScript platform built on Chrome's V8 runtime. This project began as a fork of Joyent's Node.js™ and is compatible with the npm ecosystem.
+Why? io.js aims to provide faster and predictable release cycles. It currently merges in the latest language, API and performance improvements to V8 while also updating libuv and other base libraries.
+This project aims to continue development of io.js under an "open governance model" as opposed to corporate stewardship.
+io.js has moved to Semver and the changes between Node.js™ 0.10 and io.js 1.0.0 were significant enough +to warrant a major version increment.
+Our CHANGELOG for v1.x provides a summary of changes from Node.js v0.10.35 to io.js v1.0.x.
+Everyone can help. io.js adheres to a code of conduct, and contributions, releases, and contributorship are under an open governance model.
+To get started, there are open discussions on GitHub, and we'd love to hear your feedback. +Becoming involved in discussions is a good way to get a feel of where you can help out further. If there is +something there you feel you can tackle, please make a pull request.
+In addition, using Nodebug.me is a good way to help Triage the issues in the backlog.
+There is an #io.js channel on Freenode IRC. We keep logs of the channel here.
+Open source governance advocates the application of the philosophies of the open source and open content movements in order to enable any interested party to add to the creation of the end product, as with a wiki document. Legislation is democratically opened to the general citizenry, employing their collective wisdom to benefit the decision-making process and improve democracy. [source]
+