Skip to content

Rollup of 9 pull requests #141066

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

Merged
merged 64 commits into from
May 16, 2025
Merged

Rollup of 9 pull requests #141066

merged 64 commits into from
May 16, 2025

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

tshepang and others added 30 commits May 1, 2025 07:38
The 2 commands do the same thing.
Also, follow style used elsewhere in the guide.
Fix minor typo in serialization.md
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
…ounds on generic function

Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
Align advice to discourage issue-number-only names
Fix minor typo in installation.md
Fix minor typo in rustdoc-internals.md
add rdg push git config entry for git protocol pushers
This made it look the the topic was covered in the chapter just before
the current one.
They are internal tools.
Migrate to modern datetime API

# PR Summary
This small PR resolves the `datetime` library warnings:
```python
DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). or datetime.datetime.utcnow()
```
Note that `.replace(tzinfo=None)` allows to keep the original behavior where the time appears as a naive UTC timestamp (i.e., without any timezone offset). Comparision:
```python
# With .utcnow() or .now(datetime.timezone.utc).replace(tzinfo=None)
Time,Idle
2025-05-14T15:40:25.013414,98.73417721518987

# With .now(datetime.timezone.utc)
Time,Idle
2025-05-14T15:40:25.013414+00:00,98.73417721518987
```
…pinfo_windows, r=joboet

Implement methods to set STARTUPINFO flags for Command API on Windows

Implements rust-lang#141010
rustc-dev-guide subtree update

r? ``@ghost``
@rustbot rustbot added A-rustc-dev-guide Area: rustc-dev-guide A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface O-wasm Target: WASM (WebAssembly), http://webassembly.org/ O-windows Operating system: Windows S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels May 16, 2025
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=5

@bors
Copy link
Collaborator

bors commented May 16, 2025

📌 Commit 5ce27f5 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 16, 2025
@bors
Copy link
Collaborator

bors commented May 16, 2025

⌛ Testing commit 5ce27f5 with merge c79bbfab78dcb0a72aa3b2bc35c00334b58bfe2e...

@bors
Copy link
Collaborator

bors commented May 16, 2025

☀️ Test successful - checks-actions
Approved by: matthiaskrgr
Pushing c79bbfa to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 16, 2025
@bors bors merged commit c79bbfa into rust-lang:master May 16, 2025
7 checks passed
@rustbot rustbot added this to the 1.89.0 milestone May 16, 2025
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#140791 std: explain prefer TryInto over TryFrom when specifyin… 38a7db5265a3ff88dfb9c0775602828bd3cec6ce (link)
#140834 move (or remove) some impl Trait tests a47d250ac56748efd780e706f0de13e866fc86ba (link)
#140910 Remove stable attribute from wasi fs (read_exact|write_al… c163972bc66764bdc2d8df1f4a3a68b34dd5ceda (link)
#140984 fix doc for UnixStream d1763f95bc47d08693637241bebecd0df0afc144 (link)
#140997 Add negative test coverage for -Clink-self-contained and … 8e26bf98f7963e3fa4787fc9a1d1c42118f21165 (link)
#141003 Improve ternary operator recovery db9010fc778f1e9b5e28f9db47006f33a832218e (link)
#141009 Migrate to modern datetime API de1af7efa88c26bc8b1caacd02352a532cae8a1c (link)
#141013 Implement methods to set STARTUPINFO flags for Command API … 58ea768f44b5633460b937e74afcecd514e3fe7c (link)
#141026 rustc-dev-guide subtree update 7156f2817dbde86129466305f8c831e7dd94befb (link)

previous master: 7e19eef048

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

Copy link

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing 7e19eef (parent) -> c79bbfa (this PR)

Test differences

Show 529 test diffs

