Commit Graph

545 Commits

Author SHA1 Message Date
Bastien Orivel 677eeaaa61 Replace tempdir by tempfile in librustc_trans 2018-06-20 19:28:27 +02:00
Bastien Orivel ae9a27185e Replace tempdir by tempfile in librustdoc 2018-06-20 19:28:27 +02:00
kennytm c843607bcc
Rollup merge of #51407 - nrc:update, r=Mark-Simulacrum
Update RLS and Rustfmt

r? @Mark-Simulacrum

Fixes tests
2018-06-08 07:05:45 +08:00
kennytm b94b89b2ee
Rollup merge of #51380 - Mark-Simulacrum:remove-fmt-macros, r=oli-obk
Remove dependency on fmt_macros from typeck

None
2018-06-08 07:05:42 +08:00
Nick Cameron acd4fe8974 Update RLS and Rustfmt 2018-06-07 15:14:49 +12:00
John Kåre Alsaker f273f285b8 Update Cargo 2018-06-06 15:25:47 +02:00
Mark Simulacrum b1a8088fdb Remove fmt_macros dependency 2018-06-05 15:55:07 -06:00
Vytautas Astrauskas 1404c00eb0 Allow choosing Polonius algorithm via environment variable POLONIUS_ALGORITHM. 2018-06-02 14:17:12 +02:00
John Kåre Alsaker 461fa8495e Update Cargo.lock 2018-06-01 15:00:17 +02:00
Alex Crichton 7c14a54bc8 Replace libbacktrace with a submodule
While we're at it update the `backtrace` crate from crates.io. It turns out that
the submodule's configure script has gotten a lot more finnicky as of late so
also switch over to using the `cc` crate manually which allows to avoid some
hacks around the configure script as well
2018-05-30 05:58:23 -07:00
Niko Matsakis c3d688962d WIP fix rustc-hash cargo.lock entry for polonius-engine 2018-05-29 09:39:32 -04:00
Santiago Pastorino 9de4e342df
Use polonius_output 2018-05-29 10:19:46 -03:00
Douglas Campos 422fe7c8e8
bump polonius engine 2018-05-29 10:19:45 -03:00
John Kåre Alsaker 7ebd4d637d Update rustc-hash to hash up to 8 bytes at once with FxHasher 2018-05-28 20:40:31 +02:00
Nick Cameron 0e6fff80c7 Update RLS, Rustfmt, and Cargo 2018-05-28 14:12:18 +12:00
Mateusz Mikuła 05f15d45c3 Update cargo 2018-05-27 00:00:34 +02:00
kennytm e667e7be60
Rollup merge of #51047 - spastorino:use_polonius_engine_facts, r=nikomatsakis
Use AllFacts from polonius-engine
2018-05-26 19:32:22 +08:00
Santiago Pastorino 8429d11a0b
Use AllFacts from polonius-engine 2018-05-24 19:56:02 -03:00
Niko Matsakis 9c548bf26d get `rustc_hash` from external crate 2018-05-24 12:01:27 -04:00
Pascal Hertleif 7a738564d7
Update compiltest to use rustfix 0.3.1 2018-05-22 22:04:45 +02:00
kennytm ada5feedda
Rollup merge of #50889 - oli-obk:clippy, r=kennytm
Update clippy


# Conflicts:
#	src/Cargo.lock
2018-05-20 04:21:05 +08:00
Oliver Schneider 387875dfe3 Update clippy 2018-05-19 13:18:02 +02:00
Niko Matsakis 7ed0fd7699 use `reset_unifications` instead of creating new unification table 2018-05-18 15:58:23 -04:00
Nick Cameron 8de091ed4e Update RLS and Rustfmt 2018-05-18 08:20:36 +12:00
Irina Popa b63d7e2b1c Rename trans to codegen everywhere. 2018-05-17 15:08:30 +03:00
Eric Huss a233268678 Update Cargo
Unblocking PRs:
- rust-lang/cargo#5535 - Ignore <tab> in libtest output. (unblocks #50387)
- rust-lang/cargo#5537 - Remove -Zno-trans test. (unblocks #50615)
- rust-lang/cargo#5540 - Fix tests when CARGO_TARGET_DIR is set. (unblocks self)

Regression fixes:
- rust-lang/cargo#5503 - cargo rustc broken for tests in project with bins
- rust-lang/cargo#5520 - (#50640) shared proc-macro dependency built incorrectly

