std: don't panic on long-elapsed deadlines for sleep_until - #161295
Open
joboet wants to merge 2 commits into
Open
std: don't panic on long-elapsed deadlines for sleep_until#161295joboet wants to merge 2 commits into
sleep_until#161295joboet wants to merge 2 commits into
Conversation
Collaborator
|
r? @tgross35 rustbot has assigned @tgross35. Use Why was this reviewer chosen?The reviewer was selected based on:
|
Member
|
Could you add not about times in the past to the docs for I expect this is the behavior we want, cc @rust-lang/libs just in case. |
Contributor
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Aug 20, 2026
…=tgross35 std: don't panic on long-elapsed deadlines for `sleep_until` `clock_nanosleep` doesn't like deadlines before the clock's epoch, so `sleep_until` can currently panic ([playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=90acf91e5d4cd3bbb64187a26707d0d8)). Unfortunately the POSIX specification is quite vague about which `timespec` values are allowed, see the code comment...
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Aug 20, 2026
…=tgross35 std: don't panic on long-elapsed deadlines for `sleep_until` `clock_nanosleep` doesn't like deadlines before the clock's epoch, so `sleep_until` can currently panic ([playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=90acf91e5d4cd3bbb64187a26707d0d8)). Unfortunately the POSIX specification is quite vague about which `timespec` values are allowed, see the code comment...
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Aug 20, 2026
…=tgross35 std: don't panic on long-elapsed deadlines for `sleep_until` `clock_nanosleep` doesn't like deadlines before the clock's epoch, so `sleep_until` can currently panic ([playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=90acf91e5d4cd3bbb64187a26707d0d8)). Unfortunately the POSIX specification is quite vague about which `timespec` values are allowed, see the code comment...
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Aug 20, 2026
…=tgross35 std: don't panic on long-elapsed deadlines for `sleep_until` `clock_nanosleep` doesn't like deadlines before the clock's epoch, so `sleep_until` can currently panic ([playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=90acf91e5d4cd3bbb64187a26707d0d8)). Unfortunately the POSIX specification is quite vague about which `timespec` values are allowed, see the code comment...
rust-bors Bot
pushed a commit
that referenced
this pull request
Aug 20, 2026
…uwer Rollup of 20 pull requests Successful merges: - #152617 (std: implement `sleep_until` for Fuchsia) - #158934 (diagnostics: fix `let x: vec![]` suggestion pointing into stdlib) - #161277 (bootstrap: Move all non-module items out of the crate root) - #161295 (std: don't panic on long-elapsed deadlines for `sleep_until`) - #161368 (Double-word align `_Unwind_Exception`) - #161370 (Uplift rustfmt macro formatting fix) - #161378 (`FlowSensitiveAnalysis` cleanups) - #158032 (Offload expose device selection) - #158855 (Add `desktop` method to `CommandExt`) - #161199 (Add regression test for non lifetime binders) - #161302 (Add regression test for inconsistent import resolution from issue 147208) - #161329 (Add regression tests for a few fixed issues with E-needs-test) - #161330 (Add regression test for nested RPIT not an iterator ICE) - #161351 (Cleanup: Move impl of `#[rustc_dump_object_lifetime_defaults]`) - #161355 (Add file path to some archive build errors) - #161373 (Allow running EC2 jobs locally) - #161393 (Configure LLM policy URL for triagebot) - #161409 (Add back `tests/rustdoc-gui/notable-trait.goml` test) - #161410 (Fix rustdoc remapping `documentation` scope documentation) - #161415 (Update expect messages in path docs to better follow guidelines)
jhpratt
added a commit
to jhpratt/rust
that referenced
this pull request
Aug 21, 2026
…=tgross35 std: don't panic on long-elapsed deadlines for `sleep_until` `clock_nanosleep` doesn't like deadlines before the clock's epoch, so `sleep_until` can currently panic ([playground](https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=90acf91e5d4cd3bbb64187a26707d0d8)). Unfortunately the POSIX specification is quite vague about which `timespec` values are allowed, see the code comment...
rust-bors Bot
pushed a commit
that referenced
this pull request
Aug 21, 2026
Rollup of 25 pull requests Successful merges: - #152617 (std: implement `sleep_until` for Fuchsia) - #158934 (diagnostics: fix `let x: vec![]` suggestion pointing into stdlib) - #160995 (Tiny readability cleanups for initialization dataflow analyses) - #161277 (bootstrap: Move all non-module items out of the crate root) - #161295 (std: don't panic on long-elapsed deadlines for `sleep_until`) - #161368 (Double-word align `_Unwind_Exception`) - #161370 (Uplift rustfmt macro formatting fix) - #161378 (`FlowSensitiveAnalysis` cleanups) - #161420 (Bump wasm-component-ld to 0.5.30) - #161429 (Tighten allocator `Send`/`Sync` requirements for `Arc` in preparation for refactor) - #158032 (Offload expose device selection) - #158855 (Add `desktop` method to `CommandExt`) - #160299 (Stabilize `bool::toggle`) - #160842 (Apply `&[T]` visualizer to `*const [T]`, `*mut [T]` and `Box<[T]>`) - #160981 (Partially support building and locating wasm proc-macros) - #161199 (Add regression test for non lifetime binders) - #161212 (rust-installer/install-template.sh: catch cp(1) error when installing…) - #161302 (Add regression test for inconsistent import resolution from issue 147208) - #161329 (Add regression tests for a few fixed issues with E-needs-test) - #161330 (Add regression test for nested RPIT not an iterator ICE) - #161331 (Bitset simplifications) - #161340 (rustdoc: enable scrolling only on table/code) - #161351 (Cleanup: Move impl of `#[rustc_dump_object_lifetime_defaults]`) - #161355 (Add file path to some archive build errors) - #161373 (Allow running EC2 jobs locally)
rust-bors Bot
pushed a commit
that referenced
this pull request
Aug 21, 2026
Rollup of 25 pull requests Successful merges: - #152617 (std: implement `sleep_until` for Fuchsia) - #158934 (diagnostics: fix `let x: vec![]` suggestion pointing into stdlib) - #160995 (Tiny readability cleanups for initialization dataflow analyses) - #161277 (bootstrap: Move all non-module items out of the crate root) - #161295 (std: don't panic on long-elapsed deadlines for `sleep_until`) - #161368 (Double-word align `_Unwind_Exception`) - #161370 (Uplift rustfmt macro formatting fix) - #161378 (`FlowSensitiveAnalysis` cleanups) - #161420 (Bump wasm-component-ld to 0.5.30) - #161429 (Tighten allocator `Send`/`Sync` requirements for `Arc` in preparation for refactor) - #158032 (Offload expose device selection) - #158855 (Add `desktop` method to `CommandExt`) - #160299 (Stabilize `bool::toggle`) - #160842 (Apply `&[T]` visualizer to `*const [T]`, `*mut [T]` and `Box<[T]>`) - #160981 (Partially support building and locating wasm proc-macros) - #161199 (Add regression test for non lifetime binders) - #161212 (rust-installer/install-template.sh: catch cp(1) error when installing…) - #161302 (Add regression test for inconsistent import resolution from issue 147208) - #161329 (Add regression tests for a few fixed issues with E-needs-test) - #161330 (Add regression test for nested RPIT not an iterator ICE) - #161331 (Bitset simplifications) - #161340 (rustdoc: enable scrolling only on table/code) - #161351 (Cleanup: Move impl of `#[rustc_dump_object_lifetime_defaults]`) - #161355 (Add file path to some archive build errors) - #161373 (Allow running EC2 jobs locally)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
clock_nanosleepdoesn't like deadlines before the clock's epoch, sosleep_untilcan currently panic (playground). Unfortunately the POSIX specification is quite vague about whichtimespecvalues are allowed, see the code comment...