Stage 1

  • errors::verify_parse_associated_static_item_not_allowed_85: pass -> [missing] (J0)
  • errors::verify_parse_async_impl_169: pass -> [missing] (J0)
  • errors::verify_parse_attr_after_generic_140: [missing] -> pass (J0)
  • errors::verify_parse_attr_after_generic_141: pass -> [missing] (J0)
  • errors::verify_parse_attr_without_generics_141: [missing] -> pass (J0)
  • errors::verify_parse_attribute_on_param_type_53: [missing] -> pass (J0)
  • errors::verify_parse_bad_return_type_notation_output_139: pass -> [missing] (J0)
  • errors::verify_parse_box_not_pat_157: [missing] -> pass (J0)
  • errors::verify_parse_cannot_be_raw_ident_102: [missing] -> pass (J0)
  • errors::verify_parse_colon_as_semi_68: [missing] -> pass (J0)
  • errors::verify_parse_colon_as_semi_69: pass -> [missing] (J0)
  • errors::verify_parse_const_global_cannot_be_mutable_86: [missing] -> pass (J0)
  • errors::verify_parse_dot_dot_dot_for_remaining_fields_126: [missing] -> pass (J0)
  • errors::verify_parse_dotdotdot_27: [missing] -> pass (J0)
  • errors::verify_parse_double_colon_in_bound_59: [missing] -> pass (J0)
  • errors::verify_parse_expected_builtin_ident_163: [missing] -> pass (J0)
  • errors::verify_parse_expected_else_block_18: [missing] -> pass (J0)
  • errors::verify_parse_expected_statement_after_outer_attr_47: pass -> [missing] (J0)
  • errors::verify_parse_expected_struct_field_20: pass -> [missing] (J0)
  • errors::verify_parse_extra_impl_keyword_in_trait_impl_81: pass -> [missing] (J0)
  • errors::verify_parse_fn_pointer_cannot_be_async_136: pass -> [missing] (J0)
  • errors::verify_parse_fn_pointer_cannot_be_const_134: [missing] -> pass (J0)
  • errors::verify_parse_frontmatter_length_mismatch_37: [missing] -> pass (J0)
  • errors::verify_parse_generic_args_in_pat_require_turbofish_syntax_166: pass -> [missing] (J0)
  • errors::verify_parse_inclusive_range_extra_equals_39: pass -> [missing] (J0)
  • errors::verify_parse_incorrect_visibility_restriction_44: [missing] -> pass (J0)
  • errors::verify_parse_invalid_digit_literal_108: [missing] -> pass (J0)
  • errors::verify_parse_invalid_dyn_keyword_137: [missing] -> pass (J0)
  • errors::verify_parse_keyword_lifetime_104: [missing] -> pass (J0)
  • errors::verify_parse_lifetime_after_mut_132: [missing] -> pass (J0)
  • errors::verify_parse_macro_rules_missing_bang_152: [missing] -> pass (J0)
  • errors::verify_parse_maybe_fn_typo_with_impl_61: [missing] -> pass (J0)
  • errors::verify_parse_mismatched_closing_delimiter_44: pass -> [missing] (J0)
  • errors::verify_parse_missing_comma_after_match_arm_23: [missing] -> pass (J0)
  • errors::verify_parse_missing_const_type_87: [missing] -> pass (J0)
  • errors::verify_parse_missing_for_in_trait_impl_79: pass -> [missing] (J0)
  • errors::verify_parse_missing_trait_in_trait_impl_77: [missing] -> pass (J0)
  • errors::verify_parse_modifier_lifetime_145: [missing] -> pass (J0)
  • errors::verify_parse_need_plus_after_trait_object_lifetime_130: [missing] -> pass (J0)
  • errors::verify_parse_nested_adt_156: [missing] -> pass (J0)
  • errors::verify_parse_nested_adt_157: pass -> [missing] (J0)
  • errors::verify_parse_nested_c_variadic_type_136: [missing] -> pass (J0)
  • errors::verify_parse_no_digits_literal_107: [missing] -> pass (J0)
  • errors::verify_parse_no_digits_literal_108: pass -> [missing] (J0)
  • errors::verify_parse_nonterminal_expected_lifetime_102: pass -> [missing] (J0)
  • errors::verify_parse_outer_attribute_not_allowed_on_if_else_20: [missing] -> pass (J0)
  • errors::verify_parse_path_found_attribute_in_params_66: pass -> [missing] (J0)
  • errors::verify_parse_path_found_named_params_64: pass -> [missing] (J0)
  • errors::verify_parse_single_colon_import_path_151: pass -> [missing] (J0)
  • errors::verify_parse_trait_alias_cannot_be_auto_83: pass -> [missing] (J0)
  • errors::verify_parse_trait_alias_cannot_be_unsafe_83: [missing] -> pass (J0)
  • errors::verify_parse_trait_alias_cannot_be_unsafe_84: pass -> [missing] (J0)
  • errors::verify_parse_underscore_literal_suffix_146: [missing] -> pass (J0)
  • errors::verify_parse_unexpected_const_in_generic_param_57: pass -> [missing] (J0)
  • errors::verify_parse_unexpected_default_value_for_lifetime_in_generic_parameters_96: [missing] -> pass (J0)
  • errors::verify_parse_unexpected_expr_in_pat_128: [missing] -> pass (J0)
  • errors::verify_parse_unexpected_if_with_if_60: [missing] -> pass (J0)
  • errors::verify_parse_unexpected_lifetime_in_pattern_118: [missing] -> pass (J0)
  • errors::verify_parse_unexpected_token_after_struct_name_found_keyword_91: pass -> [missing] (J0)
  • errors::verify_parse_unexpected_token_after_struct_name_found_metavar_94: pass -> [missing] (J0)
  • errors::verify_parse_unexpected_vert_vert_in_pattern_114: pass -> [missing] (J0)
  • errors::verify_parse_unmatched_angle_brackets_51: [missing] -> pass (J0)
  • [ui] tests/ui/impl-trait/can-return-unconstrained-closure.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/coherence-treats-tait-ambig.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-103181-2.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-35668.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-49579.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-55872.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-56445.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-72911.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issue-99914.rs: pass -> [missing] (J2)
  • [ui] tests/ui/impl-trait/issues/issue-100187.rs: [missing] -> pass (J2)
  • [ui] tests/ui/impl-trait/issues/issue-49579.rs: [missing] -> pass (J2)
  • [ui] tests/ui/impl-trait/issues/issue-55872-1.rs: [missing] -> pass (J2)
  • [ui] tests/ui/impl-trait/issues/issue-87450.rs: [missing] -> pass (J2)
  • [ui] tests/ui/impl-trait/issues/issue-99073.rs: [missing] -> pass (J2)
  • [ui] tests/ui/linking/linker-features-malformed.rs#unknown_boolean: [missing] -> pass (J2)
  • [ui] tests/ui/type-alias-impl-trait/coherence/coherence_cross_crate.rs: [missing] -> pass (J2)
  • [ui] tests/ui/type-alias-impl-trait/coherence/coherence_generalization.rs: [missing] -> pass (J2)
  • [ui] tests/ui/type-alias-impl-trait/coherence_cross_crate.rs: pass -> [missing] (J2)

Stage 2

  • [ui] tests/ui/impl-trait/issue-103181-2.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issue-108591.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issue-55872-1.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issue-68532.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issue-87450.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issue-99642-2.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issue-99914.rs: pass -> [missing] (J1)
  • [ui] tests/ui/impl-trait/issues/issue-103181-1.rs#next: [missing] -> pass (J1)
  • [ui] tests/ui/impl-trait/issues/issue-103181-2.rs: [missing] -> pass (J1)
  • [ui] tests/ui/impl-trait/issues/issue-46959.rs: [missing] -> pass (J1)
  • [ui] tests/ui/impl-trait/issues/issue-55872-1.rs: [missing] -> pass (J1)
  • [ui] tests/ui/impl-trait/issues/issue-55872-2.rs: [missing] -> pass (J1)
  • [ui] tests/ui/impl-trait/issues/issue-55872.rs: [missing] -> pass (J1)
  • [ui] tests/ui/linking/link-self-contained-malformed.rs#unknown_modifier_value: [missing] -> pass (J1)
  • [ui] tests/ui/linking/link-self-contained-malformed.rs#unknown_value: [missing] -> pass (J1)
  • [ui] tests/ui/linking/linker-features-malformed.rs#no_value: [missing] -> pass (J1)
  • [ui] tests/ui/linking/linker-features-malformed.rs#unknown_boolean: [missing] -> pass (J1)
  • [ui] tests/ui/linking/linker-features-malformed.rs#unknown_value: [missing] -> pass (J1)
  • [ui] tests/ui/type-alias-impl-trait/coherence.rs#next: pass -> [missing] (J1)
  • [ui] tests/ui/type-alias-impl-trait/coherence_different_hidden_ty.rs: pass -> [missing] (J1)

(and 405 additional test diffs)

Additionally, 24 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard c79bbfab78dcb0a72aa3b2bc35c00334b58bfe2e --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. x86_64-apple-1: 7502.3s -> 10608.0s (41.4%)
  2. dist-apple-various: 7828.3s -> 5659.0s (-27.7%)
  3. dist-aarch64-apple: 6107.6s -> 5378.4s (-11.9%)
  4. aarch64-apple: 4086.0s -> 3640.0s (-10.9%)
  5. x86_64-msvc-ext2: 6022.1s -> 5686.1s (-5.6%)
  6. dist-x86_64-apple: 8704.7s -> 9145.0s (5.1%)
  7. x86_64-mingw-2: 7038.0s -> 7360.8s (4.6%)
  8. dist-loongarch64-linux: 6489.8s -> 6196.5s (-4.5%)
  9. dist-arm-linux: 4582.6s -> 4778.3s (4.3%)
  10. i686-gnu-nopt-1: 8543.6s -> 8201.4s (-4.0%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (c79bbfa): comparison URL.

Overall result: ❌ regressions - no action needed

@rustbot label: -perf-regression

Instruction count

This is the most reliable metric that we have; it was used to determine the overall result at the top of this comment. However, even this metric can sometimes exhibit noise.

mean range count
Regressions ❌
(primary)
0.1% [0.1%, 0.1%] 2
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.1% [0.1%, 0.1%] 2

Max RSS (memory usage)

Results (primary 4.5%, secondary 1.1%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
4.5% [4.5%, 4.5%] 1
Regressions ❌
(secondary)
4.3% [1.6%, 5.7%] 3
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.8% [-5.5%, -2.2%] 2
All ❌✅ (primary) 4.5% [4.5%, 4.5%] 1

Cycles

Results (primary 4.9%, secondary -3.0%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
4.9% [4.9%, 4.9%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.0% [-3.0%, -3.0%] 1
All ❌✅ (primary) 4.9% [4.9%, 4.9%] 1

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 772.011s -> 772.547s (0.07%)
Artifact size: 365.45 MiB -> 365.46 MiB (0.00%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-rustc-dev-guide Area: rustc-dev-guide A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool merged-by-bors This PR was explicitly merged by bors. O-unix Operating system: Unix-like O-wasi Operating system: Wasi, Webassembly System Interface O-wasm Target: WASM (WebAssembly), http://webassembly.org/ O-windows Operating system: Windows rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.