Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

reduce dependencies for windows-msvc targets #543

Merged
merged 3 commits into from
Aug 18, 2023

Conversation

klensy
Copy link
Contributor

@klensy klensy commented Jul 5, 2023

Some dependencies don't used on windows-msvc targets, so exclude them:

  • miniz_oxide (+ adler)
  • addr2line (+ gimli)
  • object (+ memchr)
  • libc too

Will sync with rust repo

@klensy klensy marked this pull request as draft July 5, 2023 11:30
@klensy
Copy link
Contributor Author

klensy commented Jul 5, 2023

Should anything be fixed in https://github.com/rust-lang/backtrace-rs/blob/master/crates/as-if-std/Cargo.toml?

Looking at

cfg_if::cfg_if! {
if #[cfg(miri)] {
mod miri;
use miri as imp;
} else if #[cfg(all(windows, target_env = "msvc", not(target_vendor = "uwp")))] {
mod dbghelp;
use dbghelp as imp;
} else if #[cfg(all(
any(unix, windows),
not(target_vendor = "uwp"),
not(target_os = "emscripten"),
any(not(backtrace_in_libstd), feature = "backtrace"),
))] {
mod gimli;
use gimli as imp;
} else {
mod noop;
use noop as imp;
}
}

gimli module never used on windows-msvc targets?

addr2line used only in gimli module which is unused on windows-msvc and backtrace_in_libstd feature?

@workingjubilee
Copy link
Member

workingjubilee commented Jul 5, 2023

I believe this would/should address this issue:

So, yes.

@klensy klensy changed the title reduce dependencies reduce dependencies for windows-msvc targets Jul 6, 2023
@klensy klensy marked this pull request as ready for review July 6, 2023 13:15
@klensy
Copy link
Contributor Author

klensy commented Jul 6, 2023

Should anything be fixed in https://github.com/rust-lang/backtrace-rs/blob/master/crates/as-if-std/Cargo.toml?

Last question left.

@workingjubilee
Copy link
Member

So I believe they should have matching cfgs for their deps, especially if that would allow us to build less deps while building std? But perhaps I am wrong somehow?

@philipc
Copy link
Contributor

philipc commented Jul 7, 2023

Yes, the deps in as-if-std/Cargo.toml must match the main Cargo.toml. They are only duplicated there because there's no other way to do it, not because they might be different.

@klensy
Copy link
Contributor Author

klensy commented Jul 8, 2023

Okay, looks like it ready.

@klensy
Copy link
Contributor Author

klensy commented Jul 15, 2023

nano ping.

@klensy
Copy link
Contributor Author

klensy commented Jul 26, 2023

Can this be reviewed, so able to be merged in rust repo? Thanks.

@workingjubilee
Copy link
Member

This is still on my radar, my most recent agenda has been pushing a few PRs that were opened in 2022(!) or even 2021(!) over the edge now that some of them have been unblocked.

bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 11, 2023
reduce deps for windows-msvc targets for backtrace

(eventually) mirrors rust-lang/backtrace-rs#543

Some dependencies of backtrace don't used on windows-msvc targets, so exclude them:

    miniz_oxide (+ adler)
    addr2line (+ gimli)
    object (+ memchr)

This saves about 30kb of std.dll + 17.5mb of rlibs
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Aug 12, 2023
reduce deps for windows-msvc targets for backtrace

(eventually) mirrors rust-lang/backtrace-rs#543

Some dependencies of backtrace don't used on windows-msvc targets, so exclude them:

    miniz_oxide (+ adler)
    addr2line (+ gimli)
    object (+ memchr)

This saves about 30kb of std.dll + 17.5mb of rlibs
@workingjubilee
Copy link
Member

Blech, merge conflicts...

Copy link
Member

@workingjubilee workingjubilee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry for not getting back to this earlier!

