njs-0.7.1

Dmitry Volyntsev xeioex at nginx.com
Tue Dec 28 16:07:12 UTC 2021


Hello,

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

This release focuses on stabilization of recently released features
including async/await and HTTPS support in ngx.fetch().

The "js_include" directive deprecated since 0.4.0 was removed.

Also a series of user invisible refactoring was committed. The most
prominent one is PCRE2 support. PCRE2 is the default RegExp engine
now.

Learn more about njs:

- Overview and introduction: https://nginx.org/en/docs/njs/
- NGINX JavaScript in Your Web Server Configuration:
     https://youtu.be/Jc_L6UffFOs
- Extending NGINX with Custom Code: https://youtu.be/0CVhq4AUU7M
- Using node modules with njs:
https://nginx.org/en/docs/njs/node_modules.html
- Writing njs code using TypeScript definition files:
    https://nginx.org/en/docs/njs/typescript.html

We are hiring:

If you are a C programmer, passionate about Open Source and you
love what we do, consider the following career opportunity:
https://ffive.wd5.myworkdayjobs.com/NGINX/job/Ireland-Homebase/Software-Engineer-III---NGNIX-NJS_RP1022237

Feel free to try it and give us feedback on:

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


Changes with njs 0.7.1                                        28 Dec 2021

     nginx modules:

     *) Change: the "js_include" directive deprecated since 0.4.0 was
        removed.

     *) Change: PCRE/PCRE2-specific code was moved to the modules.
        This ensures that njs uses the same RegExp library as nginx.

     Core:

     *) Feature: extended "fs" module. Added stat(), fstat()
        and friends.

     *) Change: default RegExp engine for CLI is switched
        to PCRE2.

     *) Bugfix: fixed decodeURI() and decodeURIComponent() with
        invalid byte strings. The bug was introduced in 0.4.3.

     *) Bugfix: fixed heap-use-after-free in await frame.
        The bug was introduced in 0.7.0.

     *) Bugfix: fixed WebCrypto sign() and verify() methods
        with OpenSSL 3.0.

     *) Bugfix: fixed exception throwing when RegExp match fails.
        The bug was introduced in 0.1.15.

     *) Bugfix: fixed catching of exception thrown in try block
        of async function. The bug was introduced in 0.7.0.

     *) Bugfix: fixed execution of async function in synchronous
        context. The bug was introduced in 0.7.0.

     *) Bugfix: fixed function redeclaration in CLI when interactive
        mode is on. The bug was introduced in 0.6.2.

     *) Bugfix: fixed typeof operator with DataView object.

     *) Bugfix: eliminated information leak in Buffer.from().



More information about the nginx mailing list