Bug 1447116 - Require rust 1.26. r=froydnj draft
authorMike Hommey <mh+mozilla@glandium.org>
Tue, 26 Jun 2018 18:05:23 +0900
changeset 812913 3ed5170b0561ed1221cff6dc179332193a0f965f
parent 812912 e9e1c6332eb506e9d03109b88545c82ba792b280
push id114703
push userbmo:mh+mozilla@glandium.org
push dateSat, 30 Jun 2018 23:34:40 +0000
reviewersfroydnj
bugs1447116
milestone63.0a1
Bug 1447116 - Require rust 1.26. r=froydnj We're well overdue for an upgrade of the rust compiler requirements. Now that we're building with 1.28 (albeit a beta, due to be bumped when it's released), we can bump the requirement away from 1.24 which is now old. 1.27 is too new, though, so settle for the older 1.26.
build/moz.configure/rust.configure
python/mozboot/mozboot/base.py
taskcluster/ci/build/linux.yml
taskcluster/ci/toolchain/linux.yml
--- a/build/moz.configure/rust.configure
+++ b/build/moz.configure/rust.configure
@@ -62,18 +62,18 @@ def rust_compiler(rustc_info, cargo_info
         die(dedent('''\
         Rust compiler not found.
         To compile rust language sources, you must have 'rustc' in your path.
         See https://www.rust-lang.org/ for more information.
 
         You can install rust by running './mach bootstrap'
         or by directly running the installer from https://rustup.rs/
         '''))
-    rustc_min_version = Version('1.24.0')
-    cargo_min_version = Version('0.{}'.format(rustc_min_version.minor + 1))
+    rustc_min_version = Version('1.26.0')
+    cargo_min_version = rustc_min_version
 
     version = rustc_info.version
     if version < rustc_min_version:
         die(dedent('''\
         Rust compiler {} is too old.
 
         To compile Rust language sources please install at least
         version {} of the 'rustc' toolchain and make sure it is
--- a/python/mozboot/mozboot/base.py
+++ b/python/mozboot/mozboot/base.py
@@ -145,17 +145,17 @@ ac_add_options --enable-artifact-builds
 # This should match OLDEST_NON_LEGACY_VERSION from
 # the hg setup wizard in version-control-tools.
 MODERN_MERCURIAL_VERSION = LooseVersion('4.3.3')
 
 # Upgrade Python older than this.
 MODERN_PYTHON_VERSION = LooseVersion('2.7.3')
 
 # Upgrade rust older than this.
-MODERN_RUST_VERSION = LooseVersion('1.24.0')
+MODERN_RUST_VERSION = LooseVersion('1.26.0')
 
 
 class BaseBootstrapper(object):
     """Base class for system bootstrappers."""
 
     def __init__(self, no_interactive=False):
         self.package_manager_updated = False
         self.no_interactive = no_interactive
--- a/taskcluster/ci/build/linux.yml
+++ b/taskcluster/ci/build/linux.yml
@@ -260,17 +260,17 @@ linux64-base-toolchains/opt:
             - builds/releng_base_linux_64_builds.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
         - linux64-clang-3.9
         - linux64-gcc-6
-        - linux64-rust-1.24
+        - linux64-rust-1.26
         - linux64-sccache
 
 linux64-base-toolchains/debug:
     description: "Linux64 base toolchains Debug"
     index:
         product: firefox
         job-name: linux64-base-toolchains-debug
     treeherder:
@@ -290,17 +290,17 @@ linux64-base-toolchains/debug:
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: debug
         tooltool-downloads: public
         need-xvfb: true
     toolchains:
         - linux64-clang-3.9
         - linux64-gcc-6
-        - linux64-rust-1.24
+        - linux64-rust-1.26
         - linux64-sccache
 
 linux/opt:
     description: "Linux32 Opt"
     index:
         product: firefox
         job-name: linux-opt
     treeherder:
--- a/taskcluster/ci/toolchain/linux.yml
+++ b/taskcluster/ci/toolchain/linux.yml
@@ -386,33 +386,33 @@ linux64-android-gradle-dependencies:
             - 'mobile/android/config/mozconfigs/common*'
             - 'mobile/android/gradle.configure'
         toolchain-artifact: public/build/android-gradle-dependencies.tar.xz
         toolchain-alias: android-gradle-dependencies
     toolchains:
         # Aliases aren't allowed for toolchains depending on toolchains.
         - linux64-android-sdk-linux-repack
 
-linux64-rust-1.24:
+linux64-rust-1.26:
     description: "rust repack"
     treeherder:
         kind: build
         platform: toolchains/opt
-        symbol: TL(rust-1.24)
+        symbol: TL(rust-1.26)
         tier: 1
     worker-type: aws-provisioner-v1/gecko-{level}-b-linux
     worker:
         max-run-time: 7200
         env:
             UPLOAD_DIR: artifacts
     run:
         using: toolchain-script
         script: repack_rust.py
         arguments: [
-            '--channel', '1.24.0',
+            '--channel', '1.26.2',
             '--host', 'x86_64-unknown-linux-gnu',
             '--target', 'x86_64-unknown-linux-gnu',
             '--target', 'i686-unknown-linux-gnu',
         ]
         toolchain-artifact: public/build/rustc.tar.xz
 
 linux64-rust-1.28:
     description: "rust repack"