[target.'cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))'.dependencies]
miniz_oxide = { version = "0.7.0", optional = true, default-features = false }
addr2line = { version = "0.20.0", optional = true, default-features = false }
object = { version = "0.31.1", default-features = false, optional = true, features = ['read_core', 'elf', 'macho', 'pe', 'unaligned', 'archive'] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would prefer we keep this as an "exploded-out" table here, as recent events have demonstrated that: it is extremely likely this will be diffed and that it may only diff a single field, so I would prefer to minimize the number of merge conflicts we have. I realize this means it looks like

[target.'cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))'.dependencies.object]
version = "0.32.0"
default-features = false
optional = true
features = ['read_core', 'elf', 'macho', 'pe', 'unaligned', 'archive']

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For some reason, optional = true exist there, but not in top Cargo.toml

Cargo.toml Outdated
default-features = false
features = ['read_core', 'elf', 'macho', 'pe', 'unaligned', 'archive']
addr2line = { version = "0.20.0", default-features = false }
object = { version = "0.31.1", default-features = false, features = ['read_core', 'elf', 'macho', 'pe', 'unaligned', 'archive'] }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same remark, this should be

[target.'cfg(not(all(windows, target_env = "msvc", not(target_vendor = "uwp"))))'.dependencies.object]
version = "0.32.0"
default-features = false
optional = true
features = ['read_core', 'elf', 'macho', 'pe', 'unaligned', 'archive']

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No optional = true here.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh true.

@klensy klensy force-pushed the less-deps branch 2 times, most recently from 5061d8b to 56c215e Compare August 18, 2023 12:03
Copy link
Member

@workingjubilee workingjubilee left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

@workingjubilee workingjubilee merged commit b06f139 into rust-lang:master Aug 18, 2023
68 of 70 checks passed
@klensy
Copy link
Contributor Author

klensy commented Aug 18, 2023

For some reason CI have troubles downloading syn for windows.

@ChrisDenton
Copy link
Member

ChrisDenton commented Aug 18, 2023

syn has been causing a lot of intermittent issues in CI lately, across a number of different repositories.

Edit: well I don't know if syn is the root cause or just a common symptom.

@workingjubilee
Copy link
Member

It is possible that the author's recent choice to ship precompiled binaries for certain relevant proc-macros is taxing various points of network IO more severely: serde-rs/serde#2538

@pacak
Copy link

pacak commented Aug 18, 2023

is taxing various points of network IO more severely

The binary in question is 680kb compresses down to 300kb. Shipping a binary is not the best idea, but I don't think it should affect network that much.

@workingjubilee
Copy link
Member

Yah, dtolnay thinks it's a cargo bug and I think he's right.

@klensy
Copy link
Contributor Author

klensy commented Aug 19, 2023

Funny thing, now i see this here: https://github.com/rust-lang/rust/actions/runs/5887880758/job/15968022846?pr=114923

Thu, 17 Aug 2023 07:15:39 GMT       Updating crates.io index
Thu, 17 Aug 2023 07:16:10 GMT   warning: spurious network error (3 tries remaining): [28] Timeout was reached (Operation too slow. Less than 10 bytes/sec transferred the last 30 seconds)
Thu, 17 Aug 2023 07:16:40 GMT   warning: spurious network error (2 tries remaining): [28] Timeout was reached (Operation too slow. Less than 10 bytes/sec transferred the last 30 seconds)
Thu, 17 Aug 2023 07:17:14 GMT   warning: spurious network error (1 tries remaining): [28] Timeout was reached (Operation too slow. Less than 10 bytes/sec transferred the last 30 seconds)
Thu, 17 Aug 2023 07:17:50 GMT   error: failed to get `zerofrom-derive` as a dependency of package `zerofrom v0.1.2`
Thu, 17 Aug 2023 07:17:50 GMT       ... which satisfies dependency `zerofrom = "^0.1.1"` (locked to 0.1.2) of package `icu_provider v1.2.0`
Thu, 17 Aug 2023 07:17:50 GMT       ... which satisfies dependency `icu_provider = "^1.2.0"` (locked to 1.2.0) of package `icu_list v1.2.0`
Thu, 17 Aug 2023 07:17:50 GMT       ... which satisfies dependency `icu_list = "^1.2"` (locked to 1.2.0) of package `rustc_baked_icu_data v0.0.0 (/checkout/compiler/rustc_baked_icu_data)`
Thu, 17 Aug 2023 07:17:50 GMT       ... which satisfies path dependency `rustc_baked_icu_data` (locked to 0.0.0) of package `rustc_error_messages v0.0.0 (/checkout/compiler/rustc_error_messages)`
Thu, 17 Aug 2023 07:17:50 GMT       ... which satisfies path dependency `rustc_error_messages` (locked to 0.0.0) of package `rustc_driver_impl v0.0.0 (/checkout/compiler/rustc_driver_impl)`
Thu, 17 Aug 2023 07:17:50 GMT       ... which satisfies path dependency `rustc_driver_impl` (locked to 0.0.0) of package `rustc-main v0.0.0 (/checkout/compiler/rustc)`

thomcc pushed a commit to tcdi/postgrestd that referenced this pull request Oct 17, 2023
reduce deps for windows-msvc targets for backtrace

(eventually) mirrors rust-lang/backtrace-rs#543

Some dependencies of backtrace don't used on windows-msvc targets, so exclude them:

    miniz_oxide (+ adler)
    addr2line (+ gimli)
    object (+ memchr)

This saves about 30kb of std.dll + 17.5mb of rlibs
lnicola pushed a commit to lnicola/rust-analyzer that referenced this pull request Apr 7, 2024
reduce deps for windows-msvc targets for backtrace

(eventually) mirrors rust-lang/backtrace-rs#543

Some dependencies of backtrace don't used on windows-msvc targets, so exclude them:

