njs-0.8.6
Dmitry Volyntsev
xeioex at nginx.com
Wed Oct 2 21:58:26 UTC 2024
Hello,
I'm glad to announce a new release of NGINX JavaScript module (njs).
This release introduced the QuickJS engine support in nginx modules.
Read more here: https://nginx.org/en/docs/njs/engine.html
Notable new features:
- QuickJS in nginx:
: nginx.conf:
: location /engine {
: js_engine qjs;
: js_content main.entry;
: }
:
: main.js:
: function entry(r) {
: let m = new Map();
: m.set(1, "QJS");
: r.return(200, "Hello from " + m.get(1));
: }
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
Feel free to try it and give us feedback on:
- Github:
https://github.com/nginx/njs/issues
Additional examples and howtos can be found here:
- Github:
https://github.com/nginx/njs-examples
Changes with njs 0.8.6 02 Oct
2024
nginx modules:
*) Feature: introduced QuickJS engine.
*) Feature: added optional nocache flag for js_set directive.
Thanks to Thomas P.
*) Feature: exposed capture group variables in HTTP module.
Thanks to Thomas P.
Core:
*) Feature: added Buffer module for QuickJS engine.
*) Bugfix: fixed handling of empty labelled statement in a function.
*) Bugfix: fixed Function constructor handling when called without
arguments.
*) Bugfix: fixed Buffer.prototype.writeInt8() and friends.
*) Bugfix: fixed Buffer.prototype.writeFloat() and friends.
*) Bugfix: fixed Buffer.prototype.lastIndexOf().
*) Bugfix: fixed Buffer.prototype.write().
*) Bugfix: fixed maybe-uninitialized warnings in error creation.
*) Bugfix: fixed 'ctx.codepoint' initialization in UTF-8 decoding.
*) Bugfix: fixed 'length' initialization in Array.prototype.pop().
*) Bugfix: fixed handling of encode arg in fs.readdir() and
fs.realpath().
More information about the nginx
mailing list