Changes:
- rust-lang/cargo#5527 - Point Source Replacement to the Overriding Dependencies section
- rust-lang/cargo#5533 - Detail how to run locally-built nightly cargo
- rust-lang/cargo#5522 - Add option to set user-agent
- rust-lang/cargo#5519 - NFC: fix a couple of typos, found by codespell.
- rust-lang/cargo#5513 - Fix `panic` for binaries built during tests.
- rust-lang/cargo#5512 - simplify build_requirements
- rust-lang/cargo#5301 - Add --build-plan for 'cargo build'
- rust-lang/cargo#5460 - Be more conservative about which files are linked to the output dir.
- rust-lang/cargo#5509 - Use the new stable
- rust-lang/cargo#5507 - Does not print seconds fraction with minutes
- rust-lang/cargo#5498 - Bump to 0.29.0
- rust-lang/cargo#5497 - Mention +nightly in ARCHITECTURE.md
2018-05-16 06:52:43 -07:00
Nick Cameron 80bfca4ab2 Update RLS and Rustfmt 2018-05-16 15:59:55 +12:00
Guillaume Gomez 934e37aeb4
Rollup merge of #50632 - GuillaumeGomez:minification, r=ollie27
Add minification process

r? @QuietMisdreavus
2018-05-15 14:26:59 +02:00
Nick Cameron a10577ca53 save-analysis: handle aliasing imports a bit more nicely 2018-05-15 20:34:17 +12:00
Oliver Schneider 3a5b13ad36
Bump clippy 2018-05-14 16:11:57 +02:00
Anthony Ramine 3ebe8679d2 Introduce OperandValue::nontemporal_store and use it in the intrinsics
We use a new MemFlags bitflags type to merge some store code paths.
2018-05-13 10:36:28 +02:00
John Kåre Alsaker 4afdae633d Update Cargo.lock 2018-05-13 01:28:20 +02:00
Guillaume Gomez 4b14573d50 Add minification process 2018-05-12 19:15:06 +02:00
Mark Simulacrum 575ac946bc
Rollup merge of #50607 - Zoxc:symbol-arena, r=michaelwoerister
Allocate Symbol strings from an arena

This is an alternative to https://github.com/rust-lang/rust/pull/50549

cc @nnethercote

r? @michaelwoerister
2018-05-12 07:32:30 -06:00
Mark Simulacrum 60f9fc2d13
Rollup merge of #50544 - Eijebong:cleanup_deps, r=alexcrichton
Cleanup some dependencies
2018-05-12 07:32:24 -06:00
Oliver Schneider 847bb14ee7
Update the clippy and miri submodules 2018-05-11 14:11:06 +02:00
John Kåre Alsaker ca32340367 Allocate Symbol strings from an arena 2018-05-10 16:27:46 +02:00
Alex Crichton 7e5b9ac41e ci: Compile LLVM with Clang 6.0.0
Currently on CI we predominately compile LLVM with the default system compiler
which means gcc on Linux, some version of Clang on OSX, MSVC on Windows, and
gcc on MinGW. This commit switches Linux, OSX, and Windows to all use Clang
6.0.0 to build LLVM (aka the C/C++ compiler as part of the bootstrap). This
looks to generate faster code according to #49879 which translates to a faster
rustc (as LLVM internally is faster)

The major changes here were to the containers that build Linux releases,
basically adding a new step that uses the previous gcc 4.8 compiler to compile
the next Clang 6.0.0 compiler. Otherwise the OSX and Windows scripts have been
updated to download precompiled versions of Clang 6 and configure the build to
use them.

Note that `cc` was updated here to fix using `clang-cl` with `cc-rs` on MSVC, as
well as an update to `sccache` on Windows which was needed to correctly work
with `clang-cl`. Finally the MinGW compiler is entirely left out here
intentionally as it's currently thought that Clang can't generate C++ code for
MinGW and we need to use gcc, but this should be verified eventually.
2018-05-09 14:45:34 -07:00
Bastien Orivel da02fad2d1 Update assert_cli
This removes skeptic from the dependency tree which in turn removes
quite a few other dependencies
2018-05-08 21:46:55 +02:00
Bastien Orivel bcdb67bf43 Update derive-new
This removes the last dependency on syn 0.12
2018-05-08 20:55:43 +02:00
Alex Butler 640e937ec3
Update clippy 0.0.197 2018-05-07 16:03:42 +01:00
Alex Butler e4a0514bbe
Update rls 1263f1f
Fix rls-clippy feature compile
2018-05-07 15:25:37 +01:00
John Kåre Alsaker e24cbe2da0 Misc tweaks 2018-05-05 20:36:46 +02:00
Pascal Hertleif a563027cb8 Use published rustfix 0.2 version 2018-05-04 15:01:28 -07:00
Alex Crichton fa9e55faeb test: Make a dedicated testsuite for rustfix
This commit adds a dedicated mode to compiletest for running rustfix tests,
adding a new `src/test/rustfix` directory which will execute all tests as a
"rustfix" test, namely requiring that a `*.fixed` is next to the main file which
is the result of the rustfix project's application of fixes.

