Changes since 2020-01-19:
2020-04-12:
- added cross realm support
- added AggregateError and Promise.any
- added env, uid and gid options in os.exec()
- misc bug fixes
2020-03-16:
- reworked error handling in std and os libraries: suppressed I/O
exceptions in std FILE functions and return a positive errno value
when it is explicit
- output exception messages to stderr
- added std.loadFile(), std.strerror(), std.FILE.prototype.tello()
- added JS_GetRuntimeOpaque(), JS_SetRuntimeOpaque(), JS_NewUint32()
- updated to Unicode 13.0.0
- misc bug fixes
* Don't use DATE as a variable, as it's used elsewhere, use QJS_DATE instead
* Don't use the "bignum" PLIST variable anymore, the "bn" variants are no
longer being built
* Add "lto" PLIST variable, supported by and used on Linux
* Move the setting of CONFIG_BIGNUM to the pkg Makefile instead of
always setting it, should support 32-bit NetBSD ports.
Bump PKGREVISION.
Pkgsrc changes:
* adapt patches
* If NetBSD platform misses 64-bit atomics, turn off all atomics
(Trying to just disable BIGNUM fails; workaround suggested by
Fabrice Bellard)
Upstream changes:
- keep CONFIG_BIGNUM in the makefile
- added os.chdir()
- qjs: added -I option
- more memory checks in the bignum operations
- modified operator overloading semantics to be closer to the TC39
proposal
- suppressed "use bigint" mode. Simplified "use math" mode
- BigDecimal: changed suffix from 'd' to 'm'
- misc bug fixes
QuickJS is a small and embeddable Javascript engine. It supports the
ES2020 specification including modules, asynchronous generators and
proxies. It optionally supports mathematical extensions such as big
integers (BigInt), big floating point numbers (BigFloat) and operator
overloading.