diff --git a/components/style/bloom.rs b/components/style/bloom.rs index 5c7f753a6c8..93f3903404f 100644 --- a/components/style/bloom.rs +++ b/components/style/bloom.rs @@ -121,6 +121,12 @@ impl StyleBloom { /// Create an empty `StyleBloom`. Because StyleBloom acquires the thread- /// local filter buffer, creating multiple live StyleBloom instances at /// the same time on the same thread will panic. + + // Forced out of line to limit stack frame sizes after extra inlining from + // https://github.com/rust-lang/rust/pull/43931 + // + // See https://github.com/servo/servo/pull/18420#issuecomment-328769322 + #[inline(never)] pub fn new() -> Self { let bloom_arc = BLOOM_KEY.with(|b| b.clone()); let filter = OwningHandle::new_with_fn(bloom_arc, |x| unsafe { x.as_ref() }.unwrap().borrow_mut()); diff --git a/components/style/sharing/mod.rs b/components/style/sharing/mod.rs index e42a4a8b19e..6aecbd3e3d0 100644 --- a/components/style/sharing/mod.rs +++ b/components/style/sharing/mod.rs @@ -478,6 +478,12 @@ impl StyleSharingCache { } /// Create a new style sharing candidate cache. + + // Forced out of line to limit stack frame sizes after extra inlining from + // https://github.com/rust-lang/rust/pull/43931 + // + // See https://github.com/servo/servo/pull/18420#issuecomment-328769322 + #[inline(never)] pub fn new() -> Self { assert_eq!(mem::size_of::>(), mem::size_of::()); assert_eq!(mem::align_of::>(), mem::align_of::()); diff --git a/python/servo/bootstrap_commands.py b/python/servo/bootstrap_commands.py index dfb88b74272..edaad4f6dbb 100644 --- a/python/servo/bootstrap_commands.py +++ b/python/servo/bootstrap_commands.py @@ -90,12 +90,8 @@ class MachCommands(CommandBase): base_url = static_s3 else: import toml - import re channel = "%s/%s/channel-rust-nightly.toml" % (static_s3, self.rust_nightly_date()) - version_string = toml.load(urllib2.urlopen(channel))["pkg"]["rustc"]["version"] - short_commit = re.search("\(([0-9a-f]+) ", version_string).group(1) - commit_api = "https://api.github.com/repos/rust-lang/rust/commits/" + short_commit - nightly_commit_hash = json.load(urllib2.urlopen(commit_api))["sha"] + nightly_commit_hash = toml.load(urllib2.urlopen(channel))["pkg"]["rustc"]["git_commit_hash"] base_url = "https://s3.amazonaws.com/rust-lang-ci/rustc-builds" if not self.config["build"]["llvm-assertions"]: diff --git a/python/servo/devenv_commands.py b/python/servo/devenv_commands.py index cbecb471c0d..804e7e1c425 100644 --- a/python/servo/devenv_commands.py +++ b/python/servo/devenv_commands.py @@ -262,7 +262,7 @@ class MachCommands(CommandBase): description='Update the Rust version to latest Nightly', category='devenv') def rustup(self): - url = "https://static.rust-lang.org/dist/channel-rust-nightly-date.txt" + url = "https://static-rust-lang-org.s3.amazonaws.com/dist/channel-rust-nightly-date.txt" nightly_date = urllib2.urlopen(url).read() filename = path.join(self.context.topdir, "rust-toolchain") with open(filename, "w") as f: diff --git a/rust-toolchain b/rust-toolchain index 009c84eceb4..6a96eebe488 100644 --- a/rust-toolchain +++ b/rust-toolchain @@ -1 +1 @@ -nightly-2017-08-31 +nightly-2017-09-08