Commit graph

142103 commits

Author SHA1 Message Date
Takayuki Maeda
019f43e6c2
Rollup merge of #113028 - fmease:rustdoc-x-crate-itiap-clean-term, r=notriddle
rustdoc: handle assoc const equalities in cross-crate impl-Trait-in-arg-pos

Fixes FIXME (the added test previously lead to an ICE).

`@rustbot` label A-cross-crate-reexports
2023-06-26 01:50:28 +09:00
Takayuki Maeda
96ab7e6ed7
Rollup merge of #112281 - jyn514:test-bootstrap-py, r=albertlarsan68
Test the cargo args generated by bootstrap.py

I recommend reviewing this commit-by-commit using the instructions in https://rustc-dev-guide.rust-lang.org/git.html#moving-large-sections-of-code.

- Test cargo arguments passed by bootstrap.py

  This moves a lot of code around, but the logic itself is not too terribly complicated.

    - Move almost all logic in `def bootstrap` to the `RustBuild` class, to avoid mixing setting configuration with running commands
    - Update various doctests to the new (more complete) RustBuild config. In particular, don't pretend that `bin_root` supports `build` being unset.
    - Change `parse_args` not to use a global, to allow testing it
    - Set BUILD_DIR appropriately so bootstrap.py doesn't panic because cargo isn't found

- Allow passing arguments to `bootstrap_test.py`

    Previous, it used the built-in test runner, which doesn't support options unless they're manually passed in the script.

- Fix progress messages for configure in bootstrap_test.py

    Before it would unconditionally print `configure-args = []`.

r? `@albertlarsan68` cc https://github.com/rust-lang/rust/pull/112089 https://github.com/rust-lang/rust/pull/111979#issuecomment-1568525699
2023-06-26 01:50:27 +09:00
jyn
1e7f03718b fix some bugs
- fix tests when `--build` is set
- don't leak `config.example.toml` fd
- don't crash if `config.toml` doesn't exist yet
2023-06-25 10:01:04 -05:00
León Orell Valerian Liehr
247aa06f10
rustdoc: handle assoc const equalities in cross-crate impl-Trait-in-arg-pos 2023-06-25 15:42:32 +02:00
bors
c51fbb3dd3 Auto merge of #113001 - ChrisDenton:win-arm32-shim, r=thomcc
Move windows-sys arm32 shim to c.rs

This moves the arm32 shim in to c.rs instead of appending to the generated file itself.

This makes it simpler to change these workarounds if/when needed. The downside is we need to exclude a couple of functions from being generated (see the comment). A metadata solution could help here but they'll be easy enough to add back if that happens.
2023-06-25 11:27:19 +00:00
Guillaume Gomez
fb98925b8c
Rollup merge of #112918 - zephaniahong:issue-107077-fix, r=Mark-Simulacrum
display PID of process holding lock

Displays PID of process holding lock when trying to run multiple instances of x.py
2023-06-25 10:46:14 +02:00
bors
3c5d71a99d Auto merge of #112476 - chenyukang:yukang-fix-109991, r=compiler-errors
Do not emit coerce_suggestions for expr from destructuring assignment desugaring

Fixes #109991
2023-06-25 04:45:52 +00:00
yukang
33f73c2e93 Do not offer any of the suggestions in emit_coerce_suggestions for expr from destructuring assignment desugaring 2023-06-25 09:26:17 +08:00
Matthias Krüger
85a7bb47e4
Rollup merge of #113008 - jyn514:new-contributor-improvements, r=clubby789
Move some docs from the README to the dev-guide

and as a drive-by cleanup, improve the error message for `x test tidy` when a feature gate is missing.

This also improves the error message you get on Windows if python isn't installed.

cc https://github.com/rust-lang/libs-team/issues/242#issuecomment-1597558557, https://github.com/rust-lang/rustc-dev-guide/pull/1701
2023-06-25 02:04:21 +02:00
Matthias Krüger
8816f9ee1e
Rollup merge of #112937 - camelid:align-typenames, r=notriddle,GuillaumeGomez
rustdoc: Align search results horizontally for easy scanning

The recent PR #110688 added info about an item's kind before its name in
search results. However, because the kind and name are inline with no
alignment, it's now hard to visually scan downward through the search
results, looking at item names. This PR fixes that by horizontally
aligning search results such that there are now two columns of
information.

r? `@GuillaumeGomez`
2023-06-25 02:04:20 +02:00
Guillaume Gomez
6b337684ed
Rollup merge of #113002 - camelid:bootstrap-settings.bak, r=jyn514
bootstrap: Backup `settings.json` to the correct filename

The old code actually replaced `.json` with `.bak` (so, `settings.bak`),
rather than appending `.bak` as claimed (`settings.json.bak`).

`Path::set_extension` can instead be used with dots:

> The new extension may contain dots and will be used in its entirety,
> but only the part after the final dot will be reflected in
> `self.extension`.

r? ``@jyn514``
2023-06-24 20:26:46 +02:00
Guillaume Gomez
530516f81c
Rollup merge of #112915 - preveen-stack:patch-1, r=Mark-Simulacrum
Update runtests.py : grammar correction

- Grammatically corrected the sentence
2023-06-24 20:26:45 +02:00
Guillaume Gomez
6d3d775dc6
Rollup merge of #112912 - joshtriplett:style-let-else-clarifications, r=calebcartwright
style-guide: Rewrite let-else section for clarity, without changing formatting

The section as written did not cover all cases, and left some of them
implicit. Rewrite it to systematically cover all cases. Place examples
immediately following the corresponding case.

In the process, reorder to move the simplest cases first: start with
single-line and add progressively more line breaks.

This does not change the meaning of the section at all, and in
particular does not change the defined style for let-else statements.
2023-06-24 20:26:44 +02:00
jyn
dd314f6533 give more helpful suggestions for a missing feature gate test 2023-06-24 13:05:21 -05:00
Noah Lev
ce326918ec bootstrap: Backup settings.json to the correct filename
The old code actually replaced `.json` with `.bak` (so, `settings.bak`),
rather than appending `.bak` as claimed (`settings.json.bak`).

`Path::set_extension` can instead be used with dots:

> The new extension may contain dots and will be used in its entirety,
> but only the part after the final dot will be reflected in
> self.extension.
2023-06-24 10:23:46 -07:00
Chris Denton
8a7399cd45
Move arm32 shim to c.rs 2023-06-24 17:30:27 +01:00
jyn
24e67d51a0 Don't test the profile override hack
It generates invalid TOML. I want to get rid of it eventually, but this avoids the issue in the meantime.
2023-06-24 09:40:22 -05:00
jyn
c7af6fb5b8 Test color/verbose/warnings properly
These weren't being passed in to bootstrap consistently before; in particular `serialize_and_parse` forgot to pass them in.
2023-06-23 21:13:36 -05:00
jyn
c5820b50c5 Test cargo arguments passed by bootstrap.py
This moves a lot of code around, but the logic itself is not too terribly complicated.

- Move almost all logic in `def bootstrap` to the `RustBuild` class, to avoid mixing setting configuration with running commands
- Update various doctests to the new (more complete) RustBuild config. In particular, don't pretend that `bin_root` supports `build` being unset.
- Change `parse_args` not to use a global, to allow testing it
- Set BUILD_DIR appropriately so bootstrap.py doesn't panic because cargo isn't found
2023-06-23 21:13:36 -05:00
jyn
3508cde815 Allow passing arguments to bootstrap_test.py
Previous, it used the built-in test runner, which doesn't support options unless they're manually passed in the script.
2023-06-23 21:13:34 -05:00
jyn
7d2373e48f Fix progress messages for configure in bootstrap_test.py
Before it would unconditionally print `configure-args = []`.
2023-06-23 21:12:06 -05:00
Weihang Lo
4246e5079e
Update cargo 2023-06-24 01:38:42 +01:00
Noah Lev
5f433f33ed Reduce typename width to 6.25rem
This makes "existential type" look slightly cramped (though still
readable), but it makes all other typenames look better. Existential
types are currently very rare, and we can always tweak this later if
necessary.
2023-06-23 12:02:55 -07:00
Matthias Krüger
9d7f297f3c
Rollup merge of #112962 - GuillaumeGomez:fix-rustdoc-gui-tester, r=ozkanonur
Fix rustdoc gui tester

Problem was that the `main` was always exiting with `0`, whether or not there was an error. It led to failing GUI tests being ignored in the CI since no one saw them.

r? ````@klensy````
2023-06-23 19:40:01 +02:00
Matthias Krüger
4821f80716
Rollup merge of #112960 - GuillaumeGomez:rustdoc-files-check, r=notriddle
[tests/rustdoc] Add @files command

The ``````@!has`````` checks is very problematic as it wouldn't catch if the file scheme is updated and the file is generated again. ``````@files`````` allows to ensure that the given folder contains exactly the provided entries (files and folders).

I'm wondering if we should forbid the ``````@!has`````` for files. To be discussed after this PR I suppose.

r? `````@notriddle`````
2023-06-23 19:40:00 +02:00
Matthias Krüger
4e8983050e
Rollup merge of #112870 - compiler-errors:clause-2, r=oli-obk
Migrate `item_bounds` to `ty::Clause`

Should be simpler than the next PR that's coming up. Last three commits are the relevant ones.

r? ``@oli-obk`` or ``@lcnr``
2023-06-23 19:39:59 +02:00
Matthias Krüger
afe337d2f1
Rollup merge of #112740 - GuillaumeGomez:link-to-search-chapter, r=notriddle
Add link to rustdoc book search chapter in help popover

One thing that was missing in the rustdoc output and its help popover was a link back to the search feature chapter in the rustdoc book.

It looks like this:

