tag name | v2.0.0 (46f5412382b0d7fc1cca513b7e8664a4041e5288) |
tag date | 2018-07-20 09:19:39 +0000 |
tagged by | Eric Wong <e@80x24.org> |
tagged object | commit 663605b6f2... |
download | mwrap-2.0.0.tar.gz |
---|
mwrap 2.0.0
This release includes significant changes to track live allocations and frees. It can find memory leaks from malloc with less overhead than valgrind's leakchecker and there is a new Rack endpoint (MwrapRack) which can display live allocation stats. API additions: * Mwrap#[] - https://80x24.org/mwrap/Mwrap.html#method-c-5B-5D * Mwrap::SourceLocation - https://80x24.org/mwrap/Mwrap/SourceLocation.html * MwrapRack - https://80x24.org/mwrap/MwrapRack.html Incompatible changes: * Mwrap.clear now an alias to Mwrap.reset; as it's unsafe to implement the new Mwrap#[] API otherwise: https://80x24.org/mwrap-public/20180716211933.5835-12-e@80x24.org/ 26 changes since v1.0.0: README: improve usage example MANIFEST: add .document add benchmark use __attribute__((weak)) instead of dlsym Mwrap.dump: do not segfault on invalid IO arg bin/mwrap: support LISTEN_FDS env from systemd support per-allocation headers for per-alloc tracking mwrap: use malloc to do our own memalign hold RCU read lock to insert each allocation realloc: do not copy if allocation failed internal_memalign: do not assume real_malloc succeeds ensure ENOMEM is preserved in errno when appropriate memalign: check alignment on all public functions reduce stack usage from file names resolve real_malloc earlier for C++ programs allow analyzing live allocations via Mwrap[location] alias Mwrap.clear to Mwrap.reset implement accessors for SourceLocation mwrap_aref: quiet -Wshorten-64-to-32 warning fixes for FreeBSD 11.1... use memrchr to extract address under glibc do not track allocations for constructor and Init_ disable memalign tracking by default support Mwrap.quiet to temporarily disable allocation tracking mwrap_rack: Rack app to track live allocations documentation updates for 2.0.0 release