Skip to content

Commit

Permalink
Merge branch 'v1.3.0-release-prep'
Browse files Browse the repository at this point in the history
  • Loading branch information
svaarala committed Sep 12, 2015
2 parents ebef1ee + 7691f8b commit 675165f
Show file tree
Hide file tree
Showing 11 changed files with 54 additions and 29 deletions.
2 changes: 2 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,8 @@ CCOPTS_FEATURES += -DDUK_OPT_SELF_TESTS
#CCOPTS_FEATURES += -DDUK_OPT_NO_AUGMENT_ERRORS
#CCOPTS_FEATURES += -DDUK_OPT_GC_TORTURE
#CCOPTS_FEATURES += -DDUK_OPT_SHUFFLE_TORTURE
#CCOPTS_FEATURES += -DDUK_OPT_REFZERO_FINALIZER_TORTURE
#CCOPTS_FEATURES += -DDUK_OPT_MARKANDSWEEP_FINALIZER_TORTURE
#CCOPTS_FEATURES += -DDUK_OPT_NO_MS_RESIZE_STRINGTABLE
CCOPTS_FEATURES += -DDUK_OPT_DEBUG_BUFSIZE=512
#CCOPTS_FEATURES += -DDUK_OPT_NO_STRICT_DECL
Expand Down
45 changes: 24 additions & 21 deletions RELEASES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -960,10 +960,7 @@ Released

* Avoid including <windows.h> for application build (GH-312)

Planned
=======

1.3.0 (2015-XX-XX)
1.3.0 (2015-09-12)
------------------

* Introduce an external duk_config.h header which provides all platform and
Expand All @@ -979,6 +976,16 @@ Planned
values which point to a user memory area allocated outside of Duktape heap
(for example, an externally allocated frame buffer) (GH-153)

* Add duk_push_buffer_object() which allows pushing of all buffer object and
buffer view types (GH-190)

* Add duk_get_buffer_data() and duk_require_buffer_data() API calls which
accept both plain buffer and buffer object values (GH-190)

* Add duk_steal_buffer() API call which allows user code to steal the current
allocation of a dynamic buffer which is useful for some buffer manipulation
algorithms (GH-129)

* Add support for module.exports in the module loader framework (GH-201)

* Change Duktape.modLoaded[] module cache to track the "module" object
Expand Down Expand Up @@ -1014,16 +1021,6 @@ Planned
* Add Proxy object support to 'instanceof' operator (without support for
'getPrototypeOf' trap) (GH-182)

* Add duk_steal_buffer() API call which allows user code to steal the current
allocation of a dynamic buffer which is useful for some buffer manipulation
algorithms (GH-129)

* Add duk_get_buffer_data() and duk_require_buffer_data() API calls which
accept both plain buffer and buffer object values (GH-190)

* Add duk_push_buffer_object() which allows pushing of all buffer object and
buffer view types (GH-190)

* Add explicit 'this' binding for C eval calls so that strict eval code also
gets 'this' bound to the global object (GH-164)

Expand Down Expand Up @@ -1055,12 +1052,14 @@ Planned
places (GH-209)

* Sizeof(duk_hbuffer_dynamic) reduced from 16 to 12 bytes for low memory
builds using heap compression (GH-209)
builds which employ heap compression (GH-209)

* Increase try-catch register limit (from 511 to 262143) to fix try-catch
out-of-register issues for most code (GH-145)

* Use deep C stack by default also for OSX/iPhone (GH-226)
* Remove DUK_OPT_DEEP_C_STACK (and DUK_USE_DEEP_C_STACK) in favor of explicit
DUK_USE_xxx config options for native recursion limits; C stacks are assumed
to be deep by default for all targets including OSX/iPhone (GH-165, GH-226)

* Make Proxy internal _Target and _Handler properties immutable (non-writable
and non-configurable) (GH-237)
Expand All @@ -1074,11 +1073,7 @@ Planned
structure (GH-209)

* Add example debug transport with local dvalue encoding and decoding, also
provides a C example for encoding and decoding dvalues

* Remove DUK_OPT_DEEP_C_STACK (and DUK_USE_DEEP_C_STACK) in favor of explicit
DUK_USE_xxx config options for native recursion limits; C stacks are assumed
to be deep by default for all targets (GH-165)
provides a C example for encoding and decoding dvalues (GH-251)

* Provide at least 10 callstack entries for error handling (Duktape.errCreate)
when callstack limit is reached (GH-191)
Expand Down Expand Up @@ -1140,6 +1135,14 @@ Planned

* Avoid including <windows.h> for application build (GH-312)

Planned
=======

1.4.0 (XXXX-XX-XX)
------------------

* TBD

2.0.0 (XXXX-XX-XX)
------------------

Expand Down
2 changes: 1 addition & 1 deletion dist-files/Makefile.dukdebug
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ DUKTAPE_SOURCES = src/duktape.c

DUKTAPE_CMDLINE_SOURCES = \
examples/cmdline/duk_cmdline.c \
examples/debug-trans-socket/duk_debug_trans_socket.c
examples/debug-trans-socket/duk_trans_socket.c

CC = gcc
CCOPTS = -Os -pedantic -std=c99 -Wall -fstrict-aliasing -fomit-frame-pointer
Expand Down
4 changes: 4 additions & 0 deletions dist-files/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,10 @@ In particular, you should read the getting started section:

