summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2023-07-10Prepare 1.71.0 stable releaseMark Rousskov-1/+1
2023-07-06Ignore in-proc-macros itemsblyxyas-1/+2
2023-07-06Move redundant_clone to nurseryAlex Macleod-33/+35
2023-07-06Auto merge of #10865 - Centri3:let_with_type_underscore_tracing, r=Jarchobors-10/+65
[`let_with_type_underscore`]: Don't emit on locals from procedural macros closes #10498 changelog: [`let_with_type_underscore`]: Don't emit on locals from procedural macros
2023-07-06[`default_constructed_unit_structs`]: do not lint type aliasesy21-7/+62
2023-06-24Update to LLVM 16.0.5Nikita Popov-0/+0
2023-06-24Fix URL encoding of % sign in Rust Doc.TumoiYorozu-2/+0
2023-06-08[beta-1.71] cargo backportWeihang Lo-0/+0
2023-06-03Bump to released 1.70 stableMark Rousskov-402/+291
2023-05-29Switch to beta channelMark Rousskov-1/+1
2023-05-27Rollup merge of #112018 - GuillaumeGomez:cleanup-tcx, r=notriddleMatthias Krüger-43/+39
Clean up usage of `cx.tcx` when `tcx` is already set into a variable I discovered a few cases where `cx.tcx` (and equivalents) was used whereas `tcx` was already stored into a variable. In those cases, better to just use `tcx` directly. r? `@notriddle`
2023-05-27Rollup merge of #111946 - nicklimmm:askama-item-template-trait, r=GuillaumeGomezMatthias Krüger-42/+61
rustdoc: Add `ItemTemplate` trait and related functions to avoid repetitively wrapping existing functions Context: https://github.com/rust-lang/rust/pull/111430#discussion_r1200672507 This trait will be used extensively in performing migrations to Askama templates (tracking issue: https://github.com/rust-lang/rust/issues/108868)
2023-05-27Rollup merge of #109084 - dekrain:fix-panic-arg0-expansion, r=petrochenkovMatthias Krüger-2/+11
rustc driver: Remove argument 0 before at-expansion to prevent ICE Under Unix-based operating systems, when I execute rustc by setting argv0 to ``@/dev/null`,` it will expand command-line arguments from this file, leading to an empty arglist, which then triggers an ICE by trying to remove first argument. The panic message is this: ``` thread 'main' panicked at 'range start index 1 out of range for slice of length 0', compiler/rustc_driver/src/lib.rs:972:17 ``` My fix is to remove the first argument before expanding arguments. <details> <summary>Full backtrace</summary> ```sh % (exec -a `@/dev/null` `rustup which rustc`) thread 'main' panicked at 'range start index 1 out of range for slice of length 0', compiler/rustc_driver/src/lib.rs:972:17 stack backtrace: 0: 0x7fcec776659a - std::backtrace_rs::backtrace::libunwind::trace::h595f06c70adcc478 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 1: 0x7fcec776659a - std::backtrace_rs::backtrace::trace_unsynchronized::h177a0149c76cdde9 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 2: 0x7fcec776659a - std::sys_common::backtrace::_print_fmt::hc0701fd2c3530c58 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/sys_common/backtrace.rs:65:5 3: 0x7fcec776659a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hd4cd115d8750fd6c at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/sys_common/backtrace.rs:44:22 4: 0x7fcec77c839e - core::fmt::write::h93e2f5923c7eca08 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/core/src/fmt/mod.rs:1213:17 5: 0x7fcec7756be5 - std::io::Write::write_fmt::h8162dbb45f0b9e62 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/io/mod.rs:1682:15 6: 0x7fcec7766365 - std::sys_common::backtrace::_print::h1835ef8a8f9066da at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/sys_common/backtrace.rs:47:5 7: 0x7fcec7766365 - std::sys_common::backtrace::print::hcb5e6388b9235f41 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/sys_common/backtrace.rs:34:9 8: 0x7fcec776912f - std::panicking::default_hook::{{closure}}::h9c084969ccf9a722 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:267:22 9: 0x7fcec7768e6b - std::panicking::default_hook::h68fa2ba3c3c6c12f at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:286:9 10: 0x7fcecaab56e4 - <rustc_driver[f4ad927b3c57833d]::DEFAULT_HOOK::{closure#0}::{closure#0} as core[d16e85342ea223d9]::ops::function::FnOnce<(&core[d16e85342ea223d9]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0} 11: 0x7fcec776996a - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h4e6ced11e07d8b24 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/alloc/src/boxed.rs:2002:9 12: 0x7fcec776996a - std::panicking::rust_panic_with_hook::h8d5c434518ef298c at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:692:13 13: 0x7fcec77696e9 - std::panicking::begin_panic_handler::{{closure}}::hf33414f5dabf6faf at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:579:13 14: 0x7fcec7766a4c - std::sys_common::backtrace::__rust_end_short_backtrace::hc50389427413bb75 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/sys_common/backtrace.rs:137:18 15: 0x7fcec77693f2 - rust_begin_unwind at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:575:5 16: 0x7fcec77c4d43 - core::panicking::panic_fmt::h2de7a7938f816de8 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/core/src/panicking.rs:64:14 17: 0x7fcec77cb492 - core::slice::index::slice_start_index_len_fail_rt::h0c87d85ce11d10f6 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/core/src/slice/index.rs:53:5 18: 0x7fcec77cb416 - core::slice::index::slice_start_index_len_fail::h504609f2a6b168d1 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/core/src/slice/index.rs:41:9 19: 0x7fceca0eca1f - rustc_driver[f4ad927b3c57833d]::handle_options 20: 0x7fceca0e037f - <rustc_driver[f4ad927b3c57833d]::RunCompiler>::run 21: 0x7fceca0dfd0d - <core[d16e85342ea223d9]::panic::unwind_safe::AssertUnwindSafe<rustc_driver[f4ad927b3c57833d]::main::{closure#0}> as core[d16e85342ea223d9]::ops::function::FnOnce<()>>::call_once 22: 0x7fceca17ce89 - rustc_driver[f4ad927b3c57833d]::main 23: 0x564f5f008a87 - rustc_main[f164605d1302e295]::main 24: 0x564f5f008973 - std[3da461b304582a2c]::sys_common::backtrace::__rust_begin_short_backtrace::<fn(), ()> 25: 0x564f5f008969 - <std[3da461b304582a2c]::rt::lang_start<()>::{closure#0} as core[d16e85342ea223d9]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 26: 0x7fcec774795c - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h699977d052768608 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/core/src/ops/function.rs:287:13 27: 0x7fcec774795c - std::panicking::try::do_call::h4e121e623c70f903 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:483:40 28: 0x7fcec774795c - std::panicking::try::hf9d919e062bc178a at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:447:19 29: 0x7fcec774795c - std::panic::catch_unwind::h7a7b12272684cb97 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panic.rs:140:14 30: 0x7fcec774795c - std::rt::lang_start_internal::{{closure}}::hd96b0eb4844b8762 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/rt.rs:148:48 31: 0x7fcec774795c - std::panicking::try::do_call::h1af1f88f4f92a22c at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:483:40 32: 0x7fcec774795c - std::panicking::try::hf20d7abea7f0f097 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panicking.rs:447:19 33: 0x7fcec774795c - std::panic::catch_unwind::hb0e084c3a9c042e4 at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/panic.rs:140:14 34: 0x7fcec774795c - std::rt::lang_start_internal::hca9d5c7277f5b67c at /rustc/2c8cc343237b8f7d5a3c3703e3a87f2eb2c54a74/library/std/src/rt.rs:148:20 35: 0x564f5f008ab7 - main 36: 0x7fcec74a1790 - <unknown> 37: 0x7fcec74a184a - __libc_start_main 38: 0x564f5f00899e - <unknown> 39: 0x0 - <unknown> error: internal compiler error: unexpected panic note: the compiler unexpectedly panicked. this is a bug. note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md note: rustc 1.68.0 (2c8cc3432 2023-03-06) running on x86_64-unknown-linux-gnu query stack during panic: end of query stack ``` </details> I also checked if I can trigger a similar problem by passing empty argument list to `execve`, but at least under Linux, it seems to always insert an empty first argument if there are none.
2023-05-27Fix ICE caused by at-expanding argument 0 instead of removing it earlydekrain-2/+11
2023-05-27Auto merge of #110975 - Amanieu:panic_count, r=joshtriplettbors-32/+53
Rework handling of recursive panics This PR makes 2 changes to how recursive panics works (a panic while handling a panic). 1. The panic count is no longer used to determine whether to force an immediate abort. This allows code like the following to work without aborting the process immediately: ```rust struct Double; impl Drop for Double { fn drop(&mut self) { // 2 panics are active at once, but this is fine since it is caught. std::panic::catch_unwind(|| panic!("twice")); } } let _d = Double; panic!("once"); ``` Rustc already generates appropriate code so that any exceptions escaping out of a `Drop` called in the unwind path will immediately abort the process. 2. Any panics while the panic hook is executing will force an immediate abort. This is necessary to avoid potential deadlocks like #110771 where a panic happens while holding the backtrace lock. We don't even try to print the panic message in this case since the panic may have been caused by `Display` impls. Fixes #110771
2023-05-27Add support for nested panics to miriAmanieu d'Antras-32/+53
2023-05-27Clean up usage of `cx.tcx` when `tcx` is already set into a variableGuillaume Gomez-43/+39
2023-05-27Rollup merge of #112014 - notriddle:notriddle/intra-doc-weird-syntax, ↵Guillaume Gomez-71/+223
r=GuillaumeGomez,fmease rustdoc: get unnormalized link destination for suggestions Fixes #110111 This bug, and the workaround in this PR, is closely linked to [raphlinus/pulldown-cmark#441], getting offsets of link components. In particular, pulldown-cmark doesn't provide the offsets of the contents of a link. To work around this, rustdoc parser parts of a link definition itself. [raphlinus/pulldown-cmark#441]: https://github.com/raphlinus/pulldown-cmark/issues/441
2023-05-27Rollup merge of #111997 - GuillaumeGomez:re-export-doc-hidden-macros, ↵Guillaume Gomez-2/+19
r=notriddle Fix re-export of doc hidden macro not showing up It's part of the follow-up of https://github.com/rust-lang/rust/pull/109697. Re-exports of doc hidden macros should be visible. It was the only kind of re-export of doc hidden item that didn't show up. r? `@notriddle`
2023-05-27Rollup merge of #111936 - ferrocene:pa-test-suite-metadata, r=jyn514Guillaume Gomez-24/+144
Include test suite metadata in the build metrics This PR enhances the build metadata to include structured information about the test suites being executed, allowing external tools consuming the metadata to understand what was being tested. The included metadata is: * Target triple * Host triple * Stage number * For compiletest tests: * Suite name * Mode * Comparing mode * For crate tests: * List of crate names This is implemented by replacing the `test` JSON node with a new `test_suite` node, which contains the metadata and the list of tests. This change also improves the handling of multiple test suites executed in the same step (for example in compiletest tests with a compare mode), as the multiple test suite executions will now be tracked in separate `test_suite` nodes. This included a breaking change in the build metrics metadata format. To better handle this, in the second commit this PR introduces the `metadata_version` top-level field. The old version is considered to be `0`, while the new one `1`. Bootstrap will also gracefully handle existing metadata of a different version. r? `@jyn514`
2023-05-27Auto merge of #111348 - ozkanonur:remove-hardcoded-rustdoc-flags, ↵bors-1225/+1412
r=albertlarsan68,oli-obk new tool `rustdoc-gui-test` Implements new tool `rustdoc-gui-test` that allows using compiletest headers for `rustdoc-gui` tests.
2023-05-26rustdoc: get unnormalized link destination for suggestionsMichael Howell-71/+223
Fixes #110111 This bug, and the workaround in this commit, is closely linked to [raphlinus/pulldown-cmark#441], getting offsets of link components. In particular, pulldown-cmark doesn't provide the offsets of the contents of a link. To work around this, rustdoc parser parts of a link definition itself. [raphlinus/pulldown-cmark#441]: https://github.com/raphlinus/pulldown-cmark/issues/441
2023-05-27Correctly handle multiple re-exports of bang macros at the same levelGuillaume Gomez-3/+9
2023-05-27Rollup merge of #111977 - jyn514:doc-errors, r=est31Matthias Krüger-2/+2
Make errors from `x doc` less verbose before: ``` error: could not document `bootstrap` Caused by: process didn't exit successfully: `/home/jyn/src/rust/build/bootstrap/debug/rustdoc ... --crate-version '1.71.0 (eb9da7bfa 2023-05-25) (a long description goes here)' --document-private-items --enable-index-page --show-type-layout --generate-link-to-definition -Zunstable-options` (exit status: 1) ``` after: ``` error: could not document `bootstrap` Caused by: process didn't exit successfully: `/home/jyn/src/rust/build/bootstrap/debug/rustdoc ... --crate-version '1.71.0 (eb9da7bfa 2023-05-25) (a long description goes here)' --document-private-items --enable-index-page --show-type-layout --generate-link-to-definition -Zunstable-options` (exit status: 1) ```
2023-05-27Rollup merge of #111976 - jyn514:doc-bootstrap, r=ozkanonurMatthias Krüger-4/+12
Generate docs for bootstrap itself This verifies the intra-doc links are correct, and hopefully makes things easier for new contributors. Note that this will conflict with https://github.com/rust-lang/rust/pull/111955, i'm pretty sure i typo-ed some of the intra-doc links lol
2023-05-27Rollup merge of #111927 - sladyn98:item-static, r=GuillaumeGomezMatthias Krüger-5/+9
Migrate `item_static` to Askama This pull request addresses the type signature of the item_static function in our codebase. Previously, this function accepted a mutable reference to a Buffer for writing output. The current changes modify this to instead accept a mutable reference to any type that implements the Write trait. Referes https://github.com/rust-lang/rust/issues/108868
2023-05-26Fix re-export of doc hidden macro not showing upGuillaume Gomez-1/+12
2023-05-26add reasoning for introducing a metrics format versionPietro Albini-3/+15
2023-05-26rename metadata_version to format_versionPietro Albini-10/+9
The new name is more accurate.
2023-05-26Make errors from `x doc` less verbosejyn-2/+2
before: ``` error: could not document `bootstrap` Caused by: process didn't exit successfully: `/home/jyn/src/rust/build/bootstrap/debug/rustdoc ... --crate-version '1.71.0 (eb9da7bfa 2023-05-25) (a long description goes here)' --document-private-items --enable-index-page --show-type-layout --generate-link-to-definition -Zunstable-options` (exit status: 1) ``` after: ``` error: could not document `bootstrap` Caused by: process didn't exit successfully: `/home/jyn/src/rust/build/bootstrap/debug/rustdoc ... --crate-version '1.71.0 (eb9da7bfa 2023-05-25) (a long description goes here)' --document-private-items --enable-index-page --show-type-layout --generate-link-to-definition -Zunstable-options` (exit status: 1) ```
2023-05-26Auto merge of #111562 - clubby789:speedup-bootstrap-py, r=jyn514bors-49/+44
Improve startup time of bootstrap ~~If the user has a `build/host` symlink set up, we can determine the target triple by reading it rather than invoking rustc. This significantly reduces startup time of bootstrap once any kind of build has been done~~ New approach explained below ``` ➜ hyperfine -p 'git checkout -q master' -N './x.py -h' -r 50 Benchmark 1: ./x.py -h Time (mean ± σ): 140.7 ms ± 2.6 ms [User: 99.9 ms, System: 39.3 ms] Range (min … max): 136.8 ms … 149.6 ms 50 runs ➜ rust git:(master) hyperfine -p 'git checkout -q speedup-bootstrap-py' -N './x.py -h' -r 50 Benchmark 1: ./x.py -h Time (mean ± σ): 95.2 ms ± 1.5 ms [User: 67.7 ms, System: 26.7 ms] Range (min … max): 92.9 ms … 99.6 ms 50 runs ``` Also a small microoptimisation in using string splitting rather than regex when reading toml, which saves a few more milliseconds (2-5 testing locally), but less important. Profiling shows the remaining runtime is around half setting up the Python runtime, and the vast majority of the remaining time is spent in subprocess building and running bootstrap itself, so probably can't be improved much further.
2023-05-26Improve startup time for bootstrap.pyclubby789-49/+44
2023-05-26Formatted file correctlysladynnunes-1/+0
2023-05-26Fixed testssladynnunes-4/+9
2023-05-26Fix failing CIsladynnunes-1/+1
2023-05-26address review feedbackPietro Albini-7/+5
2023-05-26Auto merge of #111858 - clubby789:fluent-alphabetical, r=jyn514,compiler-errorsbors-0/+74
Ensure Fluent messages are in alphabetical order Fixes #111847 This adds a tidy check to ensure Fluent messages are in alphabetical order, as well as sorting all existing messages. I think the error could be worded better, would appreciate suggestions. <details> <summary>Script used to sort files</summary> ```py import sys import re fn = sys.argv[1] with open(fn, 'r') as f: data = f.read().split("\n") chunks = [] cur = "" for line in data: if re.match(r"^([a-zA-Z0-9_]+)\s*=\s*", line): chunks.append(cur) cur = "" cur += line + "\n" chunks.append(cur) chunks.sort() with open(fn, 'w') as f: f.write(''.join(chunks).strip("\n\n") + "\n") ``` </details>
2023-05-25Generate docs for bootstrap itselfjyn-4/+12
This verifies the intra-doc links are correct, and hopefully makes things easier for new contributors.
2023-05-25Ensure Fluent messages are in alphabetical orderclubby789-0/+74
2023-05-25Rollup merge of #111950 - cjgillot:expn-noinline, r=oli-obkMichael Goulet-5/+8
Remove ExpnKind::Inlined. Suggested in https://github.com/rust-lang/rust/pull/111815#issuecomment-1561903339 r? ``@oli-obk``
2023-05-25Rollup merge of #111152 - lukas-code:markdown-parsers-are-hard, r=GuillaumeGomezMichael Goulet-3/+3
update `pulldown-cmark` to `0.9.3` This PR updates `pulldown-cmark` to version `0.9.3`, which does two main things: * Pulls in https://github.com/raphlinus/pulldown-cmark/pull/643 to fix https://github.com/rust-lang/rust/issues/111117 * Allows parsing strikethrough with single tildes, e.g. `~foo~` -> ~foo~. This matches the [GFM spec](https://github.github.com/gfm/#strikethrough-extension-). Full changelog: https://github.com/raphlinus/pulldown-cmark/pull/646
2023-05-25Auto merge of #86844 - bjorn3:global_alloc_improvements, r=pnkfelixbors-38/+51
Support #[global_allocator] without the allocator shim This makes it possible to use liballoc/libstd in combination with `--emit obj` if you use `#[global_allocator]`. This is what rust-for-linux uses right now and systemd may use in the future. Currently they have to depend on the exact implementation of the allocator shim to create one themself as `--emit obj` doesn't create an allocator shim. Note that currently the allocator shim also defines the oom error handler, which is normally required too. Once `#![feature(default_alloc_error_handler)]` becomes the only option, this can be avoided. In addition when using only fallible allocator methods and either `--cfg no_global_oom_handling` for liballoc (like rust-for-linux) or `--gc-sections` no references to the oom error handler will exist. To avoid this feature being insta-stable, you will have to define `__rust_no_alloc_shim_is_unstable` to avoid linker errors. (Labeling this with both T-compiler and T-lang as it originally involved both an implementation detail and had an insta-stable user facing change. As noted above, the `__rust_no_alloc_shim_is_unstable` symbol requirement should prevent unintended dependence on this unstable feature.)
2023-05-25Manually add inlined frames in the interpreter stacktrace.Camille GILLOT-5/+8
2023-05-25Auto merge of #111512 - petrochenkov:microdoc2, r=GuillaumeGomezbors-84/+51
rustdoc: Cleanup doc string collapsing `doc_value` and (former) `collapsed_doc_value` can be implemented in terms of each other, and `doc_value` doesn't need the `Option`. This PR doesn't do any semantic changes, only refactoring, although some pre-existing choices between `doc_value` and `collapsed_doc_value` across rustdoc may be questionable.
2023-05-25rustdoc book: document single tilde strikethroughLukas Markeffsky-3/+3
2023-05-25Add `ItemTemplate` traitNicky Lim-42/+61
2023-05-25Auto merge of #110906 - ekusiadadus:ekusiadadus/fix-bash-complete-etc, ↵bors-1/+5
r=albertlarsan68 fix: :bug: etc/bash_complettion -> src/etc/... to avoid copy error ## why I got an error on executing `./x.py build && ./x.py install`. Found creating some folder in `/etc/bash_completion.d/`, It appears to be incorrect to attempt to create a folder in `/etc/bash_completion.d/`, as this proccess requires `sudo`. Fixes #111653 ``` Uplifting rustc (stage1 -> stage3) Building tool cargo (stage2 -> stage3, x86_64-unknown-linux-gnu) Finished release [optimized] target(s) in 0.16s Building tool cargo-credential-1password (stage2 -> stage3, x86_64-unknown-linux-gnu) Finished release [optimized] target(s) in 0.06s Dist cargo-1.71.0-dev-x86_64-unknown-linux-gnu finished in 10.700 seconds Installing stage2 cargo (x86_64-unknown-linux-gnu) install: uninstalling component 'cargo' install: creating uninstall script at /home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/uninstall.sh install: installing component 'cargo' /home/ekusiadadus/dev/rust/rust/build/tmp/tarball/cargo/x86_64-unknown-linux-gnu/cargo-1.71.0-dev-x86_64-unknown-linux-gnu/install.sh: 310: cd: can't cd to /etc/bash_completion.d cp: cannot create regular file '/cargo': Permission denied chmod: cannot access '/cargo': No such file or directory install: error: file creation failed. see logs at '/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/install.log' Build completed unsuccessfully in 0:01:11 ``` Error Log ``` install: uninstalling component 'cargo' install: removing file /home/ekusiadadus/.rustup/toolchains/dev/bin/cargo $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/bin/cargo install: removing file /home/ekusiadadus/.rustup/toolchains/dev/libexec/cargo-credential-1password $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/libexec/cargo-credential-1password install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/LICENSE-APACHE $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/LICENSE-APACHE install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/LICENSE-MIT $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/LICENSE-MIT install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/LICENSE-THIRD-PARTY $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/LICENSE-THIRD-PARTY install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/README.md $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/doc/rust/README.md install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-add.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-add.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-bench.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-bench.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-build.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-build.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-check.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-check.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-clean.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-clean.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-doc.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-doc.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-fetch.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-fetch.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-fix.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-fix.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-generate-lockfile.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-generate-lockfile.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-help.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-help.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-init.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-init.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-install.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-install.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-locate-project.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-locate-project.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-login.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-login.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-logout.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-logout.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-metadata.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-metadata.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-new.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-new.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-owner.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-owner.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-package.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-package.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-pkgid.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-pkgid.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-publish.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-publish.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-remove.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-remove.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-report.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-report.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-run.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-run.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-rustc.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-rustc.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-rustdoc.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-rustdoc.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-search.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-search.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-test.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-test.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-tree.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-tree.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-uninstall.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-uninstall.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-update.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-update.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-vendor.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-vendor.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-verify-project.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-verify-project.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-version.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-version.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-yank.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo-yank.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo.1 $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/man/man1/cargo.1 install: removing file /home/ekusiadadus/.rustup/toolchains/dev/share/zsh/site-functions/_cargo $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/share/zsh/site-functions/_cargo install: removing file /home/ekusiadadus/.rustup/toolchains/dev/src/etc/bash_completion.d/cargo $ rm -f /home/ekusiadadus/.rustup/toolchains/dev/src/etc/bash_completion.d/cargo install: removing component manifest /home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/manifest-cargo $ rm /home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/manifest-cargo $ echo "rust-analyzer-preview rustfmt-preview rust-demangler-preview clippy-preview miri-preview llvm-tools-preview rust-src rustc rust-docs rust-std-x86_64-unknown-linux-gnu" > "/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/components" $ umask 022 && mkdir -p "/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib" $ echo "3" > "/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/rust-installer-version" install: creating uninstall script at /home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/uninstall.sh $ cp /home/ekusiadadus/dev/rust/rust/build/tmp/tarball/cargo/x86_64-unknown-linux-gnu/cargo-1.71.0-dev-x86_64-unknown-linux-gnu/install.sh /home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/uninstall.sh install: installing component 'cargo' $ echo "cargo" >> "/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/components" $ umask 022 && mkdir -p "/home/ekusiadadus/.rustup/toolchains/dev/bin" install: copying file /home/ekusiadadus/.rustup/toolchains/dev/bin/cargo $ cp /home/ekusiadadus/dev/rust/rust/build/tmp/tarball/cargo/x86_64-unknown-linux-gnu/cargo-1.71.0-dev-x86_64-unknown-linux-gnu/cargo/bin/cargo /home/ekusiadadus/.rustup/toolchains/dev/bin/cargo $ chmod 755 /home/ekusiadadus/.rustup/toolchains/dev/bin/cargo $ echo "file:/home/ekusiadadus/.rustup/toolchains/dev/bin/cargo" >> "/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/manifest-cargo" $ umask 022 && mkdir -p "/etc/bash_completion.d" install: copying file /cargo $ cp /home/ekusiadadus/dev/rust/rust/build/tmp/tarball/cargo/x86_64-unknown-linux-gnu/cargo-1.71.0-dev-x86_64-unknown-linux-gnu/cargo/etc/bash_completion.d/cargo /cargo $ chmod 644 /cargo install: error: file creation failed. see logs at '/home/ekusiadadus/.rustup/toolchains/dev/lib/rustlib/install.log' ```
2023-05-25introduce build metrics version numbers to handle breaking changesPietro Albini-2/+31
2023-05-25include test suite metadata in build metricsPietro Albini-22/+104
2023-05-25fix: :bug: etc/bash_complettion -> src/etc/... to avoid copy errorekusiadadus-1/+5
chore: :art: format dist.rs