The `rustfix` crate is pulled in to actually perform the fixing, and the rustfix
compiletest mode will assert a few properties about the fixing:

* The expected fixed output must be the same as rustc's output suggestions
  applied to the original code.
* The fixed code must compile successfully
* The fixed code must have no further diagnostics emitted about it
2018-05-04 15:01:28 -07:00
Nick Cameron 4952426c50 Update RLS and Rustfmt (and Cargo) 2018-05-04 12:33:56 +12:00
Nick Cameron 6457241133 Update RLS and Rustfmt 2018-05-02 10:20:49 +12:00
Oliver Schneider 1f3cb926a2
Update Cargo.lock 2018-04-30 18:29:15 +02:00
Alex Crichton 3565556d8b Update `parking_lot` dependencies
This commit updates `parking_lot` to pull in Amanieu/parking_lot#70 and...

Closes #49438
2018-04-26 20:50:06 -07:00
Irina Popa 04fa0e7bb3 rustc_target: move in syntax::abi and flip dependency. 2018-04-26 17:49:16 +03:00
Irina Popa 3bd7efadae rustc_target: move in type definitions from rustc_trans::abi. 2018-04-26 16:50:27 +03:00
Irina Popa 38e964077b Rename rustc_back::target to rustc_target::spec. 2018-04-26 16:39:44 +03:00
Nick Cameron 127f9a6416 Update rustfmt and rls 2018-04-26 10:11:28 +12:00
Oliver Schneider 3084c066e4
Fix the miri tool 2018-04-23 11:38:13 +02:00
Matt Ickstadt 0ab516fdfc Update MDBook 2018-04-22 20:35:22 -05:00
Steven Fackler 9e8f683476 Remove Alloc::oom 2018-04-22 10:08:49 -07:00
Alex Crichton 924f8c7053 Update the Cargo submodule 2018-04-20 07:18:35 -07:00
Oliver Schneider 0f1f9a79f2
Update clippy 2018-04-19 08:52:52 +02:00
Nick Cameron 70539d084e Update Rustfmt 2018-04-18 08:21:19 +12:00
John Kåre Alsaker 19d44f2d24 Make arenas thread safe 2018-04-15 20:53:03 +02:00
Nick Cameron eb1b502d02 Update Rustfmt 2018-04-14 13:33:28 +12:00
Simon Sapin eae0d46893 Restore Global.oom() functionality
… now that #[global_allocator] does not define a symbol for it
2018-04-12 22:53:21 +02:00
Simon Sapin 86753ce1cc Use the GlobalAlloc trait for #[global_allocator] 2018-04-12 22:53:12 +02:00
Alex Crichton a4caac5e93 Update to most recent version of dlmalloc
Inline the definition of `GlobalAlloc` for `dlmalloc` on wasm and don't rely on
usage of unstable features in `dlmalloc` itself.
2018-04-12 22:53:02 +02:00
Simon Sapin 5e5a0c21fc Separate alloc::heap::Alloc trait for stage0 #[global_allocator] 2018-04-12 22:52:54 +02:00
Simon Sapin b2027ef17c Deprecate the std_unicode crate 2018-04-12 00:13:51 +02:00
Oliver Schneider 3b04823dc1
Update clippy and rls 2018-04-11 13:36:31 +02:00
Nick Cameron 7e297ff96a Update Rustfmt 2018-04-09 21:55:07 +12:00
Oliver Schneider 679657b863
Inject the `compiler_builtins` crate whenever the `core` crate is injected 2018-04-07 09:24:35 +02:00
steveklabnik ecfbaca13e update mdbook
This includes search for all books, a long-requested feature!
2018-04-05 15:03:26 -04:00
Boris-Chengbiao Zhou ae86e83c52 Update RLS 2018-04-04 23:44:09 +02:00
Mark Simulacrum b0dbc7c15d Implement generating graphs of the build steps 2018-04-03 11:43:12 -06:00
Mark Simulacrum 42fde21c27 Add tests to rustbuild
In order to run tests, previous commits have cfg'd out various parts of
rustbuild. Generally speaking, these are filesystem-related operations
and process-spawning related parts. Then, rustbuild is run "as normal"
and the various steps that where run are retrieved from the cache and
checked against the expected results.