* http://duktape.org/guide.html#gettingstarted

More examples and how-to articles are in the Duktape Wiki:

* http://wiki.duktape.org/

Building and integrating Duktape into your project is very straightforward:

* http://duktape.org/guide.html#compiling
Expand Down
8 changes: 7 additions & 1 deletion doc/release-checklist.rst
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ Checklist for ordinary releases

- DUK_USE_REFZERO_FINALIZER_TORTURE

- DUK_USE_MARKANDSWEEP_FINALIZER_TORTURE
- DUK_USE_MARKANDSWEEP_FINALIZER_TORTURE + DUK_OPT_GC_TORTURE

* Memory usage testing

Expand Down Expand Up @@ -182,6 +182,12 @@ Checklist for ordinary releases

- make emscriptenduktest

* emscripten (compile Duktape with emscripten, run with Duktape)

- on x86-64

- make emscripteninceptiontest

* JS-Interpreter

- on x86-64
Expand Down
3 changes: 3 additions & 0 deletions doc/testcase-known-issues.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@
-
test: "test-dev-nonstd-setget-key-argument.js"
specialoptions: "should work with default options, but will break with DUK_OPT_NO_NONSTD_ACCESSOR_KEY_ARGUMENT"
-
test: "test-bi-typedarray-nan-handling.js"
specialoptions: "NaN sign is platform dependent"

# API testcase (tests/api/) known issues

Expand Down
2 changes: 1 addition & 1 deletion examples/cmdline/duk_cmdline.c
Original file line number Diff line number Diff line change
Expand Up @@ -865,7 +865,7 @@ int main(int argc, char *argv[]) {
#ifdef DUK_CMDLINE_DEBUGGER_SUPPORT
" --debugger start example debugger\n"
#endif
" --recreate-heap recreate heap after every file\n"
" --recreate-heap recreate heap after every file\n"
"\n"
"If <filename> is omitted, interactive mode is started automatically.\n");
fflush(stderr);
Expand Down
2 changes: 1 addition & 1 deletion src/duk_api_public.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ struct duk_number_list_entry {
* have 99 for patch level (e.g. 0.10.99 would be a development version
* after 0.10.0 but before the next official release).
*/
#define DUK_VERSION 10299L
#define DUK_VERSION 10300L

/* Git describe for Duktape build. Useful for non-official snapshot builds
* so that application code can easily log which Duktape snapshot was used.
Expand Down
10 changes: 7 additions & 3 deletions tests/api/test-external-buffer.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@ final top: 1
*** test_3 (duk_safe_call)
==> rc=1, result='TypeError: unexpected type'
*** test_4 (duk_safe_call)
["censoredtag","censoredpointer",5,"censoredheapsize"]
["censoredtag","censoredpointer",5,"censoredheapsize",256]
["censoredtag","censoredpointer",5,"censoredheapsize",16]
["censoredtag","censoredpointer","censoredrefcount","censoredheapsize"]
["censoredtag","censoredpointer","censoredrefcount","censoredheapsize",256]
["censoredtag","censoredpointer","censoredrefcount","censoredheapsize",16]
final top: 0
==> rc=0, result='undefined'
===*/
Expand Down Expand Up @@ -111,12 +111,16 @@ static duk_ret_t test_3(duk_context *ctx) {
static duk_ret_t test_4(duk_context *ctx) {
unsigned char buf[16];

/* Censor refcount too because e.g. in shuffle torture test the
* refcount will be different than otherwise.
*/
duk_eval_string(ctx,
"(function (b1, b2, b3) {\n"
" [ b1, b2, b3 ].forEach(function (b) {\n"
" var t = Duktape.info(b);\n"
" t[0] = 'censoredtag';\n"
" t[1] = 'censoredpointer';\n"
" t[2] = 'censoredrefcount';\n"
" t[3] = 'censoredheapsize';\n"
" print(Duktape.enc('jx', t));\n"
" });\n"
Expand Down
3 changes: 3 additions & 0 deletions tests/ecmascript/test-bi-typedarray-nan-handling.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ function nanHandlingTest() {
sign = expt >>> 15;
expt = (expt >> 4) & 0x7ff;

// Note: NaN normalization is allowed, and NaN sign is also platform
// dependent.

print('sign: ' + sign);
print('expt: ' + expt);

Expand Down
2 changes: 1 addition & 1 deletion util/make_dist.sh
Original file line number Diff line number Diff line change
Expand Up @@ -445,7 +445,7 @@ python config/genconfig.py --metadata config --output $DIST/duk_config.h.tmp \
autodetect-header-legacy
cp $DIST/duk_config.h.tmp $DISTSRCCOM/duk_config.h
cp $DIST/duk_config.h.tmp $DISTSRCSEP/duk_config.h
cp $DIST/duk_config.h.tmp $DIST/config/duk_config.h-autodetect
#cp $DIST/duk_config.h.tmp $DIST/config/duk_config.h-autodetect

# Modular duk_config.h (to replace the previous monolithic one)
#python config/genconfig.py --metadata config --output $DIST/config/duk_config.h-modular \
Expand Down

0 comments on commit 675165f

Please sign in to comment.