Commit Graph

84 Commits

Author SHA1 Message Date
Mark Rousskov 309419999c Bump beta branch to released stable 2021-03-26 11:15:28 -04:00
Mark Rousskov 77d13f578a [beta] initial branch off 2021-03-24 10:24:11 -04:00
Joshua Nelson 3733275854 Update the bootstrap compiler
Note this does not change `core::derive` since it was merged after the
beta bump.
2021-02-20 17:19:30 -05:00
Mark Rousskov d5b760ba62 Bump rustfmt version
Also switches on formatting of the mir build module
2021-02-02 09:09:52 -05:00
Mark Rousskov fe031180d0 Bump bootstrap compiler to 1.50 beta 2020-12-30 09:27:19 -05:00
Jake Goulding dcef5ff372 Bump bootstrap compiler version 2020-11-19 19:23:36 -05:00
Aaron Hill b03d4b0ee9
Bump stage0 rustfmt to nightly-2020-11-19
This pulls in https://github.com/rust-lang/rustfmt/pull/4507,
allowing us to remove a semicolon in an internal libstd macro
2020-11-18 23:11:38 -05:00
Pietro Albini d17874ff60 bootstrap: use the same version number for rustc and cargo
Historically the stable tarballs were named after the version number of
the specific tool, instead of the version number of Rust. For example,
both of the following tarballs were part of the same release:

    rustc-1.48.0-x86_64-unknown-linux-gnu.tar.xz
    cargo-0.49.0-x86_64-unknown-linux-gnu.tar.xz

PR #77336 changed the dist code to instead use Rust's version number for
all the tarballs, regardless of the tool they contain:

    rustc-1.48.0-x86_64-unknown-linux-gnu.tar.xz
    cargo-1.48.0-x86_64-unknown-linux-gnu.tar.xz

Because of that there is no need anymore to have a separate `cargo`
field in src/stage0.txt, as the Cargo version will always be the same as
the rustc version. This PR removes the field, simplifying the code and
the maintenance work required while producing releases.
2020-11-17 09:14:02 -05:00
Guillaume Gomez a6919ef889
Rollup merge of #77877 - scottmcm:fewer-try-trait-method-references, r=shepmaster
Use `try{}` in `try_fold` to decouple iterators in the library from `Try` details

I'd like to experiment with changing the `?`/`try` desugaring and correspondingly the `Try` trait (see #42327 for discussions about the suboptimalities of the current one) and this change would keep from needing any `cfg(bootstrap)` in iterator things.

This will be lowered to the same thing, so shouldn't cause any perf issues:
08e2d46166/compiler/rustc_ast_lowering/src/expr.rs (L428-L429)

