about summary refs log tree commit homepage
tag namev3.0.0-pre1 (371aed563193564e529397db5643a444485b6bd5)
tag date2023-01-09 07:06:42 +0000
tagged byEric Wong <e@80x24.org>
tagged objectcommit 458c801f68...
downloadmwrap-3.0.0-pre1.tar.gz
mwrap 3.0.0-pre1
This contains many changes from the Perl port @ https://80x24.org/mwrap-perl.git

* Built-in RCU-friendly version of dlmalloc, no more fragile dlsym(3m)
  resolution of malloc-family functions in the constructor

* Allocations are now backed by O_TMPFILE on $TMPDIR on modern Linux.
  Since mwrap increases memory usage greatly and I needed to use it
  on a system where I needed more VM space but lacked the ability
  to add swap.

* Configurable C backtrace level via MWRAP=bt:$DEPTH where $DEPTH
  is a non-negative integer.  Be careful about increasing it, even
  a depth of 3-4 can be orders-of-magnitude more expensive in
  time and space.  This can be changed dynamically at runtime via
  local HTTP (see below).

* Embedded per-process local-socket-only HTTP server obsoletes
  MwrapRack when combined with mwrap-rproxy from the Perl dist
  (set `MWRAP=socket_dir:/dir/of/sockets')
  See https://80x24.org/mwrap-perl/20221210015518.272576-4-e@80x24.org/
  and the new mwrap(1) man page for more info

  It now supports downloading CSV (suitable for importing into sqlite 3.32.0+)

* License switched to GPL-3+ to be compatible with GNU binutils
  since we may take code from addr2line in the future.

* libxxhash supported if XXH3_64bits is available (minor speedup).

- Mwrap::HeapPageBody no longer supported since Ruby 3.1+ uses mmap(2)

- Ruby files longer than 16.7 million lines are no longer supported :P