tag:github.com,2008:https://github.com/jerryscript-project/jerryscript/releasesRelease notes from jerryscript2024-12-18T10:36:32Ztag:github.com,2008:Repository/33339660/v3.0.02024-12-18T13:00:02Zv3.0.0<p>The JerryScript team proudly announces JerryScript 3.0.0 release.</p>
<h3>A short list of changes/improvements:</h3>
<ul>
<li>343 commits by 41 authors since JerryScript 2.4.0 release</li>
<li>84% conformance on Test262 ES2020</li>
<li>Kangax 2016+ (ES2025) coverage improved from 45% to 70% (<a href="https://compat-table.github.io/compat-table/es2016plus/" rel="nofollow">Kangax Compatibilty Table</a>)</li>
<li>Binary size increased due to the implementation of a lot of new language features</li>
<li>Fixed several bugs including security issues</li>
<li>New language feature:
<ul>
<li>Dynamic Import</li>
<li>Instance class fields</li>
<li>Logical Assignment (<code>&&=</code>, <code>||=</code>, <code>??=</code>)</li>
<li>Native Module</li>
<li>Optional chaining (<code>?.</code>)</li>
<li>Private class method</li>
<li>Static class fields</li>
<li>Static initialization block</li>
</ul>
</li>
<li>Supported new builtin methods:
<ul>
<li>Atomics</li>
<li>function.toString operation</li>
<li>Object.hasOwn</li>
<li>Partial support for WeakReferences</li>
<li>Promise.allSettled and Promise.Any</li>
<li>SharedArrayBuffer</li>
</ul>
</li>
<li>API rework
<ul>
<li>Resolved inconsistencies in APIs.</li>
<li>Adopted a unified naming scheme (Issue <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="695956302" data-permission-text="Title is private" data-url="https://github.com/jerryscript-project/jerryscript/issues/4186" data-hovercard-type="issue" data-hovercard-url="/jerryscript-project/jerryscript/issues/4186/hovercard" href="https://github.com/jerryscript-project/jerryscript/issues/4186">#4186</a>).</li>
</ul>
</li>
<li>Better windows support</li>
<li>Enhanced Python 3 compatibility
<ul>
<li>Dropped Python2 support due to its end of life</li>
</ul>
</li>
<li>Updated and improved documentation</li>
</ul>LaszloLangotag:github.com,2008:Repository/33339660/v2.4.02021-01-22T10:27:07ZJerryScript 2.4.0<p>The JerryScript team proudly announces JerryScript 2.4.0 release.</p>
<h3>A short list of changes/improvements:</h3>
<ul>
<li>Change the default profile to ES.next</li>
<li>Improve module and proxy support</li>
<li>Added support for Realms</li>
<li>Added support for BigInts</li>
<li>Enhanced build and testing on Windows</li>
<li>Replaces all-in-one build with amalgam build</li>
<li>Introduced new port API function: jerry_port_track_promise_rejection</li>
<li>New language features:
<ul>
<li>Async function</li>
<li>BigInt syntax</li>
<li>Class fields</li>
<li>Catch without argument</li>
<li>Comma after last argument</li>
<li>For-await-of</li>
<li>Nullish coalescing</li>
<li>Numeric separator</li>
<li>Rest operator in object destructuring patterns</li>
<li>Spread operator in object literal</li>
<li>Super keyword in object methods</li>
<li>Unicode supplementary planes</li>
</ul>
</li>
<li>Supported new builtin methods:
<ul>
<li>Array.prototype.flat, flatMap</li>
<li>DataView.prototype.getBigInt64, getBigUint64, setBigInt64, setBigUint64</li>
<li>Global.globalThis</li>
<li>Object.entries, getOwnPropertyDescriptors, values</li>
<li>Object.prototype.__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, fromEntries</li>
<li>Promise.prototype.finally</li>
<li>RegExp.dotAll</li>
<li>String.prototype.padStart, padEnd, replaceAll, trimStart, trimEnd</li>
<li>Symbol.matchAll</li>
<li>Symbol.prototype.description</li>
<li>TypedArray.prototype.includes</li>
</ul>
</li>
<li>80% conformance on Test262 ES2020</li>
<li>Kangax ES2016+ coverage improved to 75%</li>
<li>413 commit by 22 authors since JerryScript 2.3.0</li>
</ul>galpetertag:github.com,2008:Repository/33339660/v2.3.02020-06-12T11:54:50ZJerryScript 2.3.0<p>The JerryScript team proudly announces JerryScript 2.3.0 release.</p>
<h3>A short list of changes/improvements:</h3>
<ul>
<li>Improved ES6 (ES2015) support
<ul>
<li>Kangax ES2015 coverage improved from 81% to 95%</li>
<li>Some notable new features:
<ul>
<li>Added Proxy support</li>
<li>Exponentiation operator (**)</li>
<li>Math builtin functions</li>
<li>Function name support</li>
</ul>
</li>
</ul>
</li>
<li>Improved RegExp engine
<ul>
<li>Added full support for Web Compatibility syntax</li>
<li>1.37x better score on Octane/RegExp benchmark</li>
<li>~50% smaller bytecode size</li>
<li>~10% stack usage reduction</li>
</ul>
</li>
<li>208 commits by 16 authors since JerryScript 2.2.0</li>
</ul>galpetertag:github.com,2008:Repository/33339660/v2.2.02020-02-11T13:59:26ZJerryScript 2.2.0<p>The JerryScript team proudly announces JerryScript 2.2.0 release.</p>
<h3>A short list of changes/improvements:</h3>
<ul>
<li>Improved ES6 (ES2015) support
<ul>
<li>Kangax ES2015 coverage improved from 34% to 81%</li>
<li>Some notable new features:
<ul>
<li>Spread syntax for iterable objects</li>
<li>Array and object destructuring</li>
<li>Lexical block scoping (let)</li>
<li>Generators</li>
<li>Well-known symbols</li>
</ul>
</li>
</ul>
</li>
<li>General performance and memory improvements (ARMv7 RPi2)
<ul>
<li>Significant speed-up in match, search, split and replace operations with Strings and RegExps</li>
<li>Significant improvements in garbage collection when having deeply nested objects</li>
<li>Improved prototype lookup for primitive values</li>
<li>Optimized array built-in methods for non-sparse arrays</li>
<li>Small overall stack usage improvement</li>
</ul>
</li>
<li>Added new API functions</li>
<li>Revised a few feature guards that can be used in profiles</li>
<li>Enabled the usage of API functions in native free callbacks</li>
<li>Improved RegExp compatibility with web browsers</li>
<li>231 commits by 18 authors since JerryScript 2.1.0</li>
</ul>galpetertag:github.com,2008:Repository/33339660/v2.1.02019-10-16T13:32:09ZJerryScript 2.1.0<p>The developer team is proud to announce the release of JerryScript version 2.1.0.</p>
<p>With this release we introduce semantic versioning (<a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="493207868" data-permission-text="Title is private" data-url="https://github.com/jerryscript-project/jerryscript/issues/3104" data-hovercard-type="issue" data-hovercard-url="/jerryscript-project/jerryscript/issues/3104/hovercard" href="https://github.com/jerryscript-project/jerryscript/issues/3104">#3104</a>).</p>
<h3>A short list of changes/improvements</h3>
<ul>
<li>General performance and memory improvements (ARMv7 RPi2)
<ul>
<li>~20% speedup on SunSpider</li>
<li>~15% speedup on V8 Benchmark Suite</li>
<li>~15-20% speedup on TypedArray access</li>
<li>~10-20x speedup on JSON microbenchmarks</li>
<li>~10% heap gain on SunSpider</li>
</ul>
</li>
<li>No breaking API change (since JerryScript 2.0)</li>
<li>Added a new port API function: jerry_port_get_native_module</li>
<li>Added a subset of ES6 (ES2015) features
<ul>
<li>Number.isInteger, isSafeInteger, isFinite, isNan</li>
<li>TypedArray.prototype.indexOf, lastIndexOf, toLocaleString, copyWithin</li>
</ul>
</li>
<li>Added a tool to transpile not yet supported features using Babel (experimental)</li>
<li>Improved string handling internally</li>
<li>Improved Windows support</li>
<li>A few statistics (since JerryScript 2.0):
<ul>
<li>138 commits by 13 authors</li>
<li>50 fixed issues</li>
</ul>
</li>
</ul>galpetertag:github.com,2008:Repository/33339660/v2.02019-08-01T12:47:32ZJerryScript 2.0<p>The developer team is proud to announce the release of JerryScript version 2.0</p>
<h3>A short list of changes/improvements</h3>
<ul>
<li>General performance and memory improvements (on ARM RPI3 ~18% speedup and memory usage reduction)</li>
<li>Binary code size reduction (on ARM RPI3 ~24 kB binary size reduction with ES5.1 profile)</li>
<li>Minimal API breaking changes (see Migration guide)</li>
<li>Added new API functions (see API reference document)</li>
<li>Added debugger support</li>
<li>Created extension library which includes common use-cases, utility functions</li>
<li>Added a subset of ES6 (ES2015) features:
<ul>
<li>Arrow functions</li>
<li>Class support</li>
<li>Module support</li>
<li>Rest parameters and enhanced object initializer support</li>
<li>Template strings</li>
<li>For-of support</li>
<li>Symbols</li>
<li>Promises</li>
<li>Map/Set/Iterator built-ins</li>
<li>TypedArray/ArrayBuffer/DataView built-ins</li>
</ul>
</li>
<li>New experimental target platforms:
<ul>
<li>OpenWrt, Particle, and Windows</li>
</ul>
</li>
<li>A few statistics (since JerryScript 1.0):
<ul>
<li>1000+ commits by 73+ authors</li>
<li>1000+ merged Pull requests</li>
</ul>
</li>
</ul>galpetertag:github.com,2008:Repository/33339660/v1.02016-09-02T12:10:24ZJerryScript 1.0<p>This is the first stable release of JerryScript!</p>
<p>Officially supported platforms:</p>
<ul>
<li>x86-32, x86-64 and ARMv7 Linux</li>
<li>NuttX on STM32F4</li>
<li>RIOT on STM32F4</li>
<li>Zephyr on Arduino 101 and FRDM-K64F</li>
<li>mbed OS 3.0 on FRDM-K64F, STM32F4, STM32F429ZI, F401RE</li>
<li>Curie BSP on Arduino 101</li>
</ul>
<p>Experimental support for:</p>
<ul>
<li>ESP8266</li>
</ul>zherczeg