Note that this means that the current implementation primarily tests
"what" we build, but doesn't actually test that what we build *will*
build. In other words, it doesn't do any form of dependency verification
for any crate. This is possible to implement, but is considered future
work.

This implementation strives to cfg out as little code as possible; it
also does not currently test anywhere near all of rustbuild. The current
tests are also not checked for "correctness," rather, they simply
represent what we do as of this commit, which may be wrong.

Test cases are drawn from the old implementation of rustbuild, though
the expected results may vary.
2018-04-03 11:41:50 -06:00
Alex Crichton e9d898318c Bump to 1.27.0
Also update some `Cargo.lock` dependencies, finishing up some final steps of our
[release process]!

This doesn't update the bootstrap compiler just yet but that will come in a
follow-up PR.

[release process]: https://forge.rust-lang.org/release-process.html
2018-04-02 12:42:44 -07:00
Mark Simulacrum 36f9f76356
Rollup merge of #49549 - Mark-Simulacrum:bootstrap-cleanup, r=alexcrichton
Remove filetime dep from build_helper

r? @alexcrichton
2018-04-01 18:04:57 +02:00
Mark Simulacrum 86915ddf30 Remove filetime dep from build_helper 2018-04-01 04:49:21 -06:00
Manish Goregaokar 6a5bf5e180 Bump lockfile 2018-03-30 11:08:58 +02:00
Aleksey Kladov 850156aa27 Update Cargo
This includes rust-lang/cargo#5255 which fixed regression in
`cargo rustdoc` command.
2018-03-29 10:35:15 +03:00
Taylor Cramer 3c65f53620 Stabilize match_default_bindings
This includes a submodule update to rustfmt
in order to allow a stable feature declaration.
2018-03-28 11:13:13 +02:00
Eric Huss 0f1c649827 Fix diagnostic colors on Windows 10 console.
This updates termcolor to pick up BurntSushi/ripgrep#867.

Fixes #49322.
2018-03-26 17:23:17 -07:00
Alex Crichton faebcc1087 rustbuild: Fail the build if we build Cargo twice
This commit updates the `ToolBuild` step to stream Cargo's JSON messages, parse
them, and record all libraries built. If we build anything twice (aka Cargo)
it'll most likely happen due to dependencies being recompiled which is caught by
this check.
2018-03-26 13:07:12 -07:00
Taylor Cramer 0f5b52e4a8 Stabilize conservative_impl_trait 2018-03-26 10:43:03 +02:00
kennytm 2bd27c9729
Rollup merge of #49203 - Eijebong:lets-cleanup-dependencies, r=Mark-Simulacrum
Bump racer and home

This removes 10 dependencies from the build 🎉
2018-03-25 01:26:36 +08:00
Nick Cameron aa238a3780 Update RLS and Rustfmt
Fixes broken RLS tests/build
2018-03-23 10:34:47 +13:00
Bastien Orivel 06f8103295 Bump racer and home
This removes 10 dependencies from the build 🎉
2018-03-21 10:03:49 +01:00
Aleksey Kladov 8d9774713d Update Cargo to fix regression
This should fix regressions in Cargo after swithing to clap:

* If an external subcommand name was close to built-in one, clap
  errored (fixed by updating clap version)

* External subcomands didn't received their name as a first arg
2018-03-20 15:59:28 +03:00
Alan Du 253ade5b31 Update rustfmt to 0.4.1 2018-03-19 10:14:13 -04:00
Aleksey Kladov b15b023226 Update Cargo
This notably includes

* https://github.com/rust-lang/cargo/pull/5152
* https://github.com/rust-lang/cargo/pull/5188

The first one switches cargo from docopt to clap (
we also update to the latest calp in this repository),
the second one should help us to unify feature flags
for Cargo itself and RLS, and build Cargo libray only
once.
2018-03-17 02:20:22 +03:00
Oliver Schneider 02ac15cb89
Automatically enable the `clippy` feature of `rls` if clippy builds 2018-03-16 18:24:08 +01:00
kennytm 35b008cb92
Rollup merge of #48957 - Eijebong:rand, r=michaelwoerister
Dedupe rand
2018-03-16 01:49:43 +08:00
Boris-Chengbiao Zhou c21480233e Update RLS 2018-03-14 16:51:41 +01:00
John Kåre Alsaker cbdf4ec03e Remove syntax and syntax_pos thread locals 2018-03-14 11:56:01 +01:00
Niko Matsakis 3a50b41da4 introduce `infcx.at(..).normalize(..)` operation [VIC]
It is backed by the new `normalize_projection_ty` query, which uses
canonicalization.
2018-03-13 11:22:05 -04:00
Alex Crichton 9b1c69ec93 Update the rls-rustc package
Should hopefully fix compiling the rls!
2018-03-12 13:02:49 -07:00
Bastien Orivel a67e0723a3 Dedupe rand 2018-03-12 20:23:23 +01:00
Alex Crichton 994bfd4141 Update Cargo submodule
Required moving all fulldeps tests depending on `rand` to different locations as
now there's multiple `rand` crates that can't be implicitly linked against.
2018-03-11 10:59:28 -07:00
Manish Goregaokar b0bc601dcc
Rollup merge of #48588 - alexcrichton:termcolor, r=BurntSushi
rustc: Migrate to `termcolor` crate from `term`

This crate moves the compiler's error reporting to using the `termcolor` crate
from crates.io. Previously rustc used a super-old version of the `term` crate
in-tree which is basically unmaintained at this point, but Cargo has been using
`termcolor` for some time now and tools like `rg` are using `termcolor` as well,
so it seems like a good strategy to take!

Note that the `term` crate remains in-tree for libtest. Changing libtest will be
a bit tricky due to how the build works, but we can always tackle that later.

cc #45728
2018-03-08 17:25:56 -08:00
Oliver Schneider aedd4c61ea
Regenerate tests 2018-03-08 08:35:38 +01:00
Alex Crichton a919efad2e rustc: Migrate to `termcolor` crate from `term`
This crate moves the compiler's error reporting to using the `termcolor` crate
from crates.io. Previously rustc used a super-old version of the `term` crate
in-tree which is basically unmaintained at this point, but Cargo has been using
`termcolor` for some time now and tools like `rg` are using `termcolor` as well,
so it seems like a good strategy to take!

Note that the `term` crate remains in-tree for libtest. Changing libtest will be
a bit tricky due to how the build works, but we can always tackle that later.

cc #45728
2018-03-07 07:30:33 -08:00
Alex Crichton a8eaabcdba Update cargo lock 2018-03-07 07:11:59 -08:00
Alex Crichton 87f3dda514 Update env_logger to 0.5.4
It looks like this cuts down on the number of dependencies in env_logger and
notably cuts out a difference between a shared dependency of rls/cargo. My goal
here is to ensure that when we compile the RLS/Cargo on CI we only compile Cargo
once, and this is one step towards that!
2018-03-06 12:37:28 -08:00
Mark Mansi 3ee410498d Start adding a whitelist for rustc dependencies 2018-03-05 14:43:44 -06:00
Alex Crichton d69b24805b rust: Import LLD for linking wasm objects
This commit imports the LLD project from LLVM to serve as the default linker for
the `wasm32-unknown-unknown` target. The `binaryen` submoule is consequently
removed along with "binaryen linker" support in rustc.

Moving to LLD brings with it a number of benefits for wasm code:

* LLD is itself an actual linker, so there's no need to compile all wasm code
  with LTO any more. As a result builds should be *much* speedier as LTO is no
  longer forcibly enabled for all builds of the wasm target.
* LLD is quickly becoming an "official solution" for linking wasm code together.
  This, I believe at least, is intended to be the main supported linker for
  native code and wasm moving forward. Picking up support early on should help
  ensure that we can help LLD identify bugs and otherwise prove that it works
  great for all our use cases!
* Improvements to the wasm toolchain are currently primarily focused around LLVM
  and LLD (from what I can tell at least), so it's in general much better to be
  on this bandwagon for bugfixes and new features.
* Historical "hacks" like `wasm-gc` will soon no longer be necessary, LLD
  will [natively implement][gc] `--gc-sections` (better than `wasm-gc`!) which
  means a postprocessor is no longer needed to show off Rust's "small wasm
  binary size".

LLD is added in a pretty standard way to rustc right now. A new rustbuild target
was defined for building LLD, and this is executed when a compiler's sysroot is
being assembled. LLD is compiled against the LLVM that we've got in tree, which
means we're currently on the `release_60` branch, but this may get upgraded in
the near future!

