From a3339f97c3313cfd57f5e673b88dd165215c0450 Mon Sep 17 00:00:00 2001 From: Simon Sapin Date: Mon, 27 Nov 2017 23:18:54 +0100 Subject: Print a better error message when rustup is too old --- python/servo/command_base.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'python/servo/command_base.py') diff --git a/python/servo/command_base.py b/python/servo/command_base.py index c6f0aa0601c..29968e766ad 100644 --- a/python/servo/command_base.py +++ b/python/servo/command_base.py @@ -14,6 +14,7 @@ import itertools import locale import os from os import path +import re import contextlib import subprocess from subprocess import PIPE @@ -322,6 +323,12 @@ class CommandBase(object): def call_rustup_run(self, args, **kwargs): if self.config["tools"]["use-rustup"]: + version_line = subprocess.check_output(["rustup" + BIN_SUFFIX, "--version"]) + version = tuple(map(int, re.match("rustup (\d+)\.(\d+)\.(\d+)", version_line).groups())) + if version < (1, 8, 0): + print "rustup is at version %s.%s.%s, Servo requires 1.8.0 or more recent." % version + print "Try running 'rustup self update'." + return 1 args = ["rustup" + BIN_SUFFIX, "run", "--install", self.toolchain()] + args try: return call(args, **kwargs) -- cgit v1.2.3