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

Remove deprecation from SA_ONSTACK; fix hexagon-unknown-linux-musl #3335

Merged
merged 1 commit into from
Oct 6, 2023

Conversation

androm3da
Copy link
Contributor

@androm3da androm3da commented Sep 2, 2023

In ad3f860 the RLIM_* values were removed, but leaving behind a deprecation about RLIM_NLIMITS caused it to incorrectly apply instead to SA_ONSTACK.

@rustbot
Copy link
Collaborator

rustbot commented Sep 2, 2023

r? @JohnTitor

(rustbot has picked a reviewer for you, use r? to override)

@androm3da
Copy link
Contributor Author

cc @lancethepants
cc @asomers

Copy link
Contributor

@asomers asomers left a comment

Choose a reason for hiding this comment

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

It looks like ad3f860 also accidentally removed the deprecation notice from RLIM_NLIMITS. Can you please restore it?

@androm3da
Copy link
Contributor Author

It looks like ad3f860 also accidentally removed the deprecation notice from RLIM_NLIMITS. Can you please restore it?

I didn't look closely enough there, thanks. Will do.

@androm3da
Copy link
Contributor Author

It looks like ad3f860 also accidentally removed the deprecation notice from RLIM_NLIMITS. Can you please restore it?

Do I apply it to the RLIM_NLIMITS in src/unix/linux_like/linux/arch/generic/mod.rs or other instances as well?

Copy link
Contributor

@asomers asomers left a comment

Choose a reason for hiding this comment

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

Yes, you should apply the deprecation to all instances of RLIM_NLIMITS.

src/unix/linux_like/linux/arch/generic/mod.rs Outdated Show resolved Hide resolved
@androm3da
Copy link
Contributor Author

Yes, you should apply the deprecation to all instances of RLIM_NLIMITS.

But I suppose applying it causes the build to fail. I could locally bypass this warning but is that really what we want?

error: use of deprecated constant `unix::linux_like::linux::arch::generic::RLIM_NLIMITS`: Not stable across OS versions
   --> src/unix/linux_like/linux/arch/generic/mod.rs:260:59
    |
260 |         pub const RLIMIT_NLIMITS: ::__rlimit_resource_t = RLIM_NLIMITS;
    |                                                           ^^^^^^^^^^^^
    |
note: the lint level is defined here
   --> src/lib.rs:20:38
    |
20  | #![cfg_attr(libc_deny_warnings, deny(warnings))]
    |                                      ^^^^^^^^
    = note: `#[deny(deprecated)]` implied by `#[deny(warnings)]`

@asomers
Copy link
Contributor

asomers commented Sep 4, 2023

Yes, you'll have to put a #[allow(deprecated)] at each one of those sites.

@lancethepants
Copy link
Contributor

lancethepants commented Sep 5, 2023

There are also references to RLIM_NLIMITS in sparc, mips and powerpc if those need to be labeled deprecated as well.
Untitled

@asomers
Copy link
Contributor

asomers commented Sep 5, 2023

Yeah, all of them do. There's no way to reliably use that constant, given that the OS can change it at any time.

@androm3da
Copy link
Contributor Author

Yeah, all of them do. There's no way to reliably use that constant, given that the OS can change it at any time.

Okay - so I'll apply the deprecation to RLIM{IT,}_NLIMITS for to all of the targets, then. And then #[allow(deprecated)] for any uses of either within the libc crate.

@androm3da
Copy link
Contributor Author

Yeah, all of them do. There's no way to reliably use that constant, given that the OS can change it at any time.

Okay - so I'll apply the deprecation to RLIM{IT,}_NLIMITS for to all of the targets, then. And then #[allow(deprecated)] for any uses of either within the libc crate.

Also: RLIMIT_NLIMITS / RLIM_NLIMITS appears a few times within libc-test/semver/ - but no changes are required here?

@asomers
Copy link
Contributor

asomers commented Sep 5, 2023

Also: RLIMIT_NLIMITS / RLIM_NLIMITS appears a few times within libc-test/semver/ - but no changes are required here?

I'm not sure. I don't know how that part works. But if CI passes, then I wouldn't worry about it.

@androm3da
Copy link
Contributor Author

Not changed: references to RLIM*_NLIMITS in fuchsia, aix, emscripten - but I suppose these are bound by the same limitation and I should mark them deprecated there too?

@asomers
Copy link
Contributor

asomers commented Sep 7, 2023

Yeah, it ought to be deprecated everywhere.

@androm3da
Copy link
Contributor Author

cc @cramertj
cc @ecnelises

Copy link
Contributor

@asomers asomers left a comment

Choose a reason for hiding this comment

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

What about src/unix/bsd ?

@ecnelises
Copy link
Contributor

Looks good to me about AIX. AIX has backward compatible RLIM_NLIMITS_* for elder versions, but not actually changed for very long time.

@androm3da
Copy link
Contributor Author

What about src/unix/bsd ?

Looks like that's already as-expected.

$ rg -N -B3 '(RLIM|RLIMIT)_NLIM' src/unix/bsd/
src/unix/bsd/netbsdlike/openbsd/mod.rs
pub const AT_REMOVEDIR: ::c_int = 0x08;

#[deprecated(since = "0.2.64", note = "Not stable across OS versions")]
pub const RLIM_NLIMITS: ::c_int = 9;

src/unix/bsd/netbsdlike/netbsd/mod.rs
pub const RLIMIT_NTHR: ::c_int = 11;

#[deprecated(since = "0.2.64", note = "Not stable across OS versions")]
pub const RLIM_NLIMITS: ::c_int = 12;

src/unix/bsd/apple/mod.rs
pub const RLIMIT_NPROC: ::c_int = 7;
pub const RLIMIT_NOFILE: ::c_int = 8;
#[deprecated(since = "0.2.64", note = "Not stable across OS versions")]
pub const RLIM_NLIMITS: ::c_int = 9;

src/unix/bsd/freebsdlike/freebsd/mod.rs
pub const RLIMIT_KQUEUES: ::c_int = 13;
pub const RLIMIT_UMTXP: ::c_int = 14;
#[deprecated(since = "0.2.64", note = "Not stable across OS versions")]
pub const RLIM_NLIMITS: ::rlim_t = 15;

src/unix/bsd/freebsdlike/dragonfly/mod.rs
pub const ELAST: ::c_int = 99;
pub const RLIMIT_POSIXLOCKS: ::c_int = 11;
#[deprecated(since = "0.2.64", note = "Not stable across OS versions")]
pub const RLIM_NLIMITS: ::rlim_t = 12;