But ~~I'll trigger~~ I've triggered [a perf run](https://perf.rust-lang.org/compare.html?start=d65c08e9cc164b7b44de53503fae859a4fafd976&end=2c067c5235e779cd75e9f0cdfe572c64f1a12b9b) just in case.

~~EDIT: changed to a draft because of the rustfmt-only syntax error.  zulip thread about it: https://rust-lang.zulipchat.com/#narrow/stream/122651-general/topic/New.20bootstrap.20rustfmt.20doesn't.20support.20syntax.20from.20sept.3F/near/213098097~~

EDIT: This now includes a rustfmt version bump to get through tidy.
2020-10-19 18:20:20 +02:00
Eric Huss 031d2b0658 Bump bootstrap compiler 2020-10-16 11:54:16 -07:00
Scott McMurray 8374c1702c Bump the version of rustfmt used in tidy
To pick up https://github.com/rust-lang/rustfmt/pull/4461
So that rustfmt has the parsing fix from https://github.com/rust-lang/rust/pull/76274

...and do a reformat that it wants.
2020-10-13 07:58:22 -07:00
Mark Rousskov d8c035abbf Bump to 1.48 bootstrap compiler 2020-10-07 19:51:36 -04:00
Pietro Albini e88d79ca41
bump version to 1.48 2020-08-26 10:16:59 +02:00
Mark Rousskov 6c50ae898b Bump to 1.47 2020-07-16 19:36:49 -04:00
Eric Huss 5a8e915725 Update bootstrap to rustc 1.45.0-beta.2 (1dc0f6d8e 2020-06-15) 2020-06-20 11:13:47 -07:00
Mark Rousskov 7139342249 Bump to 1.46 2020-06-03 15:27:51 -04:00
Mark Rousskov 17a393ee96 Bump rustfmt to most recently shipped 2020-04-25 09:25:33 -04:00
Mark Rousskov 93eed402ad Bump bootstrap compiler 2020-04-25 09:25:33 -04:00
Ralf Jung 20de9227a5
Fix stage0.txt version number comment 2020-04-21 15:56:49 +02:00
Jonas Schievink f53f9a88f1 Bump the bootstrap compiler 2020-03-15 19:43:25 +01:00
Matthias Krüger 10b814608b nightly: bootstrap from 1.42.0-beta.5 (4e1c5f0e9 2020-02-28)
This beta snapshot has the llvm miscompilation fix included and is bootstrapped from the stable version that also has it included.
2020-02-29 11:44:09 +01:00
Mark Rousskov ff95473b5e Bump rustfmt and stage0 2020-01-31 12:31:09 -05:00
Mark Rousskov dddd872427 Implement rustfmt running manually using ignore crate
This replaces cargo-fmt with rustfmt with --skip-children which should
allow us to format code without running into rust-lang/rustfmt#3930.

This also bumps up the version of rustfmt used to a more recent one.
2019-12-21 20:23:55 -05:00
Adam Perry 72a844dee7 bootstrap.py fetches rustfmt.
Co-Authored-By: Mark Rousskov <mark.simulacrum@gmail.com>
2019-12-21 20:23:39 -05:00
Mark Rousskov 6a400ee149 Bump stage0 2019-12-18 11:51:31 -05:00
Mark Rousskov f4edc81ac4 Bump version to 1.41 2019-11-12 16:36:57 -05:00
Mark Rousskov 1a4e4d937e Switch version to 1.40 2019-09-25 08:20:32 -04:00
Mark Rousskov e9b3a01764 Bump to 1.39 2019-08-13 07:16:04 -04:00
git-iso f48ee09f04
Update stage0.txt
Fix columns.
2019-07-23 11:07:06 -04:00
git-iso 1ed375c689
Update stage0.txt
Grammar.
2019-07-22 23:30:21 -04:00
Mark Rousskov 8a7dded1a2 Switch master to 1.38 2019-07-04 11:26:57 -04:00
Pietro Albini 924cdd4532
bump nightly to 1.37.0 2019-05-23 12:27:58 +02:00
Mazdak Farrokhzad 6a1ca0ba17 bump bootstrap => 2019-04-11 2019-04-17 05:15:00 +02:00
Mazdak Farrokhzad 750983d356 bump bootstrap => 2019-03-20 2019-03-26 09:53:47 +01:00
Mark Rousskov 2870015b7b Bootstrap compiler update for 1.35 release 2019-03-02 09:05:34 -07:00
Jonas Schievink 1a0d800ef6 Bump the bootstrap compiler 2019-02-17 18:14:32 +01:00
Mark Rousskov b7f030e114 Bump bootstrap compiler to 1.33 beta 2019-01-26 08:02:08 -07:00
Pietro Albini d158ef64e8
Revert "Auto merge of #57670 - rust-lang:beta-next, r=Mark-Simulacrum"
This reverts commit 722b4d6959, reversing
changes made to 956dba47d3.
2019-01-17 10:48:10 +01:00
Pietro Albini dc25c80571
prepare beta 1.33.0 2019-01-16 17:22:51 +01:00
Eric Huss 2b6caccd76 Bump stage0 2019-01-04 07:30:20 -08:00
Alex Crichton cf47a19305 Bump to 1.33.0
* Update bootstrap compiler
* Update version to 1.33.0
* Remove some `#[cfg(stage0)]` annotations

Actually updating the version number is blocked on updating Cargo
2018-12-12 08:09:26 -08:00
Alex Crichton 4c21a3bc2a std: Depend directly on crates.io crates
Ever since we added a Cargo-based build system for the compiler the
standard library has always been a little special, it's never been able
to depend on crates.io crates for runtime dependencies. This has been a
result of various limitations, namely that Cargo doesn't understand that
crates from crates.io depend on libcore, so Cargo tries to build crates
before libcore is finished.

I had an idea this afternoon, however, which lifts the strategy
from #52919 to directly depend on crates.io crates from the standard
library. After all is said and done this removes a whopping three
submodules that we need to manage!

The basic idea here is that for any crate `std` depends on it adds an
*optional* dependency on an empty crate on crates.io, in this case named
`rustc-std-workspace-core`. This crate is overridden via `[patch]` in
this repository to point to a local crate we write, and *that* has a
`path` dependency on libcore.

Note that all `no_std` crates also depend on `compiler_builtins`, but if
we're not using submodules we can publish `compiler_builtins` to
crates.io and all crates can depend on it anyway! The basic strategy
then looks like:

* The standard library (or some transitive dep) decides to depend on a
  crate `foo`.
* The standard library adds

  ```toml
  [dependencies]
  foo = { version = "0.1", features = ['rustc-dep-of-std'] }
  ```
* The crate `foo` has an optional dependency on `rustc-std-workspace-core`
* The crate `foo` has an optional dependency on `compiler_builtins`
* The crate `foo` has a feature `rustc-dep-of-std` which activates these
  crates and any other necessary infrastructure in the crate.

A sample commit for `dlmalloc` [turns out to be quite simple][commit].
After that all `no_std` crates should largely build "as is" and still be
publishable on crates.io! Notably they should be able to continue to use
stable Rust if necessary, since the `rename-dependency` feature of Cargo
is soon stabilizing.

As a proof of concept, this commit removes the `dlmalloc`,
`libcompiler_builtins`, and `libc` submodules from this repository. Long
thorns in our side these are now gone for good and we can directly
depend on crates.io! It's hoped that in the long term we can bring in
other crates as necessary, but for now this is largely intended to
simply make it easier to manage these crates and remove submodules.

This should be a transparent non-breaking change for all users, but one
possible stickler is that this almost for sure breaks out-of-tree
`std`-building tools like `xargo` and `cargo-xbuild`. I think it should
be relatively easy to get them working, however, as all that's needed is
an entry in the `[patch]` section used to build the standard library.
Hopefully we can work with these tools to solve this problem!

[commit]: 28ee12db81
2018-12-11 21:08:22 -08:00
Alex Crichton d0060d72e5 Bump nightly to 1.32.0
* Also update the bootstrap compiler
* Update cargo to 1.32.0
* Clean out stage0 annotations
2018-10-31 11:53:50 -07:00
Matthias Krüger 2cdd9f8e52 bump bootstrap compiler to rustc beta 2018-10-13
beta was switched to bootstrap from stable 1.29.2 since 1.29.2 got the aliasing bug workaround.
For extra sanity we should probably bootstrap from a beta that was built with these fixed appied in the host compiler.
2018-10-14 00:52:47 +02:00
Josh Stone ce034951fb Bump to 1.31.0 and bootstrap from 1.30 beta 2018-09-27 20:52:53 -07:00
James Duley dfd04e1eb4 Update stage0 to latest beta
Fixes bootstrap on AArch64
2018-09-11 17:14:08 +01:00
Mark Rousskov 683a3db01f Switch to bootstrapping from 1.29 beta 2018-08-01 11:59:08 -06:00
Pietro Albini 69e5222686
bump bootstrap compiler to beta-2018-07-27 2018-07-27 12:24:17 +02:00
Pietro Albini 04d31df71d
Bump bootstrap compiler to 1.28.0-beta.10 2018-07-13 19:33:48 +02:00
Mark Simulacrum ad97f8b491 Bootstrap from 1.28.0-beta.3 2018-06-30 13:17:49 -07:00