Releases: blueconic/node-oom-heapdump
Releases · blueconic/node-oom-heapdump
Adding prebuilt binaries (as major version)
See #13
Republished as 2.0.0, to abide semver.
Removed prebuilt binaries
Adding prebuilt binaries
Node 12 support
Added node 12 support.
Updated dependencies, build script for 7/10
- Updated dependencies
- Added Travis CI build script which tries to install the module on version 7 to 10
- Added Travis badge
- Fixed a warning on Node.js 10 regarding "String::Utf8Value".
Security updates
Some packages used in dependencies of this package contained security issues.
This release updated the dependencies, which mitigate these risks.
Fix heapdump generation on Unix and add old implementation as alternative
- Fix heapdump generation on Unix
- Add option to use the "old" implementation (GCmonitoring), as the new implementatuion is more prone to run in with the OoM killer when in memory restricted environments (like Docker). The old implementation was less impacted by this, because the "threshold" parameter can be used to create the heapdump earlier.
You can specify which OoM implementation to use, either: "NATIVE_HOOK" (default) or "GC_MONITORING" (old implementation).
Use native V8 API to hook into OoM errors
This change should greatly improve usability of this module, as it no longer relies on the GC kicking in.
It just hooks in on the native V8 API 'SetOOMErrorHandler'.
- Changed the way the "out of memory" heapdump is created, based on the work of 'trevnorris' (https://github.com/trevnorris/node-ofe/blob/master/ofe.cc). Using V8 engine isolate.SetOOMErrorHandler() to hook in on the out of memory event.
- Updated readme and removed deprecated 'limit' and 'threshold' parameters.
- Removed 'gc-stats' module, as we no longer need it with the native C++ add-on.
Fix for issue #3 'require.main.filename is undefined'
- Fix for #3
- Upgrade dependencies
Add port verification when module is loaded
- 1.0.11: Added port verification; when the module is loaded, the configured WebSocket port is verified. If the websocket responds with ECONNREFUSED, the process might have been started without the --inspect flag.
- updated dependencies (chrome-remote-interface)