@asomers
Copy link
Contributor

asomers commented Sep 7, 2023

What about src/unix/bsd ?

Looks like that's already as-expected.

Ahh, good. But what about Haiku and nto?

@androm3da
Copy link
Contributor Author

Thanks, @asomers

Are you able to remove the S-waiting-on-review label and replace it with whatever's appropriate? I tried but I don't think I have permission to change this.

@androm3da
Copy link
Contributor Author

Thanks, @asomers

Are you able to remove the S-waiting-on-review label and replace it with whatever's appropriate? I tried but I don't think I have permission to change this.

gentle ping @asomers

@asomers
Copy link
Contributor

asomers commented Sep 13, 2023

No, @androm3da I don't have any permissions in this repo.

@ecnelises
Copy link
Contributor

@rustbot ready

@ecnelises
Copy link
Contributor

Maybe @JohnTitor ?

@androm3da
Copy link
Contributor Author

@rustbot review

@androm3da androm3da changed the title Remove deprecation from SA_ONSTACK Remove deprecation from SA_ONSTACK; fix hexagon-unknown-linux-musl Sep 19, 2023
@androm3da
Copy link
Contributor Author

I have updated the commit message for ba6e03b to clarfiy that this is a fix for the libstd build for the hexagon-unknown-linux-musl target.

@androm3da
Copy link
Contributor Author

r? @JohnTitor

@rustbot
Copy link
Collaborator

rustbot commented Sep 22, 2023

Could not assign reviewer from: JohnTitor.
User(s) JohnTitor are either the PR author, already assigned, or on vacation, and there are no other candidates.
Use r? to specify someone else to assign.

@JohnTitor
Copy link
Member

Could you squash commits into one?

In ad3f860 the RLIM_* values were removed,
but leaving behind a deprecation about RLIM_NLIMITS caused it to incorrectly
apply instead to SA_ONSTACK.  The deprecated SA_ONSTACK causes the libstd
build for hexagon-unknown-linux-musl to fail.

Also: apply RLIM*_NLIMITS deprecation to linux, emscripten, fuchsia, AIX,
Haiku, NTO
@androm3da
Copy link
Contributor Author

Could you squash commits into one?

Done. Sorry, I'd composed the commits independently in order to make it so that if the RLIM_LIMITS deprecation caused problems, that part could be reverted without reverting the un-deprecation of SA_ONSTACK. But I probably should've looked closer at the contribution guidelines.

@androm3da
Copy link
Contributor Author

Thanks @JohnTitor, let me know if there's anything else I need to fix. 😁

@JohnTitor
Copy link
Member

Thanks! @bors r+

@bors
Copy link
Contributor

bors commented Oct 6, 2023

📌 Commit b3cf87f has been approved by JohnTitor

It is now in the queue for this repository.

@bors
Copy link
Contributor

bors commented Oct 6, 2023

⌛ Testing commit b3cf87f with merge 14ef2e5...

@bors
Copy link
Contributor

bors commented Oct 6, 2023

☀️ Test successful - checks-actions, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13, checks-cirrus-freebsd-14
Approved by: JohnTitor
Pushing 14ef2e5 to main...