    miniz_oxide (+ adler)
    addr2line (+ gimli)
    object (+ memchr)

This saves about 30kb of std.dll + 17.5mb of rlibs
RalfJung pushed a commit to RalfJung/rust-analyzer that referenced this pull request Apr 27, 2024
reduce deps for windows-msvc targets for backtrace

(eventually) mirrors rust-lang/backtrace-rs#543

Some dependencies of backtrace don't used on windows-msvc targets, so exclude them:

    miniz_oxide (+ adler)
    addr2line (+ gimli)
    object (+ memchr)

This saves about 30kb of std.dll + 17.5mb of rlibs
kodiakhq bot pushed a commit to X-oss-byte/Canary-nextjs that referenced this pull request May 1, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [backtrace](https://togithub.com/rust-lang/backtrace-rs) | dependencies | patch | `0.3` -> `0.3.71` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

---

### Release Notes

<details>
<summary>rust-lang/backtrace-rs (backtrace)</summary>

### [`v0.3.71`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.71)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.70...0.3.71)

This is mostly CI changes, with a very mild bump to our effective cc crate version recorded, and a small modification to a previous changeset to allow backtrace to run at its current checked-in MSRV on Windows. Sorry about that! We will be getting 0.3.70 yanked shortly.

##### What's Changed

-   Make sgx functions exist with cfg(miri) by [@&#8203;saethlin](https://togithub.com/saethlin) in [rust-lang/backtrace-rs#591
-   Update version of cc crate by [@&#8203;jfgoog](https://togithub.com/jfgoog) in [rust-lang/backtrace-rs#592
-   Pull back MSRV on Windows by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#598
-   Force frame pointers on all i686 tests by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#601
-   Use rustc from stage0 instead of stage0-sysroot by [@&#8203;Nilstrieb](https://togithub.com/Nilstrieb) in [rust-lang/backtrace-rs#602
-   Cut backtrace 0.3.71 by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#599

##### New Contributors

-   [@&#8203;jfgoog](https://togithub.com/jfgoog) made their first contribution in [rust-lang/backtrace-rs#592
-   [@&#8203;Nilstrieb](https://togithub.com/Nilstrieb) made their first contribution in [rust-lang/backtrace-rs#602

**Full Changelog**: rust-lang/backtrace-rs@0.3.70...0.3.71

### [`v0.3.70`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.70)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.69...0.3.70)

##### New API

-   A `BacktraceFrame` can now have `resolve(&mut self)` called on it thanks to [@&#8203;fraillt](https://togithub.com/fraillt) in [rust-lang/backtrace-rs#526

##### Platform Support

We added support for new platforms in this release!

-   Thanks to [@&#8203;bzEq](https://togithub.com/bzEq) in [rust-lang/backtrace-rs#508 we now have AIX support!
-   Thanks to [@&#8203;sthibaul](https://togithub.com/sthibaul) in [rust-lang/backtrace-rs#567 we now have GNU/Hurd support!
-   Thanks to [@&#8203;dpaoliello](https://togithub.com/dpaoliello) in [rust-lang/backtrace-rs#587 we now support "emulation-compatible" AArch64 Windows (aka arm64ec)

##### Windows

-   Rewrite msvc backtrace support to be much faster on 64-bit platforms by [@&#8203;wesleywiser](https://togithub.com/wesleywiser) in [rust-lang/backtrace-rs#569
-   Fix i686-pc-windows-gnu missing dbghelp module by [@&#8203;wesleywiser](https://togithub.com/wesleywiser) in [rust-lang/backtrace-rs#571
-   Fix build errors on `thumbv7a-*-windows-msvc` targets by [@&#8203;kleisauke](https://togithub.com/kleisauke) in [rust-lang/backtrace-rs#573
-   Fix panic in backtrace symbolication on win7 by [@&#8203;roblabla](https://togithub.com/roblabla) in [rust-lang/backtrace-rs#578
-   remove few unused windows ffi fn by [@&#8203;klensy](https://togithub.com/klensy) in [rust-lang/backtrace-rs#576
-   Make dbghelp look for PDBs next to their exe/dll. by [@&#8203;michaelwoerister](https://togithub.com/michaelwoerister) in [rust-lang/backtrace-rs#584
-   Revert 32-bit dbghelp to a version WINE (presumably) likes by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#588
-   Update for Win10+ by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#589

##### SGX

Thanks to

-   Adjust frame IP in SGX relative to image base by [@&#8203;mzohreva](https://togithub.com/mzohreva) in [rust-lang/backtrace-rs#566

##### Internals

We did a bunch more work on our CI and internal cleanups

-   Modularise CI workflow and validate outputs for binary size checks. by [@&#8203;detly](https://togithub.com/detly) in [rust-lang/backtrace-rs#549
-   Commit Cargo.lock by [@&#8203;bjorn3](https://togithub.com/bjorn3) in [rust-lang/backtrace-rs#562
-   Enable calling build.rs externally v2 by [@&#8203;pitaj](https://togithub.com/pitaj) in [rust-lang/backtrace-rs#568
-   Upgrade to 2021 ed and inline panics by [@&#8203;nyurik](https://togithub.com/nyurik) in [rust-lang/backtrace-rs#538
-   Fix deny(unused) of an unused import with SGX + Miri by [@&#8203;saethlin](https://togithub.com/saethlin) in [rust-lang/backtrace-rs#581
-   Fix unused_imports warning on latest nightly by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#575
-   Fix CI by [@&#8203;saethlin](https://togithub.com/saethlin) in [rust-lang/backtrace-rs#582
-   Use `addr_of!` by [@&#8203;GrigorenkoPV](https://togithub.com/GrigorenkoPV) in [rust-lang/backtrace-rs#585
-   Write down MSRV policy by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#561
-   Apply clippy::uninlined_format_args fixes by [@&#8203;nyurik](https://togithub.com/nyurik) in [rust-lang/backtrace-rs#486
-   ignore clippy lints in `symbolize/gimli/stash.rs` by [@&#8203;onur-ozkan](https://togithub.com/onur-ozkan) in [rust-lang/backtrace-rs#586

##### New Contributors

-   [@&#8203;nyurik](https://togithub.com/nyurik) made their first contribution in [rust-lang/backtrace-rs#538
-   [@&#8203;bzEq](https://togithub.com/bzEq) made their first contribution in [rust-lang/backtrace-rs#508
-   [@&#8203;bjorn3](https://togithub.com/bjorn3) made their first contribution in [rust-lang/backtrace-rs#562
-   [@&#8203;sthibaul](https://togithub.com/sthibaul) made their first contribution in [rust-lang/backtrace-rs#567
-   [@&#8203;mzohreva](https://togithub.com/mzohreva) made their first contribution in [rust-lang/backtrace-rs#566
-   [@&#8203;wesleywiser](https://togithub.com/wesleywiser) made their first contribution in [rust-lang/backtrace-rs#569
-   [@&#8203;kleisauke](https://togithub.com/kleisauke) made their first contribution in [rust-lang/backtrace-rs#573
-   [@&#8203;roblabla](https://togithub.com/roblabla) made their first contribution in [rust-lang/backtrace-rs#578
-   [@&#8203;michaelwoerister](https://togithub.com/michaelwoerister) made their first contribution in [rust-lang/backtrace-rs#584
-   [@&#8203;dpaoliello](https://togithub.com/dpaoliello) made their first contribution in [rust-lang/backtrace-rs#587
-   [@&#8203;GrigorenkoPV](https://togithub.com/GrigorenkoPV) made their first contribution in [rust-lang/backtrace-rs#585
-   [@&#8203;fraillt](https://togithub.com/fraillt) made their first contribution in [rust-lang/backtrace-rs#526
-   [@&#8203;onur-ozkan](https://togithub.com/onur-ozkan) made their first contribution in [rust-lang/backtrace-rs#586

**Full Changelog**: rust-lang/backtrace-rs@0.3.69...0.3.70

### [`v0.3.69`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.69)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.68...0.3.69)

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 [@&#8203;Kobzol](https://togithub.com/Kobzol) and [@&#8203;detly](https://togithub.com/detly) over PRs [#&#8203;542](https://togithub.com/rust-lang/backtrace-rs/issues/542), [#&#8203;544](https://togithub.com/rust-lang/backtrace-rs/issues/544), [#&#8203;546](https://togithub.com/rust-lang/backtrace-rs/issues/546), and [#&#8203;550](https://togithub.com/rust-lang/backtrace-rs/issues/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`.

##### fuchsia

Backtraces for Fuchsia will now uses extended symbolization thanks to [@&#8203;liudangyi](https://togithub.com/liudangyi) in [rust-lang/backtrace-rs#559

##### unix (with `procfs`)

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 [@&#8203;MasonRemaley](https://togithub.com/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 [@&#8203;klensy](https://togithub.com/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.

##### Dependency Management

-   Update addr2line and object dependencies by [@&#8203;philipc](https://togithub.com/philipc) in [rust-lang/backtrace-rs#557
-   Exclude ci directory from packaged crate by [@&#8203;mulkieran](https://togithub.com/mulkieran) in [rust-lang/backtrace-rs#555
-   Enable calling build.rs directly from std/build.rs by [@&#8203;pitaj](https://togithub.com/pitaj) in [rust-lang/backtrace-rs#556

##### New Contributors

-   [@&#8203;Kobzol](https://togithub.com/Kobzol) made their first contribution in [rust-lang/backtrace-rs#542
-   [@&#8203;detly](https://togithub.com/detly) made their first contribution in [rust-lang/backtrace-rs#550
-   [@&#8203;liudangyi](https://togithub.com/liudangyi) made their first contribution in [rust-lang/backtrace-rs#559
-   [@&#8203;MasonRemaley](https://togithub.com/MasonRemaley) made their first contribution in [rust-lang/backtrace-rs#553
-   [@&#8203;mulkieran](https://togithub.com/mulkieran) made their first contribution in [rust-lang/backtrace-rs#555
-   [@&#8203;pitaj](https://togithub.com/pitaj) made their first contribution in [rust-lang/backtrace-rs#556
-   [@&#8203;klensy](https://togithub.com/klensy) made their first contribution in [rust-lang/backtrace-rs#543

**Full Changelog**: rust-lang/backtrace-rs@0.3.68...0.3.69

### [`v0.3.68`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.68)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.67...0.3.68)

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.

-   Adapt to new Fuchsia target name by [@&#8203;flba-eb](https://togithub.com/flba-eb) in [rust-lang/backtrace-rs#509
-   armv7 PSVita OS support by [@&#8203;nikarh](https://togithub.com/nikarh) in [rust-lang/backtrace-rs#523
-   Upgrade addr2line and properly handle split DWARF on Linux by [@&#8203;khuey](https://togithub.com/khuey) in [rust-lang/backtrace-rs#513
-   deps: update miniz_oxide to 0.7 by [@&#8203;poliorcetics](https://togithub.com/poliorcetics) in [rust-lang/backtrace-rs#521
-   Add print in BacktraceFmt by [@&#8203;chenyukang](https://togithub.com/chenyukang) in [rust-lang/backtrace-rs#527
-   Bump object to 0.31 by [@&#8203;lnicola](https://togithub.com/lnicola) in [rust-lang/backtrace-rs#522
-   Add an exception for QNX Neutrino 7.0 as a 'no-op' platform by [@&#8203;samkearney](https://togithub.com/samkearney) in [rust-lang/backtrace-rs#529
-   Use mmap64 on Linux. by [@&#8203;mikebenfield](https://togithub.com/mikebenfield) in [rust-lang/backtrace-rs#501
-   dbghlp: Make mutex name unique to the process by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#518
-   gimli add netbsd to handle dl_iterate_phdr as well. by [@&#8203;devnexen](https://togithub.com/devnexen) in [rust-lang/backtrace-rs#512
-   Add other apple targets to libunwind workaround by [@&#8203;thomcc](https://togithub.com/thomcc) in [rust-lang/backtrace-rs#516
-   Add fmt method for BacktraceFmt by [@&#8203;chenyukang](https://togithub.com/chenyukang) in [rust-lang/backtrace-rs#532

##### New Contributors

-   [@&#8203;bwmf2](https://togithub.com/bwmf2) made their first contribution in [rust-lang/backtrace-rs#515
-   [@&#8203;flba-eb](https://togithub.com/flba-eb) made their first contribution in [rust-lang/backtrace-rs#509
-   [@&#8203;nikarh](https://togithub.com/nikarh) made their first contribution in [rust-lang/backtrace-rs#523
-   [@&#8203;poliorcetics](https://togithub.com/poliorcetics) made their first contribution in [rust-lang/backtrace-rs#521
-   [@&#8203;GuillaumeGomez](https://togithub.com/GuillaumeGomez) made their first contribution in [rust-lang/backtrace-rs#524
-   [@&#8203;chenyukang](https://togithub.com/chenyukang) made their first contribution in [rust-lang/backtrace-rs#527
-   [@&#8203;lnicola](https://togithub.com/lnicola) made their first contribution in [rust-lang/backtrace-rs#522
-   [@&#8203;samkearney](https://togithub.com/samkearney) made their first contribution in [rust-lang/backtrace-rs#529
-   [@&#8203;mikebenfield](https://togithub.com/mikebenfield) made their first contribution in [rust-lang/backtrace-rs#501
-   [@&#8203;devnexen](https://togithub.com/devnexen) made their first contribution in [rust-lang/backtrace-rs#512
-   [@&#8203;thomcc](https://togithub.com/thomcc) made their first contribution in [rust-lang/backtrace-rs#516
-   [@&#8203;workingjubilee](https://togithub.com/workingjubilee) made their first contribution in [rust-lang/backtrace-rs#533
-   [@&#8203;chriswailes](https://togithub.com/chriswailes) made their first contribution in [rust-lang/backtrace-rs#534

**Full Changelog**: rust-lang/backtrace-rs@0.3.67...0.3.68

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Canary-nextjs).
kodiakhq bot pushed a commit to X-oss-byte/Nextjs that referenced this pull request May 1, 2024
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [backtrace](https://togithub.com/rust-lang/backtrace-rs) | dependencies | patch | `0.3` -> `0.3.71` |

---

### Release Notes

<details>
<summary>rust-lang/backtrace-rs (backtrace)</summary>

### [`v0.3.71`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.71)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.70...0.3.71)

This is mostly CI changes, with a very mild bump to our effective cc crate version recorded, and a small modification to a previous changeset to allow backtrace to run at its current checked-in MSRV on Windows. Sorry about that! We will be getting 0.3.70 yanked shortly.

##### What's Changed

-   Make sgx functions exist with cfg(miri) by [@&#8203;saethlin](https://togithub.com/saethlin) in [rust-lang/backtrace-rs#591
-   Update version of cc crate by [@&#8203;jfgoog](https://togithub.com/jfgoog) in [rust-lang/backtrace-rs#592
-   Pull back MSRV on Windows by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#598
-   Force frame pointers on all i686 tests by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#601
-   Use rustc from stage0 instead of stage0-sysroot by [@&#8203;Nilstrieb](https://togithub.com/Nilstrieb) in [rust-lang/backtrace-rs#602
-   Cut backtrace 0.3.71 by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#599

##### New Contributors

-   [@&#8203;jfgoog](https://togithub.com/jfgoog) made their first contribution in [rust-lang/backtrace-rs#592
-   [@&#8203;Nilstrieb](https://togithub.com/Nilstrieb) made their first contribution in [rust-lang/backtrace-rs#602

**Full Changelog**: rust-lang/backtrace-rs@0.3.70...0.3.71

### [`v0.3.70`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.70)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.69...0.3.70)

##### New API

-   A `BacktraceFrame` can now have `resolve(&mut self)` called on it thanks to [@&#8203;fraillt](https://togithub.com/fraillt) in [rust-lang/backtrace-rs#526

##### Platform Support

We added support for new platforms in this release!

-   Thanks to [@&#8203;bzEq](https://togithub.com/bzEq) in [rust-lang/backtrace-rs#508 we now have AIX support!
-   Thanks to [@&#8203;sthibaul](https://togithub.com/sthibaul) in [rust-lang/backtrace-rs#567 we now have GNU/Hurd support!
-   Thanks to [@&#8203;dpaoliello](https://togithub.com/dpaoliello) in [rust-lang/backtrace-rs#587 we now support "emulation-compatible" AArch64 Windows (aka arm64ec)

##### Windows

-   Rewrite msvc backtrace support to be much faster on 64-bit platforms by [@&#8203;wesleywiser](https://togithub.com/wesleywiser) in [rust-lang/backtrace-rs#569
-   Fix i686-pc-windows-gnu missing dbghelp module by [@&#8203;wesleywiser](https://togithub.com/wesleywiser) in [rust-lang/backtrace-rs#571
-   Fix build errors on `thumbv7a-*-windows-msvc` targets by [@&#8203;kleisauke](https://togithub.com/kleisauke) in [rust-lang/backtrace-rs#573
-   Fix panic in backtrace symbolication on win7 by [@&#8203;roblabla](https://togithub.com/roblabla) in [rust-lang/backtrace-rs#578
-   remove few unused windows ffi fn by [@&#8203;klensy](https://togithub.com/klensy) in [rust-lang/backtrace-rs#576
-   Make dbghelp look for PDBs next to their exe/dll. by [@&#8203;michaelwoerister](https://togithub.com/michaelwoerister) in [rust-lang/backtrace-rs#584
-   Revert 32-bit dbghelp to a version WINE (presumably) likes by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#588
-   Update for Win10+ by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#589

##### SGX

Thanks to

-   Adjust frame IP in SGX relative to image base by [@&#8203;mzohreva](https://togithub.com/mzohreva) in [rust-lang/backtrace-rs#566

##### Internals

We did a bunch more work on our CI and internal cleanups

-   Modularise CI workflow and validate outputs for binary size checks. by [@&#8203;detly](https://togithub.com/detly) in [rust-lang/backtrace-rs#549
-   Commit Cargo.lock by [@&#8203;bjorn3](https://togithub.com/bjorn3) in [rust-lang/backtrace-rs#562
-   Enable calling build.rs externally v2 by [@&#8203;pitaj](https://togithub.com/pitaj) in [rust-lang/backtrace-rs#568
-   Upgrade to 2021 ed and inline panics by [@&#8203;nyurik](https://togithub.com/nyurik) in [rust-lang/backtrace-rs#538
-   Fix deny(unused) of an unused import with SGX + Miri by [@&#8203;saethlin](https://togithub.com/saethlin) in [rust-lang/backtrace-rs#581
-   Fix unused_imports warning on latest nightly by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#575
-   Fix CI by [@&#8203;saethlin](https://togithub.com/saethlin) in [rust-lang/backtrace-rs#582
-   Use `addr_of!` by [@&#8203;GrigorenkoPV](https://togithub.com/GrigorenkoPV) in [rust-lang/backtrace-rs#585
-   Write down MSRV policy by [@&#8203;workingjubilee](https://togithub.com/workingjubilee) in [rust-lang/backtrace-rs#561
-   Apply clippy::uninlined_format_args fixes by [@&#8203;nyurik](https://togithub.com/nyurik) in [rust-lang/backtrace-rs#486
-   ignore clippy lints in `symbolize/gimli/stash.rs` by [@&#8203;onur-ozkan](https://togithub.com/onur-ozkan) in [rust-lang/backtrace-rs#586

##### New Contributors

-   [@&#8203;nyurik](https://togithub.com/nyurik) made their first contribution in [rust-lang/backtrace-rs#538
-   [@&#8203;bzEq](https://togithub.com/bzEq) made their first contribution in [rust-lang/backtrace-rs#508
-   [@&#8203;bjorn3](https://togithub.com/bjorn3) made their first contribution in [rust-lang/backtrace-rs#562
-   [@&#8203;sthibaul](https://togithub.com/sthibaul) made their first contribution in [rust-lang/backtrace-rs#567
-   [@&#8203;mzohreva](https://togithub.com/mzohreva) made their first contribution in [rust-lang/backtrace-rs#566
-   [@&#8203;wesleywiser](https://togithub.com/wesleywiser) made their first contribution in [rust-lang/backtrace-rs#569
-   [@&#8203;kleisauke](https://togithub.com/kleisauke) made their first contribution in [rust-lang/backtrace-rs#573
-   [@&#8203;roblabla](https://togithub.com/roblabla) made their first contribution in [rust-lang/backtrace-rs#578
-   [@&#8203;michaelwoerister](https://togithub.com/michaelwoerister) made their first contribution in [rust-lang/backtrace-rs#584
-   [@&#8203;dpaoliello](https://togithub.com/dpaoliello) made their first contribution in [rust-lang/backtrace-rs#587
-   [@&#8203;GrigorenkoPV](https://togithub.com/GrigorenkoPV) made their first contribution in [rust-lang/backtrace-rs#585
-   [@&#8203;fraillt](https://togithub.com/fraillt) made their first contribution in [rust-lang/backtrace-rs#526
-   [@&#8203;onur-ozkan](https://togithub.com/onur-ozkan) made their first contribution in [rust-lang/backtrace-rs#586

**Full Changelog**: rust-lang/backtrace-rs@0.3.69...0.3.70

### [`v0.3.69`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.69)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.68...0.3.69)

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 [@&#8203;Kobzol](https://togithub.com/Kobzol) and [@&#8203;detly](https://togithub.com/detly) over PRs [#&#8203;542](https://togithub.com/rust-lang/backtrace-rs/issues/542), [#&#8203;544](https://togithub.com/rust-lang/backtrace-rs/issues/544), [#&#8203;546](https://togithub.com/rust-lang/backtrace-rs/issues/546), and [#&#8203;550](https://togithub.com/rust-lang/backtrace-rs/issues/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`.

##### fuchsia

Backtraces for Fuchsia will now uses extended symbolization thanks to [@&#8203;liudangyi](https://togithub.com/liudangyi) in [rust-lang/backtrace-rs#559

##### unix (with `procfs`)

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 [@&#8203;MasonRemaley](https://togithub.com/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 [@&#8203;klensy](https://togithub.com/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.

##### Dependency Management

-   Update addr2line and object dependencies by [@&#8203;philipc](https://togithub.com/philipc) in [rust-lang/backtrace-rs#557
-   Exclude ci directory from packaged crate by [@&#8203;mulkieran](https://togithub.com/mulkieran) in [rust-lang/backtrace-rs#555
-   Enable calling build.rs directly from std/build.rs by [@&#8203;pitaj](https://togithub.com/pitaj) in [rust-lang/backtrace-rs#556

##### New Contributors

-   [@&#8203;Kobzol](https://togithub.com/Kobzol) made their first contribution in [rust-lang/backtrace-rs#542
-   [@&#8203;detly](https://togithub.com/detly) made their first contribution in [rust-lang/backtrace-rs#550
-   [@&#8203;liudangyi](https://togithub.com/liudangyi) made their first contribution in [rust-lang/backtrace-rs#559
-   [@&#8203;MasonRemaley](https://togithub.com/MasonRemaley) made their first contribution in [rust-lang/backtrace-rs#553
-   [@&#8203;mulkieran](https://togithub.com/mulkieran) made their first contribution in [rust-lang/backtrace-rs#555
-   [@&#8203;pitaj](https://togithub.com/pitaj) made their first contribution in [rust-lang/backtrace-rs#556
-   [@&#8203;klensy](https://togithub.com/klensy) made their first contribution in [rust-lang/backtrace-rs#543

**Full Changelog**: rust-lang/backtrace-rs@0.3.68...0.3.69

### [`v0.3.68`](https://togithub.com/rust-lang/backtrace-rs/releases/tag/0.3.68)

[Compare Source](https://togithub.com/rust-lang/backtrace-rs/compare/0.3.67...0.3.68)

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.

-   Adapt to new Fuchsia target name by [@&#8203;flba-eb](https://togithub.com/flba-eb) in [rust-lang/backtrace-rs#509
-   armv7 PSVita OS support by [@&#8203;nikarh](https://togithub.com/nikarh) in [rust-lang/backtrace-rs#523
-   Upgrade addr2line and properly handle split DWARF on Linux by [@&#8203;khuey](https://togithub.com/khuey) in [rust-lang/backtrace-rs#513
-   deps: update miniz_oxide to 0.7 by [@&#8203;poliorcetics](https://togithub.com/poliorcetics) in [rust-lang/backtrace-rs#521
-   Add print in BacktraceFmt by [@&#8203;chenyukang](https://togithub.com/chenyukang) in [rust-lang/backtrace-rs#527
-   Bump object to 0.31 by [@&#8203;lnicola](https://togithub.com/lnicola) in [rust-lang/backtrace-rs#522
-   Add an exception for QNX Neutrino 7.0 as a 'no-op' platform by [@&#8203;samkearney](https://togithub.com/samkearney) in [rust-lang/backtrace-rs#529
-   Use mmap64 on Linux. by [@&#8203;mikebenfield](https://togithub.com/mikebenfield) in [rust-lang/backtrace-rs#501
-   dbghlp: Make mutex name unique to the process by [@&#8203;ChrisDenton](https://togithub.com/ChrisDenton) in [rust-lang/backtrace-rs#518
-   gimli add netbsd to handle dl_iterate_phdr as well. by [@&#8203;devnexen](https://togithub.com/devnexen) in [rust-lang/backtrace-rs#512
-   Add other apple targets to libunwind workaround by [@&#8203;thomcc](https://togithub.com/thomcc) in [rust-lang/backtrace-rs#516
-   Add fmt method for BacktraceFmt by [@&#8203;chenyukang](https://togithub.com/chenyukang) in [rust-lang/backtrace-rs#532

##### New Contributors

-   [@&#8203;bwmf2](https://togithub.com/bwmf2) made their first contribution in [rust-lang/backtrace-rs#515
-   [@&#8203;flba-eb](https://togithub.com/flba-eb) made their first contribution in [rust-lang/backtrace-rs#509
-   [@&#8203;nikarh](https://togithub.com/nikarh) made their first contribution in [rust-lang/backtrace-rs#523
-   [@&#8203;poliorcetics](https://togithub.com/poliorcetics) made their first contribution in [rust-lang/backtrace-rs#521
-   [@&#8203;GuillaumeGomez](https://togithub.com/GuillaumeGomez) made their first contribution in [rust-lang/backtrace-rs#524
-   [@&#8203;chenyukang](https://togithub.com/chenyukang) made their first contribution in [rust-lang/backtrace-rs#527
-   [@&#8203;lnicola](https://togithub.com/lnicola) made their first contribution in [rust-lang/backtrace-rs#522
-   [@&#8203;samkearney](https://togithub.com/samkearney) made their first contribution in [rust-lang/backtrace-rs#529
-   [@&#8203;mikebenfield](https://togithub.com/mikebenfield) made their first contribution in [rust-lang/backtrace-rs#501
-   [@&#8203;devnexen](https://togithub.com/devnexen) made their first contribution in [rust-lang/backtrace-rs#512
-   [@&#8203;thomcc](https://togithub.com/thomcc) made their first contribution in [rust-lang/backtrace-rs#516
-   [@&#8203;workingjubilee](https://togithub.com/workingjubilee) made their first contribution in [rust-lang/backtrace-rs#533
-   [@&#8203;chriswailes](https://togithub.com/chriswailes) made their first contribution in [rust-lang/backtrace-rs#534

**Full Changelog**: rust-lang/backtrace-rs@0.3.67...0.3.68

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/X-oss-byte/Nextjs).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants