[prev in list] [next in list] [prev in thread] [next in thread] 

List:       nginx
Subject:    njs-0.3.3
From:       Dmitry Volyntsev <xeioex () nginx ! com>
Date:       2019-06-25 15:32:37
Message-ID: 80A2788A-B8B8-4A57-BBD4-AAF02C168FD7 () nginx ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Hello,

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

This release mostly focuses on stability issues in njs core after regular
fuzzing tests were introduced.

Notable new features:
- Added ES5 property getter/setter runtime support:
> > var o = {a:2};
> undefined
> > Object.defineProperty(o, ‘b', {get:function(){return 2*this.a}}); o.b
> 4

- Added global "process" variable:
> > process.pid
<current process pid>
> > process.env.HOME
<current process HOME env variable>

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 \
<http://mailman.nginx.org/mailman/listinfo/nginx-devel>


Changes with njs 0.3.3                                           25 Jun 2019

    nginx modules:

    *) Improvement: getting of special response headers in headersOut.

    *) Improvement: working with unknown methods in r.subrequest().

    *) Improvement: added support for null as a second argument
       of r.subrequest().

    *) Bugfix: fixed processing empty output chain in stream body filter.

    Core:
    *) Feature: added runtime support for property getter/setter.
       Thanks to 洪志道 (Hong Zhi Dao) and Artem S. Povalyukhin.

    *) Feature: added "process" global object.

    *) Feature: writable most of built-in properties and methods.

    *) Feature: added generic implementation of Array.prototype.fill().

    *) Bugfix: fixed integer-overflow in String.prototype.concat().

    *) Bugfix: fixed setting of object properties.

    *) Bugfix: fixed Array.prototype.toString().

    *) Bugfix: fixed Date.prototype.toJSON().

    *) Bugfix: fixed overwriting "constructor" property of built-in
       prototypes.

    *) Bugfix: fixed processing of invalid surrogate pairs in strings.

    *) Bugfix: fixed processing of invalid surrogate pairs in JSON
       strings.

    *) Bugfix: fixed heap-buffer-overflow in toUpperCase() and
       toLowerCase().

    *) Bugfix: fixed escaping lone closing square brackets in RegExp()
       constructor.

    *) Bugfix: fixed String.prototype.toBytes() for ASCII strings.

    *) Bugfix: fixed handling zero byte characters inside RegExp
       pattern strings.

    *) Bugfix: fixed String.prototype.toBytes() for ASCII strings.

    *) Bugfix: fixed truth value of JSON numbers in JSON.parse().

    *) Bugfix: fixed use-of-uninitialized-value in 
       njs_string_replace_join().

    *) Bugfix: fixed parseInt(‘-0').
       Thanks to Artem S. Povalyukhin.


[Attachment #5 (unknown)]

<html><head><meta http-equiv="Content-Type" content="text/html; \
charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; \
line-break: after-white-space;" class=""><div class="">Hello,</div><div class=""><br \
class=""></div><div class="">I'm glad to announce a new release of NGINX JavaScript \
module (njs).</div><div class=""><br class=""></div><div class="">This release mostly \
focuses on stability issues in njs core after regular</div><div class="">fuzzing \
tests were introduced.</div><div class=""><br class=""></div><div class="">Notable \
new features:</div><div class="">- Added ES5 property getter/setter runtime \
support:</div><div class="">: &gt; var o = {a:2};</div><div class="">: \
undefined</div><div class="">: &gt; Object.defineProperty(o, ‘b', \
{get:function(){return 2*this.a}}); o.b</div><div class="">: 4</div><div class=""><br \
class=""></div><div class="">- Added global "process" variable:</div><div class="">: \
&gt; process.pid</div><div class="">&lt;current process pid&gt;</div><div class="">: \
&nbsp;&gt; process.env.HOME</div><div class="">&lt;current process HOME env \
variable&gt;</div><div class=""><br class=""></div><div class="">You can learn more \
about njs:</div><div class=""><br class=""></div><div class="">- Overview and \
introduction: <a href="http://nginx.org/en/docs/njs/" \
class="">http://nginx.org/en/docs/njs/</a></div><div class="">- Presentation: <a \
href="https://youtu.be/Jc_L6UffFOs" \
class="">https://youtu.be/Jc_L6UffFOs</a></div><div class=""><br class=""></div><div \
class="">Feel free to try it and give us feedback on:</div><div class=""><br \
class=""></div><div class="">- Github: <a href="https://github.com/nginx/njs/issues" \
class="">https://github.com/nginx/njs/issues</a></div><div class="">- Mailing list: \
<a href="http://mailman.nginx.org/mailman/listinfo/nginx-devel" \
class="">http://mailman.nginx.org/mailman/listinfo/nginx-devel</a></div><div \
class=""><br class=""></div><div class=""><br class=""></div><div class=""><div \
class="">Changes with njs 0.3.3 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; \
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; \
&nbsp; &nbsp; 25 Jun 2019</div><div class=""><br class=""></div><div class="">&nbsp; \
&nbsp; nginx modules:</div><div class=""><br class=""></div><div class="">&nbsp; \
&nbsp; *) Improvement: getting of special response headers in headersOut.</div><div \
class=""><br class=""></div><div class="">&nbsp; &nbsp; *) Improvement: working with \
unknown methods in r.subrequest().</div><div class=""><br class=""></div><div \
class="">&nbsp; &nbsp; *) Improvement: added support for null as a second \
argument</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp;of r.subrequest().</div><div \
class=""><br class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed processing \
empty output chain in stream body filter.</div><div class=""><br class=""></div><div \
class="">&nbsp; &nbsp; Core:</div><div class="">&nbsp; &nbsp; *) Feature: added \
runtime support for property getter/setter.</div><div class="">&nbsp; &nbsp; &nbsp; \
&nbsp;Thanks to 洪志道 (Hong Zhi Dao) and Artem S. Povalyukhin.</div><div \
class=""><br class=""></div><div class="">&nbsp; &nbsp; *) Feature: added "process" \
global object.</div><div class=""><br class=""></div><div class="">&nbsp; &nbsp; *) \
Feature: writable most of built-in properties and methods.</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Feature: added generic implementation \
of Array.prototype.fill().</div><div class=""><br class=""></div><div class="">&nbsp; \
&nbsp; *) Bugfix: fixed integer-overflow in String.prototype.concat().</div><div \
class=""><br class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed setting of \
object properties.</div><div class=""><br class=""></div><div class="">&nbsp; &nbsp; \
*) Bugfix: fixed Array.prototype.toString().</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed \
Date.prototype.toJSON().</div><div class=""><br class=""></div><div class="">&nbsp; \
&nbsp; *) Bugfix: fixed overwriting "constructor" property of built-in</div><div \
class="">&nbsp; &nbsp; &nbsp; &nbsp;prototypes.</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed processing of invalid \
surrogate pairs in strings.</div><div class=""><br class=""></div><div \
class="">&nbsp; &nbsp; *) Bugfix: fixed processing of invalid surrogate pairs in \
JSON</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp;strings.</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed heap-buffer-overflow in \
toUpperCase() and</div><div class="">&nbsp; &nbsp; &nbsp; \
&nbsp;toLowerCase().</div><div class=""><br class=""></div><div class="">&nbsp; \
&nbsp; *) Bugfix: fixed escaping lone closing square brackets in RegExp()</div><div \
class="">&nbsp; &nbsp; &nbsp; &nbsp;constructor.</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed \
String.prototype.toBytes() for ASCII strings.</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed handling zero byte \
characters inside RegExp</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp;pattern \
strings.</div><div class=""><br class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: \
fixed String.prototype.toBytes() for ASCII strings.</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed truth value of JSON \
numbers in JSON.parse().</div><div class=""><br class=""></div><div class="">&nbsp; \
&nbsp; *) Bugfix: fixed use-of-uninitialized-value in&nbsp;</div><div class="">&nbsp; \
&nbsp; &nbsp; &nbsp;njs_string_replace_join().</div><div class=""><br \
class=""></div><div class="">&nbsp; &nbsp; *) Bugfix: fixed \
parseInt(‘-0').</div><div class="">&nbsp; &nbsp; &nbsp; &nbsp;Thanks to Artem S. \
Povalyukhin.</div></div></body></html>



_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic