Skip to content

Releases: rust-minidump/minidump-writer

0.10.1

20 Sep 14:27
Compare
Choose a tag to compare

Fixed

  • PR#129 added checking of additions to ensure invalid memory offsets are gracefully handled.
  • PR#135 resolved #134 by attempting to read the executables build id from the mapped file if it could not be retrieved from process memory.
  • PR#136 changed to an older type to avoid requiring a semi-recent rust version.

0.10.0

20 Aug 12:09
Compare
Choose a tag to compare

Changed

  • PR#118 resolved #72 by adding support for reading process memory via process_vm_readv and /proc/{pid}/mem, in addition to the original PTRACE_PEEKDATA. This gives significant performance benefits as memory can now be read in blocks of arbitrary size instead of word-by-word with ptrace.
  • PR#128 and PR#133 updated the lockfile.

Fixed

  • PR#127 resolved #27 by allowing programs to pass the needed auxv information, still falling back to reading /proc/{pid}/auxv to fill missing information, and being more permissive by still writing a dump if some or all of the auxv information could not be retrieved successfully rather than completely failing to write the minidump.
  • PR#131 resolved #124 by reinjecting non-SIGSTOP signals after ptrace::attach so that the thread would be in the correct state after ptrace::detach.

0.9.0

20 Jul 10:47
Compare
Choose a tag to compare

Fixed

  • PR#117 resolved #79 by enabling reading of a module's build id and soname directly from the mapped process rather than relying on file reading, though that is still used as a fallback.

Changed

  • PR#126 updated minidump-common -> 0.22.

0.8.9

01 Apr 13:23
Compare
Choose a tag to compare

Fixed

  • PR#110 changed it so that SIGCONT is sent regardless if the process was not able to be SIGSTOPed quickly enough.
  • PR#113 fixed a segfault(!) on linux if it was compiled with rustc 1.77.0 in release mode.

0.8.8

21 Mar 10:09
Compare
Choose a tag to compare

Fixed

  • PR#108 resolved #28 by sending a SIGSTOP to the process that is about to be dumped to (hopefully) increase the robustness of the dumping process by reducing the chance of errors, particularly with regard to threads. This is done as a best effort, and will perform the old behavior if the process has not stopped within a timeout (by default 100ms), which can be overriden by the user.

0.8.7

04 Mar 10:39
Compare
Choose a tag to compare

Changed

  • PR#106 bumped minidump-common, minidump, minidump-processor, and minidump-unwind -> 0.21.

0.8.6

26 Feb 08:15
Compare
Choose a tag to compare

Changed

  • PR#104 slightly tweaked .so version parsing in the case of more "exotic" versions such as libdbus-1.so.3.34.2rc5. Previously this was parsed as 3.34.25 but would cause ambiguity if there was ever an actual .25 patch/age in the future. Now, the last version is parsed as 1-2 numbers, ignoring non-digit characters if the last component has them. If 2 numbers are parsed, the last number is now placed in VS_FIXEDFILEINFO::product_version_lo so that it is distinct from the patch/age component placed in VS_FIXEDFILEINFO::product_version_hi.

0.8.5

23 Feb 16:47
Compare
Choose a tag to compare

Added

  • PR#103 added .so file versions as additional metadata to minidumps, resolving this Mozilla bug. There is no true standard for .so file versions, so this is a best effort to pull what version information we can from the .so filename. The version components are major.minor.release similarly to semver, where major -> VS_FIXEDFILEINFO::file_version_hi, major -> VS_FIXEDFILEINFO::file_version_lo, and release -> VS_FIXEDFILEINFO::product_version_hi
    • libmozsandbox.so -> 0.0.0
    • libstdc++.so.6.0.32 -> 6.0.32
    • libcairo-gobject.so.2.11800.0 -> 2.11800.0
    • libm.so.6 -> 6.0.0
    • libabsl_time_zone.so.20220623.0.0 -> 20220623.0.0
    • libdbus-1.so.3.34.2rc5 -> 3.34.25

Release 0.8.4

15 Feb 09:58
Compare
Choose a tag to compare

Changed

  • PR#97 bumped goblin -> 0.8.
  • PR#99 bumped minidump-common -> 0.20, scroll -> 0.12, memmap2 -> 0.9.

Release 0.8.3

07 Nov 10:46
Compare
Choose a tag to compare

Added

  • PR#94 added support for writing file information for every file open in the process the dump is being performed for into the MINIDUMP_HANDLE_DATA_STREAM stream.
  • PR#90 added support for including the /proc/<pid>/limits file in the MozLinuxLimits stream. This information can be used together with the file information described above to diagnose situations where the process was killed by the kernel due to file handle limits being hit. Thanks @lissyx!

Changed

  • PR#94 updated several dependencies to align with minidump-common, which was also bumped.