Hello,

I'm glad to announce a new release of NGINX JavaScript module (njs).

This release proceeds to extend the coverage of ECMAScript
specifications.

Notable new features:

- Function constructor:
: > var sum = new Function('a, b', 'return a + b');
: undefined
: > sum(2, 3)
: 5

You can learn more about njs:

- Overview and introduction: http://nginx.org/en/docs/njs/
- Presentation: https://youtu.be/Jc_L6UffFOs

Feel free to try it and give us feedback on:

- Github: https://github.com/nginx/njs/issues
- Mailing list: http://mailman.nginx.org/mailman/listinfo/nginx-devel

Changes with njs 0.3.6                                      22 Oct 2019

    nginx modules:

    *) Improvement: getting special headers from r.headersIn.

    Core:

    *) Feature: added new Function() support.

    *) Feature: added Number.prototype.toFixed().

    *) Feature: added Number.prototype.toPrecision().

    *) Feature: added Number.prototype.toExponential().

    *) Improvement: making "prototype" property of function
       instances writable.

    *) Improvement: limiting recursion depth while compiling.

    *) Improvement: moving global functions to the global object.

    *) Bugfix: fixed prototype mutation for object literals.

    *) Bugfix: fixed heap-buffer-overflow while parsing regexp literals.

    *) Bugfix: fixed integer-overflow while parsing exponent
       of number literals.

    *) Bugfix: fixed parseFloat().

*) Bugfix: fixed Array.prototype functions according to the specification. The following functions were fixed: every, includes, indexOf, filter,
       find, findIndex, forEach, lastIndexOf, map, pop, push, reduce,
       reduceRight, shift, some, unshift.

    *) Bugfix: fixed handing of accessor descriptors in Object.freeze().

    *) Bugfix: fixed String.prototype.replace() when first argument
       is not a string.

    *) Bugfix: fixed stack-use-after-scope in Array.prototype.map().

    *) Bugfix: Date.prototype.toUTCString() format was aligned to ES9.

    *) Bugfix: fixed buffer overflow in Number.prototype.toString(radix).

*) Bugfix: fixed Regexp.prototype.test() for regexps with backreferences.

*) Bugfix: fixed Array.prototype.map() for objects with nonexistent values.

    *) Bugfix: fixed Array.prototype.pop() and shift() for sparse objects.

    *) Bugfix: fixed Date.UTC() according to the specification.

    *) Bugfix: fixed Date() constructor according to the specification.

    *) Bugfix: fixed type of Date.prototype.
       Thanks to Artem S. Povalyukhin.

    *) Bugfix: fixed Date.prototype.setTime().
       Thanks to Artem S. Povalyukhin.

*) Bugfix: fixed default number of arguments expected by built-in functions.

*) Bugfix: fixed "caller" and "arguments" properties of a function instance.
       Thanks to Artem S. Povalyukhin.
_______________________________________________
nginx-announce mailing list
nginx-announce@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-announce

Reply via email to