LLD is placed into rustc's sysroot in a `bin` directory. This is similar to
where `gcc.exe` can be found on Windows. This directory is automatically added
to `PATH` whenever rustc executes the linker, allowing us to define a `WasmLd`
linker which implements the interface that `wasm-ld`, LLD's frontend, expects.

Like Emscripten the LLD target is currently only enabled for Tier 1 platforms,
notably OSX/Windows/Linux, and will need to be installed manually for compiling
to wasm on other platforms. LLD is by default turned off in rustbuild, and
requires a `config.toml` option to be enabled to turn it on.

Finally the unstable `#![wasm_import_memory]` attribute was also removed as LLD
has a native option for controlling this.

[gc]: https://reviews.llvm.org/D42511
2018-03-03 20:21:35 -08:00
John Kåre Alsaker b74e97cf42 Replace Rc with Lrc for shared data 2018-03-02 10:48:52 +01:00
Sean Griffin fec4d3b711 Bump ena 2018-03-01 08:04:26 -07:00
Sean Griffin 755bdaa190 change skolemizations to use universe index
These changes were meant to be in
2b18d8fe9dc05415a8e6b7cadf879c7f7ebe020a (rebased from
12a230562ece9b0d29018a436676141054dc53b7), but I messed up the rebase a
bit as the file had been moved.
2018-03-01 08:04:26 -07:00
Nick Cameron 4b6f5c2aa4 Update RLS 2018-02-28 17:08:09 +13:00
Manish Goregaokar abf4d70da8
Rollup merge of #47933 - Zoxc:plugin-panics, r=nikomatsakis
Do not run the default panic hook inside procedural macros.

Fixes #47812

r? @nikomatsakis
2018-02-23 10:24:45 -08:00
John Kåre Alsaker 9d3719bcfa Do not run the default panic hook inside procedural macros. Fixes #47812 2018-02-20 19:16:49 +01:00
Manish Goregaokar 6818551c6f bump pulldown 2018-02-18 17:57:06 -08:00
Guillaume Gomez 5bd5bc3f21 Remove hoedown from rustdoc
Is it really time? Have our months, no, *years* of suffering come to an end? Are we finally able to cast off the pall of Hoedown? The weight which has dragged us down for so long?

-----

So, timeline for those who need to catch up:

* Way back in December 2016, [we decided we wanted to switch out the markdown renderer](https://github.com/rust-lang/rust/issues/38400). However, this was put on hold because the build system at the time made it difficult to pull in dependencies from crates.io.
* A few months later, in March 2017, [the first PR was done, to switch out the renderers entirely](https://github.com/rust-lang/rust/pull/40338). The PR itself was fraught with CI and build system issues, but eventually landed.
* However, not all was well in the Rustdoc world. During the PR and shortly after, we noticed [some differences in the way the two parsers handled some things](https://github.com/rust-lang/rust/issues/40912), and some of these differences were major enough to break the docs for some crates.
* A couple weeks afterward, [Hoedown was put back in](https://github.com/rust-lang/rust/pull/41290), at this point just to catch tests that Pulldown was "spuriously" running. This would at least provide some warning about spurious tests, rather than just breaking spontaneously.
* However, the problems had created enough noise by this point that just a few days after that, [Hoedown was switched back to the default](https://github.com/rust-lang/rust/pull/41431) while we came up with a solution for properly warning about the differences.
* That solution came a few weeks later, [as a series of warnings when the HTML emitted by the two parsers was semantically different](https://github.com/rust-lang/rust/pull/41991). But that came at a cost, as now rustdoc needed proc-macro support (the new crate needed some custom derives farther down its dependency tree), and the build system was not equipped to handle it at the time. It was worked on for three months as the issue stumped more and more people.
  * In that time, [bootstrap was completely reworked](https://github.com/rust-lang/rust/pull/43059) to change how it ordered compilation, and [the method by which it built rustdoc would change](https://github.com/rust-lang/rust/pull/43482), as well. This allowed it to only be built after stage1, when proc-macros would be available, allowing the "rendering differences" PR to finally land.
  * The warnings were not perfect, and revealed a few [spurious](https://github.com/rust-lang/rust/pull/44368) [differences](https://github.com/rust-lang/rust/pull/45421) between how we handled the renderers.
  * Once these were handled, [we flipped the switch to turn on the "rendering difference" warnings all the time](https://github.com/rust-lang/rust/pull/45324), in October 2017. This began the "warning cycle" for this change, and landed in stable in 1.23, on 2018-01-04.
  * Once those warnings hit stable, and after a couple weeks of seeing whether we would get any more reports than what we got from sitting on nightly/beta, [we switched the renderers](https://github.com/rust-lang/rust/pull/47398), making Pulldown the default but still offering the option to use Hoedown.

And that brings us to the present. We haven't received more new issues from this in the meantime, and the "switch by default" is now on beta. Our reasoning is that, at this point, anyone who would have been affected by this has run into it already.
2018-02-16 23:17:15 +01:00
Nick Cameron fa94c5c311 Update RLS 2018-02-14 21:13:30 +13:00
Martin Algesten 9a6afa8f67 Emit data::Impl in save-analysis 2018-02-10 03:04:44 +01:00
Guillaume Gomez dec9fab768 Convert python script to rust 2018-02-08 10:53:09 +01:00
kennytm 3373f65682
Rollup merge of #48013 - onur:use-time-in-bootstrap-dist, r=alexcrichton
Use time crate in bootstrap dist instead of date

`bootstrap dist` command is trying to run *NIX specific `date` command to get current month and year. This command keep failing when it's called on a Windows command prompt. This patch is making it use time crate.

Closes: #47908
2018-02-07 03:23:26 +08:00
kennytm ddc4284b71
Rollup merge of #47753 - steveklabnik:update-book, r=alexcrichton
Update book

This PR does two things:

1. update the book to include https://github.com/rust-lang/book/pull/1088
2. update to mdbook 0.1

Both of these things are big changes, so I want to land them now, well before the next branch, so we can kick the tires.

------------------------------

Locally, I'm seeing some weirdness around the reference and this:

![image](https://user-images.githubusercontent.com/27786/35411917-8dcbb31a-01e8-11e8-8c30-0bd280d93b9d.png)

Putting this PR up so others can try and build and see if it reproduces for them.
2018-02-06 02:13:49 +08:00
Oliver Schneider 70717f20f5
Update clippy and miri submodule 2018-02-05 11:36:51 +01:00
Onur Aslan 1461d12b3c Use time crate in bootstrap dist instead of date 2018-02-05 11:39:54 +03:00
steveklabnik 5437188e10 update mdbook to 0.1.2
and improve printing of errors
2018-02-04 15:47:35 -05:00
Nick Cameron cec82c1bfe Update RLS and Rustfmt 2018-02-04 15:08:54 +13:00
Alex Crichton 884715c654 rustc: Load the `rustc_trans` crate at runtime
Building on the work of # 45684 this commit updates the compiler to
unconditionally load the `rustc_trans` crate at runtime instead of linking to it
at compile time. The end goal of this work is to implement # 46819 where rustc
will have multiple backends available to it to load.

This commit starts off by removing the `extern crate rustc_trans` from the
driver. This involved moving some miscellaneous functionality into the
`TransCrate` trait and also required an implementation of how to locate and load
the trans backend. This ended up being a little tricky because the sysroot isn't
always the right location (for example `--sysroot` arguments) so some extra code
was added as well to probe a directory relative to the current dll (the
rustc_driver dll).

Rustbuild has been updated accordingly as well to have a separate compilation
invocation for the `rustc_trans` crate and assembly it accordingly into the
sysroot. Finally, the distribution logic for the `rustc` package was also
updated to slurp up the trans backends folder.

A number of assorted fallout changes were included here as well to ensure tests
pass and such, and they should all be commented inline.
2018-01-27 19:16:21 -08:00
topecongiro 8636d0142b Update rls 2018-01-26 12:58:02 +09:00
Alex Crichton 15899b0c12 Update Cargo submodule to master
Just a routine update
2018-01-24 20:02:16 -08:00
kennytm 116fb72d3d Rollup merge of #47423 - est31:rustbook_checking, r=alexcrichton
Check for deadlinks from the summary during book generation

Previously, any deadlinks from a book's SUMMARY.md wouldn't
cause any errors or warnings or similar but mdbook would simply
create a page with blank content.

This has kept bug #47394 hidden. It should have been detected
back in the PR when those wrongly named files got added to the
book.

PR #47414 was one component of the solution. This change
is a second line of defense for the unstable book and a first
line of defense for any other book.

We also update mdbook to the most recent version.
2018-01-23 17:03:32 +08:00
bjorn3 a09aebee21 Remove accidential libloading dependency 2018-01-19 20:27:51 +01:00
bjorn3 9315ed45c5 Hot plug rustc_trans 2018-01-19 20:27:33 +01:00
bjorn3 74c92c5562 Allow runtime switching between trans backends 2018-01-19 20:27:10 +01:00
topecongiro 5ae8fa976a Update rustfmt to 0.3.6 2018-01-18 23:41:19 +09:00
Alex Crichton 80d6ed2d8b Update Cargo and its dependencies
This'll probably have a bunch of build errors, so let's try and head those off
and find them sooner rather than later!
2018-01-17 23:14:23 -08:00
kennytm 8b22802588 Rollup merge of #47509 - cuviper:rayon-rust-installer, r=Mark-Simulacrum
Update rust-installer for streaming parallelism

Pull in rust-lang/rust-installer#76 to get streamed tarball generation,
rather than batching it all in memory, while still getting the benefit
of compressing in parallel.
2018-01-18 01:57:31 +08:00
Josh Stone 2c5542fcec Update rust-installer for streaming parallelism
Pull in rust-lang/rust-installer#76 to get streamed tarball generation,
rather than batching it all in memory, while still getting the benefit
of compressing in parallel.
2018-01-16 18:06:32 -08:00
est31 38ddb446b9 Check for deadlinks from the summary during book generation
Previously, any deadlinks from a book's SUMMARY.md wouldn't
cause any errors or warnings or similar but mdbook would simply
create a page with blank content.

This has kept bug #47394 hidden. It should have been detected
back in the PR when those wrongly named files got added to the
book.

PR #47414 was one component of the solution. This change
is a second line of defense for the unstable book and a first
line of defense for any other book.

We also update mdbook to the most recent version.
2018-01-15 16:39:20 +01:00
Guillaume Gomez e2bd0e15dc Update html-diff crate => fix unicode parsing and invalid paths 2018-01-15 00:40:49 +01:00
kennytm 1233602283 Rollup merge of #47288 - cuviper:jobserver-pipe2, r=alexcrichton
Update jobserver to 0.1.9

Fix for `ENOSYS` when calling `pipe2`, alexcrichton/jobserver-rs#5.

r? @alexcrichton
2018-01-13 02:26:28 +08:00
Josh Stone b1c9b6e05f Update jobserver to 0.1.9
Fix for `ENOSYS` when calling `pipe2`, alexcrichton/jobserver-rs#5.

r? @alexcrichton
2018-01-08 22:00:45 -08:00
Ed Schouten ee04aac861 Update to libc in Cargo.lock to 0.2.35 as well. 2018-01-08 17:00:25 +01:00
Malo Jaffré 3f073c409a Try to fix a perf regression by updating log
Upgrade `log` to `0.4` in multiple crates.
2018-01-07 16:54:05 +01:00
Malo Jaffré 8ed13d643a Update crates and submodules to pull doc fixes
Update `rand` crate to `0.3.19`.
Update `log` crate to `0.3.9` and `0.4.1`.
Update `parking_lot_core` crate to `0.2.9`.
Upgrade all flate2 dependencies to `1.0.1`.
- Update `rust-installer` submodule.
2018-01-01 14:44:10 +01:00
Felix Schütt 7c13fa3730 Update cargo 2017-12-31 22:48:33 +01:00
Igor Matuszewski 5081b94ac1 Update rustfmt to 0.3.4 2017-12-29 10:42:09 +01:00
Igor Matuszewski d332277819 Update RLS 2017-12-28 20:06:29 +01:00
kennytm 0692b3df2e
cargo update and add miri as the rustc workspace member. 2017-12-27 00:00:44 +08:00
Alex Crichton 325d739456 Update Cargo and its dependencies
Just a routine update!
2017-12-24 07:46:48 -08:00
David Henningsson f536143ab6 Mir: Abort on nounwind ABIs
Generate Abort instead of Resume terminators on nounwind ABIs.

https://github.com/rust-lang/rust/issues/18510

Signed-off-by: David Henningsson <diwic@ubuntu.com>
2017-12-21 04:43:35 +01:00
Maik Klein 88866b5c85 Update lockfile 2017-12-18 17:08:49 +02:00
John Kåre Alsaker 970c613e4a Add sync module to rustc_data_structures 2017-12-17 14:14:51 +01:00
Andy Russell 59fafc8889
save-analysis: add parents to imports 2017-12-15 16:57:42 -05:00
Oliver Schneider b1e759762e
Update the rls and rustfmt submodules 2017-12-15 12:29:20 +01:00
Esteban Küber c60aab29f1 When attempting to write str with single quote suggest double quotes 2017-12-14 22:51:42 -08:00
Vadim Petrochenkov c3a7d36c6e Support regexes in custom normalization in UI tests 2017-12-14 23:26:40 +03:00