|
|
@ -621,7 +621,7 @@ Released |
|
|
|
Planned |
|
|
|
======= |
|
|
|
|
|
|
|
1.1.0 (2014-XX-XX) |
|
|
|
1.1.0 (2015-01-XX) |
|
|
|
------------------ |
|
|
|
|
|
|
|
* Main release goal: improved low memory support to allow Duktape to run |
|
|
@ -629,10 +629,6 @@ Planned |
|
|
|
in this release, Duktape initial RAM usage is reduced from about 46kB to |
|
|
|
22kB for a 32-bit target when all low memory features are enabled |
|
|
|
|
|
|
|
* Add duk_def_prop() which allows creation of accessor (getter/setter) |
|
|
|
properties and other custom properties from C code (instead of using |
|
|
|
Object.defineProperty() from Ecmascript code) |
|
|
|
|
|
|
|
* Add lightfunc (DUK_TYPE_LIGHTFUNC) primitive type, representing a |
|
|
|
Duktape/C function with a plain tagged value without any heap allocations |
|
|
|
|
|
|
@ -661,6 +657,10 @@ Planned |
|
|
|
the algorithm uses separate chaining with arrays, making allocation |
|
|
|
behavior easier to handle using a pool allocator, see doc/low-memory.rst |
|
|
|
|
|
|
|
* Add duk_def_prop() which allows creation of accessor (getter/setter) |
|
|
|
properties and other custom properties from C code (instead of using |
|
|
|
Object.defineProperty() from Ecmascript code) |
|
|
|
|
|
|
|
* Add duk_is_error() API call to check if a value inherits from Error |
|
|
|
|
|
|
|
* Add duk_get_error_code() API call to check if a value inherits from |
|
|
@ -681,13 +681,6 @@ Planned |
|
|
|
* Add feature option DUK_OPT_NO_STRICT_DECL to disable support for "use |
|
|
|
strict" declarations which may be useful with legacy code bases |
|
|
|
|
|
|
|
* Change buffer maximum size check to compare against allocated size |
|
|
|
(including spare) instead of requested size (without spare), this has |
|
|
|
a practical impact only when using 16-bit buffer size field |
|
|
|
|
|
|
|
* Fix INVALID opcode error for some labelled non-iteration statements |
|
|
|
(see GH-85) |
|
|
|
|
|
|
|
* Add DUK_OPT_SETJMP, DUK_OPT_UNDERSCORE_SETJMP, and DUK_OPT_SIGSETJMP to |
|
|
|
force an alternative provider for long control transfers; _setjmp() or |
|
|
|
sigsetjmp() (with savesigs set to 0) can be a lot faster than setjmp() |
|
|
@ -696,24 +689,7 @@ Planned |
|
|
|
* Default to ``_setjmp`` for long control transfers on OSX/iPhone (when |
|
|
|
__APPLE__ is defined) (GH-55) |
|
|
|
|
|
|
|
* Fix a few missing "volatile" attributes in the bytecode executor which |
|
|
|
affected setjmp handling in clang (especially for _setjmp and sigsetjmp), |
|
|
|
also fix a few setjmp clobber warnings in executor |
|
|
|
|
|
|
|
* Fix compile error for DUK_OPT_NO_PC2LINE |
|
|
|
|
|
|
|
* Better fix for C++ compilation issue caused by Duktape using both |
|
|
|
static declaration and a static define which is not allowed in C++ |
|
|
|
(see GH-63) |
|
|
|
|
|
|
|
* Fix fileName for functions defined in a module loaded using require(), |
|
|
|
previously fileName would always be duk_bi_global.c which is misleading |
|
|
|
(see GH-58) |
|
|
|
|
|
|
|
* Fix object literal getter/setter definition to avoid creating a binding |
|
|
|
for the function (property) name, so that a setter/getter can access an |
|
|
|
outside variable with the same name as the get/set property (see |
|
|
|
test-bug-getset-func-name.js for details) |
|
|
|
* Add SuperH detection support |
|
|
|
|
|
|
|
* Change JSON.stringify() to escape U+2028 and U+2029 by default to make |
|
|
|
the output a valid Javascript string, so that it can be embedded in a |
|
|
@ -725,6 +701,10 @@ Planned |
|
|
|
* Make Function.prototype.name writable so that application code can set |
|
|
|
a 'name' property on Duktape/C functions (GH-79) |
|
|
|
|
|
|
|
* Change buffer maximum size check to compare against allocated size |
|
|
|
(including spare) instead of requested size (without spare), this has |
|
|
|
a practical impact only when using 16-bit buffer size field |
|
|
|
|
|
|
|
* Use deep C stack for dukweb.js to remove some compiler recursion limit |
|
|
|
limitations (see GH-67) |
|
|
|
|
|
|
@ -743,18 +723,38 @@ Planned |
|
|
|
|
|
|
|
* Add an SPDX 1.2 license into the distributable |
|
|
|
|
|
|
|
* Fix several compile warnings with gcc 4.9.2 (GH-91) |
|
|
|
* Fix INVALID opcode error for some labelled non-iteration statements |
|
|
|
(see GH-85) |
|
|
|
|
|
|
|
* Fix a few missing "volatile" attributes in the bytecode executor which |
|
|
|
affected setjmp handling in clang (especially for _setjmp and sigsetjmp), |
|
|
|
also fix a few setjmp clobber warnings in executor |
|
|
|
|
|
|
|
* Fix compile error for DUK_OPT_NO_PC2LINE |
|
|
|
|
|
|
|
* Better fix for C++ compilation issue caused by Duktape using both |
|
|
|
static declaration and a static define which is not allowed in C++ |
|
|
|
(see GH-63) |
|
|
|
|
|
|
|
* Fix fileName for functions defined in a module loaded using require(), |
|
|
|
previously fileName would always be duk_bi_global.c which is misleading |
|
|
|
(see GH-58) |
|
|
|
|
|
|
|
* Fix object literal getter/setter definition to avoid creating a binding |
|
|
|
for the function (property) name, so that a setter/getter can access an |
|
|
|
outside variable with the same name as the get/set property (see |
|
|
|
test-bug-getset-func-name.js for details) |
|
|
|
|
|
|
|
* Fix JSON.parse() syntax error for explicitly positive exponents (e.g. |
|
|
|
'1.5e+2') (GH-93) |
|
|
|
|
|
|
|
* Don't fail compilation if SIZE_MAX is < 0xffffffffUL, to allow compilation |
|
|
|
on platforms where SIZE_MAX is (apparently) incorrectly defined |
|
|
|
|
|
|
|
* Fix duk_push_error_object() return value for platforms where variadic |
|
|
|
macros are not available |
|
|
|
|
|
|
|
* Add SuperH detection support |
|
|
|
* Don't fail compilation if SIZE_MAX is < 0xffffffffUL, to allow compilation |
|
|
|
on platforms where SIZE_MAX is (apparently) incorrectly defined |
|
|
|
|
|
|
|
* Fix several compile warnings with gcc 4.9.2 (GH-91) |
|
|
|
|
|
|
|
* Fix MinGW compile warning "visibility attribute not supported in this |
|
|
|
configuration; ignored" when using separate sources |
|
|
|