@bors bors merged commit 14ef2e5 into rust-lang:main Oct 6, 2023
10 checks passed
gwilymk referenced this pull request in agbrs/agb Oct 7, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [libc](https://togithub.com/rust-lang/libc) | dependencies | patch |
`0.2.148` -> `0.2.149` |

---

### Release Notes

<details>
<summary>rust-lang/libc (libc)</summary>

###
[`v0.2.149`](https://togithub.com/rust-lang/libc/releases/tag/0.2.149)

[Compare
Source](https://togithub.com/rust-lang/libc/compare/0.2.148...0.2.149)

#### What's Changed

- libc 0.2.148 by
[@&#8203;joshtriplett](https://togithub.com/joshtriplett) in
[https://github.com/rust-lang/libc/pull/3351](https://togithub.com/rust-lang/libc/pull/3351)
- update libc-test and its libc dependency to 0.2.148 by
[@&#8203;chenx97](https://togithub.com/chenx97) in
[https://github.com/rust-lang/libc/pull/3314](https://togithub.com/rust-lang/libc/pull/3314)
- Disable 1.13 CI by [@&#8203;JohnTitor](https://togithub.com/JohnTitor)
in
[https://github.com/rust-lang/libc/pull/3358](https://togithub.com/rust-lang/libc/pull/3358)
- Add teeos libc by
[@&#8203;Sword-Destiny](https://togithub.com/Sword-Destiny) in
[https://github.com/rust-lang/libc/pull/3333](https://togithub.com/rust-lang/libc/pull/3333)
- Added SIOCSIFNAME by
[@&#8203;Brijeshkrishna](https://togithub.com/Brijeshkrishna) in
[https://github.com/rust-lang/libc/pull/3354](https://togithub.com/rust-lang/libc/pull/3354)
- copyfile apple api update by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3346](https://togithub.com/rust-lang/libc/pull/3346)
- Hermit updates by [@&#8203;mkroening](https://togithub.com/mkroening)
in
[https://github.com/rust-lang/libc/pull/3348](https://togithub.com/rust-lang/libc/pull/3348)
- Add the LoongArch64 HWCAP values by
[@&#8203;heiher](https://togithub.com/heiher) in
[https://github.com/rust-lang/libc/pull/3344](https://togithub.com/rust-lang/libc/pull/3344)
- Add F_PUNCHHOLE and fpunchhole_t by
[@&#8203;anacrolix](https://togithub.com/anacrolix) in
[https://github.com/rust-lang/libc/pull/3337](https://togithub.com/rust-lang/libc/pull/3337)
- Fix compatibility with Emscripten >= 3.1.44 by
[@&#8203;kleisauke](https://togithub.com/kleisauke) in
[https://github.com/rust-lang/libc/pull/3308](https://togithub.com/rust-lang/libc/pull/3308)
- freebsd adding few mmap constants related to page alignment by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3326](https://togithub.com/rust-lang/libc/pull/3326)
- Redox pthreads by [@&#8203;4lDO2](https://togithub.com/4lDO2) in
[https://github.com/rust-lang/libc/pull/3347](https://togithub.com/rust-lang/libc/pull/3347)
- linux MADV_COLLAPSE addition by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3340](https://togithub.com/rust-lang/libc/pull/3340)
- android adding few more pthread api calls. by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3288](https://togithub.com/rust-lang/libc/pull/3288)
- Declare `pthread_attr_setguardsize` and `pthread_attr_getstacksize`.
by [@&#8203;sunfishcode](https://togithub.com/sunfishcode) in
[https://github.com/rust-lang/libc/pull/3330](https://togithub.com/rust-lang/libc/pull/3330)
- Add missing PS Vita definitions, fix some unused ones by
[@&#8203;pheki](https://togithub.com/pheki) in
[https://github.com/rust-lang/libc/pull/3284](https://togithub.com/rust-lang/libc/pull/3284)
- Drop `armv7-apple-ios` target support by
[@&#8203;JohnTitor](https://togithub.com/JohnTitor) in
[https://github.com/rust-lang/libc/pull/3362](https://togithub.com/rust-lang/libc/pull/3362)
- backtrace definitions and support for getmntinfo and getvfsstat by
[@&#8203;0323pin](https://togithub.com/0323pin) in
[https://github.com/rust-lang/libc/pull/3368](https://togithub.com/rust-lang/libc/pull/3368)
- apple fcntl update. by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3365](https://togithub.com/rust-lang/libc/pull/3365)
- Added socketpair and pipe2 for Vita target by
[@&#8203;nikarh](https://togithub.com/nikarh) in
[https://github.com/rust-lang/libc/pull/3366](https://togithub.com/rust-lang/libc/pull/3366)
- Added additional Ethernet Protocol Ids for fuchsia by
[@&#8203;w1redch4d](https://togithub.com/w1redch4d) in
[https://github.com/rust-lang/libc/pull/3332](https://togithub.com/rust-lang/libc/pull/3332)
- timerfd api for freebsd 14. by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3341](https://togithub.com/rust-lang/libc/pull/3341)
- haiku adding pthread GNU part by
[@&#8203;devnexen](https://togithub.com/devnexen) in
[https://github.com/rust-lang/libc/pull/3364](https://togithub.com/rust-lang/libc/pull/3364)
- add execveat for glibc by
[@&#8203;SteveLauC](https://togithub.com/SteveLauC) in
[https://github.com/rust-lang/libc/pull/3372](https://togithub.com/rust-lang/libc/pull/3372)
- added support for GNU/Hurd by
[@&#8203;Vtewari2311](https://togithub.com/Vtewari2311) in
[https://github.com/rust-lang/libc/pull/3325](https://togithub.com/rust-lang/libc/pull/3325)
- Fix apple tvos support by
[@&#8203;lcruz99](https://togithub.com/lcruz99) in
[https://github.com/rust-lang/libc/pull/3370](https://togithub.com/rust-lang/libc/pull/3370)
- Remove deprecation from SA_ONSTACK; fix hexagon-unknown-linux-musl by
[@&#8203;androm3da](https://togithub.com/androm3da) in
[https://github.com/rust-lang/libc/pull/3335](https://togithub.com/rust-lang/libc/pull/3335)
- feat: add close_range for glibc by
[@&#8203;SteveLauC](https://togithub.com/SteveLauC) in
[https://github.com/rust-lang/libc/pull/3373](https://togithub.com/rust-lang/libc/pull/3373)
- Update crate version to 0.2.149 by
[@&#8203;nikarh](https://togithub.com/nikarh) in
[https://github.com/rust-lang/libc/pull/3360](https://togithub.com/rust-lang/libc/pull/3360)

#### New Contributors

- [@&#8203;Sword-Destiny](https://togithub.com/Sword-Destiny) made their
first contribution in
[https://github.com/rust-lang/libc/pull/3333](https://togithub.com/rust-lang/libc/pull/3333)
- [@&#8203;Brijeshkrishna](https://togithub.com/Brijeshkrishna) made
their first contribution in
[https://github.com/rust-lang/libc/pull/3354](https://togithub.com/rust-lang/libc/pull/3354)
- [@&#8203;anacrolix](https://togithub.com/anacrolix) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3337](https://togithub.com/rust-lang/libc/pull/3337)
- [@&#8203;4lDO2](https://togithub.com/4lDO2) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3347](https://togithub.com/rust-lang/libc/pull/3347)
- [@&#8203;pheki](https://togithub.com/pheki) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3284](https://togithub.com/rust-lang/libc/pull/3284)
- [@&#8203;0323pin](https://togithub.com/0323pin) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3368](https://togithub.com/rust-lang/libc/pull/3368)
- [@&#8203;w1redch4d](https://togithub.com/w1redch4d) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3332](https://togithub.com/rust-lang/libc/pull/3332)
- [@&#8203;Vtewari2311](https://togithub.com/Vtewari2311) made their
first contribution in
[https://github.com/rust-lang/libc/pull/3325](https://togithub.com/rust-lang/libc/pull/3325)
- [@&#8203;lcruz99](https://togithub.com/lcruz99) made their first
contribution in
[https://github.com/rust-lang/libc/pull/3370](https://togithub.com/rust-lang/libc/pull/3370)

**Full Changelog**:
rust-lang/libc@0.2.148...0.2.149

</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.

---

- [ ] <!-- rebase-check -->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/agbrs/agb).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4wLjMiLCJ1cGRhdGVkSW5WZXIiOiIzNy4wLjMiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIifQ==-->
bors-ferrocene bot added a commit to ferrocene/ferrocene that referenced this pull request Oct 9, 2023
23: Fix divergence from upstream `master` r=Dajamante a=pvdrz

* rust-lang/rust#116483
  * rust-lang/rust#116475
  * rust-lang/rust#116329
  * rust-lang/rust#116198
  * rust-lang/rust#115588
  * rust-lang/rust#115522
  * rust-lang/rust#115454
* rust-lang/rust#111595
* rust-lang/rust#116018
* rust-lang/rust#116472
  * rust-lang/rust#116469
  * rust-lang/rust#116421
* rust-lang/rust#116463
* rust-lang/rust#101150
* rust-lang/rust#116269
* rust-lang/rust#116417
* rust-lang/rust#116455
  * rust-lang/rust#116452
  * rust-lang/rust#116428
  * rust-lang/rust#116415
  * rust-lang/rust#116288
  * rust-lang/rust#116220
* rust-lang/rust#103046
* rust-lang/rust#114042
* rust-lang/rust#104153
* rust-lang/rust#116427
* rust-lang/rust#116443
  * rust-lang/rust#116432
  * rust-lang/rust#116431
  * rust-lang/rust#116429
  * rust-lang/rust#116296
  * rust-lang/rust#116223
* rust-lang/rust#116273
* rust-lang/rust#116184
* rust-lang/rust#116370
* rust-lang/rust#114417
* rust-lang/rust#115200
* rust-lang/rust#116413
* rust-lang/rust#116381
* rust-lang/rust#116360
* rust-lang/rust#116353
* rust-lang/rust#116406
* rust-lang/rust#116408
  * rust-lang/rust#116395
  * rust-lang/rust#116393
  * rust-lang/rust#116388
  * rust-lang/rust#116365
  * rust-lang/rust#116363
  * rust-lang/rust#116146
  * rust-lang/rust#115961
* rust-lang/rust#116386
* rust-lang/rust#116367
* rust-lang/rust#105394
* rust-lang/rust#115301
* rust-lang/rust#116384
  * rust-lang/rust#116379
  * rust-lang/rust#116328
  * rust-lang/rust#116282
  * rust-lang/rust#116261
  * rust-lang/rust#114654
* rust-lang/rust#116376
  * rust-lang/rust#116374
  * rust-lang/rust#116371
  * rust-lang/rust#116358
  * rust-lang/rust#116210
  * rust-lang/rust#115863
* rust-lang/rust#115025
* rust-lang/rust#116372
  * rust-lang/rust#116361
  * rust-lang/rust#116355
  * rust-lang/rust#116351
  * rust-lang/rust#116158
  * rust-lang/rust#115726
  * rust-lang/rust#113053
* rust-lang/rust#116083
* rust-lang/rust#102099
* rust-lang/rust#116356
  * rust-lang/rust#116350
  * rust-lang/rust#116349
  * rust-lang/rust#116289
  * rust-lang/rust#114454
  * rust-lang/rust#114453
* rust-lang/rust#116331
* rust-lang/rust#116346
  * rust-lang/rust#116340
  * rust-lang/rust#116326
  * rust-lang/rust#116313
* rust-lang/rust#116276
* rust-lang/rust#115898
* rust-lang/rust#116325
* rust-lang/rust#116317
* rust-lang/rust#116207
* rust-lang/rust#116281
* rust-lang/rust#116304
* rust-lang/rust#116259
* rust-lang/rust#116228
* rust-lang/rust#116224
* rust-lang/rust#115554
* rust-lang/rust#116311
  * rust-lang/rust#116299
  * rust-lang/rust#116295
  * rust-lang/rust#116292
* rust-lang/rust#116307
* rust-lang/rust#115670
* rust-lang/rust#116225
* rust-lang/rust#116302
* rust-lang/rust#116108
* rust-lang/rust#116160
* rust-lang/rust#116157
* rust-lang/rust#116127
* rust-lang/rust#116286
* rust-lang/rust#116254
* rust-lang/rust#116195
* rust-lang/rust#116280
* rust-lang/rust#115933
* rust-lang/rust#115546
* rust-lang/rust#115368
* rust-lang/rust#116275
  * rust-lang/rust#116263
  * rust-lang/rust#116241
  * rust-lang/rust#116216
  * rust-lang/rust#116030
  * rust-lang/rust#116024
  * rust-lang/rust#112123
* rust-lang/rust#113301
* rust-lang/rust#113797
* rust-lang/rust#115759
* rust-lang/rust#116260
  * rust-lang/rust#116253
  * rust-lang/rust#116245
  * rust-lang/rust#116239
  * rust-lang/rust#116234
  * rust-lang/rust#116231
  * rust-lang/rust#116201
  * rust-lang/rust#116133
* rust-lang/rust#116176
* rust-lang/rust#116089
* rust-lang/rust#115986

35: Automated pull from `rust-lang/libc` r=pietroalbini a=github-actions[bot]

This PR pulls the following changes from the [`rust-lang/libc`](https://github.com/rust-lang/libc) repository:

* rust-lang/libc#3335
* rust-lang/libc#3373
* rust-lang/libc#3360
* rust-lang/libc#3374
* rust-lang/libc#3375
* rust-lang/libc#3376
* rust-lang/libc#3377


Co-authored-by: ouz-a <ouz.agz@gmail.com>
Co-authored-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Co-authored-by: bors <bors@rust-lang.org>
Co-authored-by: linkmauve <linkmauve@linkmauve.fr>
Co-authored-by: onur-ozkan <work@onurozkan.dev>
Co-authored-by: asquared31415 <34665709+asquared31415@users.noreply.github.com>
Co-authored-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: Ralf Jung <post@ralfj.de>
Co-authored-by: Nadrieril <nadrieril+git@gmail.com>
Co-authored-by: Raekye <Raekye@users.noreply.github.com>
Co-authored-by: Mark Rousskov <mark.simulacrum@gmail.com>
Co-authored-by: Zalathar <Zalathar@users.noreply.github.com>
Co-authored-by: Nikolay Arhipov <nikolajs.arhipovs@gmail.com>
Co-authored-by: Brian Cain <bcain@quicinc.com>
Co-authored-by: Steve Lau <stevelauc@outlook.com>
Co-authored-by: David CARLIER <devnexen@gmail.com>
Co-authored-by: Louis Dupré Bertoni <louisdb@lespetitspedestres.org>
Co-authored-by: Taiki Endo <te316e89@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
bors referenced this pull request in rust-lang/cargo Nov 1, 2023
chore(deps): update compatible

[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [base64](https://togithub.com/marshallpierce/rust-base64) | workspace.dependencies | patch | `0.21.4` -> `0.21.5` |
| [cargo_metadata](https://togithub.com/oli-obk/cargo_metadata) | workspace.dependencies | patch | `0.18.0` -> `0.18.1` |
| [clap](https://togithub.com/clap-rs/clap) | workspace.dependencies | patch | `4.4.6` -> `4.4.7` |
| [flate2](https://togithub.com/rust-lang/flate2-rs) | workspace.dependencies | patch | `1.0.27` -> `1.0.28` |
| [jobserver](https://togithub.com/alexcrichton/jobserver-rs) | workspace.dependencies | patch | `0.1.26` -> `0.1.27` |
| [libc](https://togithub.com/rust-lang/libc) | workspace.dependencies | patch | `0.2.148` -> `0.2.149` |
| [serde](https://serde.rs) ([source](https://togithub.com/serde-rs/serde)) | workspace.dependencies | patch | `1.0.188` -> `1.0.190` |
| [serde_json](https://togithub.com/serde-rs/json) | workspace.dependencies | patch | `1.0.107` -> `1.0.108` |
| [snapbox](https://togithub.com/assert-rs/trycmd/tree/main/crates/snapbox) ([source](https://togithub.com/assert-rs/trycmd)) | workspace.dependencies | patch | `0.4.13` -> `0.4.14` |
| [syn](https://togithub.com/dtolnay/syn) | workspace.dependencies | patch | `2.0.37` -> `2.0.38` |
| [tempfile](https://stebalien.com/projects/tempfile-rs/) ([source](https://togithub.com/Stebalien/tempfile)) | workspace.dependencies | patch | `3.8.0` -> `3.8.1` |
| [thiserror](https://togithub.com/dtolnay/thiserror) | workspace.dependencies | patch | `1.0.49` -> `1.0.50` |
| [toml](https://togithub.com/toml-rs/toml) | workspace.dependencies | patch | `0.8.2` -> `0.8.6` |
| [tracing](https://tokio.rs) ([source](https://togithub.com/tokio-rs/tracing)) | workspace.dependencies | patch | `0.1.37` -> `0.1.40` |

---

### Release Notes

<details>
<summary>marshallpierce/rust-base64 (base64)</summary>

### [`v0.21.5`](https://togithub.com/marshallpierce/rust-base64/blob/HEAD/RELEASE-NOTES.md#0215)

[Compare Source](https://togithub.com/marshallpierce/rust-base64/compare/v0.21.4...v0.21.5)

-   Add `Debug` and `Clone` impls for the general purpose Engine

</details>

<details>
<summary>oli-obk/cargo_metadata (cargo_metadata)</summary>

### [`v0.18.1`](https://togithub.com/oli-obk/cargo_metadata/compare/0.18.0...0.18.1)

[Compare Source](https://togithub.com/oli-obk/cargo_metadata/compare/0.18.0...0.18.1)

</details>

<details>
<summary>clap-rs/clap (clap)</summary>

### [`v4.4.7`](https://togithub.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#447---2023-10-24)

[Compare Source](https://togithub.com/clap-rs/clap/compare/v4.4.6...v4.4.7)

##### Performance

-   Reduced code size

</details>

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

### [`v1.0.28`](https://togithub.com/rust-lang/flate2-rs/releases/tag/1.0.28)

[Compare Source](https://togithub.com/rust-lang/flate2-rs/compare/1.0.27...1.0.28)

#### What's Changed

-   Use explicit Default for GzHeaderState enum by [`@&#8203;jongiddy](https://togithub.com/jongiddy)` in [https://github.com/rust-lang/flate2-rs/pull/371](https://togithub.com/rust-lang/flate2-rs/pull/371)
-   Fix spare capacity handling by [`@&#8203;anforowicz](https://togithub.com/anforowicz)` in [https://github.com/rust-lang/flate2-rs/pull/373](https://togithub.com/rust-lang/flate2-rs/pull/373)
-   Fix and unify docs of `bufread` and `read` types. by [`@&#8203;georeth](https://togithub.com/georeth)` in [https://github.com/rust-lang/flate2-rs/pull/375](https://togithub.com/rust-lang/flate2-rs/pull/375)
-   Reset StreamWrapper after calling mz_inflate / mz_deflate by [`@&#8203;Manishearth](https://togithub.com/Manishearth)` in [https://github.com/rust-lang/flate2-rs/pull/380](https://togithub.com/rust-lang/flate2-rs/pull/380)
-   prepare next patch-release by [`@&#8203;Byron](https://togithub.com/Byron)` in [https://github.com/rust-lang/flate2-rs/pull/378](https://togithub.com/rust-lang/flate2-rs/pull/378)

#### New Contributors

-   [`@&#8203;anforowicz](https://togithub.com/anforowicz)` made their first contribution in [https://github.com/rust-lang/flate2-rs/pull/373](https://togithub.com/rust-lang/flate2-rs/pull/373)
-   [`@&#8203;georeth](https://togithub.com/georeth)` made their first contribution in [https://github.com/rust-lang/flate2-rs/pull/375](https://togithub.com/rust-lang/flate2-rs/pull/375)
-   [`@&#8203;Manishearth](https://togithub.com/Manishearth)` made their first contribution in [https://github.com/rust-lang/flate2-rs/pull/380](https://togithub.com/rust-lang/flate2-rs/pull/380)

**Full Changelog**: rust-lang/flate2-rs@1.0.27...1.0.28

</details>

<details>
<summary>rust-lang/libc (libc)</summary>

### [`v0.2.149`](https://togithub.com/rust-lang/libc/releases/tag/0.2.149)

[Compare Source](https://togithub.com/rust-lang/libc/compare/0.2.148...0.2.149)

#### What's Changed

-   libc 0.2.148 by [`@&#8203;joshtriplett](https://togithub.com/joshtriplett)` in [https://github.com/rust-lang/libc/pull/3351](https://togithub.com/rust-lang/libc/pull/3351)
-   update libc-test and its libc dependency to 0.2.148 by [`@&#8203;chenx97](https://togithub.com/chenx97)` in [https://github.com/rust-lang/libc/pull/3314](https://togithub.com/rust-lang/libc/pull/3314)
-   Disable 1.13 CI by [`@&#8203;JohnTitor](https://togithub.com/JohnTitor)` in [https://github.com/rust-lang/libc/pull/3358](https://togithub.com/rust-lang/libc/pull/3358)
-   Add teeos libc by [`@&#8203;Sword-Destiny](https://togithub.com/Sword-Destiny)` in [https://github.com/rust-lang/libc/pull/3333](https://togithub.com/rust-lang/libc/pull/3333)
-   Added SIOCSIFNAME by [`@&#8203;Brijeshkrishna](https://togithub.com/Brijeshkrishna)` in [https://github.com/rust-lang/libc/pull/3354](https://togithub.com/rust-lang/libc/pull/3354)
-   copyfile apple api update by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3346](https://togithub.com/rust-lang/libc/pull/3346)
-   Hermit updates by [`@&#8203;mkroening](https://togithub.com/mkroening)` in [https://github.com/rust-lang/libc/pull/3348](https://togithub.com/rust-lang/libc/pull/3348)
-   Add the LoongArch64 HWCAP values by [`@&#8203;heiher](https://togithub.com/heiher)` in [https://github.com/rust-lang/libc/pull/3344](https://togithub.com/rust-lang/libc/pull/3344)
-   Add F_PUNCHHOLE and fpunchhole_t by [`@&#8203;anacrolix](https://togithub.com/anacrolix)` in [https://github.com/rust-lang/libc/pull/3337](https://togithub.com/rust-lang/libc/pull/3337)
-   Fix compatibility with Emscripten >= 3.1.44 by [`@&#8203;kleisauke](https://togithub.com/kleisauke)` in [https://github.com/rust-lang/libc/pull/3308](https://togithub.com/rust-lang/libc/pull/3308)
-   freebsd adding few mmap constants related to page alignment by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3326](https://togithub.com/rust-lang/libc/pull/3326)
-   Redox pthreads by [`@&#8203;4lDO2](https://togithub.com/4lDO2)` in [https://github.com/rust-lang/libc/pull/3347](https://togithub.com/rust-lang/libc/pull/3347)
-   linux MADV_COLLAPSE addition by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3340](https://togithub.com/rust-lang/libc/pull/3340)
-   android adding few more pthread api calls. by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3288](https://togithub.com/rust-lang/libc/pull/3288)
-   Declare `pthread_attr_setguardsize` and `pthread_attr_getstacksize`. by [`@&#8203;sunfishcode](https://togithub.com/sunfishcode)` in [https://github.com/rust-lang/libc/pull/3330](https://togithub.com/rust-lang/libc/pull/3330)
-   Add missing PS Vita definitions, fix some unused ones by [`@&#8203;pheki](https://togithub.com/pheki)` in [https://github.com/rust-lang/libc/pull/3284](https://togithub.com/rust-lang/libc/pull/3284)
-   Drop `armv7-apple-ios` target support by [`@&#8203;JohnTitor](https://togithub.com/JohnTitor)` in [https://github.com/rust-lang/libc/pull/3362](https://togithub.com/rust-lang/libc/pull/3362)
-   backtrace definitions and support for getmntinfo and getvfsstat by [`@&#8203;0323pin](https://togithub.com/0323pin)` in [https://github.com/rust-lang/libc/pull/3368](https://togithub.com/rust-lang/libc/pull/3368)
-   apple fcntl update. by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3365](https://togithub.com/rust-lang/libc/pull/3365)
-   Added socketpair and pipe2 for Vita target by [`@&#8203;nikarh](https://togithub.com/nikarh)` in [https://github.com/rust-lang/libc/pull/3366](https://togithub.com/rust-lang/libc/pull/3366)
-   Added additional Ethernet Protocol Ids for fuchsia by [`@&#8203;w1redch4d](https://togithub.com/w1redch4d)` in [https://github.com/rust-lang/libc/pull/3332](https://togithub.com/rust-lang/libc/pull/3332)
-   timerfd api for freebsd 14. by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3341](https://togithub.com/rust-lang/libc/pull/3341)
-   haiku adding pthread GNU part by [`@&#8203;devnexen](https://togithub.com/devnexen)` in [https://github.com/rust-lang/libc/pull/3364](https://togithub.com/rust-lang/libc/pull/3364)
-   add execveat for glibc by [`@&#8203;SteveLauC](https://togithub.com/SteveLauC)` in [https://github.com/rust-lang/libc/pull/3372](https://togithub.com/rust-lang/libc/pull/3372)
-   added support for GNU/Hurd by [`@&#8203;Vtewari2311](https://togithub.com/Vtewari2311)` in [https://github.com/rust-lang/libc/pull/3325](https://togithub.com/rust-lang/libc/pull/3325)
-   Fix apple tvos support by [`@&#8203;lcruz99](https://togithub.com/lcruz99)` in [https://github.com/rust-lang/libc/pull/3370](https://togithub.com/rust-lang/libc/pull/3370)
-   Remove deprecation from SA_ONSTACK; fix hexagon-unknown-linux-musl by [`@&#8203;androm3da](https://togithub.com/androm3da)` in [https://github.com/rust-lang/libc/pull/3335](https://togithub.com/rust-lang/libc/pull/3335)
-   feat: add close_range for glibc by [`@&#8203;SteveLauC](https://togithub.com/SteveLauC)` in [https://github.com/rust-lang/libc/pull/3373](https://togithub.com/rust-lang/libc/pull/3373)
-   Update crate version to 0.2.149 by [`@&#8203;nikarh](https://togithub.com/nikarh)` in [https://github.com/rust-lang/libc/pull/3360](https://togithub.com/rust-lang/libc/pull/3360)

#### New Contributors

-   [`@&#8203;Sword-Destiny](https://togithub.com/Sword-Destiny)` made their first contribution in [https://github.com/rust-lang/libc/pull/3333](https://togithub.com/rust-lang/libc/pull/3333)
-   [`@&#8203;Brijeshkrishna](https://togithub.com/Brijeshkrishna)` made their first contribution in [https://github.com/rust-lang/libc/pull/3354](https://togithub.com/rust-lang/libc/pull/3354)
-   [`@&#8203;anacrolix](https://togithub.com/anacrolix)` made their first contribution in [https://github.com/rust-lang/libc/pull/3337](https://togithub.com/rust-lang/libc/pull/3337)
-   [`@&#8203;4lDO2](https://togithub.com/4lDO2)` made their first contribution in [https://github.com/rust-lang/libc/pull/3347](https://togithub.com/rust-lang/libc/pull/3347)
-   [`@&#8203;pheki](https://togithub.com/pheki)` made their first contribution in [https://github.com/rust-lang/libc/pull/3284](https://togithub.com/rust-lang/libc/pull/3284)
-   [`@&#8203;0323pin](https://togithub.com/0323pin)` made their first contribution in [https://github.com/rust-lang/libc/pull/3368](https://togithub.com/rust-lang/libc/pull/3368)
-   [`@&#8203;w1redch4d](https://togithub.com/w1redch4d)` made their first contribution in [https://github.com/rust-lang/libc/pull/3332](https://togithub.com/rust-lang/libc/pull/3332)
-   [`@&#8203;Vtewari2311](https://togithub.com/Vtewari2311)` made their first contribution in [https://github.com/rust-lang/libc/pull/3325](https://togithub.com/rust-lang/libc/pull/3325)
-   [`@&#8203;lcruz99](https://togithub.com/lcruz99)` made their first contribution in [https://github.com/rust-lang/libc/pull/3370](https://togithub.com/rust-lang/libc/pull/3370)

**Full Changelog**: rust-lang/libc@0.2.148...0.2.149

</details>

<details>
<summary>serde-rs/serde (serde)</summary>

### [`v1.0.190`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.190)

[Compare Source](https://togithub.com/serde-rs/serde/compare/v1.0.189...v1.0.190)

-   Preserve NaN sign when deserializing f32 from f64 or vice versa ([#&#8203;2637](https://togithub.com/serde-rs/serde/issues/2637))

### [`v1.0.189`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.189)

[Compare Source](https://togithub.com/serde-rs/serde/compare/v1.0.188...v1.0.189)

-   Fix "cannot infer type" error when internally tagged enum contains untagged variant ([#&#8203;2613](https://togithub.com/serde-rs/serde/issues/2613), thanks [`@&#8203;ahl](https://togithub.com/ahl))`

</details>

<details>
<summary>serde-rs/json (serde_json)</summary>

### [`v1.0.108`](https://togithub.com/serde-rs/json/releases/tag/v1.0.108)

[Compare Source](https://togithub.com/serde-rs/json/compare/v1.0.107...v1.0.108)

-   Documentation improvements ([#&#8203;1075](https://togithub.com/serde-rs/json/issues/1075), [#&#8203;1081](https://togithub.com/serde-rs/json/issues/1081), [#&#8203;1082](https://togithub.com/serde-rs/json/issues/1082), thanks [`@&#8203;dimo414](https://togithub.com/dimo414)` and [`@&#8203;fritzrehde](https://togithub.com/fritzrehde))`

</details>

<details>
<summary>assert-rs/trycmd (snapbox)</summary>

### [`v0.4.14`](https://togithub.com/assert-rs/trycmd/compare/snapbox-v0.4.13...snapbox-v0.4.14)

[Compare Source](https://togithub.com/assert-rs/trycmd/compare/snapbox-v0.4.13...snapbox-v0.4.14)

</details>

<details>
<summary>dtolnay/syn (syn)</summary>

### [`v2.0.38`](https://togithub.com/dtolnay/syn/releases/tag/2.0.38)

[Compare Source](https://togithub.com/dtolnay/syn/compare/2.0.37...2.0.38)

-   Fix *"method 'peek' has an incompatible type for trait"* error when defining `bool` as a custom keyword ([#&#8203;1518](https://togithub.com/dtolnay/syn/issues/1518), thanks [`@&#8203;Vanille-N](https://togithub.com/Vanille-N))`

</details>

<details>
<summary>Stebalien/tempfile (tempfile)</summary>

### [`v3.8.1`](https://togithub.com/Stebalien/tempfile/blob/HEAD/CHANGELOG.md#381)

-   Update rustix to fix a potential panic on `persist_noclobber` on android.
-   Update redox_syscall to 0.4 (on redox).
-   Fix some docs typos.

</details>

<details>
<summary>dtolnay/thiserror (thiserror)</summary>

### [`v1.0.50`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.50)

[Compare Source](https://togithub.com/dtolnay/thiserror/compare/1.0.49...1.0.50)

-   Improve diagnostic when a #\[source], #\[from], or #\[transparant] attribute refers to a type that has no std::error::Error impl ([#&#8203;258](https://togithub.com/dtolnay/thiserror/issues/258), thanks [`@&#8203;de-vri-es](https://togithub.com/de-vri-es))`

</details>

<details>
<summary>toml-rs/toml (toml)</summary>

### [`v0.8.6`](https://togithub.com/toml-rs/toml/compare/toml-v0.8.5...toml-v0.8.6)

[Compare Source](https://togithub.com/toml-rs/toml/compare/toml-v0.8.5...toml-v0.8.6)

### [`v0.8.5`](https://togithub.com/toml-rs/toml/compare/toml-v0.8.4...toml-v0.8.5)

[Compare Source](https://togithub.com/toml-rs/toml/compare/toml-v0.8.4...toml-v0.8.5)

### [`v0.8.4`](https://togithub.com/toml-rs/toml/compare/toml-v0.8.3...toml-v0.8.4)

[Compare Source](https://togithub.com/toml-rs/toml/compare/toml-v0.8.3...toml-v0.8.4)

### [`v0.8.3`](https://togithub.com/toml-rs/toml/compare/toml-v0.8.2...toml-v0.8.3)

[Compare Source](https://togithub.com/toml-rs/toml/compare/toml-v0.8.2...toml-v0.8.3)

</details>

<details>
<summary>tokio-rs/tracing (tracing)</summary>

### [`v0.1.40`](https://togithub.com/tokio-rs/tracing/releases/tag/tracing-0.1.40): tracing 0.1.40

[Compare Source](https://togithub.com/tokio-rs/tracing/compare/tracing-0.1.39...tracing-0.1.40)

This release fixes a potential stack use-after-free in the
`Instrument::into_inner` method. Only uses of this method are affected by this
bug.

##### Fixed

-   Use `mem::ManuallyDrop` instead of `mem::forget` in `Instrument::into_inner`
    ([#&#8203;2765])

[#&#8203;2765]: https://togithub.com/tokio-rs/tracing/pull/2765

Thanks to [`@&#8203;cramertj](https://togithub.com/cramertj)` and [`@&#8203;manishearth](https://togithub.com/manishearth)` for finding and fixing this issue!

### [`v0.1.39`](https://togithub.com/tokio-rs/tracing/releases/tag/tracing-0.1.39): tracing 0.1.39

[Compare Source](https://togithub.com/tokio-rs/tracing/compare/tracing-0.1.38...tracing-0.1.39)

This release adds several additional features to the `tracing` macros. In
addition, it updates the `tracing-core` dependency to [v0.1.32][core-0.1.32] and
the `tracing-attributes` dependency to [v0.1.27][attrs-0.1.27].

##### Added

-   Allow constant field names in macros ([#&#8203;2617])
-   Allow setting event names in macros ([#&#8203;2699])
-   **core**: Allow `ValueSet`s of any length ([#&#8203;2508])

##### Changed

-   `tracing-attributes`: updated to [0.1.27][attrs-0.1.27]
-   `tracing-core`: updated to [0.1.32][core-0.1.32]
-   **attributes**: Bump minimum version of proc-macro2 to 1.0.60 ([#&#8203;2732])
-   **attributes**: Generate less dead code for async block return type hint ([#&#8203;2709])

##### Fixed

-   Use fully qualified names in macros for items exported from std prelude
    ([#&#8203;2621], [#&#8203;2757])
-   **attributes**: Allow \[`clippy::let_with_type_underscore`] in macro-generated
    code (\[[#&#8203;2609](https://togithub.com/tokio-rs/tracing/issues/2609)])
-   **attributes**: Allow `unknown_lints` in macro-generated code ([#&#8203;2626])
-   **attributes**: Fix a compilation error in `#[instrument]` when the `"log"`
    feature is enabled ([#&#8203;2599])

##### Documented

-   Add `axum-insights` to relevant crates. ([#&#8203;2713])
-   Fix link to RAI pattern crate documentation (\[[#&#8203;2612](https://togithub.com/tokio-rs/tracing/issues/2612)])
-   Fix docs typos and warnings ([#&#8203;2581])
-   Add `clippy-tracing` to related crates ([#&#8203;2628])
-   Add `tracing-cloudwatch` to related crates ([#&#8203;2667])
-   Fix deadlink to `tracing-etw` repo ([#&#8203;2602])

[#&#8203;2617]: https://togithub.com/tokio-rs/tracing/pull/2617

[#&#8203;2699]: https://togithub.com/tokio-rs/tracing/pull/2699

[#&#8203;2508]: https://togithub.com/tokio-rs/tracing/pull/2508

[#&#8203;2621]: https://togithub.com/tokio-rs/tracing/pull/2621

[#&#8203;2713]: https://togithub.com/tokio-rs/tracing/pull/2713

[#&#8203;2581]: https://togithub.com/tokio-rs/tracing/pull/2581

[#&#8203;2628]: https://togithub.com/tokio-rs/tracing/pull/2628

[#&#8203;2667]: https://togithub.com/tokio-rs/tracing/pull/2667

[#&#8203;2602]: https://togithub.com/tokio-rs/tracing/pull/2602

[#&#8203;2626]: https://togithub.com/tokio-rs/tracing/pull/2626

[#&#8203;2757]: https://togithub.com/tokio-rs/tracing/pull/2757

[#&#8203;2732]: https://togithub.com/tokio-rs/tracing/pull/2732

[#&#8203;2709]: https://togithub.com/tokio-rs/tracing/pull/2709

[#&#8203;2599]: https://togithub.com/tokio-rs/tracing/pull/2599

[`let_with_type_underscore`]: http://rust-lang.github.io/rust-clippy/rust-1.70.0/index.html#let_with_type_underscore

[attrs-0.1.27]: https://togithub.com/tokio-rs/tracing/releases/tag/tracing-attributes-0.1.27

[core-0.1.32]: https://togithub.com/tokio-rs/tracing/releases/tag/tracing-core-0.1.32

### [`v0.1.38`](https://togithub.com/tokio-rs/tracing/releases/tag/tracing-0.1.38): tracing 0.1.38

[Compare Source](https://togithub.com/tokio-rs/tracing/compare/tracing-0.1.37...tracing-0.1.38)

This `tracing` release changes the `Drop` implementation for `Instrumented`
`Future`s so that the attached `Span` is entered when dropping the `Future`. This
means that events emitted by the `Future`'s `Drop` implementation will now be
recorded within its `Span`. It also adds `#[inline]` hints to methods called in
the `event!` macro's expansion, for an improvement in both binary size and
performance.

Additionally, this release updates the `tracing-attributes` dependency to
[v0.1.24][attrs-0.1.24], which updates the [`syn`][syn] dependency to v2.x.x.
`tracing-attributes` v0.1.24 also includes improvements to the `#[instrument]`
macro; see [the `tracing-attributes` 0.1.24 release notes][attrs-0.1.24] for
details.

##### Added

-   `Instrumented` futures will now enter the attached `Span` in their `Drop`
    implementation, allowing events emitted when dropping the future to occur
    within the span ([#&#8203;2562](https://togithub.com/tokio-rs/tracing/issues/2562))
-   `#[inline]` attributes for methods called by the `event!` macros, making
    generated code smaller ([#&#8203;2555](https://togithub.com/tokio-rs/tracing/issues/2555))
-   **attributes**: `level` argument to `#[instrument(err)]` and
    `#[instrument(ret)]` to override the level of
    the generated return value event ([#&#8203;2335](https://togithub.com/tokio-rs/tracing/issues/2335))
-   **attributes**: Improved compiler error message when `#[instrument]` is added to a `const fn`
    ([#&#8203;2418](https://togithub.com/tokio-rs/tracing/issues/2418))

##### Changed

-   `tracing-attributes`: updated to [0.1.24][attrs-0.1.24]
-   Removed unneeded `cfg-if` dependency ([#&#8203;2553](https://togithub.com/tokio-rs/tracing/issues/2553))
-   **attributes**: Updated [`syn`][syn] dependency to 2.0 ([#&#8203;2516](https://togithub.com/tokio-rs/tracing/issues/2516))

##### Fixed

-   **attributes**: Fix `clippy::unreachable` warnings in `#[instrument]`-generated code ([#&#8203;2356](https://togithub.com/tokio-rs/tracing/issues/2356))
-   **attributes**: Removed unused "visit" feature flag from `syn` dependency ([#&#8203;2530](https://togithub.com/tokio-rs/tracing/issues/2530))

##### Documented

-   **attributes**: Documented default level for `#[instrument(err)]` ([#&#8203;2433](https://togithub.com/tokio-rs/tracing/issues/2433))
-   **attributes**: Improved documentation for levels in `#[instrument]` ([#&#8203;2350](https://togithub.com/tokio-rs/tracing/issues/2350))

Thanks to [`@&#8203;nitnelave](https://togithub.com/nitnelave),` [`@&#8203;jsgf](https://togithub.com/jsgf),` [`@&#8203;Abhicodes-crypto](https://togithub.com/Abhicodes-crypto),` [`@&#8203;LukeMathWalker](https://togithub.com/LukeMathWalker),` [`@&#8203;andrewpollack](https://togithub.com/andrewpollack),`
[`@&#8203;quad](https://togithub.com/quad),` [`@&#8203;klensy](https://togithub.com/klensy),` [`@&#8203;davidpdrsn](https://togithub.com/davidpdrsn),` [`@&#8203;dbidwell94](https://togithub.com/dbidwell94),` [`@&#8203;ldm0](https://togithub.com/ldm0),` [`@&#8203;NobodyXu](https://togithub.com/NobodyXu),` [`@&#8203;ilsv](https://togithub.com/ilsv),` and [`@&#8203;daxpedda](https://togithub.com/daxpedda)`
for contributing to this release!

[`syn`]: https://crates.io/crates/syn

[attrs-0.1.24]: https://togithub.com/tokio-rs/tracing/releases/tag/tracing-attributes-0.1.24

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 5am on the first day of the month" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->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/rust-lang/cargo).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMS41IiwidXBkYXRlZEluVmVyIjoiMzcuMzEuNSIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants