Skip to content

Conversation

lnicola
Copy link
Member

@lnicola lnicola commented May 28, 2025

r? @ghost

A4-Tacks and others added 30 commits May 14, 2025 19:02
The current default plain, tends to create non-uniform import blocks over time, some being relative, some being absolute.
I believe we should encourage a different default here.
By removing the cache.
Previously only the open delimiter's span was set, and this caused... weird problems.
…egrated-benchmarks

internal: fix `integrated_benchmarks` to make actual edits
fix: Correctly set the span of the proc_macro crate's Group delimiters
fix: Fix cache problems with lints level
minor: Support `transmute_unchecked` intrinsic for mir-eval
Remove rust-analyzer.vs from other editors
It wasn't inside the source, because there was no source map.
…rmation instead of syntactical hacks

And rename it to `is_inside_macro_call()` accordingly.
fix: Properly implement `might_be_inside_macro_call()` using semantic information instead of syntactical hacks
…austiveness

fix: Normalize when checking for uninhabited types for pattern exhaustiveness checking
fixes: ide-assists, generate_new indent loses
Change import prefix default to be by crate
…it-impl-indent

fix: ide-assists, generate mut trait impl indent
…macro-hir

fix: Fix IDE resolution of item macros
Add support for type-erased `Semantics<'db, dyn HirDatabase>`, by use of `DB: ?Sized`
fix: Skip pattern analysis on type mismatches
`concat_idents!` was deprecated in [1] and will be removed in the near
future. rust-analyzer's support is independent of rustc's, so drop RA
support now to make syncing easier.

[1]: rust-lang#137653
@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label May 28, 2025
@rustbot
Copy link
Collaborator

rustbot commented May 28, 2025

rust-analyzer is developed in its own repository. If possible, consider making this change to rust-lang/rust-analyzer instead.

cc @rust-lang/rust-analyzer

@lnicola
Copy link
Member Author

lnicola commented May 28, 2025

@bors r+ p=1 subtree sync

@bors
Copy link
Collaborator

bors commented May 28, 2025

📌 Commit d08ab51 has been approved by lnicola

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 28, 2025
@bors
Copy link
Collaborator

bors commented May 28, 2025

⌛ Testing commit d08ab51 with merge 222f423...

bors added a commit that referenced this pull request May 28, 2025
Subtree update of `rust-analyzer`

r? `@ghost`
tgross35 added a commit to tgross35/rust that referenced this pull request May 28, 2025
Subtree update of `rust-analyzer`

r? ``@ghost``
@tgross35
Copy link
Contributor

@bors retry

This is still rollup=maybe so I put it into a rollup #141707 (the queue is pretty full)

bors added a commit that referenced this pull request May 28, 2025
Rollup of 7 pull requests

Successful merges:

 - #125087 (Optimize `Seek::stream_len` impl for `File`)
 - #133823 (Use `cfg_attr_trace` in AST with a placeholder attribute for accurate suggestion)
 - #138285 (Stabilize `repr128`)
 - #139994 (add `CStr::display`)
 - #141477 (Path::with_extension: show that it adds an extension where one did no…)
 - #141533 (clean up old rintf leftovers)
 - #141693 (Subtree update of `rust-analyzer`)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors
Copy link
Collaborator

bors commented May 28, 2025

⌛ Testing commit d08ab51 with merge 6a210a3...

bors added a commit that referenced this pull request May 28, 2025
Subtree update of `rust-analyzer`

r? `@ghost`
tgross35 added a commit to tgross35/rust that referenced this pull request May 28, 2025
Subtree update of `rust-analyzer`

r? `@ghost`
@tgross35
Copy link
Contributor

Same thing,
@bors retry

bors added a commit that referenced this pull request May 28, 2025
Rollup of 8 pull requests

Successful merges:

 - #125087 (Optimize `Seek::stream_len` impl for `File`)
 - #138285 (Stabilize `repr128`)
 - #139994 (add `CStr::display`)
 - #141477 (Path::with_extension: show that it adds an extension where one did no…)
 - #141533 (clean up old rintf leftovers)
 - #141690 (Add `rustc_diagnostic_item` to `sys::Mutex` methods)
 - #141693 (Subtree update of `rust-analyzer`)
 - #141702 (Add eholk to compiler reviewer rotation)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors
Copy link
Collaborator

bors commented May 28, 2025

⌛ Testing commit d08ab51 with merge ebe9b00...

@bors
Copy link
Collaborator

bors commented May 29, 2025

☀️ Test successful - checks-actions
Approved by: lnicola
Pushing ebe9b00 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 29, 2025
@bors bors merged commit ebe9b00 into rust-lang:master May 29, 2025
8 checks passed
@rustbot rustbot added this to the 1.89.0 milestone May 29, 2025
Copy link
Contributor

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 6f69710 (parent) -> ebe9b00 (this PR)

Test differences

Show 33276 test diffs

Stage 1

  • errors::verify_ast_passes_at_least_one_trait_35: pass -> [missing] (J0)
  • errors::verify_ast_passes_nomangle_ascii_27: pass -> [missing] (J0)
  • errors::verify_codegen_ssa_L4Bender_exporting_symbols_unimplemented_15: pass -> [missing] (J0)
  • errors::verify_const_eval_unallowed_inline_asm_22: pass -> [missing] (J0)
  • errors::verify_expand_cannot_be_name_of_macro_13: pass -> [missing] (J0)
  • errors::verify_metadata_crate_not_compiler_builtins_43: pass -> [missing] (J0)
  • errors::verify_metadata_multiple_cfgs_19: pass -> [missing] (J0)
  • errors::verify_parse_asm_unsupported_operand_175: pass -> [missing] (J0)
  • errors::verify_parse_unexpected_if_with_if_60: pass -> [missing] (J0)
  • errors::verify_passes_doc_keyword_not_mod_31: pass -> [missing] (J0)
  • errors::verify_passes_unrecognized_argument_124: pass -> [missing] (J0)
  • errors::verify_session_sanitizer_kcfi_requires_panic_abort_18: pass -> [missing] (J0)
  • lints::verify_lint_builtin_export_name_method_18: pass -> [missing] (J0)
  • lints::verify_lint_default_hash_types_53: pass -> [missing] (J0)
  • parser::tests::different_note_3: pass -> [missing] (J0)
  • pprust::tests::test_fun_to_string: pass -> [missing] (J0)
  • session_diagnostics::verify_driver_impl_ice_exclude_cargo_defaults_15: pass -> [missing] (J0)
  • session_diagnostics::verify_driver_impl_rlink_rustc_version_mismatch_5: pass -> [missing] (J0)
  • ascii::medium::case03_branch_and_subtract: pass -> [missing] (J1)
  • btree::map::first_and_last_0_nightly: pass -> [missing] (J1)
  • iter::bench_next_chunk_filter_mostly_false: pass -> [missing] (J1)
  • slice::rotate_huge_by9199_u64: pass -> [missing] (J1)
  • sort::tests::stable::self_cmp_i32_random_d20: pass -> [missing] (J1)
  • sort::tests::stable::self_cmp_string_saw_mixed: pass -> [missing] (J1)
  • str::find_zzz_str::short_ascii: pass -> [missing] (J1)
  • string::bench_push_str_one_byte: pass -> [missing] (J1)
  • ascii::inference_works: pass -> [missing] (J2)
  • cmp::cmp_default: pass -> [missing] (J2)
  • collections::hash::set::tests::test_drain: pass -> [missing] (J2)
  • collections::vec_deque::tests::test_rotate_left_panic: pass -> [missing] (J2)
  • fmt::test_order: pass -> [missing] (J2)
  • heap::alloc_system_overaligned_request: pass -> [missing] (J2)
  • iter::adapters::take::test_take_try_folds: pass -> [missing] (J2)
  • mem::test_transmute_copy: pass -> [missing] (J2)
  • mpsc::port_gone_concurrent: pass -> [missing] (J2)
  • net::ip_addr::ipv4_addr_to_string: pass -> [missing] (J2)
  • nonzero::test_size_nonzero_in_option: pass -> [missing] (J2)
  • num::dec2flt::parse::invalid_chars: pass -> [missing] (J2)
  • num::dec2flt::zero: pass -> [missing] (J2)
  • num::i8::test_le: pass -> [missing] (J2)
  • num::u128::test_isolate_most_significant_one: pass -> [missing] (J2)
  • slice::test_box_slice_clone: pass -> [missing] (J2)
  • slice::test_chunks_exact_iterator: pass -> [missing] (J2)
  • slice::test_join_nocopy: pass -> [missing] (J2)
  • thin_box::align64_size_not_pow2: pass -> [missing] (J2)
  • vec::test_splice: pass -> [missing] (J2)
  • sort::tests::unstable::correct_cell_i32_random: ignore -> [missing] (J3)
  • sort::tests::unstable::correct_f128_random_s95: ignore -> [missing] (J3)
  • sort::tests::unstable::deterministic_i32_random_d2: ignore -> [missing] (J3)
  • sort::tests::unstable::violate_ord_retain_orig_set_string_descending: ignore -> [missing] (J3)

Stage 2

  • back::apple::tests::try_lookup_invalid_sdk: [missing] -> pass (J0)
  • bit_set::tests::matrix_intersection: [missing] -> pass (J0)
  • doctest::tests::make_test_issues_21299: [missing] -> pass (J0)
  • errors::verify_codegen_ssa_invalid_windows_subsystem_83: [missing] -> pass (J0)
  • errors::verify_incremental_unchecked_clean_17: [missing] -> pass (J0)
  • errors::verify_parse_unexpected_token_after_struct_name_found_keyword_90: [missing] -> pass (J0)
  • errors::verify_passes_naked_functions_incompatible_attribute_135: [missing] -> pass (J0)
  • errors::verify_passes_non_exported_macro_invalid_attrs_98: [missing] -> pass (J0)
  • errors::verify_passes_trait_impl_const_stable_158: [missing] -> pass (J0)
  • errors::verify_session_unsupported_regparm_46: [missing] -> pass (J0)
  • graph::linked_graph::tests::each_adjacent_from_c: [missing] -> pass (J0)
  • interval::tests::contains: [missing] -> pass (J0)
  • lints::verify_lint_diag_out_of_impl_65: [missing] -> pass (J0)
  • lints::verify_lint_duplicate_matcher_binding_121: [missing] -> pass (J0)
  • session_diagnostics::verify_attr_parsing_rustc_promotable_pairing_17: [missing] -> pass (J0)
  • spec::tests::aarch64_unknown_uefi: [missing] -> pass (J0)
  • spec::tests::armv7a_nuttx_eabihf: [missing] -> pass (J0)
  • iter::bench_zip_then_skip: [missing] -> pass (J1)
  • net::tcp::tests::clone_while_reading: [missing] -> pass (J1)
  • net::udp::tests::timeouts: [missing] -> pass (J1)
  • num::int_log::u64_log_geometric: [missing] -> pass (J1)
  • slice::split_off_mut_oob_max_range_to_inclusive: [missing] -> pass (J1)
  • sort::tests::stable::deterministic_i32_random_s95: [missing] -> pass (J1)
  • sort::tests::stable::self_cmp_i32_random_d20: [missing] -> pass (J1)
  • sort::tests::stable::stability_i32_ascending: [missing] -> pass (J1)
  • sort::tests::unstable::correct_cell_i32_descending: [missing] -> pass (J1)
  • str::char_count::en_huge::case00_libcore: [missing] -> pass (J1)
  • str::contains_bang_str::short_mixed: [missing] -> pass (J1)
  • str::ends_with_unichar::short_pile_of_poo: [missing] -> pass (J1)
  • str::split_terminator_space_char::long_lorem_ipsum: [missing] -> pass (J1)
  • tests::test_bench_iter: [missing] -> pass (J1)
  • clone::test_clone_from: [missing] -> pass (J2)
  • collections::btree::map::tests::test_cursor_mut_insert_before_3: [missing] -> pass (J2)
  • collections::linked_list::tests::extract_if_pred_panic_leak: [missing] -> pass (J2)
  • floats::f128::test_algebraic: [missing] -> pass (J2)
  • floats::f64::test_min_nan: [missing] -> pass (J2)
  • fmt::builders::debug_set::test_empty: [missing] -> pass (J2)
  • io::tests::chain_zero_length_read_is_not_eof: [missing] -> pass (J2)
  • iter::adapters::zip::test_zip_map_sideffectful: [missing] -> pass (J2)
  • num::f32_const::div_euclid: [missing] -> pass (J2)
  • num::f32_const::rem_euclid: [missing] -> pass (J2)
  • num::f64::minimum: [missing] -> pass (J2)
  • num::nan::test_nan: [missing] -> pass (J2)
  • num::test_booli32: [missing] -> pass (J2)
  • num::u16::test_count_ones: [missing] -> pass (J2)
  • num::u16::test_isqrt: [missing] -> pass (J2)
  • rc::test_unique_rc_drops_contents: [missing] -> pass (J2)
  • rc::test_weak_count: [missing] -> pass (J2)
  • slice::test_overflow_does_not_cause_segfault: [missing] -> pass (J2)
  • sort::tests::stable::self_cmp_string_saw_mixed: [missing] -> ignore (J3)

(and 16566 additional test diffs)

Additionally, 16610 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 ebe9b0060240953d721508ceb4d02a745efda88f --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-2: 5406.9s -> 1385.5s (-74.4%)
  2. test-various: 4357.1s -> 2278.8s (-47.7%)
  3. x86_64-gnu-aux: 5773.8s -> 3907.8s (-32.3%)
  4. aarch64-apple: 4764.9s -> 3567.9s (-25.1%)
  5. dist-x86_64-apple: 10983.1s -> 9721.8s (-11.5%)
  6. dist-aarch64-linux: 6340.6s -> 5728.5s (-9.7%)
  7. dist-apple-various: 6319.9s -> 6840.7s (8.2%)
  8. dist-x86_64-illumos: 5668.5s -> 6067.5s (7.0%)
  9. dist-powerpc64le-linux-musl: 6023.7s -> 5601.1s (-7.0%)
  10. i686-msvc-2: 7398.7s -> 7852.0s (6.1%)
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 (ebe9b00): comparison URL.

Overall result: ✅ improvements - 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
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-1.4% [-1.4%, -1.4%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -1.4% [-1.4%, -1.4%] 1

Max RSS (memory usage)

Results (primary -1.4%)

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)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-1.4% [-1.4%, -1.4%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -1.4% [-1.4%, -1.4%] 1

Cycles

Results (primary -1.3%)

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)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-1.3% [-1.3%, -1.3%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -1.3% [-1.3%, -1.3%] 1

Binary size

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

Bootstrap: 778.42s -> 778.76s (0.04%)
Artifact size: 368.59 MiB -> 368.56 MiB (-0.01%)

@lnicola lnicola deleted the sync-from-ra branch May 29, 2025 11:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.