Thank you everyone for contributing to a very nice release!
Tracking Binary Size
As backtrace-rs is compiled into every single Rust program, we have begun tracking its binary size in order to find ways to reduce its impact on programs that only minimally use backtraces over time. This change is mostly relevant to this crate's CI, and has been implemented by @Kobzol and @detly over PRs #542, #544, #546, and #550!
Platform-Specific Fixes
As usual, the majority of PRs for this release only affect 1 or 2 platforms. Technically, even the binary-size tracking is only implemented to track binary size on x86_64-unknown-linux-gnu.
Many Unix-y platforms support /proc, including Linux and FreeBSD, but not OpenBSD. For those which do, backtrace uses /proc/self/maps to assist in recovering the trace. We did not parse the output of /proc/self/maps in a way that accounted for the fact that it may have spaces in path names, but this was fixed thanks to @MasonRemaley in rust-lang/backtrace-rs#553
windows-msvc
Some changes that should help binary size specifically on Windows MSVC targets, or at least compile times, have already been implemented, thanks to @klensy in rust-lang/backtrace-rs#543 omitting compiling-in ELF backtrace capabilities. We don't have full binary size tracking for all major supported operating systems yet, so we believe this is worth 30KiB but that's more of an estimate than hard stats.
A bunch of behind-the-scenes work on upgrading CI has finally got things to a place where we can do confident releases again, so hopefully the next backtrace version will not take 6 months! Thanks to everyone who contributed to that! Most of the user-facing changes are about dependency updates and consequent improved platform compatibility, including with split DWARF. A few new functions on BacktraceFmt should also make it easier to inject additional text into backtrace's output.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps backtrace from 0.3.67 to 0.3.69.
Release notes
Sourced from backtrace's releases.
... (truncated)
Commits
99faef8
rust-lang/backtrace-rs#560
b06f139
rust-lang/backtrace-rs#543
56c215e
sync as-if-std crateb6d24cd
gate gimli usage on windows with gnu8bb67c7
for windows-msvc targets, dont use miniz_oxide, addr2line, object, libc3479721
rust-lang/backtrace-rs#556
037356f
rust-lang/backtrace-rs#555
d008d39
rust-lang/backtrace-rs#553
40410b7
rust-lang/backtrace-rs#557
2efc591
rust-lang/backtrace-rs#559
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show