[nginx-announce] njs-0.3.6
    Dmitry Volyntsev 
    xeioex at nginx.com
       
    Tue Oct 22 15:49:16 UTC 2019
    
    
  
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.
    
    
More information about the nginx-announce
mailing list