| Age | Commit message (Collapse) | Author | Lines |
|
[stable]: Prepare the 1.25.0 stable release
|
|
|
|
[beta] A few final backports
Backport of
* https://github.com/rust-lang/rust/pull/48782
* https://github.com/rust-lang/rust/pull/49273
|
|
|
|
This pulls in the rest of LLVM's `release_60` branch (the actual 6.0.0 release)
and also pulls in a cherry-pick to...
Closes #48226
|
|
[beta] Update RLS
r? @alexcrichton
Update the RLS on beta - the version currently on beta is particularly flakey and I don't want it to hit stable. This is the version currently on nightly (modulo Cargo updates) and seems a lot more stable.
We don't need to roll out a beta release just for this - I don't think the RLS has many beta users.
|
|
|
|
The former seems much more stable, in case the cache becomes invalidated.
|
|
|
|
[beta] FreeBSD beta fixes
r? @alexcrichton
r? @Mark-Simulacrum
|
|
Same problem as OpenBSD, tracking bug #43575.
Backport from #48494
|
|
CC #42681
|
|
[beta] rustbuild: pass datadir to rust-installer
Backport from #48295
|
|
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
|
|
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
|
|
[beta] backport #48181 and #48362
None
|
|
|
|
This re-introduces a `Config.libdir_relative` field, now derived from
`libdir` and made relative to `prefix` if necessary.
This fixes a regression from #46592 when `--libdir` is given an absolute
path. `Builder::sysroot_libdir` should always use a relative path so
its callers don't clobber system locations, and `librustc` also asserts
that `CFG_LIBDIR_RELATIVE` is really relative.
|
|
|
|
[beta] Remove allocation from width of character function.
Backport of #48167
r? @Mark-Simulacrum
|
|
|
|
[beta] properly run doctests in standalone markdown files with pulldown
This is a beta-specific fix for https://github.com/rust-lang/rust/issues/48327, since a different fix landed in nightly (https://github.com/rust-lang/rust/pull/48274) that is infeasible to backport.
The nature of the issue was that when running doctests on standalone Markdown files, rustdoc names the tests based on the headings in the files. Therefore, with the following `a.md`:
``````markdown
# My Cool Library
This is my cool library!
## Examples
Here's some cool code samples!
```rust
assert_eq!(2+2, 4);
```
``````
Running this file with `rustdoc --test a.md` would show a test named `a.md - my_cool_library::examples (line 9)`. So far, this works just fine between Hoedown and Pulldown. But it gets murkier when you introduce markup into your headings. Consider the following `b.md`:
``````markdown
# My Cool Library
This is my cool library!
## `libcool`
```rust
assert_eq!(2+2, 4);
```
``````
The code surrounding the different renderers handles this differently. Pulldown handles just the first `Text` event after seeing the header, so it names the test `b.md - my_cool_library::libcool (line 9)`. Hoedown, on the other hand, takes all the test within the heading, which Hoedown renders before handing to library code. Therefore, it will name the test `b.md - my_cool_library::_code_libcool__code_ (line 9)`. (Somewhere between rustdoc and libtest, the `</>` characters are replaced with underscores.)
This causes a problem with another piece of code: The one that checks for whether Pulldown detected a code block that Hoedown didn't. The test collector groups the "old tests" listing by the full test name, but it *inserts* with the Hoedown name, and *searches* for the Pulldown name! This creates a situation where when `b.md` from above is run, it can't find a matching test from the ones Hoedown extracted, so it discards it and emits a warning.
On nightly, this has been fixed by... ditching Hoedown entirely. This also removed the code that tracked the different test listings, and made it run the test anyway. Since backporting the Hoedown removal is infeasible (i'm personally relying on the change to ride the trains to give the stabilization enough time to complete), this instead chooses to group the test by the filename, instead of the full test name as before. This means that the test extractor finds the test properly, and properly runs the test.
|
|
[beta] Backport "Fix rustdoc test ICE"
https://github.com/rust-lang/rust/pull/48382
|
|
[beta] backport cargo TLS warning for win7
https://github.com/rust-lang/cargo/pull/5069
r? @alexcrichton
|
|
https://github.com/rust-lang/cargo/pull/5069
|
|
[beta] temporarily disable rust-lang/rust#46833 due to rust-lang/rust#48251
see also https://github.com/rust-lang/rust/pull/48378
r? @Mark-Simulacrum
|
|
[beta] Encode linker arguments as UTF-16 on MSVC platforms
r? @alexcrichton
|
|
|
|
|
|
|
|
|
|
[beta] Backport #48252
Backport of #48252. It fixes a critical failure in what we run on CI that was caught after we branched beta.
|
|
|
|
We'd previously assumed that these paths would be relative to the src
dir, and that for example our various CI scripts would, when calling
x.py, use `../x.py build ../src/tools/...` but this isn't the case --
they use `../x.py` without using the relevant source-relative path.
We eventually may want to make this (actually somewhat logical) change,
but this is not that time.
|
|
Primarily for CI purposes; this is intended to avoid cases where we
update rustbuild and unintentionally make CI stop running some builds to
the arguments being passed no longer applying for some reason.
|
|
Beta: bootstrap from 1.24.0 stable.
r? @alexcrichton
I think this is all correct... not sure about Cargo, but seems fine for now, we can always change later.
|
|
|
|
|
|
Implement excluding a build-step via --exclude
First step to fixing https://github.com/rust-lang/rust/issues/47911. This doesn't change any CI configuration, but implements what I believe necessary to make that feasible in rustbuild.
In theory this should be sufficient to allow someone to open a PR against .travis.yml and appveyor.yml which splits the Windows 32-bit tests and maybe the OS X tests into multiple builders (depending on what our cost-concerns are) to reduce runtimes.
r? @alexcrichton
cc @kennytm
|
|
Update RLS
Should fix the RLS test breakage.
r? @alexcrichton
|
|
|
|
Try to fix 48116 and 48192
The bug #48116 happens because of a misoptimization of the `import_path_to_string` function, where a `names` slice is empty but the `!names.is_empty()` branch is executed.
https://github.com/rust-lang/rust/blob/4d2d3fc5dadf894a8ad709a5860a549f2c0b1032/src/librustc_resolve/resolve_imports.rs#L1015-L1042
Yesterday, @eddyb had locally reproduced the bug, and [came across the `position` function](https://mozilla.logbot.info/rust-infra/20180214#c14296834) where the `assume()` call is found to be suspicious. We have *not* concluded that this `assume()` causes #48116, but given [the reputation of `assume()`](https://github.com/rust-lang/rust/pull/45501#issuecomment-340159627), this seems higher relevant. Here we try to see if commenting it out can fix the errors.
Later @alexcrichton has bisected and found a potential bug [in the LLVM side](https://github.com/rust-lang/rust/issues/48116#issuecomment-365624777). We are currently testing if reverting that LLVM commit is enough to stop the bug. If true, this PR can be reverted (keep the `assume()`) and we could backport the LLVM patch instead.
(This PR also includes an earlier commit from #48127 for help debugging ICE happening in compile-fail/parse-fail tests.)
The PR also reverts #48059, which seems to cause #48192.
r? @alexcrichton
cc @eddyb, @arthurprs (#47333)
|
|
This reverts commit 64a8730e171367e4979cd9c25f0e0fdc2c157446.
|
|
Removed the `assume()` which we assumed is the cause of misoptimization in
issue #48116.
|
|
|
|
Some Steps are by-default run but don't have any paths associated with
them. We need to have at least one PathSet per each Step, though, so we
add an empty one on calls to `never()`.
|
|
1. When the invalid condition is hit, write out the relevant variables too
2. In compile-fail/parse-fail tests, check for ICE first, so the invalid
error patterns won't mask our ICE output.
|
|
Optimized error reporting for recursive requirements #47720
Fixes #47720
|
|
Add `-Zteach` documentation
Add extra inline documentation to E0019, E0016, E0013, E0396, E0017,
E0018, E0010, E0022, E0030, E0029, E0033, E0026 and E0027.
Follow up to #47652.
|
|
Compiletest: delete the compiled program once its test is done.
Reduces CI disk usage which prevents #48118 from succeeding.
|