![image](https://github.com/rust-lang/rust/assets/3050060/425413e5-e734-4d40-b675-8b2dcef874a2)

r? `@notriddle`
2023-06-23 19:39:58 +02:00
Noah Lev
12de5b7ff3 Make typenames a bit wider to support "existential type" 2023-06-23 10:12:27 -07:00
Noah Lev
c4fca7202b Abbreviate long typenames so they don't get wrapped in results 2023-06-23 09:51:53 -07:00
Guillaume Gomez
7b5577985d Make try_run return a Result<(), ()> instead of a boolean 2023-06-23 17:07:34 +02:00
Guillaume Gomez
2f1939ab8b Link to the corresponding channel in the help popover 2023-06-23 16:32:55 +02:00
Guillaume Gomez
2f3bed0c4c Add link to rustdoc book search chapter in help popover 2023-06-23 15:58:10 +02:00
Guillaume Gomez
616469aa8a Fix rustdoc-gui tester 2023-06-23 15:50:20 +02:00
Guillaume Gomez
65a7047ee4 Add @files command 2023-06-23 15:12:48 +02:00
Matthias Krüger
8d6b02fb3b
Rollup merge of #112944 - joshtriplett:style-guide-defaults-vs-configurability, r=compiler-errors
style-guide: Add language disclaiming any effects on non-default Rust styles

Make it clear that the style guide saying "must" doesn't forbid
developers from doing differently (as though any power on this Earth
could do that) and doesn't forbid tools from allowing any particular
configuration options.

Otherwise, people might wonder (for instance) if there's a semantic difference
between "must" and "should" in the style guide, and whether tools are "allowed"
to offer configurability of something that says "must".
2023-06-23 13:18:16 +02:00
Matthias Krüger
441e59ad6c
Rollup merge of #112942 - joshtriplett:style-guide-tweaks, r=compiler-errors
style-guide: Organizational and editing tweaks (no semantic changes)

I'd recommend reviewing this PR commit-by-commit; each commit is self-contained
and should be easy to review at a glance.

- style-guide: Move text about block vs visual indent to indentation section
- style-guide: Move and expand text about trailing commas
- style-guide: s/right-ward/rightward/
- style-guide: Consistently refer to rustfmt as `rustfmt`
- style-guide: Remove inaccurate statement about rustfmt
- style-guide: Define (and capitalize) "ASCIIbetically"
- style-guide: Update cargo.md for authors being optional and not recommended
- style-guide: Avoid normative recommendations for formatting tool configurability
- style-guide: Clarify advice on names matching keywords
- style-guide: Reword an awkwardly phrased recommendation (and fix a typo)
- style-guide: Rephrase a confusingly ordered, ambiguous sentence (and fix a typo)
- style-guide: Avoid hyphenating "semicolon"
- style-guide: Make link text in SUMMARY.md match the headings in the linked pages
- style-guide: Define what an item is
- style-guide: Avoid referring to the style team in the past tense
2023-06-23 13:18:15 +02:00
Matthias Krüger
61e881ede3
Rollup merge of #112935 - joshtriplett:style-guide-typo-fix, r=compiler-errors
style-guide: Fix typo

"does done fit" should have been "does not fit".
2023-06-23 13:18:14 +02:00
Matthias Krüger
3feee9f1f2
Rollup merge of #112927 - GuillaumeGomez:where-clause-indent, r=notriddle
Fix indentation for where clause in rustdoc pages

Screenshot of the bug:

![image](https://github.com/rust-lang/rust/assets/3050060/090cfeaa-0edc-46c7-9ea0-e26ac865b2c2)

I used this opportunity to clarify the code a bit because some weird things were going on.

r? ````@notriddle````
2023-06-23 13:18:13 +02:00
Zephaniah Ong
e7e584b7d9 display pid of process holding lock 2023-06-23 15:09:09 +08:00
Josh Triplett
2748efaba3 style-guide: Add language disclaiming any effects on non-default Rust styles
Make it clear that the style guide saying "must" doesn't forbid
developers from doing differently (as though any power on this Earth
could do that) and doesn't forbid tools from allowing any particular
configuration options.
2023-06-22 14:44:33 -07:00
Josh Triplett
fcc23a3bfd style-guide: Avoid referring to the style team in the past tense
We live!
2023-06-22 14:06:43 -07:00
Josh Triplett
f972e09f76 style-guide: Define what an item is 2023-06-22 14:06:43 -07:00
Josh Triplett
5d637219e4 style-guide: Make link text in SUMMARY.md match the headings in the linked pages 2023-06-22 14:02:52 -07:00
Josh Triplett
a9d1db3145 style-guide: Avoid hyphenating "semicolon" 2023-06-22 14:02:52 -07:00
Josh Triplett
3e2449c2b1 style-guide: Rephrase a confusingly ordered, ambiguous sentence (and fix a typo)
This sentence had a parenthetical without a closing parenthesis, and had
the phrase "which doesn't require special formatting" ambiguously at the
end of a list when it only applied to the last item of the list.
2023-06-22 14:02:52 -07:00
Josh Triplett
c930b21bcd style-guide: Reword an awkwardly phrased recommendation (and fix a typo) 2023-06-22 14:02:52 -07:00
Josh Triplett
fec28b26b5 style-guide: Clarify advice on names matching keywords
In particular, specify what this advice is an alternative to (creative
misspellings such as `krate`).
2023-06-22 13:22:44 -07:00
Josh Triplett
6f8f83f66d style-guide: Avoid normative recommendations for formatting tool configurability
It's not within the scope of the style guide to tell formatting tools
whether, or how, to allow configurability of non-default formatting.
2023-06-22 13:19:05 -07:00
Josh Triplett
20f2828bbd style-guide: Update cargo.md for authors being optional and not recommended
Change an example using the authors field to use a long feature list instead.

Change the conventions for the authors field to say "if present".
2023-06-22 13:13:48 -07:00
Josh Triplett
c5f8b2c7a9 style-guide: Define (and capitalize) "ASCIIbetically"
The style guide didn't give any definition for it.
2023-06-22 13:02:24 -07:00