aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Sapin <simon.sapin@exyr.org>2015-04-23 00:14:02 +0200
committerJosh Matthews <josh@joshmatthews.net>2015-05-05 10:07:34 -0400
commitef8edd4e87aeb3cc71dfd9da2f69437080f5410e (patch)
tree9146cdd7126ead59c57cacbaa04eda0f16761f65
parent7b87085c1880c60aa3be5b3ec4572a0d93fd5537 (diff)
downloadservo-ef8edd4e87aeb3cc71dfd9da2f69437080f5410e.tar.gz
servo-ef8edd4e87aeb3cc71dfd9da2f69437080f5410e.zip
Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8.
-rw-r--r--cargo-nightly-build2
-rw-r--r--components/canvas/Cargo.toml9
-rw-r--r--components/canvas/canvas_paint_task.rs2
-rw-r--r--components/canvas/lib.rs4
-rw-r--r--components/canvas/webgl_paint_task.rs9
-rw-r--r--components/compositing/Cargo.toml2
-rw-r--r--components/compositing/compositor.rs5
-rw-r--r--components/compositing/compositor_layer.rs2
-rw-r--r--components/compositing/lib.rs3
-rw-r--r--components/compositing/scrolling.rs8
-rw-r--r--components/devtools/actor.rs13
-rw-r--r--components/devtools/actors/console.rs3
-rw-r--r--components/devtools/actors/inspector.rs1
-rw-r--r--components/devtools/actors/timeline.rs11
-rw-r--r--components/devtools/lib.rs16
-rw-r--r--components/devtools/protocol.rs13
-rw-r--r--components/devtools_traits/lib.rs4
-rw-r--r--components/gfx/Cargo.toml1
-rw-r--r--components/gfx/display_list/mod.rs5
-rw-r--r--components/gfx/filters.rs1
-rw-r--r--components/gfx/font.rs7
-rw-r--r--components/gfx/font_cache_task.rs2
-rw-r--r--components/gfx/font_context.rs6
-rw-r--r--components/gfx/lib.rs7
-rw-r--r--components/gfx/paint_context.rs1
-rw-r--r--components/gfx/paint_task.rs1
-rw-r--r--components/gfx/platform/freetype/font.rs2
-rw-r--r--components/gfx/platform/macos/font.rs1
-rw-r--r--components/gfx/platform/macos/font_template.rs2
-rw-r--r--components/gfx/text/glyph.rs13
-rw-r--r--components/gfx/text/shaping/harfbuzz.rs1
-rw-r--r--components/layout/Cargo.toml5
-rw-r--r--components/layout/animation.rs6
-rw-r--r--components/layout/construct.rs3
-rw-r--r--components/layout/css/matching.rs4
-rw-r--r--components/layout/display_list_builder.rs22
-rw-r--r--components/layout/flow.rs6
-rw-r--r--components/layout/flow_ref.rs8
-rw-r--r--components/layout/fragment.rs12
-rw-r--r--components/layout/generated_content.rs10
-rw-r--r--components/layout/incremental.rs5
-rw-r--r--components/layout/inline.rs12
-rw-r--r--components/layout/layout_task.rs5
-rw-r--r--components/layout/lib.rs9
-rw-r--r--components/layout/model.rs6
-rw-r--r--components/layout/sequential.rs5
-rw-r--r--components/layout/table.rs4
-rw-r--r--components/layout/table_wrapper.rs12
-rw-r--r--components/layout/text.rs14
-rw-r--r--components/layout/wrapper.rs2
-rw-r--r--components/net/Cargo.toml2
-rw-r--r--components/net/about_loader.rs3
-rw-r--r--components/net/cookie.rs20
-rw-r--r--components/net/data_loader.rs5
-rw-r--r--components/net/fetch/cors_cache.rs1
-rw-r--r--components/net/fetch/response.rs3
-rw-r--r--components/net/file_loader.rs1
-rw-r--r--components/net/http_loader.rs21
-rw-r--r--components/net/lib.rs7
-rw-r--r--components/net/resource_task.rs11
-rw-r--r--components/net_traits/image/base.rs3
-rw-r--r--components/net_traits/lib.rs6
-rw-r--r--components/plugins/casing.rs9
-rw-r--r--components/plugins/jstraceable.rs9
-rw-r--r--components/plugins/lib.rs2
-rw-r--r--components/plugins/lints/unrooted_must_root.rs6
-rw-r--r--components/plugins/utils.rs12
-rw-r--r--components/profile/lib.rs6
-rw-r--r--components/profile/mem.rs11
-rw-r--r--components/profile/time.rs11
-rw-r--r--components/profile_traits/time.rs2
-rw-r--r--components/script/Cargo.toml6
-rw-r--r--components/script/cors.rs9
-rw-r--r--components/script/dom/activation.rs2
-rw-r--r--components/script/dom/bindings/conversions.rs5
-rw-r--r--components/script/dom/bindings/js.rs1
-rw-r--r--components/script/dom/bindings/num.rs2
-rw-r--r--components/script/dom/bindings/refcounted.rs1
-rw-r--r--components/script/dom/bindings/trace.rs6
-rw-r--r--components/script/dom/bindings/utils.rs2
-rw-r--r--components/script/dom/blob.rs2
-rw-r--r--components/script/dom/canvasrenderingcontext2d.rs3
-rw-r--r--components/script/dom/dedicatedworkerglobalscope.rs1
-rw-r--r--components/script/dom/document.rs2
-rw-r--r--components/script/dom/domrect.rs1
-rw-r--r--components/script/dom/element.rs11
-rw-r--r--components/script/dom/formdata.rs2
-rw-r--r--components/script/dom/htmlanchorelement.rs2
-rw-r--r--components/script/dom/htmlcollection.rs6
-rw-r--r--components/script/dom/htmlelement.rs2
-rw-r--r--components/script/dom/imagedata.rs2
-rw-r--r--components/script/dom/keyboardevent.rs2
-rw-r--r--components/script/dom/node.rs6
-rw-r--r--components/script/dom/textencoder.rs2
-rw-r--r--components/script/dom/userscripts.rs2
-rw-r--r--components/script/dom/webglrenderingcontext.rs1
-rw-r--r--components/script/dom/window.rs1
-rw-r--r--components/script/dom/xmlhttprequest.rs29
-rw-r--r--components/script/horribly_inefficient_timers.rs31
-rw-r--r--components/script/layout_interface.rs9
-rw-r--r--components/script/lib.rs9
-rw-r--r--components/script/page.rs1
-rw-r--r--components/script/parse/html.rs11
-rw-r--r--components/script/script_task.rs10
-rw-r--r--components/script/textinput.rs3
-rw-r--r--components/script/timers.rs13
-rw-r--r--components/servo/Cargo.lock723
-rw-r--r--components/servo/lib.rs1
-rw-r--r--components/servo/main.rs12
-rw-r--r--components/style/Cargo.toml5
-rw-r--r--components/style/animation.rs89
-rw-r--r--components/style/build.rs2
-rw-r--r--components/style/legacy.rs26
-rw-r--r--components/style/lib.rs3
-rw-r--r--components/style/node.rs2
-rw-r--r--components/style/properties.mako.rs292
-rw-r--r--components/style/selector_matching.rs6
-rw-r--r--components/style/stylesheets.rs4
-rw-r--r--components/style/values.rs170
-rw-r--r--components/util/Cargo.toml9
-rw-r--r--components/util/bezier.rs29
-rw-r--r--components/util/cursor.rs5
-rw-r--r--components/util/deque/mod.rs10
-rw-r--r--components/util/geometry.rs69
-rw-r--r--components/util/lib.rs24
-rw-r--r--components/util/mem.rs1
-rw-r--r--components/util/opts.rs6
-rw-r--r--components/util/range.rs179
-rw-r--r--components/util/resource_files.rs4
-rw-r--r--components/util/str.rs12
-rw-r--r--components/util/taskpool.rs4
-rw-r--r--components/util/vec.rs60
-rw-r--r--components/webdriver_server/lib.rs9
-rw-r--r--components/webdriver_traits/Cargo.toml2
-rw-r--r--components/webdriver_traits/lib.rs2
-rw-r--r--ports/cef/Cargo.lock714
-rw-r--r--ports/cef/Cargo.toml4
-rw-r--r--ports/cef/lib.rs12
-rw-r--r--ports/cef/string.rs6
-rw-r--r--ports/cef/string_multimap.rs9
-rw-r--r--ports/cef/window.rs58
-rw-r--r--ports/cef/wrappers.rs6
-rw-r--r--ports/glutin/lib.rs2
-rw-r--r--ports/glutin/window.rs19
-rw-r--r--ports/gonk/Cargo.lock705
-rw-r--r--ports/gonk/Cargo.toml1
-rw-r--r--ports/gonk/src/input.rs13
-rw-r--r--ports/gonk/src/lib.rs3
-rw-r--r--ports/gonk/src/main.rs4
-rw-r--r--ports/gonk/src/window.rs8
-rw-r--r--rust-snapshot-hash2
m---------support/android-rs-glue0
-rw-r--r--tests/reftest.rs11
-rw-r--r--tests/unit/net/cookie.rs2
-rw-r--r--tests/unit/net/lib.rs2
-rw-r--r--tests/unit/net/mime_classifier.rs16
-rw-r--r--tests/unit/net/resource_task.rs2
-rw-r--r--tests/unit/style/Cargo.toml4
-rw-r--r--tests/unit/util/vec.rs24
-rw-r--r--tests/wpt/metadata/encoding/api-replacement-encodings.html.ini5
-rw-r--r--tests/wpt/metadata/encoding/textdecoder-labels.html.ini530
-rw-r--r--tests/wpt/metadata/encoding/textencoder-constructor-non-utf.html.ini8
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini24
-rw-r--r--tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/131.html.ini5
-rw-r--r--tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/133.html.ini5
-rw-r--r--tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/137.html.ini5
-rw-r--r--tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/145.html.ini5
-rw-r--r--tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini5
168 files changed, 2237 insertions, 2398 deletions
diff --git a/cargo-nightly-build b/cargo-nightly-build
index d9ca78f0ecd..6e6ac373f0d 100644
--- a/cargo-nightly-build
+++ b/cargo-nightly-build
@@ -1 +1 @@
-2015-03-11
+2015-04-14
diff --git a/components/canvas/Cargo.toml b/components/canvas/Cargo.toml
index b3f0198396e..adca541b100 100644
--- a/components/canvas/Cargo.toml
+++ b/components/canvas/Cargo.toml
@@ -10,9 +10,6 @@ path = "lib.rs"
[dependencies.azure]
git = "https://github.com/servo/rust-azure"
-[dependencies.cssparser]
-git = "https://github.com/servo/rust-cssparser"
-
[dependencies.geom]
git = "https://github.com/servo/rust-geom"
@@ -31,4 +28,8 @@ branch = "servo"
features = ["headless"]
[dependencies.offscreen_gl_context]
-git = "https://github.com/ecoal95/rust-offscreen-rendering-context"
+git = "https://github.com/servo/rust-offscreen-rendering-context"
+
+[dependencies]
+cssparser = "0.3.1"
+num = "0.1.24"
diff --git a/components/canvas/canvas_paint_task.rs b/components/canvas/canvas_paint_task.rs
index 2740cdc330e..6906b96aa5c 100644
--- a/components/canvas/canvas_paint_task.rs
+++ b/components/canvas/canvas_paint_task.rs
@@ -13,13 +13,13 @@ use geom::point::Point2D;
use geom::rect::Rect;
use geom::size::Size2D;
use gfx::color;
+use num::ToPrimitive;
use util::task::spawn_named;
use util::vec::byte_swap;
use cssparser::RGBA;
use std::borrow::ToOwned;
use std::mem;
-use std::num::{Float, ToPrimitive};
use std::sync::mpsc::{channel, Sender};
impl<'a> CanvasPaintTask<'a> {
diff --git a/components/canvas/lib.rs b/components/canvas/lib.rs
index 17a5bcd0197..37aaef6d150 100644
--- a/components/canvas/lib.rs
+++ b/components/canvas/lib.rs
@@ -2,9 +2,8 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#![feature(collections)]
#![feature(core)]
-#![feature(std_misc)]
+#![feature(collections)]
#![feature(rustc_private)]
extern crate azure;
@@ -13,6 +12,7 @@ extern crate geom;
extern crate gfx;
extern crate util;
extern crate gleam;
+extern crate num;
extern crate offscreen_gl_context;
extern crate glutin;
diff --git a/components/canvas/webgl_paint_task.rs b/components/canvas/webgl_paint_task.rs
index bfb97c9e076..fa399663c5d 100644
--- a/components/canvas/webgl_paint_task.rs
+++ b/components/canvas/webgl_paint_task.rs
@@ -163,7 +163,7 @@ impl WebGLPaintTask {
}
fn get_attrib_location(&self, program_id: u32, name: String, chan: Sender<i32> ) {
- let attrib_location = gl::get_attrib_location(program_id, name.as_slice());
+ let attrib_location = gl::get_attrib_location(program_id, &name);
chan.send(attrib_location).unwrap();
}
@@ -178,7 +178,7 @@ impl WebGLPaintTask {
}
fn get_uniform_location(&self, program_id: u32, name: String, chan: Sender<u32>) {
- let uniform_location = gl::get_uniform_location(program_id, name.as_slice());
+ let uniform_location = gl::get_uniform_location(program_id, &name);
chan.send(uniform_location as u32).unwrap();
}
@@ -202,8 +202,7 @@ impl WebGLPaintTask {
let dst_start = y * stride;
let src_start = (height - y - 1) * stride;
let src_slice = &orig_pixels[src_start .. src_start + stride];
- copy_memory(&mut pixels[dst_start .. dst_start + stride],
- &src_slice[..stride]);
+ copy_memory(&src_slice[..stride], &mut pixels[dst_start .. dst_start + stride]);
}
// rgba -> bgra
@@ -213,7 +212,7 @@ impl WebGLPaintTask {
fn shader_source(&self, shader_id: u32, source_lines: Vec<String>) {
let mut lines: Vec<&[u8]> = source_lines.iter().map(|line| line.as_bytes()).collect();
- gl::shader_source(shader_id, lines.as_mut_slice());
+ gl::shader_source(shader_id, &mut lines);
}
fn uniform_4fv(&self, uniform_id: u32, data: Vec<f32>) {
diff --git a/components/compositing/Cargo.toml b/components/compositing/Cargo.toml
index c14652b1662..f035bc4ef17 100644
--- a/components/compositing/Cargo.toml
+++ b/components/compositing/Cargo.toml
@@ -59,7 +59,7 @@ git = "https://github.com/servo/rust-core-text"
git = "https://github.com/servo/gleam"
[dependencies.clipboard]
-git = "https://github.com/aweinstock314/rust-x11-clipboard"
+git = "https://github.com/servo/rust-x11-clipboard"
[dependencies]
url = "0.2.16"
diff --git a/components/compositing/compositor.rs b/components/compositing/compositor.rs
index 3c9bbc6b8fa..e09b0685d41 100644
--- a/components/compositing/compositor.rs
+++ b/components/compositing/compositor.rs
@@ -39,7 +39,6 @@ use std::cmp;
use std::collections::HashMap;
use std::collections::hash_map::Entry::{Occupied, Vacant};
use std::mem as std_mem;
-use std::num::Float;
use std::rc::Rc;
use std::slice::bytes::copy_memory;
use std::sync::mpsc::Sender;
@@ -1189,8 +1188,8 @@ impl<Window: WindowMethods> IOCompositor<Window> {
let dst_start = y * stride;
let src_start = (height - y - 1) * stride;
let src_slice = &orig_pixels[src_start .. src_start + stride];
- copy_memory(&mut pixels[dst_start .. dst_start + stride],
- &src_slice[..stride]);
+ copy_memory(&src_slice[..stride],
+ &mut pixels[dst_start .. dst_start + stride]);
}
let mut img = png::Image {
width: width as u32,
diff --git a/components/compositing/compositor_layer.rs b/components/compositing/compositor_layer.rs
index 04653bca346..b5234e9d09e 100644
--- a/components/compositing/compositor_layer.rs
+++ b/components/compositing/compositor_layer.rs
@@ -20,7 +20,6 @@ use script_traits::CompositorEvent::{ClickEvent, MouseDownEvent, MouseMoveEvent,
use script_traits::{ScriptControlChan, ConstellationControlMsg};
use msg::compositor_msg::{Epoch, LayerId, ScrollPolicy};
use msg::constellation_msg::PipelineId;
-use std::num::Float;
use std::rc::Rc;
pub struct CompositorData {
@@ -63,6 +62,7 @@ impl CompositorData {
Rc::new(Layer::new(Rect::from_untyped(&layer_properties.rect),
tile_size,
to_layers_color(&layer_properties.background_color),
+ 1.0,
new_compositor_data))
}
}
diff --git a/components/compositing/lib.rs b/components/compositing/lib.rs
index 09a7eae774a..2b3a4172403 100644
--- a/components/compositing/lib.rs
+++ b/components/compositing/lib.rs
@@ -4,10 +4,7 @@
#![feature(box_syntax)]
#![feature(core)]
-#![feature(io)]
-#![feature(old_io)]
#![feature(rustc_private)]
-#![feature(std_misc)]
#[macro_use]
extern crate log;
diff --git a/components/compositing/scrolling.rs b/components/compositing/scrolling.rs
index 89890fd2b27..11a0b8721f6 100644
--- a/components/compositing/scrolling.rs
+++ b/components/compositing/scrolling.rs
@@ -6,10 +6,8 @@
use compositor_task::{CompositorProxy, Msg};
-use std::old_io::timer;
use std::sync::mpsc::{Receiver, Sender, channel};
-use std::thread::Builder;
-use std::time::duration::Duration;
+use std::thread::{Builder, sleep_ms};
use time;
/// The amount of time in nanoseconds that we give to the painting thread to paint new tiles upon
@@ -61,8 +59,8 @@ impl ScrollingTimer {
match self.receiver.recv() {
Ok(ToScrollingTimerMsg::ScrollEventProcessedMsg(timestamp)) => {
let target = timestamp as i64 + TIMEOUT;
- let delta = target - (time::precise_time_ns() as i64);
- timer::sleep(Duration::nanoseconds(delta));
+ let delta_ns = target - (time::precise_time_ns() as i64);
+ sleep_ms((delta_ns / 1000) as u32);
self.compositor_proxy.send(Msg::ScrollTimeout(timestamp));
}
Ok(ToScrollingTimerMsg::ExitMsg) | Err(_) => break,
diff --git a/components/devtools/actor.rs b/components/devtools/actor.rs
index 1fdd2af5c14..ee12104b209 100644
--- a/components/devtools/actor.rs
+++ b/components/devtools/actor.rs
@@ -8,6 +8,7 @@ use rustc_serialize::json;
use std::any::{Any, TypeId};
use std::collections::HashMap;
use std::cell::{Cell, RefCell};
+use std::marker::Reflect;
use std::mem::{replace, transmute};
use std::net::TcpStream;
use std::raw::TraitObject;
@@ -26,10 +27,10 @@ pub trait Actor: Any {
fn name(&self) -> String;
}
-impl Actor {
+impl Actor + Send {
/// Returns true if the boxed type is the same as `T`
#[inline]
- pub fn is<T: 'static>(&self) -> bool {
+ pub fn is<T: Reflect + 'static>(&self) -> bool {
// Get TypeId of the type this function is instantiated with
let t = TypeId::of::<T>();
@@ -43,7 +44,7 @@ impl Actor {
/// Returns some reference to the boxed value if it is of type `T`, or
/// `None` if it isn't.
#[inline]
- pub fn downcast_ref<T: 'static>(&self) -> Option<&T> {
+ pub fn downcast_ref<T: Reflect + 'static>(&self) -> Option<&T> {
if self.is::<T>() {
unsafe {
// Get the raw representation of the trait object
@@ -60,7 +61,7 @@ impl Actor {
/// Returns some mutable reference to the boxed value if it is of type `T`, or
/// `None` if it isn't.
#[inline]
- pub fn downcast_mut<T: 'static>(&mut self) -> Option<&mut T> {
+ pub fn downcast_mut<T: Reflect + 'static>(&mut self) -> Option<&mut T> {
if self.is::<T>() {
unsafe {
// Get the raw representation of the trait object
@@ -168,13 +169,13 @@ impl ActorRegistry {
}
/// Find an actor by registered name
- pub fn find<'a, T: 'static>(&'a self, name: &str) -> &'a T {
+ pub fn find<'a, T: Reflect + 'static>(&'a self, name: &str) -> &'a T {
let actor = self.actors.get(&name.to_string()).unwrap();
actor.downcast_ref::<T>().unwrap()
}
/// Find an actor by registered name
- pub fn find_mut<'a, T: 'static>(&'a mut self, name: &str) -> &'a mut T {
+ pub fn find_mut<'a, T: Reflect + 'static>(&'a mut self, name: &str) -> &'a mut T {
let actor = self.actors.get_mut(&name.to_string()).unwrap();
actor.downcast_mut::<T>().unwrap()
}
diff --git a/components/devtools/actors/console.rs b/components/devtools/actors/console.rs
index 4939cfa47da..834ccc99235 100644
--- a/components/devtools/actors/console.rs
+++ b/components/devtools/actors/console.rs
@@ -18,7 +18,6 @@ use collections::BTreeMap;
use core::cell::RefCell;
use rustc_serialize::json::{self, Json, ToJson};
use std::net::TcpStream;
-use std::num::Float;
use std::sync::mpsc::{channel, Sender};
#[derive(RustcEncodable)]
@@ -251,7 +250,7 @@ impl Actor for ConsoleActor {
m.insert("type".to_string(), "Infinity".to_string().to_json());
}
Json::Object(m)
- } else if val == Float::neg_zero() {
+ } else if val == 0. && val.is_sign_negative() {
let mut m = BTreeMap::new();
m.insert("type".to_string(), "-0".to_string().to_json());
Json::Object(m)
diff --git a/components/devtools/actors/inspector.rs b/components/devtools/actors/inspector.rs
index 5519652cf06..3dbaf5c6d43 100644
--- a/components/devtools/actors/inspector.rs
+++ b/components/devtools/actors/inspector.rs
@@ -16,7 +16,6 @@ use msg::constellation_msg::PipelineId;
use rustc_serialize::json::{self, Json, ToJson};
use std::cell::RefCell;
use std::net::TcpStream;
-use std::num::Float;
use std::sync::mpsc::{channel, Sender};
pub struct InspectorActor {
diff --git a/components/devtools/actors/timeline.rs b/components/devtools/actors/timeline.rs
index 6ea92626ae3..12c361b279d 100644
--- a/components/devtools/actors/timeline.rs
+++ b/components/devtools/actors/timeline.rs
@@ -2,15 +2,14 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use core::iter::FromIterator;
use msg::constellation_msg::PipelineId;
use rustc_serialize::{json, Encoder, Encodable};
use std::cell::RefCell;
use std::collections::{HashMap, VecDeque};
+use std::mem;
use std::net::TcpStream;
-use std::old_io::timer::sleep;
+use std::thread::sleep_ms;
use std::sync::{Arc, Mutex};
-use std::time::duration::Duration;
use std::sync::mpsc::{channel, Sender, Receiver};
use time::PreciseTime;
@@ -117,7 +116,7 @@ impl Encodable for HighResolutionStamp {
}
}
-static DEFAULT_TIMELINE_DATA_PULL_TIMEOUT: usize = 200; //ms
+static DEFAULT_TIMELINE_DATA_PULL_TIMEOUT: u32 = 200; //ms
impl TimelineActor {
pub fn new(name: String,
@@ -214,7 +213,7 @@ impl TimelineActor {
}
emitter.send();
- sleep(Duration::milliseconds(DEFAULT_TIMELINE_DATA_PULL_TIMEOUT as i64));
+ sleep_ms(DEFAULT_TIMELINE_DATA_PULL_TIMEOUT);
}
});
}
@@ -344,7 +343,7 @@ impl Emitter {
let end_time = PreciseTime::now();
let reply = MarkersEmitterReply {
__type__: "markers".to_string(),
- markers: Vec::from_iter(self.markers.drain()),
+ markers: mem::replace(&mut self.markers, Vec::new()),
from: self.from.clone(),
endTime: HighResolutionStamp::new(self.start_stamp, end_time),
};
diff --git a/components/devtools/lib.rs b/components/devtools/lib.rs
index e2d06a7665b..348c4fdeb12 100644
--- a/components/devtools/lib.rs
+++ b/components/devtools/lib.rs
@@ -11,10 +11,7 @@
#![crate_type = "rlib"]
#![feature(box_syntax, core, rustc_private)]
-#![feature(collections, std_misc)]
-#![feature(io)]
-#![feature(net)]
-#![feature(old_io)]
+#![feature(collections)]
#![allow(non_snake_case)]
@@ -24,7 +21,7 @@ extern crate log;
extern crate collections;
extern crate core;
extern crate devtools_traits;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate msg;
extern crate time;
extern crate util;
@@ -46,6 +43,7 @@ use util::task::spawn_named;
use std::borrow::ToOwned;
use std::cell::RefCell;
use std::collections::HashMap;
+use std::error::Error;
use std::sync::mpsc::{channel, Receiver, Sender, RecvError};
use std::net::{TcpListener, TcpStream, Shutdown};
use std::sync::{Arc, Mutex};
@@ -128,7 +126,7 @@ fn run_server(sender: Sender<DevtoolsControlMsg>,
'outer: loop {
match stream.read_json_packet() {
- Ok(json_packet) => {
+ Ok(Some(json_packet)) => {
match actors.lock().unwrap().handle_message(json_packet.as_object().unwrap(),
&mut stream) {
Ok(()) => {},
@@ -139,6 +137,10 @@ fn run_server(sender: Sender<DevtoolsControlMsg>,
}
}
}
+ Ok(None) => {
+ println!("error: EOF");
+ break 'outer
+ }
Err(e) => {
println!("error: {}", e.description());
break 'outer
@@ -244,7 +246,7 @@ fn run_server(sender: Sender<DevtoolsControlMsg>,
id: PipelineId,
actor_pipelines: &HashMap<PipelineId, String>) -> String {
let actors = actors.lock().unwrap();
- let ref tab_actor_name = (*actor_pipelines)[id];
+ let ref tab_actor_name = (*actor_pipelines)[&id];
let tab_actor = actors.find::<TabActor>(tab_actor_name);
let console_actor_name = tab_actor.console.clone();
return console_actor_name;
diff --git a/components/devtools/protocol.rs b/components/devtools/protocol.rs
index f8dfea7eac6..daa7c19fba6 100644
--- a/components/devtools/protocol.rs
+++ b/components/devtools/protocol.rs
@@ -8,13 +8,12 @@
use rustc_serialize::{json, Encodable};
use rustc_serialize::json::Json;
-use std::io::{self, Read, ReadExt, Write, ErrorKind};
+use std::io::{self, Read, Write};
use std::net::TcpStream;
-use std::num;
pub trait JsonPacketStream {
fn write_json_packet<'a, T: Encodable>(&mut self, obj: &T);
- fn read_json_packet(&mut self) -> io::Result<Json>;
+ fn read_json_packet(&mut self) -> io::Result<Option<Json>>;
}
impl JsonPacketStream for TcpStream {
@@ -26,25 +25,25 @@ impl JsonPacketStream for TcpStream {
self.write_all(s.as_bytes()).unwrap();
}
- fn read_json_packet<'a>(&mut self) -> io::Result<Json> {
+ fn read_json_packet<'a>(&mut self) -> io::Result<Option<Json>> {
// https://wiki.mozilla.org/Remote_Debugging_Protocol_Stream_Transport
// In short, each JSON packet is [ascii length]:[JSON data of given length]
let mut buffer = vec!();
loop {
let mut buf = [0];
let byte = match try!(self.read(&mut buf)) {
- 0 => return Err(io::Error::new(ErrorKind::Other, "EOF", None)),
+ 0 => return Ok(None), // EOF
1 => buf[0],
_ => unreachable!(),
};
match byte {
b':' => {
let packet_len_str = String::from_utf8(buffer).unwrap();
- let packet_len = num::from_str_radix(&packet_len_str, 10).unwrap();
+ let packet_len = u64::from_str_radix(&packet_len_str, 10).unwrap();
let mut packet = String::new();
self.take(packet_len).read_to_string(&mut packet).unwrap();
println!("{}", packet);
- return Ok(Json::from_str(&packet).unwrap())
+ return Ok(Some(Json::from_str(&packet).unwrap()))
},
c => buffer.push(c),
}
diff --git a/components/devtools_traits/lib.rs b/components/devtools_traits/lib.rs
index 659c6983e36..9be18bf5e19 100644
--- a/components/devtools_traits/lib.rs
+++ b/components/devtools_traits/lib.rs
@@ -9,12 +9,10 @@
#![crate_name = "devtools_traits"]
#![crate_type = "rlib"]
-#![feature(net)]
-
#![allow(non_snake_case)]
extern crate msg;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate url;
extern crate util;
extern crate time;
diff --git a/components/gfx/Cargo.toml b/components/gfx/Cargo.toml
index aaefa6c900c..a8551de5965 100644
--- a/components/gfx/Cargo.toml
+++ b/components/gfx/Cargo.toml
@@ -61,7 +61,6 @@ git = "https://github.com/servo/rust-core-text"
[dependencies.skia]
git = "https://github.com/servo/skia"
-branch = "upstream-2014-06-16"
[dependencies.script_traits]
path = "../script_traits"
diff --git a/components/gfx/display_list/mod.rs b/components/gfx/display_list/mod.rs
index b18a6bc054a..f3cf053daa8 100644
--- a/components/gfx/display_list/mod.rs
+++ b/components/gfx/display_list/mod.rs
@@ -40,7 +40,7 @@ use util::linked_list::prepend_from;
use util::geometry::{self, Au, MAX_RECT, ZERO_RECT};
use util::mem::HeapSizeOf;
use util::range::Range;
-use util::smallvec::{SmallVec, SmallVec8};
+use util::smallvec::SmallVec8;
use std::fmt;
use std::slice::Iter;
use std::sync::Arc;
@@ -305,8 +305,7 @@ impl StackingContext {
for kid in display_list.children.iter() {
positioned_children.push((*kid).clone());
}
- positioned_children.as_slice_mut()
- .sort_by(|this, other| this.z_index.cmp(&other.z_index));
+ positioned_children.sort_by(|this, other| this.z_index.cmp(&other.z_index));
// Set up our clip rect and transform.
let old_transform = paint_subcontext.draw_target.get_transform();
diff --git a/components/gfx/filters.rs b/components/gfx/filters.rs
index cfabcf20324..2882adfb323 100644
--- a/components/gfx/filters.rs
+++ b/components/gfx/filters.rs
@@ -10,7 +10,6 @@ use azure::azure_hl::{FilterNode, FilterType, LinearTransferAttribute, LinearTra
use azure::azure_hl::{Matrix5x4, TableTransferAttribute, TableTransferInput};
use azure::azure_hl::{GaussianBlurAttribute, GaussianBlurInput};
-use std::num::Float;
use style::computed_values::filter;
use util::geometry::Au;
diff --git a/components/gfx/font.rs b/components/gfx/font.rs
index a44b08bce1e..52c3f95c53a 100644
--- a/components/gfx/font.rs
+++ b/components/gfx/font.rs
@@ -9,7 +9,7 @@ use std::slice;
use std::rc::Rc;
use std::cell::RefCell;
use util::cache::HashCache;
-use util::smallvec::{SmallVec, SmallVec8};
+use util::smallvec::SmallVec8;
use style::computed_values::{font_stretch, font_variant, font_weight};
use style::properties::style_structs::Font as FontStyle;
use std::sync::Arc;
@@ -185,7 +185,7 @@ impl Font {
pub fn glyph_index(&self, codepoint: char) -> Option<GlyphId> {
let codepoint = match self.variant {
- font_variant::T::small_caps => codepoint.to_uppercase(),
+ font_variant::T::small_caps => codepoint.to_uppercase().next().unwrap(), //FIXME: #5938
font_variant::T::normal => codepoint,
};
self.handle.glyph_index(codepoint)
@@ -222,7 +222,8 @@ impl FontGroup {
assert!(self.fonts.len() > 0);
// TODO(Issue #177): Actually fall back through the FontGroup when a font is unsuitable.
- TextRun::new(&mut *self.fonts.get(0).borrow_mut(), text.clone(), options)
+ let mut font_borrow = self.fonts[0].borrow_mut();
+ TextRun::new(&mut *font_borrow, text.clone(), options)
}
}
diff --git a/components/gfx/font_cache_task.rs b/components/gfx/font_cache_task.rs
index 250eb484a55..5732e6a79cf 100644
--- a/components/gfx/font_cache_task.rs
+++ b/components/gfx/font_cache_task.rs
@@ -191,7 +191,7 @@ impl FontCache {
let s = self.local_families.get_mut(family_name).unwrap();
if s.templates.len() == 0 {
- get_variations_for_family(&family_name, |path| {
+ get_variations_for_family(family_name, |path| {
s.add_template(&path, None);
});
}
diff --git a/components/gfx/font_context.rs b/components/gfx/font_context.rs
index 534c844cb87..b10a90c0fac 100644
--- a/components/gfx/font_context.rs
+++ b/components/gfx/font_context.rs
@@ -15,7 +15,7 @@ use platform::font_template::FontTemplateData;
use util::cache::HashCache;
use util::fnv::FnvHasher;
use util::geometry::Au;
-use util::smallvec::{SmallVec, SmallVec8};
+use util::smallvec::SmallVec8;
use std::borrow::{self, ToOwned};
use std::cell::RefCell;
@@ -45,7 +45,7 @@ fn create_scaled_font(template: &Arc<FontTemplateData>, pt_size: Au) -> ScaledFo
ScaledFont::new(BackendType::Skia, &cgfont, pt_size.to_subpx() as AzFloat)
}
-static SMALL_CAPS_SCALE_FACTOR: f64 = 0.8; // Matches FireFox (see gfxFont.h)
+static SMALL_CAPS_SCALE_FACTOR: f32 = 0.8; // Matches FireFox (see gfxFont.h)
struct LayoutFontCacheEntry {
family: String,
@@ -160,7 +160,7 @@ impl FontContext {
let mut fonts = SmallVec8::new();
- for family in style.font_family.iter() {
+ for family in style.font_family.0.iter() {
// GWTODO: Check on real pages if this is faster as Vec() or HashMap().
let mut cache_hit = false;
for cached_font_entry in self.layout_font_cache.iter() {
diff --git a/components/gfx/lib.rs b/components/gfx/lib.rs
index d44d52b5410..52d5a705de8 100644
--- a/components/gfx/lib.rs
+++ b/components/gfx/lib.rs
@@ -6,12 +6,10 @@
#![feature(box_syntax)]
#![feature(collections)]
#![feature(core)]
-#![cfg_attr(any(target_os="linux", target_os = "android"), feature(io))]
#![feature(plugin)]
#![feature(rustc_private)]
#![feature(std_misc)]
-#![feature(unicode)]
-#![feature(unsafe_destructor)]
+#![feature(str_char)]
#![plugin(plugins)]
@@ -28,8 +26,7 @@ extern crate stb_image;
extern crate png;
extern crate profile_traits;
extern crate script_traits;
-extern crate "rustc-serialize" as rustc_serialize;
-extern crate unicode;
+extern crate rustc_serialize;
extern crate net_traits;
#[macro_use]
extern crate util;
diff --git a/components/gfx/paint_context.rs b/components/gfx/paint_context.rs
index 1999cc5cf66..6130cc7a1f7 100644
--- a/components/gfx/paint_context.rs
+++ b/components/gfx/paint_context.rs
@@ -34,7 +34,6 @@ use png::PixelsByColorType;
use std::default::Default;
use std::f32;
use std::mem;
-use std::num::Float;
use std::ptr;
use std::sync::Arc;
use style::computed_values::{border_style, filter, image_rendering, mix_blend_mode};
diff --git a/components/gfx/paint_task.rs b/components/gfx/paint_task.rs
index ba07f89bfa4..fbdfbe82d5d 100644
--- a/components/gfx/paint_task.rs
+++ b/components/gfx/paint_task.rs
@@ -33,7 +33,6 @@ use std::sync::Arc;
use std::sync::mpsc::{Receiver, Sender, channel};
use util::geometry::{Au, ZERO_POINT};
use util::opts;
-use util::smallvec::SmallVec;
use util::task::spawn_named_with_send_on_failure;
use util::task_state;
use util::task::spawn_named;
diff --git a/components/gfx/platform/freetype/font.rs b/components/gfx/platform/freetype/font.rs
index 60587acb297..2d4b760294f 100644
--- a/components/gfx/platform/freetype/font.rs
+++ b/components/gfx/platform/freetype/font.rs
@@ -28,7 +28,6 @@ use freetype::tt_os2::TT_OS2;
use libc::c_char;
use std::mem;
-use std::num::Float;
use std::ptr;
use std::sync::Arc;
@@ -56,7 +55,6 @@ pub struct FontHandle {
pub handle: FontContextHandle
}
-#[unsafe_destructor]
impl Drop for FontHandle {
fn drop(&mut self) {
assert!(!self.face.is_null());
diff --git a/components/gfx/platform/macos/font.rs b/components/gfx/platform/macos/font.rs
index d38a3410260..75115d287be 100644
--- a/components/gfx/platform/macos/font.rs
+++ b/components/gfx/platform/macos/font.rs
@@ -27,7 +27,6 @@ use core_text::font::CTFont;
use core_text::font_descriptor::{SymbolicTraitAccessors, TraitAccessors};
use core_text::font_descriptor::{kCTFontDefaultOrientation};
-use std::num::Float;
use std::ptr;
use std::sync::Arc;
diff --git a/components/gfx/platform/macos/font_template.rs b/components/gfx/platform/macos/font_template.rs
index a4cda3b5a66..5bb3e1f6bfe 100644
--- a/components/gfx/platform/macos/font_template.rs
+++ b/components/gfx/platform/macos/font_template.rs
@@ -34,7 +34,7 @@ impl FontTemplateData {
}
},
None => {
- Some(core_text::font::new_from_name(&identifier, 0.0).unwrap())
+ Some(core_text::font::new_from_name(identifier, 0.0).unwrap())
}
};
diff --git a/components/gfx/text/glyph.rs b/components/gfx/text/glyph.rs
index d69236b0ef5..131ac03d309 100644
--- a/components/gfx/text/glyph.rs
+++ b/components/gfx/text/glyph.rs
@@ -6,8 +6,6 @@ use geom::point::Point2D;
use std::cmp::{Ordering, PartialOrd};
use std::iter::repeat;
use std::mem;
-use std::num::{ToPrimitive, NumCast};
-use std::ops::{Add, Sub, Mul, Neg, Div, Rem, BitAnd, BitOr, BitXor, Shl, Shr, Not};
use std::u16;
use std::vec::Vec;
use util::geometry::Au;
@@ -156,10 +154,9 @@ fn is_simple_glyph_id(id: GlyphId) -> bool {
}
fn is_simple_advance(advance: Au) -> bool {
- match advance.to_u32() {
- Some(unsigned_au) =>
- (unsigned_au & (GLYPH_ADVANCE_MASK >> GLYPH_ADVANCE_SHIFT)) == unsigned_au,
- None => false
+ advance >= Au(0) && {
+ let unsigned_au = advance.0 as u32;
+ (unsigned_au & (GLYPH_ADVANCE_MASK >> GLYPH_ADVANCE_SHIFT)) == unsigned_au
}
}
@@ -171,7 +168,7 @@ impl GlyphEntry {
// getter methods
#[inline(always)]
fn advance(&self) -> Au {
- NumCast::from((self.value & GLYPH_ADVANCE_MASK) >> GLYPH_ADVANCE_SHIFT).unwrap()
+ Au(((self.value & GLYPH_ADVANCE_MASK) >> GLYPH_ADVANCE_SHIFT) as i32)
}
fn id(&self) -> GlyphId {
@@ -731,7 +728,7 @@ impl<'a> GlyphStore {
// FIXME(pcwalton): This can overflow for very large font-sizes.
let advance =
((entry.value & GLYPH_ADVANCE_MASK) >> GLYPH_ADVANCE_SHIFT) +
- Au::from_frac_px(space).to_u32().unwrap();
+ Au::from_frac_px(space).0 as u32;
entry.value = (entry.value & !GLYPH_ADVANCE_MASK) |
(advance << GLYPH_ADVANCE_SHIFT);
}
diff --git a/components/gfx/text/shaping/harfbuzz.rs b/components/gfx/text/shaping/harfbuzz.rs
index 4f473b96174..37b20af17ec 100644
--- a/components/gfx/text/shaping/harfbuzz.rs
+++ b/components/gfx/text/shaping/harfbuzz.rs
@@ -154,7 +154,6 @@ pub struct Shaper {
font_and_shaping_options: Box<FontAndShapingOptions>,
}
-#[unsafe_destructor]
impl Drop for Shaper {
fn drop(&mut self) {
unsafe {
diff --git a/components/layout/Cargo.toml b/components/layout/Cargo.toml
index 27ca46a7f49..fa527f4d5c9 100644
--- a/components/layout/Cargo.toml
+++ b/components/layout/Cargo.toml
@@ -43,9 +43,6 @@ path = "../profile_traits"
[dependencies.util]
path = "../util"
-[dependencies.cssparser]
-git = "https://github.com/servo/rust-cssparser"
-
[dependencies.selectors]
git = "https://github.com/servo/rust-selectors"
@@ -70,4 +67,4 @@ url = "0.2.16"
bitflags = "*"
rustc-serialize = "0.3"
libc = "*"
-
+cssparser = "0.3.1"
diff --git a/components/layout/animation.rs b/components/layout/animation.rs
index 9cd46d4bcde..4bf5dd7ab6e 100644
--- a/components/layout/animation.rs
+++ b/components/layout/animation.rs
@@ -31,7 +31,7 @@ pub fn start_transitions_if_applicable(new_animations_sender: &Sender<Animation>
property_animation.update(new_style, 0.0);
// Kick off the animation.
- let now = clock_ticks::precise_time_s();
+ let now = clock_ticks::precise_time_s() as f32;
let animation_style = new_style.get_animation();
let start_time = now + animation_style.transition_delay.0.get_mod(i).seconds();
new_animations_sender.send(Animation {
@@ -66,7 +66,7 @@ pub fn recalc_style_for_animation(flow: &mut Flow, animation: &Animation) {
return
}
- let now = clock_ticks::precise_time_s();
+ let now = clock_ticks::precise_time_s() as f32;
let mut progress = (now - animation.start_time) / animation.duration();
if progress > 1.0 {
progress = 1.0
@@ -91,7 +91,7 @@ pub fn recalc_style_for_animation(flow: &mut Flow, animation: &Animation) {
/// Handles animation updates.
pub fn tick_all_animations(layout_task: &LayoutTask, rw_data: &mut LayoutTaskData) {
let running_animations = mem::replace(&mut rw_data.running_animations, Vec::new());
- let now = clock_ticks::precise_time_s();
+ let now = clock_ticks::precise_time_s() as f32;
for running_animation in running_animations.into_iter() {
layout_task.tick_animation(&running_animation, rw_data);
diff --git a/components/layout/construct.rs b/components/layout/construct.rs
index c0480e8562c..af6ac911b5b 100644
--- a/components/layout/construct.rs
+++ b/components/layout/construct.rs
@@ -1480,13 +1480,12 @@ impl FlowConstructionUtils for FlowRef {
///
/// This must not be public because only the layout constructor can do this.
fn add_new_child(&mut self, mut new_child: FlowRef) {
- let base = flow::mut_base(&mut **self);
-
{
let kid_base = flow::mut_base(&mut *new_child);
kid_base.parallel.parent = parallel::mut_owned_flow_to_unsafe_flow(self);
}
+ let base = flow::mut_base(&mut **self);
base.children.push_back(new_child);
let _ = base.parallel.children_count.fetch_add(1, Ordering::Relaxed);
}
diff --git a/components/layout/css/matching.rs b/components/layout/css/matching.rs
index 27533070bdf..f3f29d1b2e7 100644
--- a/components/layout/css/matching.rs
+++ b/components/layout/css/matching.rs
@@ -34,7 +34,7 @@ use style::selector_matching::{Stylist, DeclarationBlock};
use util::arc_ptr_eq;
use util::cache::{LRUCache, SimpleHashCache};
use util::opts;
-use util::smallvec::{SmallVec, SmallVec16};
+use util::smallvec::SmallVec16;
use util::vec::ForgetfulSink;
pub struct ApplicableDeclarations {
@@ -689,7 +689,7 @@ impl<'ln> MatchMethods for LayoutNode<'ln> {
let mut damage = self.cascade_node_pseudo_element(
layout_context,
parent_style,
- applicable_declarations.normal.as_slice(),
+ &applicable_declarations.normal,
&mut layout_data.shared_data.style,
applicable_declarations_cache,
new_animations_sender,
diff --git a/components/layout/display_list_builder.rs b/components/layout/display_list_builder.rs
index bf819c4378d..b82852e24e3 100644
--- a/components/layout/display_list_builder.rs
+++ b/components/layout/display_list_builder.rs
@@ -39,8 +39,6 @@ use png::{self, PixelsByColorType};
use std::cmp;
use std::default::Default;
use std::iter::repeat;
-use std::num::Float;
-use std::num::ToPrimitive;
use std::sync::Arc;
use std::sync::mpsc::channel;
use style::computed_values::filter::Filter;
@@ -247,13 +245,13 @@ pub trait FragmentDisplayListBuilding {
fn handle_overlapping_radii(size: &Size2D<Au>, radii: &BorderRadii<Au>) -> BorderRadii<Au> {
// No two corners' border radii may add up to more than the length of the edge
// between them. To prevent that, all radii are scaled down uniformly.
- fn scale_factor(radius_a: Au, radius_b: Au, edge_length: Au) -> f64 {
+ fn scale_factor(radius_a: Au, radius_b: Au, edge_length: Au) -> f32 {
let required = radius_a + radius_b;
if required <= edge_length {
1.0
} else {
- to_frac_px(edge_length) / to_frac_px(required)
+ edge_length.to_frac32_px() / required.to_frac32_px()
}
}
@@ -503,10 +501,10 @@ impl FragmentDisplayListBuilding for Fragment {
// between the starting point and the ending point.
let delta = match gradient.angle_or_corner {
AngleOrCorner::Angle(angle) => {
- Point2D(Au((angle.radians().sin() *
- absolute_bounds.size.width.to_f64().unwrap() / 2.0) as i32),
- Au((-angle.radians().cos() *
- absolute_bounds.size.height.to_f64().unwrap() / 2.0) as i32))
+ Point2D(Au::from_frac32_px(angle.radians().sin() *
+ absolute_bounds.size.width.to_frac32_px() / 2.0),
+ Au::from_frac32_px(-angle.radians().cos() *
+ absolute_bounds.size.height.to_frac32_px() / 2.0))
}
AngleOrCorner::Corner(horizontal, vertical) => {
let x_factor = match horizontal {
@@ -517,14 +515,14 @@ impl FragmentDisplayListBuilding for Fragment {
VerticalDirection::Top => -1,
VerticalDirection::Bottom => 1,
};
- Point2D(Au(x_factor * absolute_bounds.size.width.to_i32().unwrap() / 2),
- Au(y_factor * absolute_bounds.size.height.to_i32().unwrap() / 2))
+ Point2D(absolute_bounds.size.width * x_factor / 2,
+ absolute_bounds.size.height * y_factor / 2)
}
};
// This is the length of the gradient line.
- let length = Au((delta.x.to_f64().unwrap() * 2.0).hypot(delta.y.to_f64().unwrap() * 2.0)
- as i32);
+ let length = Au::from_frac32_px(
+ (delta.x.to_frac32_px() * 2.0).hypot(delta.y.to_frac32_px() * 2.0));
// Determine the position of each stop per CSS-IMAGES § 3.4.
//
diff --git a/components/layout/flow.rs b/components/layout/flow.rs
index a745ca8010b..f868983e6c2 100644
--- a/components/layout/flow.rs
+++ b/components/layout/flow.rs
@@ -55,7 +55,6 @@ use rustc_serialize::{Encoder, Encodable};
use std::fmt;
use std::iter::Zip;
use std::mem;
-use std::num::FromPrimitive;
use std::raw;
use std::slice::IterMut;
use std::sync::Arc;
@@ -582,13 +581,13 @@ impl FlowFlags {
#[inline]
pub fn text_align(self) -> text_align::T {
- FromPrimitive::from_u32((self & TEXT_ALIGN).bits() >> TEXT_ALIGN_SHIFT).unwrap()
+ text_align::T::from_u32((self & TEXT_ALIGN).bits() >> TEXT_ALIGN_SHIFT).unwrap()
}
#[inline]
pub fn set_text_align(&mut self, value: text_align::T) {
*self = (*self & !TEXT_ALIGN) |
- FlowFlags::from_bits((value as u32) << TEXT_ALIGN_SHIFT).unwrap();
+ FlowFlags::from_bits(value.to_u32() << TEXT_ALIGN_SHIFT).unwrap();
}
#[inline]
@@ -876,7 +875,6 @@ impl Encodable for BaseFlow {
}
}
-#[unsafe_destructor]
impl Drop for BaseFlow {
fn drop(&mut self) {
if self.strong_ref_count.load(Ordering::SeqCst) != 0 &&
diff --git a/components/layout/flow_ref.rs b/components/layout/flow_ref.rs
index 9a8e2bb580e..6b323c15f6f 100644
--- a/components/layout/flow_ref.rs
+++ b/components/layout/flow_ref.rs
@@ -78,7 +78,8 @@ impl DerefMut for FlowRef {
impl Drop for FlowRef {
fn drop(&mut self) {
unsafe {
- if self.object.vtable.is_null() {
+ if self.object.vtable.is_null() ||
+ self.object.vtable as usize == mem::POST_DROP_USIZE {
return
}
if flow::base(&**self).strong_ref_count().fetch_sub(1, Ordering::Release) != 1 {
@@ -102,7 +103,7 @@ impl Drop for FlowRef {
let object_align = vtable[2];
let fake_data = heap::allocate(object_size, object_align);
- ptr::copy(fake_data, flow_ref.object.data as *const u8, object_size);
+ ptr::copy(flow_ref.object.data as *const u8, fake_data, object_size);
let fake_box = raw::TraitObject { vtable: flow_ref.object.vtable, data: fake_data as *mut () };
let fake_flow = mem::transmute::<raw::TraitObject, Box<Flow>>(fake_box);
@@ -181,7 +182,8 @@ impl Clone for WeakFlowRef {
impl Drop for WeakFlowRef {
fn drop(&mut self) {
unsafe {
- if self.object.vtable.is_null() {
+ if self.object.vtable.is_null() ||
+ self.object.vtable as usize == mem::POST_DROP_USIZE {
return
}
diff --git a/components/layout/fragment.rs b/components/layout/fragment.rs
index 7ad0e8895ad..ea090ea55ea 100644
--- a/components/layout/fragment.rs
+++ b/components/layout/fragment.rs
@@ -34,7 +34,6 @@ use std::borrow::ToOwned;
use std::cmp::{max, min};
use std::collections::LinkedList;
use std::fmt;
-use std::num::ToPrimitive;
use std::str::FromStr;
use std::sync::mpsc::Sender;
use std::sync::{Arc, Mutex};
@@ -51,7 +50,6 @@ use url::Url;
use util::geometry::{self, Au, ZERO_POINT};
use util::logical_geometry::{LogicalRect, LogicalSize, LogicalMargin, WritingMode};
use util::range::*;
-use util::smallvec::SmallVec;
use util::str::is_whitespace;
use util;
@@ -453,8 +451,8 @@ impl ReplacedImageFragmentInfo {
if intrinsic_height == Au(0) {
intrinsic_width
} else {
- let ratio = intrinsic_width.to_f32().unwrap() /
- intrinsic_height.to_f32().unwrap();
+ let ratio = intrinsic_width.to_frac32_px() /
+ intrinsic_height.to_frac32_px();
let specified_height = ReplacedImageFragmentInfo::style_length(
style_block_size,
@@ -468,7 +466,7 @@ impl ReplacedImageFragmentInfo {
style_min_block_size,
style_max_block_size,
Au(0));
- Au((specified_height.to_f32().unwrap() * ratio) as i32)
+ Au::from_frac32_px(specified_height.to_frac32_px() * ratio)
}
},
MaybeAuto::Specified(w) => w,
@@ -505,8 +503,8 @@ impl ReplacedImageFragmentInfo {
MaybeAuto::Auto => {
let intrinsic_width = fragment_inline_size;
let intrinsic_height = fragment_block_size;
- let scale = intrinsic_width.to_f32().unwrap() / inline_size.to_f32().unwrap();
- Au((intrinsic_height.to_f32().unwrap() / scale) as i32)
+ let scale = intrinsic_width.to_frac32_px() / inline_size.to_frac32_px();
+ Au::from_frac32_px(intrinsic_height.to_frac32_px() / scale)
},
MaybeAuto::Specified(h) => {
h
diff --git a/components/layout/generated_content.rs b/components/layout/generated_content.rs
index d0cf0af98d1..e2ba7dbfe4b 100644
--- a/components/layout/generated_content.rs
+++ b/components/layout/generated_content.rs
@@ -21,7 +21,7 @@ use std::sync::Arc;
use style::computed_values::content::ContentItem;
use style::computed_values::{display, list_style_type};
use style::properties::ComputedValues;
-use util::smallvec::{SmallVec, SmallVec8};
+use util::smallvec::SmallVec8;
// Decimal styles per CSS-COUNTER-STYLES § 6.1:
static DECIMAL: [char; 10] = [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' ];
@@ -530,9 +530,7 @@ fn push_alphabetic_representation(mut value: i32, system: &[char], accumulator:
value = ((value as usize) / system.len()) as i32;
}
- for i in (0..string.len()).rev() {
- accumulator.push(*string.get(i))
- }
+ accumulator.extend(string.iter().cloned().rev())
}
/// Pushes the string that represents the value rendered using the given *numeric system* onto the
@@ -554,8 +552,6 @@ fn push_numeric_representation(mut value: i32, system: &[char], accumulator: &mu
}
// Step 3.
- for &ch in string.iter().rev() {
- accumulator.push(ch)
- }
+ accumulator.extend(string.iter().cloned().rev())
}
diff --git a/components/layout/incremental.rs b/components/layout/incremental.rs
index 9d989c7b65a..f9fda729cfe 100644
--- a/components/layout/incremental.rs
+++ b/components/layout/incremental.rs
@@ -210,7 +210,10 @@ impl<'a> LayoutDamageComputation for &'a mut (Flow + 'a) {
.insert(self_base.restyle_damage.damage_for_child(
is_absolutely_positioned,
child_is_absolutely_positioned));
- special_damage.insert(kid.compute_layout_damage());
+ {
+ let kid: &mut Flow = kid;
+ special_damage.insert(kid.compute_layout_damage());
+ }
self_base.restyle_damage
.insert(flow::base(kid).restyle_damage.damage_for_parent(
child_is_absolutely_positioned));
diff --git a/components/layout/inline.rs b/components/layout/inline.rs
index 8c0d5723695..82a236ac001 100644
--- a/components/layout/inline.rs
+++ b/components/layout/inline.rs
@@ -25,8 +25,6 @@ use gfx::text::text_run::TextRun;
use std::cmp::max;
use std::fmt;
use std::mem;
-use std::num::ToPrimitive;
-use std::ops::{Add, Sub, Mul, Div, Rem, Neg, Shl, Shr, Not, BitOr, BitAnd, BitXor};
use std::sync::Arc;
use std::u16;
use style::computed_values::{display, overflow_x, text_align, text_justify, text_overflow};
@@ -38,8 +36,8 @@ use util::range::{Range, RangeIndex};
use util;
// From gfxFontConstants.h in Firefox
-static FONT_SUBSCRIPT_OFFSET_RATIO: f64 = 0.20;
-static FONT_SUPERSCRIPT_OFFSET_RATIO: f64 = 0.34;
+static FONT_SUBSCRIPT_OFFSET_RATIO: f32 = 0.20;
+static FONT_SUPERSCRIPT_OFFSET_RATIO: f32 = 0.34;
/// `Line`s are represented as offsets into the child list, rather than
/// as an object that "owns" fragments. Choosing a different set of line
@@ -928,7 +926,7 @@ impl InlineFlow {
text_align::T::left | text_align::T::right => unreachable!()
}
- for fragment_index in line.range.begin()..line.range.end() {
+ for fragment_index in line.range.each_index() {
let fragment = fragments.get_mut(fragment_index.to_usize());
let size = fragment.border_box.size;
fragment.border_box = LogicalRect::new(fragment.style.writing_mode,
@@ -1017,7 +1015,7 @@ impl InlineFlow {
line_distance_from_flow_block_start: Au,
baseline_distance_from_block_start: Au,
largest_depth_below_baseline: Au) {
- for fragment_index in line.range.begin()..line.range.end() {
+ for fragment_index in line.range.each_index() {
// If any of the inline styles say `top` or `bottom`, adjust the vertical align
// appropriately.
//
@@ -1295,7 +1293,7 @@ impl Flow for InlineFlow {
let (mut largest_block_size_for_top_fragments,
mut largest_block_size_for_bottom_fragments) = (Au(0), Au(0));
- for fragment_index in line.range.begin()..line.range.end() {
+ for fragment_index in line.range.each_index() {
let fragment = &mut self.fragments.fragments[fragment_index.to_usize()];
let InlineMetrics {
diff --git a/components/layout/layout_task.rs b/components/layout/layout_task.rs
index 0850b71f0d6..6557b6c26c7 100644
--- a/components/layout/layout_task.rs
+++ b/components/layout/layout_task.rs
@@ -73,7 +73,6 @@ use util::geometry::{Au, MAX_RECT};
use util::logical_geometry::LogicalPoint;
use util::mem::HeapSizeOf;
use util::opts;
-use util::smallvec::SmallVec;
use util::task::spawn_named_with_send_on_failure;
use util::task_state;
use util::workqueue::WorkQueue;
@@ -1097,7 +1096,7 @@ impl LayoutRPC for LayoutRPCImpl {
/// Requests the node containing the point of interest.
fn hit_test(&self, _: TrustedNodeAddress, point: Point2D<f32>) -> Result<HitTestResponse, ()> {
- let point = Point2D(Au::from_frac_px(point.x as f64), Au::from_frac_px(point.y as f64));
+ let point = Point2D(Au::from_frac32_px(point.x), Au::from_frac32_px(point.y));
let resp = {
let &LayoutRPCImpl(ref rw_data) = self;
let rw_data = rw_data.lock().unwrap();
@@ -1124,7 +1123,7 @@ impl LayoutRPC for LayoutRPCImpl {
fn mouse_over(&self, _: TrustedNodeAddress, point: Point2D<f32>)
-> Result<MouseOverResponse, ()> {
let mut mouse_over_list: Vec<DisplayItemMetadata> = vec!();
- let point = Point2D(Au::from_frac_px(point.x as f64), Au::from_frac_px(point.y as f64));
+ let point = Point2D(Au::from_frac32_px(point.x), Au::from_frac32_px(point.y));
{
let &LayoutRPCImpl(ref rw_data) = self;
let rw_data = rw_data.lock().unwrap();
diff --git a/components/layout/lib.rs b/components/layout/lib.rs
index 876d8f7c425..b394c5db88a 100644
--- a/components/layout/lib.rs
+++ b/components/layout/lib.rs
@@ -6,13 +6,12 @@
#![feature(box_syntax)]
#![feature(collections)]
#![feature(core)]
-#![feature(io)]
+#![feature(filling_drop)]
#![feature(plugin)]
#![feature(rustc_private)]
#![feature(std_misc)]
+#![feature(str_char)]
#![feature(thread_local)]
-#![feature(unicode)]
-#![feature(unsafe_destructor)]
#![feature(unsafe_no_drop_flag)]
#![deny(unsafe_code)]
@@ -29,7 +28,7 @@ extern crate bitflags;
#[macro_use]
#[no_link]
-extern crate "plugins" as servo_plugins;
+extern crate plugins as servo_plugins;
extern crate net_traits;
#[macro_use]
extern crate profile_traits;
@@ -37,7 +36,7 @@ extern crate profile_traits;
#[macro_use]
extern crate util;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate alloc;
extern crate azure;
extern crate canvas;
diff --git a/components/layout/model.rs b/components/layout/model.rs
index 8aecee621ee..b4498ff3079 100644
--- a/components/layout/model.rs
+++ b/components/layout/model.rs
@@ -434,8 +434,8 @@ impl ToGfxMatrix for ComputedMatrix {
self.m12 as f32,
self.m21 as f32,
self.m22 as f32,
- self.m31.to_au(containing_size.width).to_subpx() as f32,
- self.m32.to_au(containing_size.height).to_subpx() as f32)
+ self.m31.to_au(containing_size.width).to_frac32_px(),
+ self.m32.to_au(containing_size.height).to_frac32_px())
}
}
@@ -446,7 +446,7 @@ trait ToAu {
impl ToAu for LengthAndPercentage {
#[inline]
fn to_au(&self, containing_size: Au) -> Au {
- self.length + Au::from_frac_px(self.percentage * containing_size.to_subpx())
+ self.length + Au::from_frac32_px(self.percentage * containing_size.to_frac32_px())
}
}
diff --git a/components/layout/sequential.rs b/components/layout/sequential.rs
index 3c4755c8e0c..74522354e7d 100644
--- a/components/layout/sequential.rs
+++ b/components/layout/sequential.rs
@@ -82,7 +82,10 @@ pub fn traverse_flow_tree_preorder(root: &mut FlowRef,
if opts::get().bubble_inline_sizes_separately {
let bubble_inline_sizes = BubbleISizes { layout_context: &layout_context };
- root.traverse_postorder(&bubble_inline_sizes);
+ {
+ let root: &mut Flow = root;
+ root.traverse_postorder(&bubble_inline_sizes);
+ }
}
let assign_inline_sizes = AssignISizes { layout_context: &layout_context };
diff --git a/components/layout/table.rs b/components/layout/table.rs
index d6ad3746054..76b0ad99a6b 100644
--- a/components/layout/table.rs
+++ b/components/layout/table.rs
@@ -430,8 +430,8 @@ impl Flow for TableFlow {
// if there are any, or among all the columns if all are specified.
self.column_computed_inline_sizes.clear();
if num_unspecified_inline_sizes == 0 {
- let ratio = content_inline_size.to_subpx() /
- total_column_inline_size.to_subpx();
+ let ratio = content_inline_size.to_frac32_px() /
+ total_column_inline_size.to_frac32_px();
for column_inline_size in self.column_intrinsic_inline_sizes.iter() {
self.column_computed_inline_sizes.push(ColumnComputedInlineSize {
size: column_inline_size.minimum_length.scale_by(ratio),
diff --git a/components/layout/table_wrapper.rs b/components/layout/table_wrapper.rs
index 720f80566cc..73e631e2e25 100644
--- a/components/layout/table_wrapper.rs
+++ b/components/layout/table_wrapper.rs
@@ -590,7 +590,7 @@ impl SelectedAutoLayoutCandidateGuess {
/// Computes the weight needed to linearly interpolate `middle` between two guesses `low` and
/// `high` as specified by INTRINSIC § 4.3.
fn weight(low: Au, middle: Au, high: Au) -> CSSFloat {
- (middle - low).to_subpx() / (high - low).to_subpx()
+ (middle - low).to_frac32_px() / (high - low).to_frac32_px()
}
/// Linearly interpolates between two guesses, as specified by INTRINSIC § 4.3.
@@ -653,9 +653,9 @@ impl ExcessInlineSizeDistributionInfo {
// do?
if !column_intrinsic_inline_size.constrained &&
column_intrinsic_inline_size.percentage == 0.0 {
- column_intrinsic_inline_size.preferred.to_subpx() /
+ column_intrinsic_inline_size.preferred.to_frac32_px() /
self.preferred_inline_size_of_nonconstrained_columns_with_no_percentage
- .to_subpx()
+ .to_frac32_px()
} else {
0.0
}
@@ -663,8 +663,8 @@ impl ExcessInlineSizeDistributionInfo {
1.0 / (self.count_of_nonconstrained_columns_with_no_percentage as CSSFloat)
} else if self.preferred_inline_size_of_constrained_columns_with_no_percentage >
Au(0) {
- column_intrinsic_inline_size.preferred.to_subpx() /
- self.preferred_inline_size_of_constrained_columns_with_no_percentage.to_subpx()
+ column_intrinsic_inline_size.preferred.to_frac32_px() /
+ self.preferred_inline_size_of_constrained_columns_with_no_percentage.to_frac32_px()
} else if self.total_percentage > 0.0 {
column_intrinsic_inline_size.percentage / self.total_percentage
} else {
@@ -684,7 +684,7 @@ impl ExcessInlineSizeDistributionInfo {
/// An intermediate column size assignment.
struct IntermediateColumnInlineSize {
size: Au,
- percentage: f64,
+ percentage: f32,
}
fn initial_computed_inline_size(block: &mut BlockFlow,
diff --git a/components/layout/text.rs b/components/layout/text.rs
index 4bfbcb66ca8..9930b389b62 100644
--- a/components/layout/text.rs
+++ b/components/layout/text.rs
@@ -27,7 +27,7 @@ use util::geometry::Au;
use util::linked_list::split_off_head;
use util::logical_geometry::{LogicalSize, WritingMode};
use util::range::{Range, RangeIndex};
-use util::smallvec::{SmallVec, SmallVec1};
+use util::smallvec::SmallVec1;
/// A stack-allocated object for scanning an inline flow into `TextRun`-containing `TextFragment`s.
pub struct TextRunScanner {
@@ -185,7 +185,7 @@ impl TextRunScanner {
};
// FIXME(https://github.com/rust-lang/rust/issues/23338)
- let mut font = fontgroup.fonts.get(0).borrow_mut();
+ let mut font = fontgroup.fonts[0].borrow_mut();
Arc::new(box TextRun::new(&mut *font, run_text, &options))
};
@@ -193,7 +193,7 @@ impl TextRunScanner {
debug!("TextRunScanner: pushing {} fragment(s)", self.clump.len());
for (logical_offset, old_fragment) in
mem::replace(&mut self.clump, LinkedList::new()).into_iter().enumerate() {
- let mut range = *new_ranges.get(logical_offset);
+ let mut range = new_ranges[logical_offset];
if range.is_empty() {
debug!("Elided an `SpecificFragmentInfo::UnscannedText` because it was \
zero-length after compression");
@@ -238,14 +238,14 @@ impl TextRunScanner {
let length = string.len();
let original = mem::replace(string, String::with_capacity(length));
for character in original.chars() {
- string.push(character.to_uppercase())
+ string.extend(character.to_uppercase())
}
}
text_transform::T::lowercase => {
let length = string.len();
let original = mem::replace(string, String::with_capacity(length));
for character in original.chars() {
- string.push(character.to_lowercase())
+ string.extend(character.to_lowercase())
}
}
text_transform::T::capitalize => {
@@ -258,7 +258,7 @@ impl TextRunScanner {
//
// http://dev.w3.org/csswg/css-text/#typographic-letter-unit
if capitalize_next_letter && character.is_alphabetic() {
- string.push(character.to_uppercase());
+ string.extend(character.to_uppercase());
capitalize_next_letter = false;
continue
}
@@ -308,7 +308,7 @@ pub fn font_metrics_for_style(font_context: &mut FontContext, font_style: Arc<Fo
-> FontMetrics {
let fontgroup = font_context.get_layout_font_group_for_style(font_style);
// FIXME(https://github.com/rust-lang/rust/issues/23338)
- let font = fontgroup.fonts.get(0).borrow();
+ let font = fontgroup.fonts[0].borrow();
font.metrics.clone()
}
diff --git a/components/layout/wrapper.rs b/components/layout/wrapper.rs
index 49c6a688a7c..b647284c2ed 100644
--- a/components/layout/wrapper.rs
+++ b/components/layout/wrapper.rs
@@ -71,11 +71,11 @@ use style::computed_values::content::ContentItem;
use style::computed_values::{content, display, white_space};
use selectors::matching::DeclarationBlock;
use selectors::parser::{NamespaceConstraint, AttrSelector};
-use selectors::smallvec::VecLike;
use style::legacy::{IntegerAttribute, LengthAttribute};
use style::legacy::{UnsignedIntegerAttribute};
use style::node::{TElement, TElementAttributes, TNode};
use style::properties::{PropertyDeclaration, PropertyDeclarationBlock};
+use util::smallvec::VecLike;
use url::Url;
/// Allows some convenience methods on generic layout nodes.
diff --git a/components/net/Cargo.toml b/components/net/Cargo.toml
index 0548c6f00a9..cb4c6038b43 100644
--- a/components/net/Cargo.toml
+++ b/components/net/Cargo.toml
@@ -22,7 +22,7 @@ git = "https://github.com/servo/rust-png"
[dependencies]
url = "0.2.16"
time = "0.1.17"
-openssl="0.5.1"
+openssl="0.6.1"
rustc-serialize = "0.3"
cookie="*"
regex = "0.1.14"
diff --git a/components/net/about_loader.rs b/components/net/about_loader.rs
index 11533c353f4..213988904c2 100644
--- a/components/net/about_loader.rs
+++ b/components/net/about_loader.rs
@@ -14,7 +14,6 @@ use hyper::http::RawStatus;
use hyper::mime::{Mime, TopLevel, SubLevel};
use util::resource_files::resources_dir_path;
-use std::borrow::IntoCow;
use std::fs::PathExt;
use std::sync::Arc;
@@ -26,7 +25,7 @@ pub fn factory(mut load_data: LoadData, start_chan: LoadConsumer, classifier: Ar
content_type: Some(ContentType(Mime(TopLevel::Text, SubLevel::Html, vec![]))),
charset: Some("utf-8".to_string()),
headers: None,
- status: Some(RawStatus(200, "OK".into_cow())),
+ status: Some(RawStatus(200, "OK".into())),
});
chan.send(Done(Ok(()))).unwrap();
return
diff --git a/components/net/cookie.rs b/components/net/cookie.rs
index 48b9fab41ed..e520e0cbcb6 100644
--- a/components/net/cookie.rs
+++ b/components/net/cookie.rs
@@ -9,12 +9,10 @@ use net_traits::CookieSource;
use pub_domains::PUB_DOMAINS;
use cookie_rs;
-use time::{Tm, now, at, Timespec};
+use time::{Tm, now, at, Duration};
use url::Url;
use std::borrow::ToOwned;
-use std::i64;
use std::net::{Ipv4Addr, Ipv6Addr};
-use std::time::Duration;
use std::str::FromStr;
/// A stored cookie that wraps the definition in cookie-rs. This is used to implement
@@ -27,7 +25,7 @@ pub struct Cookie {
pub persistent: bool,
pub creation_time: Tm,
pub last_access: Tm,
- pub expiry_time: Tm,
+ pub expiry_time: Option<Tm>,
}
impl Cookie {
@@ -36,9 +34,11 @@ impl Cookie {
-> Option<Cookie> {
// Step 3
let (persistent, expiry_time) = match (&cookie.max_age, &cookie.expires) {
- (&Some(max_age), _) => (true, at(now().to_timespec() + Duration::seconds(max_age as i64))),
- (_, &Some(expires)) => (true, expires),
- _ => (false, at(Timespec::new(i64::MAX, 0)))
+ (&Some(max_age), _) => {
+ (true, Some(at(now().to_timespec() + Duration::seconds(max_age as i64))))
+ }
+ (_, &Some(expires)) => (true, Some(expires)),
+ _ => (false, None)
};
let url_host = request.host().map(|host| host.serialize()).unwrap_or("".to_owned());
@@ -68,7 +68,7 @@ impl Cookie {
// Step 7
let mut path = cookie.path.unwrap_or("".to_owned());
- if path.is_empty() || path.char_at(0) != '/' {
+ if path.is_empty() || path.as_bytes()[0] != b'/' {
let url_path = request.serialize_path();
let url_path = url_path.as_ref().map(|path| &**path);
path = Cookie::default_path(url_path.unwrap_or("")).to_owned();
@@ -117,7 +117,7 @@ impl Cookie {
pub fn path_match(request_path: &str, cookie_path: &str) -> bool {
request_path == cookie_path ||
( request_path.starts_with(cookie_path) &&
- ( request_path.ends_with("/") || request_path.char_at(cookie_path.len() - 1) == '/' )
+ ( request_path.ends_with("/") || request_path.as_bytes()[cookie_path.len() - 1] == b'/' )
)
}
@@ -127,7 +127,7 @@ impl Cookie {
return true;
}
if string.ends_with(domain_string)
- && string.char_at(string.len()-domain_string.len()-1) == '.'
+ && string.as_bytes()[string.len()-domain_string.len()-1] == b'.'
&& Ipv4Addr::from_str(string).is_err()
&& Ipv6Addr::from_str(string).is_err() {
return true;
diff --git a/components/net/data_loader.rs b/components/net/data_loader.rs
index 5b86af53851..36daf044e61 100644
--- a/components/net/data_loader.rs
+++ b/components/net/data_loader.rs
@@ -11,7 +11,8 @@ use rustc_serialize::base64::FromBase64;
use hyper::mime::Mime;
use std::sync::Arc;
-use url::{percent_decode, SchemeData};
+use url::percent_encoding::percent_decode;
+use url::SchemeData;
pub fn factory(load_data: LoadData, senders: LoadConsumer, _classifier: Arc<MIMEClassifier>) {
// NB: we don't spawn a new task.
@@ -39,7 +40,7 @@ pub fn load(load_data: LoadData, start_chan: LoadConsumer) {
},
None => ()
}
- let parts: Vec<&str> = scheme_data.splitn(1, ',').collect();
+ let parts: Vec<&str> = scheme_data.splitn(2, ',').collect();
if parts.len() != 2 {
start_sending(start_chan, metadata).send(Done(Err("invalid data uri".to_string()))).unwrap();
return;
diff --git a/components/net/fetch/cors_cache.rs b/components/net/fetch/cors_cache.rs
index 407e4813653..565271a340a 100644
--- a/components/net/fetch/cors_cache.rs
+++ b/components/net/fetch/cors_cache.rs
@@ -101,7 +101,6 @@ pub trait CORSCache {
/// A simple, vector-based CORS Cache
#[derive(Clone)]
-#[unstable = "This might later be replaced with a HashMap-like entity, though that requires a separate Origin struct"]
pub struct BasicCORSCache(Vec<CORSCacheEntry>);
impl BasicCORSCache {
diff --git a/components/net/fetch/response.rs b/components/net/fetch/response.rs
index 468d86abf39..fc33c123010 100644
--- a/components/net/fetch/response.rs
+++ b/components/net/fetch/response.rs
@@ -28,7 +28,6 @@ pub enum TerminationReason {
/// The response body can still be pushed to after fetch
/// This provides a way to store unfinished response bodies
-#[unstable = "I haven't yet decided exactly how the interface for this will be"]
#[derive(Clone)]
pub enum ResponseBody {
Empty, // XXXManishearth is this necessary, or is Done(vec![]) enough?
@@ -36,14 +35,12 @@ pub enum ResponseBody {
Done(Vec<u8>),
}
-#[unstable = "I haven't yet decided exactly how the interface for this will be"]
pub enum ResponseMsg {
Chunk(Vec<u8>),
Finished,
Errored
}
-#[unstable = "I haven't yet decided exactly how the interface for this will be"]
pub struct ResponseLoader {
response: Response,
chan: Receiver<ResponseMsg>
diff --git a/components/net/file_loader.rs b/components/net/file_loader.rs
index 9240a736862..a81d0e8afdb 100644
--- a/components/net/file_loader.rs
+++ b/components/net/file_loader.rs
@@ -8,6 +8,7 @@ use mime_classifier::MIMEClassifier;
use resource_task::{start_sending, start_sending_sniffed, ProgressSender};
use std::borrow::ToOwned;
+use std::error::Error;
use std::fs::File;
use std::io::Read;
use std::path::PathBuf;
diff --git a/components/net/http_loader.rs b/components/net/http_loader.rs
index bc2a74cafca..dec8727daad 100644
--- a/components/net/http_loader.rs
+++ b/components/net/http_loader.rs
@@ -19,21 +19,21 @@ use hyper::mime::{Mime, TopLevel, SubLevel};
use hyper::net::HttpConnector;
use hyper::status::{StatusCode, StatusClass};
use std::error::Error;
-use openssl::ssl::{SslContext, SslVerifyMode};
+use openssl::ssl::{SslContext, SSL_VERIFY_PEER};
use std::io::{self, Read, Write};
use std::sync::Arc;
use std::sync::mpsc::{Sender, channel};
-use std::thunk::Invoke;
use util::task::spawn_named;
use util::resource_files::resources_dir_path;
use util::opts;
use url::{Url, UrlParser};
use std::borrow::ToOwned;
+use std::boxed::FnBox;
pub fn factory(cookies_chan: Sender<ControlMsg>)
- -> Box<Invoke<(LoadData, LoadConsumer, Arc<MIMEClassifier>)> + Send> {
- box move |(load_data, senders, classifier)| {
+ -> Box<FnBox(LoadData, LoadConsumer, Arc<MIMEClassifier>) + Send> {
+ box move |load_data, senders, classifier| {
spawn_named("http_loader".to_owned(), move || load(load_data, senders, classifier, cookies_chan))
}
}
@@ -114,20 +114,20 @@ fn load(mut load_data: LoadData, start_chan: LoadConsumer, classifier: Arc<MIMEC
info!("requesting {}", url.serialize());
fn verifier(ssl: &mut SslContext) {
- ssl.set_verify(SslVerifyMode::SslVerifyPeer, None);
+ ssl.set_verify(SSL_VERIFY_PEER, None);
let mut certs = resources_dir_path();
certs.push("certs");
- ssl.set_CA_file(&certs);
+ ssl.set_CA_file(&certs).unwrap();
};
- let ssl_err_string = "[UnknownError { library: \"SSL routines\", \
+ let ssl_err_string = "Some(OpenSslErrors([UnknownError { library: \"SSL routines\", \
function: \"SSL3_GET_SERVER_CERTIFICATE\", \
-reason: \"certificate verify failed\" }]";
+reason: \"certificate verify failed\" }]))";
let mut connector = if opts::get().nossl {
HttpConnector(None)
} else {
- HttpConnector(Some(box verifier as Box<FnMut(&mut SslContext)>))
+ HttpConnector(Some(box verifier as Box<FnMut(&mut SslContext) + Send>))
};
let mut req = match Request::with_connector(load_data.method.clone(), url.clone(), &mut connector) {
@@ -135,7 +135,8 @@ reason: \"certificate verify failed\" }]";
Err(HttpError::HttpIoError(ref io_error)) if (
io_error.kind() == io::ErrorKind::Other &&
io_error.description() == "Error in OpenSSL" &&
- io_error.detail() == Some(ssl_err_string.to_owned())
+ // FIXME: This incredibly hacky. Make it more robust, and at least test it.
+ format!("{:?}", io_error.cause()) == ssl_err_string
) => {
let mut image = resources_dir_path();
image.push("badcert.html");
diff --git a/components/net/lib.rs b/components/net/lib.rs
index 70f4a14db59..8ab60ead069 100644
--- a/components/net/lib.rs
+++ b/components/net/lib.rs
@@ -6,9 +6,6 @@
#![feature(box_syntax)]
#![feature(collections)]
#![feature(core)]
-#![feature(io)]
-#![cfg_attr(test, feature(net))]
-#![feature(path)]
#![feature(path_ext)]
#![feature(plugin)]
#![feature(rustc_private)]
@@ -18,7 +15,7 @@
#![plugin(regex_macros)]
extern crate net_traits;
-extern crate "cookie" as cookie_rs;
+extern crate cookie as cookie_rs;
extern crate collections;
extern crate flate2;
extern crate geom;
@@ -27,7 +24,7 @@ extern crate png;
#[macro_use]
extern crate log;
extern crate openssl;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate util;
extern crate time;
extern crate url;
diff --git a/components/net/resource_task.rs b/components/net/resource_task.rs
index 15c48d111d9..cac46cbce8b 100644
--- a/components/net/resource_task.rs
+++ b/components/net/resource_task.rs
@@ -22,7 +22,7 @@ use hyper::header::{ContentType, Header, SetCookie, UserAgent};
use hyper::mime::{Mime, TopLevel, SubLevel};
use std::borrow::ToOwned;
-use std::boxed;
+use std::boxed::{self, FnBox};
use std::collections::HashMap;
use std::env;
use std::fs::File;
@@ -30,7 +30,6 @@ use std::io::{BufReader, Read};
use std::str::FromStr;
use std::sync::Arc;
use std::sync::mpsc::{channel, Receiver, Sender};
-use std::thunk::Invoke;
static mut HOST_TABLE: Option<*mut HashMap<String, String>> = None;
@@ -48,7 +47,7 @@ pub fn global_init() {
let mut lines = String::new();
match file.read_to_string(&mut lines) {
- Ok(()) => (),
+ Ok(_) => (),
Err(_) => return,
};
@@ -239,8 +238,8 @@ impl ResourceManager {
self.user_agent.as_ref().map(|ua| load_data.headers.set(UserAgent(ua.clone())));
fn from_factory(factory: fn(LoadData, LoadConsumer, Arc<MIMEClassifier>))
- -> Box<Invoke<(LoadData, LoadConsumer, Arc<MIMEClassifier>)> + Send> {
- box move |(load_data, senders, classifier)| {
+ -> Box<FnBox(LoadData, LoadConsumer, Arc<MIMEClassifier>) + Send> {
+ box move |load_data, senders, classifier| {
factory(load_data, senders, classifier)
}
}
@@ -259,6 +258,6 @@ impl ResourceManager {
};
debug!("resource_task: loading url: {}", load_data.url.serialize());
- loader.invoke((load_data, consumer, self.mime_classifier.clone()));
+ loader.call_box((load_data, consumer, self.mime_classifier.clone()));
}
}
diff --git a/components/net_traits/image/base.rs b/components/net_traits/image/base.rs
index 4a14fdd6255..8af32f826d0 100644
--- a/components/net_traits/image/base.rs
+++ b/components/net_traits/image/base.rs
@@ -4,7 +4,6 @@
use png;
use stb_image::image as stb_image2;
-use std::iter::range_step;
use util::vec::byte_swap;
// FIXME: Images must not be copied every frame. Instead we should atomically
@@ -14,7 +13,7 @@ pub type Image = png::Image;
// TODO(pcwalton): Speed up with SIMD, or better yet, find some way to not do this.
fn byte_swap_and_premultiply(data: &mut [u8]) {
let length = data.len();
- for i in range_step(0, length, 4) {
+ for i in (0..length).step_by(4) {
let r = data[i + 2];
let g = data[i + 1];
let b = data[i + 0];
diff --git a/components/net_traits/lib.rs b/components/net_traits/lib.rs
index 879643af266..ba9daea4cf4 100644
--- a/components/net_traits/lib.rs
+++ b/components/net_traits/lib.rs
@@ -4,8 +4,9 @@
#![feature(box_syntax)]
#![feature(collections)]
-#![feature(core)]
#![feature(rustc_private)]
+#![feature(slice_patterns)]
+#![feature(step_by)]
extern crate geom;
extern crate hyper;
@@ -22,7 +23,6 @@ use hyper::method::Method;
use hyper::mime::{Mime, Attr};
use url::Url;
-use std::borrow::IntoCow;
use std::sync::mpsc::{channel, Receiver, Sender};
pub mod image_cache_task;
@@ -169,7 +169,7 @@ impl Metadata {
charset: None,
headers: None,
// https://fetch.spec.whatwg.org/#concept-response-status-message
- status: Some(RawStatus(200, "OK".into_cow())),
+ status: Some(RawStatus(200, "OK".into())),
}
}
diff --git a/components/plugins/casing.rs b/components/plugins/casing.rs
index 98cefc658b2..f679441dbbd 100644
--- a/components/plugins/casing.rs
+++ b/components/plugins/casing.rs
@@ -11,17 +11,17 @@ use syntax::parse::token;
pub fn expand_lower<'cx>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree])
-> Box<base::MacResult + 'cx> {
- expand_cased(cx, sp, tts, |c| { c.to_lowercase() })
+ expand_cased(cx, sp, tts, |s| { s.to_lowercase() })
}
pub fn expand_upper<'cx>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree])
-> Box<base::MacResult + 'cx> {
- expand_cased(cx, sp, tts, |c| { c.to_uppercase() })
+ expand_cased(cx, sp, tts, |s| { s.to_uppercase() })
}
fn expand_cased<'cx, T>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree], transform: T)
-> Box<base::MacResult + 'cx>
- where T: Fn(char) -> char
+ where T: Fn(&str) -> String
{
let es = match base::get_exprs_from_tts(cx, sp, tts) {
Some(e) => e,
@@ -47,8 +47,7 @@ fn expand_cased<'cx, T>(cx: &'cx mut ExtCtxt, sp: Span, tts: &[ast::TokenTree],
};
match (res, it.count()) {
(Some((s, span)), 0) => {
- let new_s = s.chars().map(transform).collect::<String>();
- base::MacEager::expr(cx.expr_str(span, token::intern_and_get_ident(&new_s)))
+ base::MacEager::expr(cx.expr_str(span, token::intern_and_get_ident(&transform(&s))))
}
(_, rest) => {
if rest > 0 {
diff --git a/components/plugins/jstraceable.rs b/components/plugins/jstraceable.rs
index 9384ed2038c..0ef1cecea3d 100644
--- a/components/plugins/jstraceable.rs
+++ b/components/plugins/jstraceable.rs
@@ -47,15 +47,16 @@ pub fn expand_jstraceable(cx: &mut ExtCtxt, span: Span, mitem: &MetaItem, item:
],
associated_types: vec![],
};
- trait_def.expand(cx, mitem, item, |a| push(a))
+ trait_def.expand(cx, mitem, item, push)
}
// Mostly copied from syntax::ext::deriving::hash
/// Defines how the implementation for `trace()` is to be generated
fn jstraceable_substructure(cx: &mut ExtCtxt, trait_span: Span, substr: &Substructure) -> P<Expr> {
- let state_expr = match substr.nonself_args {
- [ref state_expr] => state_expr,
- _ => cx.span_bug(trait_span, "incorrect number of arguments in `jstraceable`")
+ let state_expr = if substr.nonself_args.len() == 1 {
+ &substr.nonself_args[0]
+ } else {
+ cx.span_bug(trait_span, "incorrect number of arguments in `jstraceable`")
};
let trace_ident = substr.method_ident;
let call_trace = |span, thing_expr| {
diff --git a/components/plugins/lib.rs b/components/plugins/lib.rs
index 36045cec078..a8bf2ad8b20 100644
--- a/components/plugins/lib.rs
+++ b/components/plugins/lib.rs
@@ -12,7 +12,7 @@
//! - `#[dom_struct]` : Implies `#[privatize]`,`#[jstraceable]`, and `#[must_root]`.
//! Use this for structs that correspond to a DOM type
-#![feature(plugin_registrar, quote, plugin, box_syntax, rustc_private, unicode)]
+#![feature(plugin_registrar, quote, plugin, box_syntax, rustc_private, collections)]
#[macro_use]
extern crate syntax;
diff --git a/components/plugins/lints/unrooted_must_root.rs b/components/plugins/lints/unrooted_must_root.rs
index 3150c7da5e6..7a39f6cc4d5 100644
--- a/components/plugins/lints/unrooted_must_root.rs
+++ b/components/plugins/lints/unrooted_must_root.rs
@@ -33,7 +33,7 @@ fn lint_unrooted_ty(cx: &Context, ty: &ast::Ty, warning: &str) {
ast::TyVec(ref t) | ast::TyFixedLengthVec(ref t, _) |
ast::TyPtr(ast::MutTy { ty: ref t, ..}) | ast::TyRptr(_, ast::MutTy { ty: ref t, ..}) => lint_unrooted_ty(cx, &**t, warning),
ast::TyPath(..) => {
- match cx.tcx.def_map.borrow()[ty.id] {
+ match cx.tcx.def_map.borrow()[&ty.id] {
def::PathResolution{ base_def: def::DefTy(def_id, _), .. } => {
if ty::has_attr(cx.tcx, def_id, "must_root") {
cx.span_lint(UNROOTED_MUST_ROOT, ty.span, warning);
@@ -78,11 +78,11 @@ impl LintPass for UnrootedPass {
fn check_fn(&mut self, cx: &Context, kind: visit::FnKind, decl: &ast::FnDecl,
block: &ast::Block, _span: codemap::Span, id: ast::NodeId) {
match kind {
- visit::FkItemFn(i, _, _, _) |
+ visit::FkItemFn(i, _, _, _, _) |
visit::FkMethod(i, _, _) if i.as_str() == "new" || i.as_str() == "new_inherited" => {
return;
},
- visit::FkItemFn(_, _, style, _) => match style {
+ visit::FkItemFn(_, _, style, _, _) => match style {
ast::Unsafety::Unsafe => return,
_ => ()
},
diff --git a/components/plugins/utils.rs b/components/plugins/utils.rs
index 603aa3569a0..3da728481e9 100644
--- a/components/plugins/utils.rs
+++ b/components/plugins/utils.rs
@@ -69,15 +69,9 @@ pub fn match_lang_ty(cx: &Context, ty: &Ty, value: &str) -> bool {
pub fn unsafe_context(map: &ast_map::Map, id: ast::NodeId) -> bool {
match map.find(map.get_parent(id)) {
Some(ast_map::NodeImplItem(itm)) => {
- match *itm {
- ast::MethodImplItem(ref meth) => match meth.node {
- ast::MethDecl(_, _, _, _, style, _, _, _) => match style {
- ast::Unsafety::Unsafe => true,
- _ => false,
- },
- _ => false,
- },
- _ => false,
+ match itm.node {
+ ast::MethodImplItem(ref sig, _) => sig.unsafety == ast::Unsafety::Unsafe,
+ _ => false
}
},
Some(ast_map::NodeItem(itm)) => {
diff --git a/components/profile/lib.rs b/components/profile/lib.rs
index 3d6e91e5dcc..ab60d36f86e 100644
--- a/components/profile/lib.rs
+++ b/components/profile/lib.rs
@@ -5,12 +5,8 @@
#![feature(box_syntax)]
#![feature(collections)]
#![feature(core)]
-#![cfg_attr(target_os="linux", feature(io))]
-#![feature(old_io)]
#![cfg_attr(target_os="linux", feature(page_size))]
#![feature(rustc_private)]
-#![feature(std_misc)]
-#![cfg_attr(target_os="linux", feature(str_words))]
#[macro_use] extern crate log;
@@ -22,7 +18,7 @@ extern crate profile_traits;
extern crate regex;
#[cfg(target_os="macos")]
extern crate task_info;
-extern crate "time" as std_time;
+extern crate time as std_time;
extern crate util;
pub mod mem;
diff --git a/components/profile/mem.rs b/components/profile/mem.rs
index bc8b84ac1bb..26aff02bb05 100644
--- a/components/profile/mem.rs
+++ b/components/profile/mem.rs
@@ -9,9 +9,8 @@ use self::system_reporter::SystemReporter;
use std::borrow::ToOwned;
use std::cmp::Ordering;
use std::collections::HashMap;
-use std::old_io::timer::sleep;
+use std::thread::sleep_ms;
use std::sync::mpsc::{channel, Receiver};
-use std::time::duration::Duration;
use util::task::spawn_named;
pub struct Profiler {
@@ -28,11 +27,11 @@ impl Profiler {
// Create the timer thread if a period was provided.
if let Some(period) = period {
- let period_ms = Duration::milliseconds((period * 1000f64) as i64);
+ let period_ms = (period * 1000.) as u32;
let chan = chan.clone();
spawn_named("Memory profiler timer".to_owned(), move || {
loop {
- sleep(period_ms);
+ sleep_ms(period_ms);
if chan.send(ProfilerMsg::Print).is_err() {
break;
}
@@ -444,7 +443,7 @@ mod system_reporter {
let mut f = option_try!(File::open("/proc/self/statm").ok());
let mut contents = String::new();
option_try!(f.read_to_string(&mut contents).ok());
- let s = option_try!(contents.words().nth(field));
+ let s = option_try!(contents.split_whitespace().nth(field));
let npages = option_try!(s.parse::<usize>().ok());
Some(npages * ::std::env::page_size())
}
@@ -485,7 +484,7 @@ mod system_reporter {
use std::collections::HashMap;
use std::collections::hash_map::Entry;
use std::fs::File;
- use std::io::{BufReader, BufReadExt};
+ use std::io::{BufReader, BufRead};
// The first line of an entry in /proc/<pid>/smaps looks just like an entry
// in /proc/<pid>/maps:
diff --git a/components/profile/time.rs b/components/profile/time.rs
index 284853a5480..464796006fa 100644
--- a/components/profile/time.rs
+++ b/components/profile/time.rs
@@ -9,11 +9,8 @@ use profile_traits::time::{ProfilerCategory, ProfilerChan, ProfilerMsg, TimerMet
use std::borrow::ToOwned;
use std::cmp::Ordering;
use std::f64;
-use std::old_io::timer::sleep;
-use std::iter::AdditiveIterator;
-use std::num::Float;
use std::sync::mpsc::{channel, Receiver};
-use std::time::duration::Duration;
+use std::thread::sleep_ms;
use std_time::precise_time_ns;
use util::task::spawn_named;
@@ -99,11 +96,11 @@ impl Profiler {
let (chan, port) = channel();
match period {
Some(period) => {
- let period = Duration::milliseconds((period * 1000f64) as i64);
+ let period = (period * 1000.) as u32;
let chan = chan.clone();
spawn_named("Time profiler timer".to_owned(), move || {
loop {
- sleep(period);
+ sleep_ms(period);
if chan.send(ProfilerMsg::Print).is_err() {
break;
}
@@ -192,7 +189,7 @@ impl Profiler {
let data_len = data.len();
if data_len > 0 {
let (mean, median, min, max) =
- (data.iter().map(|&x|x).sum() / (data_len as f64),
+ (data.iter().map(|&x|x).sum::<f64>() / (data_len as f64),
data[data_len / 2],
data.iter().fold(f64::INFINITY, |a, &b| a.min(b)),
data.iter().fold(-f64::INFINITY, |a, &b| a.max(b)));
diff --git a/components/profile_traits/time.rs b/components/profile_traits/time.rs
index 5cd794072f9..f49940a168f 100644
--- a/components/profile_traits/time.rs
+++ b/components/profile_traits/time.rs
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-extern crate "time" as std_time;
+extern crate time as std_time;
extern crate url;
use self::std_time::precise_time_ns;
diff --git a/components/script/Cargo.toml b/components/script/Cargo.toml
index 634c3e46d09..16642b80e8a 100644
--- a/components/script/Cargo.toml
+++ b/components/script/Cargo.toml
@@ -45,9 +45,6 @@ path = "../canvas"
[dependencies.webdriver_traits]
path = "../webdriver_traits"
-[dependencies.cssparser]
-git = "https://github.com/servo/rust-cssparser"
-
[dependencies.selectors]
git = "https://github.com/servo/rust-selectors"
@@ -80,3 +77,6 @@ bitflags = "*"
rustc-serialize = "*"
libc = "*"
hyper = "0.3"
+cssparser = "0.3.1"
+unicase = "0.1"
+num = "0.1.24"
diff --git a/components/script/cors.rs b/components/script/cors.rs
index a4044a52568..cd7d0828564 100644
--- a/components/script/cors.rs
+++ b/components/script/cors.rs
@@ -30,6 +30,7 @@ use hyper::header::{ContentType, Host};
use hyper::method::Method;
use hyper::status::StatusClass::Success;
+use unicase::UniCase;
use url::{SchemeData, Url};
use util::task::spawn_named;
@@ -185,10 +186,10 @@ impl CORSRequest {
// Step 5 - 7
let mut header_names = vec!();
for header in self.headers.iter() {
- header_names.push(header.name().to_ascii_lowercase());
+ header_names.push(header.name().to_owned());
}
header_names.sort();
- preflight.headers.set(AccessControlRequestHeaders(header_names));
+ preflight.headers.set(AccessControlRequestHeaders(header_names.into_iter().map(UniCase).collect()));
// Step 8 unnecessary, we don't use the request body
// Step 9, 10 unnecessary, we're writing our own fetch code
@@ -446,8 +447,8 @@ fn is_simple_method(m: &Method) -> bool {
pub fn allow_cross_origin_request(req: &CORSRequest, headers: &Headers) -> bool {
//FIXME(seanmonstar): use req.headers.get::<AccessControlAllowOrigin>()
match headers.get() {
- Some(&AccessControlAllowOrigin::AllowStar) => true, // Not always true, depends on credentials mode
- Some(&AccessControlAllowOrigin::AllowOrigin(ref url)) =>
+ Some(&AccessControlAllowOrigin::Any) => true, // Not always true, depends on credentials mode
+ Some(&AccessControlAllowOrigin::Value(ref url)) =>
url.scheme == req.origin.scheme &&
url.host() == req.origin.host() &&
url.port() == req.origin.port(),
diff --git a/components/script/dom/activation.rs b/components/script/dom/activation.rs
index 047d3a5c4df..dbbe4689e1b 100644
--- a/components/script/dom/activation.rs
+++ b/components/script/dom/activation.rs
@@ -14,7 +14,7 @@ use dom::node::window_from_node;
use std::borrow::ToOwned;
/// Trait for elements with defined activation behavior
-pub trait Activatable : Copy {
+pub trait Activatable {
fn as_element(&self) -> Temporary<Element>;
// Is this particular instance of the element activatable?
diff --git a/components/script/dom/bindings/conversions.rs b/components/script/dom/bindings/conversions.rs
index 5055921bb3a..089193cca43 100644
--- a/components/script/dom/bindings/conversions.rs
+++ b/components/script/dom/bindings/conversions.rs
@@ -56,15 +56,14 @@ use js::jsval::{UndefinedValue, NullValue, BooleanValue, Int32Value, UInt32Value
use js::jsval::{StringValue, ObjectValue, ObjectOrNullValue};
use libc;
+use num::Float;
use std::borrow::ToOwned;
use std::default;
-use std::marker::MarkerTrait;
-use std::num::Float;
use std::slice;
/// A trait to retrieve the constants necessary to check if a `JSObject`
/// implements a given interface.
-pub trait IDLInterface: MarkerTrait {
+pub trait IDLInterface {
/// Returns the prototype ID.
fn get_prototype_id() -> PrototypeList::ID;
/// Returns the prototype depth, i.e., the number of interfaces this
diff --git a/components/script/dom/bindings/js.rs b/components/script/dom/bindings/js.rs
index 70dd88c1842..fc22078360f 100644
--- a/components/script/dom/bindings/js.rs
+++ b/components/script/dom/bindings/js.rs
@@ -641,7 +641,6 @@ impl<T: Reflectable> Root<T> {
}
}
-#[unsafe_destructor]
impl<T: Reflectable> Drop for Root<T> {
fn drop(&mut self) {
self.root_list.unroot(self);
diff --git a/components/script/dom/bindings/num.rs b/components/script/dom/bindings/num.rs
index 353a395784b..d0ceaae89f8 100644
--- a/components/script/dom/bindings/num.rs
+++ b/components/script/dom/bindings/num.rs
@@ -5,7 +5,7 @@
//! The `Finite<T>` struct.
use core::nonzero::Zeroable;
-use std::num::Float;
+use num::Float;
use std::ops::Deref;
/// Encapsulates the IDL restricted float type.
diff --git a/components/script/dom/bindings/refcounted.rs b/components/script/dom/bindings/refcounted.rs
index 204ef93e023..046ae913b50 100644
--- a/components/script/dom/bindings/refcounted.rs
+++ b/components/script/dom/bindings/refcounted.rs
@@ -110,7 +110,6 @@ impl<T: Reflectable> Clone for Trusted<T> {
}
}
-#[unsafe_destructor]
impl<T: Reflectable> Drop for Trusted<T> {
fn drop(&mut self) {
let mut refcount = self.refcount.lock().unwrap();
diff --git a/components/script/dom/bindings/trace.rs b/components/script/dom/bindings/trace.rs
index 14d23920ab9..ab325ab804b 100644
--- a/components/script/dom/bindings/trace.rs
+++ b/components/script/dom/bindings/trace.rs
@@ -56,7 +56,7 @@ use script_traits::UntrustedNodeAddress;
use msg::compositor_msg::ScriptListener;
use msg::constellation_msg::ConstellationChan;
use net_traits::image::base::Image;
-use util::smallvec::{SmallVec1, SmallVec};
+use util::smallvec::SmallVec1;
use util::str::{LengthOrPercentageOrAuto};
use std::cell::{Cell, RefCell};
use std::collections::{HashMap, HashSet};
@@ -64,7 +64,6 @@ use std::collections::hash_state::HashState;
use std::ffi::CString;
use std::hash::{Hash, Hasher};
use std::intrinsics::return_address;
-use std::old_io::timer::Timer;
use std::ops::{Deref, DerefMut};
use std::rc::Rc;
use std::sync::Arc;
@@ -252,7 +251,7 @@ no_jsmanaged_fields!(Receiver<T>);
no_jsmanaged_fields!(Rect<T>);
no_jsmanaged_fields!(Arc<T>);
no_jsmanaged_fields!(Image, ImageCacheChan, ImageCacheTask, ScriptControlChan);
-no_jsmanaged_fields!(Atom, Namespace, Timer);
+no_jsmanaged_fields!(Atom, Namespace);
no_jsmanaged_fields!(Trusted<T>);
no_jsmanaged_fields!(PropertyDeclarationBlock);
no_jsmanaged_fields!(HashSet<T>);
@@ -444,7 +443,6 @@ impl<T: VecRootableType> RootedVec<T> {
}
}
-#[unsafe_destructor]
impl<T: VecRootableType> Drop for RootedVec<T> {
fn drop(&mut self) {
RootedCollectionSet::remove(self);
diff --git a/components/script/dom/bindings/utils.rs b/components/script/dom/bindings/utils.rs
index 2c96fa2c0dd..55933484165 100644
--- a/components/script/dom/bindings/utils.rs
+++ b/components/script/dom/bindings/utils.rs
@@ -639,7 +639,7 @@ pub fn validate_and_extract(namespace: Option<DOMString>, qualified_name: &str)
let (prefix, local_name) = if qualified_name.contains(":") {
// Step 5.
- let mut parts = qualified_name.splitn(1, ':');
+ let mut parts = qualified_name.splitn(2, ':');
let prefix = parts.next().unwrap();
debug_assert!(!prefix.is_empty());
let local_name = parts.next().unwrap();
diff --git a/components/script/dom/blob.rs b/components/script/dom/blob.rs
index 47d03d72082..b27a0c3e7e9 100644
--- a/components/script/dom/blob.rs
+++ b/components/script/dom/blob.rs
@@ -12,10 +12,10 @@ use dom::bindings::codegen::Bindings::BlobBinding::BlobMethods;
use util::str::DOMString;
+use num::ToPrimitive;
use std::ascii::AsciiExt;
use std::borrow::ToOwned;
use std::cmp::{min, max};
-use std::num::ToPrimitive;
#[jstraceable]
pub enum BlobTypeId {
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs
index cd02eb18f0e..9390e4db0fb 100644
--- a/components/script/dom/canvasrenderingcontext2d.rs
+++ b/components/script/dom/canvasrenderingcontext2d.rs
@@ -36,9 +36,9 @@ use net_traits::image::base::Image;
use net_traits::image_cache_task::ImageCacheChan;
use png::PixelsByColorType;
+use num::{Float, ToPrimitive};
use std::borrow::ToOwned;
use std::cell::RefCell;
-use std::num::{Float, ToPrimitive};
use std::sync::{Arc};
use std::sync::mpsc::{channel, Sender};
@@ -977,7 +977,6 @@ impl<'a> CanvasRenderingContext2DMethods for JSRef<'a, CanvasRenderingContext2D>
}
}
-#[unsafe_destructor]
impl Drop for CanvasRenderingContext2D {
fn drop(&mut self) {
self.renderer.send(CanvasMsg::Common(CanvasCommonMsg::Close)).unwrap();
diff --git a/components/script/dom/dedicatedworkerglobalscope.rs b/components/script/dom/dedicatedworkerglobalscope.rs
index 97c25e56b9c..28ecf365848 100644
--- a/components/script/dom/dedicatedworkerglobalscope.rs
+++ b/components/script/dom/dedicatedworkerglobalscope.rs
@@ -84,7 +84,6 @@ impl<'a> AutoWorkerReset<'a> {
}
}
-#[unsafe_destructor]
impl<'a> Drop for AutoWorkerReset<'a> {
fn drop(&mut self) {
*self.workerscope.worker.borrow_mut() = self.old_worker.clone();
diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs
index 32f6a23623c..f96dd134082 100644
--- a/components/script/dom/document.rs
+++ b/components/script/dom/document.rs
@@ -81,6 +81,7 @@ use string_cache::{Atom, QualName};
use url::Url;
use js::jsapi::JSRuntime;
+use num::ToPrimitive;
use std::borrow::ToOwned;
use std::collections::HashMap;
use std::collections::hash_map::Entry::{Occupied, Vacant};
@@ -88,7 +89,6 @@ use std::ascii::AsciiExt;
use std::cell::{Cell, Ref};
use std::default::Default;
use std::sync::mpsc::channel;
-use std::num::ToPrimitive;
use time;
#[derive(PartialEq)]
diff --git a/components/script/dom/domrect.rs b/components/script/dom/domrect.rs
index 08cacc09be2..45c325b3a2d 100644
--- a/components/script/dom/domrect.rs
+++ b/components/script/dom/domrect.rs
@@ -10,7 +10,6 @@ use dom::bindings::num::Finite;
use dom::bindings::utils::{Reflector, reflect_dom_object};
use dom::window::Window;
use util::geometry::Au;
-use std::num::Float;
#[dom_struct]
pub struct DOMRect {
diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs
index deb2df56b84..bc3f76079eb 100644
--- a/components/script/dom/element.rs
+++ b/components/script/dom/element.rs
@@ -64,6 +64,7 @@ use style::properties::{PropertyDeclarationBlock, PropertyDeclaration, parse_sty
use style::properties::DeclaredValue::SpecifiedValue;
use style::values::specified::CSSColor;
use util::namespace;
+use util::smallvec::VecLike;
use util::str::{DOMString, LengthOrPercentageOrAuto};
use cssparser::Color;
@@ -74,16 +75,14 @@ use html5ever::serialize::TraversalScope::{IncludeNode, ChildrenOnly};
use html5ever::tree_builder::{NoQuirks, LimitedQuirks, Quirks};
use selectors::matching::{matches, DeclarationBlock};
use selectors::parser::parse_author_origin_selector_list_from_str;
-use selectors::smallvec::VecLike;
use string_cache::{Atom, Namespace, QualName};
use url::UrlParser;
use std::ascii::AsciiExt;
-use std::borrow::{IntoCow, ToOwned};
+use std::borrow::{Cow, ToOwned};
use std::cell::{Ref, RefMut};
use std::default::Default;
use std::mem;
-use std::old_io::Writer;
use std::sync::Arc;
#[dom_struct]
@@ -257,7 +256,7 @@ impl RawLayoutElementHelpers for Element {
};
if let Some(color) = bgcolor {
- hints.vec_push(from_declaration(
+ hints.push(from_declaration(
PropertyDeclaration::BackgroundColor(SpecifiedValue(
CSSColor { parsed: Color::RGBA(color), authored: None }))));
}
@@ -1011,9 +1010,9 @@ impl<'a> ElementMethods for JSRef<'a, Element> {
fn TagName(self) -> DOMString {
let qualified_name = match self.prefix {
Some(ref prefix) => {
- (format!("{}:{}", &**prefix, &*self.local_name)).into_cow()
+ Cow::Owned(format!("{}:{}", &**prefix, &*self.local_name))
},
- None => self.local_name.into_cow()
+ None => Cow::Borrowed(&*self.local_name)
};
if self.html_element_in_html_document() {
qualified_name.to_ascii_uppercase()
diff --git a/components/script/dom/formdata.rs b/components/script/dom/formdata.rs
index 98410ef02ef..068c0b591a5 100644
--- a/components/script/dom/formdata.rs
+++ b/components/script/dom/formdata.rs
@@ -87,7 +87,7 @@ impl<'a> FormDataMethods for JSRef<'a, FormData> {
// FIXME(https://github.com/rust-lang/rust/issues/23338)
let data = self.data.borrow();
if data.contains_key(&name) {
- match data[name][0].clone() {
+ match data[&name][0].clone() {
FormDatum::StringData(ref s) => Some(eString(s.clone())),
FormDatum::FileData(ref f) => {
Some(eFile(Unrooted::from_js(*f)))
diff --git a/components/script/dom/htmlanchorelement.rs b/components/script/dom/htmlanchorelement.rs
index 7a13b77b986..4a46235756e 100644
--- a/components/script/dom/htmlanchorelement.rs
+++ b/components/script/dom/htmlanchorelement.rs
@@ -25,8 +25,8 @@ use dom::node::{Node, NodeHelpers, NodeTypeId, document_from_node, window_from_n
use dom::virtualmethods::VirtualMethods;
use dom::window::WindowHelpers;
+use num::ToPrimitive;
use std::default::Default;
-use std::num::ToPrimitive;
use string_cache::Atom;
use util::str::DOMString;
diff --git a/components/script/dom/htmlcollection.rs b/components/script/dom/htmlcollection.rs
index e4520f6760c..68d8c9cf3e8 100644
--- a/components/script/dom/htmlcollection.rs
+++ b/components/script/dom/htmlcollection.rs
@@ -167,10 +167,12 @@ impl HTMLCollection {
fn traverse(root: JSRef<Node>)
-> FilterMap<Skip<TreeIterator>,
fn(Temporary<Node>) -> Option<Temporary<Element>>> {
+ fn to_temporary(node: Temporary<Node>) -> Option<Temporary<Element>> {
+ ElementCast::to_temporary(node)
+ }
root.traverse_preorder()
.skip(1)
- .filter_map(ElementCast::to_temporary as
- fn(Temporary<Node>) -> Option<Temporary<Element>>)
+ .filter_map(to_temporary as fn(Temporary<Node>) -> Option<Temporary<Element>>)
}
}
diff --git a/components/script/dom/htmlelement.rs b/components/script/dom/htmlelement.rs
index f42aceced3a..ce70535de74 100644
--- a/components/script/dom/htmlelement.rs
+++ b/components/script/dom/htmlelement.rs
@@ -176,7 +176,7 @@ fn to_snake_case(name: DOMString) -> DOMString {
for ch in name.chars() {
if ch.is_uppercase() {
attr_name.push('\x2d');
- attr_name.push(ch.to_lowercase());
+ attr_name.extend(ch.to_lowercase());
} else {
attr_name.push(ch);
}
diff --git a/components/script/dom/imagedata.rs b/components/script/dom/imagedata.rs
index 34bebafb082..99dfbc853a7 100644
--- a/components/script/dom/imagedata.rs
+++ b/components/script/dom/imagedata.rs
@@ -33,7 +33,7 @@ impl ImageData {
if let Some(vec) = data {
let js_object_data: *mut uint8_t = JS_GetUint8ClampedArrayData(js_object, cx);
- ptr::copy_nonoverlapping(js_object_data, vec.as_ptr(), vec.len())
+ ptr::copy_nonoverlapping(vec.as_ptr(), js_object_data, vec.len())
}
ImageData {
diff --git a/components/script/dom/keyboardevent.rs b/components/script/dom/keyboardevent.rs
index 08a268678f0..ab93eddbefa 100644
--- a/components/script/dom/keyboardevent.rs
+++ b/components/script/dom/keyboardevent.rs
@@ -450,7 +450,7 @@ fn key_location(key: constellation_msg::Key) -> u32 {
fn key_charcode(key: constellation_msg::Key, mods: constellation_msg::KeyModifiers) -> Option<u32> {
let key = key_value(key, mods);
if key.len() == 1 {
- Some(key.char_at(0) as u32)
+ Some(key.chars().next().unwrap() as u32)
} else {
None
}
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index 9143677d1e0..bf9473b9d83 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -179,7 +179,6 @@ impl NodeFlags {
}
}
-#[unsafe_destructor]
impl Drop for Node {
#[allow(unsafe_code)]
fn drop(&mut self) {
@@ -987,8 +986,11 @@ impl<'a> NodeHelpers for JSRef<'a, Node> {
}
fn child_elements(self) -> ChildElementIterator {
+ fn to_temporary(node: Temporary<Node>) -> Option<Temporary<Element>> {
+ ElementCast::to_temporary(node)
+ }
self.children()
- .filter_map(ElementCast::to_temporary as fn(_) -> _)
+ .filter_map(to_temporary as fn(_) -> _)
.peekable()
}
diff --git a/components/script/dom/textencoder.rs b/components/script/dom/textencoder.rs
index 545402dc4a2..09aeb01c5e4 100644
--- a/components/script/dom/textencoder.rs
+++ b/components/script/dom/textencoder.rs
@@ -84,7 +84,7 @@ impl<'a> TextEncoderMethods for JSRef<'a, TextEncoder> {
let js_object: *mut JSObject = JS_NewUint8Array(cx, length);
let js_object_data: *mut uint8_t = JS_GetUint8ArrayData(js_object, cx);
- ptr::copy_nonoverlapping(js_object_data, encoded.as_ptr(), length as usize);
+ ptr::copy_nonoverlapping(encoded.as_ptr(), js_object_data, length as usize);
return js_object;
}
}
diff --git a/components/script/dom/userscripts.rs b/components/script/dom/userscripts.rs
index 3f4a7e6f268..1910784b0c5 100644
--- a/components/script/dom/userscripts.rs
+++ b/components/script/dom/userscripts.rs
@@ -28,7 +28,7 @@ pub fn load_script(head: JSRef<HTMLHeadElement>) {
p.push("user-agent-js");
p
} else {
- PathBuf::new(path_str)
+ PathBuf::from(path_str)
};
let mut files = read_dir(&path).ok().expect("Bad path passed to --userscripts")
diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs
index e470dca128f..82dfc614f52 100644
--- a/components/script/dom/webglrenderingcontext.rs
+++ b/components/script/dom/webglrenderingcontext.rs
@@ -61,7 +61,6 @@ impl WebGLRenderingContext {
}
}
-#[unsafe_destructor]
impl Drop for WebGLRenderingContext {
fn drop(&mut self) {
self.renderer.send(CanvasMsg::Common(CanvasCommonMsg::Close)).unwrap();
diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs
index 70046185981..37d79625334 100644
--- a/components/script/dom/window.rs
+++ b/components/script/dom/window.rs
@@ -61,7 +61,6 @@ use std::collections::HashSet;
use std::default::Default;
use std::ffi::CString;
use std::mem;
-use std::num::Float;
use std::rc::Rc;
use std::sync::mpsc::{channel, Receiver, Sender};
use std::sync::mpsc::TryRecvError::{Empty, Disconnected};
diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs
index d9e0f57ad8d..4e038609fef 100644
--- a/components/script/dom/xmlhttprequest.rs
+++ b/components/script/dom/xmlhttprequest.rs
@@ -56,15 +56,16 @@ use std::ascii::AsciiExt;
use std::borrow::ToOwned;
use std::cell::{RefCell, Cell};
use std::default::Default;
-use std::old_io::Timer;
use std::str::FromStr;
use std::sync::{Mutex, Arc};
-use std::time::duration::Duration;
+use std::sync::mpsc::{channel, Sender, TryRecvError};
+use std::thread::sleep_ms;
use time;
use url::{Url, UrlParser};
use dom::bindings::codegen::UnionTypes::StringOrURLSearchParams;
use dom::bindings::codegen::UnionTypes::StringOrURLSearchParams::{eString, eURLSearchParams};
+
pub type SendParam = StringOrURLSearchParams;
#[derive(PartialEq, Copy, Clone)]
@@ -140,7 +141,7 @@ pub struct XMLHttpRequest {
send_flag: Cell<bool>,
global: GlobalField,
- timer: DOMRefCell<Timer>,
+ timeout_cancel: DOMRefCell<Option<Sender<()>>>,
fetch_time: Cell<i64>,
timeout_target: DOMRefCell<Option<Box<ScriptChan+Send>>>,
generation_id: Cell<GenerationId>,
@@ -174,7 +175,7 @@ impl XMLHttpRequest {
upload_events: Cell::new(false),
global: GlobalField::from_rooted(&global),
- timer: DOMRefCell::new(Timer::new().unwrap()),
+ timeout_cancel: DOMRefCell::new(None),
fetch_time: Cell::new(0),
timeout_target: DOMRefCell::new(None),
generation_id: Cell::new(GenerationId(0)),
@@ -963,7 +964,7 @@ impl<'a> PrivateXMLHttpRequestHelpers for JSRef<'a, XMLHttpRequest> {
let total = self.response_headers.borrow().get::<ContentLength>().map(|x| {**x as u64});
self.dispatch_progress_event(false, type_, len, total);
}
- fn set_timeout(self, timeout: u32) {
+ fn set_timeout(self, duration_ms: u32) {
struct XHRTimeout {
xhr: TrustedXHRAddress,
gen_id: GenerationId,
@@ -981,22 +982,23 @@ impl<'a> PrivateXMLHttpRequestHelpers for JSRef<'a, XMLHttpRequest> {
// Sets up the object to timeout in a given number of milliseconds
// This will cancel all previous timeouts
- let oneshot = self.timer.borrow_mut()
- .oneshot(Duration::milliseconds(timeout as i64));
let timeout_target = (*self.timeout_target.borrow().as_ref().unwrap()).clone();
let global = self.global.root();
let xhr = Trusted::new(global.r().get_cx(), self, global.r().script_chan());
let gen_id = self.generation_id.get();
+ let (cancel_tx, cancel_rx) = channel();
+ *self.timeout_cancel.borrow_mut() = Some(cancel_tx);
spawn_named("XHR:Timer".to_owned(), move || {
- match oneshot.recv() {
- Ok(_) => {
+ sleep_ms(duration_ms);
+ match cancel_rx.try_recv() {
+ Err(TryRecvError::Empty) => {
timeout_target.send(ScriptMsg::RunnableMsg(box XHRTimeout {
xhr: xhr,
gen_id: gen_id,
})).unwrap();
},
- Err(_) => {
- // This occurs if xhr.timeout (the sender) goes out of scope (i.e, xhr went out of scope)
+ Err(TryRecvError::Disconnected) | Ok(()) => {
+ // This occurs if xhr.timeout_cancel (the sender) goes out of scope (i.e, xhr went out of scope)
// or if the oneshot timer was overwritten. The former case should not happen due to pinning.
debug!("XHR timeout was overwritten or canceled")
}
@@ -1006,8 +1008,9 @@ impl<'a> PrivateXMLHttpRequestHelpers for JSRef<'a, XMLHttpRequest> {
}
fn cancel_timeout(self) {
- // oneshot() closes the previous channel, canceling the timeout
- self.timer.borrow_mut().oneshot(Duration::zero());
+ if let Some(cancel_tx) = self.timeout_cancel.borrow_mut().take() {
+ let _ = cancel_tx.send(());
+ }
}
fn text_response(self) -> DOMString {
diff --git a/components/script/horribly_inefficient_timers.rs b/components/script/horribly_inefficient_timers.rs
new file mode 100644
index 00000000000..6f3774d3dca
--- /dev/null
+++ b/components/script/horribly_inefficient_timers.rs
@@ -0,0 +1,31 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+/// A quick hack to work around the removal of [`std::old_io::timer::Timer`](
+/// http://doc.rust-lang.org/1.0.0-beta/std/old_io/timer/struct.Timer.html )
+
+use std::sync::mpsc::{channel, Receiver};
+use std::thread::{spawn, sleep_ms};
+
+pub fn oneshot(duration_ms: u32) -> Receiver<()> {
+ let (tx, rx) = channel();
+ spawn(move || {
+ sleep_ms(duration_ms);
+ let _ = tx.send(());
+ });
+ rx
+}
+
+pub fn periodic(duration_ms: u32) -> Receiver<()> {
+ let (tx, rx) = channel();
+ spawn(move || {
+ loop {
+ sleep_ms(duration_ms);
+ if tx.send(()).is_err() {
+ break
+ }
+ }
+ });
+ rx
+}
diff --git a/components/script/layout_interface.rs b/components/script/layout_interface.rs
index 4aa66eb452d..34d21e7e788 100644
--- a/components/script/layout_interface.rs
+++ b/components/script/layout_interface.rs
@@ -16,7 +16,6 @@ use profile_traits::mem::{Reporter, ReportsChan};
use script_traits::{ScriptControlChan, OpaqueScriptLayoutChannel, UntrustedNodeAddress};
use std::any::Any;
use std::sync::mpsc::{channel, Receiver, Sender};
-use std::boxed::BoxAny;
use style::animation::PropertyAnimation;
use style::media_queries::MediaQueryList;
use style::stylesheets::Stylesheet;
@@ -88,7 +87,7 @@ pub struct HitTestResponse(pub UntrustedNodeAddress);
pub struct MouseOverResponse(pub Vec<UntrustedNodeAddress>);
/// Why we're doing reflow.
-#[derive(PartialEq, Copy, Debug)]
+#[derive(PartialEq, Copy, Clone, Debug)]
pub enum ReflowGoal {
/// We're reflowing in order to send a display list to the screen.
ForDisplay,
@@ -185,15 +184,15 @@ pub struct Animation {
/// A description of the property animation that is occurring.
pub property_animation: PropertyAnimation,
/// The start time of the animation, as returned by `time::precise_time_s()`.
- pub start_time: f64,
+ pub start_time: f32,
/// The end time of the animation, as returned by `time::precise_time_s()`.
- pub end_time: f64,
+ pub end_time: f32,
}
impl Animation {
/// Returns the duration of this animation in seconds.
#[inline]
- pub fn duration(&self) -> f64 {
+ pub fn duration(&self) -> f32 {
self.end_time - self.start_time
}
}
diff --git a/components/script/lib.rs b/components/script/lib.rs
index 879216a2e27..94cf931436b 100644
--- a/components/script/lib.rs
+++ b/components/script/lib.rs
@@ -7,13 +7,9 @@
#![feature(collections)]
#![feature(core)]
#![feature(custom_attribute)]
-#![feature(old_io)]
-#![feature(path)]
#![feature(plugin)]
#![feature(rustc_private)]
#![feature(std_misc)]
-#![feature(unicode)]
-#![feature(unsafe_destructor)]
#![deny(unsafe_code)]
#![allow(non_snake_case)]
@@ -39,8 +35,9 @@ extern crate js;
extern crate libc;
extern crate msg;
extern crate net_traits;
+extern crate num;
extern crate png;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate time;
extern crate canvas;
extern crate profile_traits;
@@ -49,6 +46,7 @@ extern crate selectors;
extern crate util;
#[macro_use]
extern crate style;
+extern crate unicase;
extern crate url;
extern crate uuid;
extern crate string_cache;
@@ -68,4 +66,5 @@ pub mod script_task;
mod timers;
pub mod textinput;
mod devtools;
+mod horribly_inefficient_timers;
mod webdriver_handlers;
diff --git a/components/script/page.rs b/components/script/page.rs
index 57c22e4e3e7..67da1a9fc61 100644
--- a/components/script/page.rs
+++ b/components/script/page.rs
@@ -9,7 +9,6 @@ use dom::node::NodeHelpers;
use dom::window::Window;
use msg::constellation_msg::PipelineId;
-use util::smallvec::SmallVec;
use std::cell::Cell;
use std::rc::Rc;
use url::Url;
diff --git a/components/script/parse/html.rs b/components/script/parse/html.rs
index d16177e3a07..8bb528c2efe 100644
--- a/components/script/parse/html.rs
+++ b/components/script/parse/html.rs
@@ -39,13 +39,13 @@ use util::str::DOMString;
use util::task_state;
use util::task_state::IN_HTML_PARSER;
use std::borrow::Cow;
-use std::old_io::{Writer, IoResult};
+use std::io::{self, Write};
use url::Url;
use html5ever::Attribute;
use html5ever::serialize::{Serializable, Serializer, AttrRef};
use html5ever::serialize::TraversalScope;
use html5ever::serialize::TraversalScope::{IncludeNode, ChildrenOnly};
-use html5ever::tree_builder::{TreeSink, QuirksMode, NodeOrText, AppendNode, AppendText};
+use html5ever::tree_builder::{TreeSink, QuirksMode, NodeOrText, AppendNode, AppendText, NextParserState};
use string_cache::QualName;
use hyper::header::ContentType;
@@ -179,10 +179,11 @@ impl<'a> TreeSink for servohtmlparser::Sink {
script.map(|script| script.mark_already_started());
}
- fn complete_script(&mut self, node: JS<Node>) {
+ fn complete_script(&mut self, node: JS<Node>) -> NextParserState {
let node: Root<Node> = node.root();
let script: Option<JSRef<HTMLScriptElement>> = HTMLScriptElementCast::to_ref(node.r());
script.map(|script| script.prepare());
+ NextParserState::Continue
}
fn reparent_children(&mut self, node: JS<Node>, new_parent: JS<Node>) {
@@ -198,8 +199,8 @@ impl<'a> TreeSink for servohtmlparser::Sink {
}
impl<'a> Serializable for JSRef<'a, Node> {
- fn serialize<'wr, Wr: Writer>(&self, serializer: &mut Serializer<'wr, Wr>,
- traversal_scope: TraversalScope) -> IoResult<()> {
+ fn serialize<'wr, Wr: Write>(&self, serializer: &mut Serializer<'wr, Wr>,
+ traversal_scope: TraversalScope) -> io::Result<()> {
let node = *self;
match (traversal_scope, node.type_id()) {
(_, NodeTypeId::Element(..)) => {
diff --git a/components/script/script_task.rs b/components/script/script_task.rs
index 24a91c65c34..5e776d4db0f 100644
--- a/components/script/script_task.rs
+++ b/components/script/script_task.rs
@@ -71,7 +71,6 @@ use net_traits::image_cache_task::{ImageCacheChan, ImageCacheTask, ImageCacheRes
use net_traits::storage_task::StorageTask;
use string_cache::Atom;
use util::geometry::to_frac_px;
-use util::smallvec::SmallVec;
use util::str::DOMString;
use util::task::{spawn_named, spawn_named_with_send_on_failure};
use util::task_state;
@@ -86,11 +85,11 @@ use js::rust::{Runtime, RtUtils};
use url::Url;
use libc;
+use num::ToPrimitive;
use std::any::Any;
use std::borrow::ToOwned;
use std::cell::{Cell, RefCell};
use std::collections::HashSet;
-use std::num::ToPrimitive;
use std::option::Option;
use std::ptr;
use std::rc::Rc;
@@ -98,7 +97,7 @@ use std::result::Result;
use std::sync::mpsc::{channel, Sender, Receiver, Select};
use time::Tm;
-use hyper::header::ContentType;
+use hyper::header::{ContentType, HttpDate};
use hyper::mime::{Mime, TopLevel, SubLevel};
thread_local!(pub static STACK_ROOTS: Cell<Option<RootCollectionPtr>> = Cell::new(None));
@@ -340,7 +339,6 @@ impl<'a> ScriptMemoryFailsafe<'a> {
}
}
-#[unsafe_destructor]
impl<'a> Drop for ScriptMemoryFailsafe<'a> {
#[allow(unrooted_must_root)]
fn drop(&mut self) {
@@ -1088,7 +1086,6 @@ impl ScriptTask {
self.neutered = true;
}
}
- #[unsafe_destructor]
impl<'a> Drop for AutoPageRemover<'a> {
fn drop(&mut self) {
if !self.neutered {
@@ -1127,7 +1124,7 @@ impl ScriptTask {
incomplete.window_size).root();
let last_modified: Option<DOMString> = response.metadata.headers.as_ref().and_then(|headers| {
- headers.get().map(|&LastModified(ref tm)| dom_last_modified(tm))
+ headers.get().map(|&LastModified(HttpDate(ref tm))| dom_last_modified(tm))
});
let content_type = match response.metadata.content_type {
@@ -1458,7 +1455,6 @@ impl<'a> AutoDOMEventMarker<'a> {
}
}
-#[unsafe_destructor]
impl<'a> Drop for AutoDOMEventMarker<'a> {
fn drop(&mut self) {
let marker = TimelineMarker::new("DOMEvent".to_owned(), TracingMetadata::IntervalEnd);
diff --git a/components/script/textinput.rs b/components/script/textinput.rs
index 24383bf3fb4..f99f5e8781c 100644
--- a/components/script/textinput.rs
+++ b/components/script/textinput.rs
@@ -14,7 +14,6 @@ use util::str::DOMString;
use std::borrow::ToOwned;
use std::cmp::{min, max};
use std::default::Default;
-use std::num::SignedInt;
use std::sync::mpsc::channel;
#[derive(Copy, Clone, PartialEq)]
@@ -310,7 +309,7 @@ impl TextInput {
},
// printable characters have single-character key values
c if c.len() == 1 => {
- self.insert_char(c.char_at(0));
+ self.insert_char(c.chars().next().unwrap());
KeyReaction::DispatchInput
}
"Space" => {
diff --git a/components/script/timers.rs b/components/script/timers.rs
index 01e9920b3b7..806bc57b85a 100644
--- a/components/script/timers.rs
+++ b/components/script/timers.rs
@@ -11,6 +11,7 @@ use dom::bindings::utils::Reflectable;
use dom::window::ScriptHelpers;
use script_task::{ScriptChan, ScriptMsg, TimerSource};
+use horribly_inefficient_timers;
use util::task::spawn_named;
use util::str::DOMString;
@@ -24,8 +25,6 @@ use std::collections::HashMap;
use std::sync::mpsc::{channel, Sender};
use std::sync::mpsc::Select;
use std::hash::{Hash, Hasher};
-use std::old_io::timer::Timer;
-use std::time::duration::Duration;
#[derive(PartialEq, Eq)]
#[jstraceable]
@@ -74,7 +73,6 @@ pub struct TimerManager {
}
-#[unsafe_destructor]
impl Drop for TimerManager {
fn drop(&mut self) {
for (_, timer_handle) in self.active_timers.borrow_mut().iter_mut() {
@@ -141,13 +139,12 @@ impl TimerManager {
source: TimerSource,
script_chan: Box<ScriptChan+Send>)
-> i32 {
- let timeout = cmp::max(0, timeout) as u64;
+ let duration_ms = cmp::max(0, timeout) as u32;
let handle = self.next_timer_handle.get();
self.next_timer_handle.set(handle + 1);
// Spawn a new timer task; it will dispatch the `ScriptMsg::FireTimer`
// to the relevant script handler that will deal with it.
- let tm = Timer::new().unwrap();
let (control_chan, control_port) = channel();
let spawn_name = match source {
TimerSource::FromWindow(_) if is_interval == IsInterval::Interval => "Window:SetInterval",
@@ -156,12 +153,10 @@ impl TimerManager {
TimerSource::FromWorker => "Worker:SetTimeout",
}.to_owned();
spawn_named(spawn_name, move || {
- let mut tm = tm;
- let duration = Duration::milliseconds(timeout as i64);
let timeout_port = if is_interval == IsInterval::Interval {
- tm.periodic(duration)
+ horribly_inefficient_timers::periodic(duration_ms)
} else {
- tm.oneshot(duration)
+ horribly_inefficient_timers::oneshot(duration_ms)
};
let control_port = control_port;
diff --git a/components/servo/Cargo.lock b/components/servo/Cargo.lock
index 3adac4b1aa8..4748de71fca 100644
--- a/components/servo/Cargo.lock
+++ b/components/servo/Cargo.lock
@@ -2,7 +2,7 @@
name = "servo"
version = "0.0.1"
dependencies = [
- "android_glue 0.0.1",
+ "android_glue 0.0.2",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"compositing 0.0.1",
"devtools 0.0.1",
@@ -21,8 +21,8 @@ dependencies = [
"script 0.0.1",
"script_tests 0.0.1",
"style_tests 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"util_tests 0.0.1",
"webdriver_server 0.0.1",
@@ -30,17 +30,17 @@ dependencies = [
[[package]]
name = "android_glue"
-version = "0.0.1"
+version = "0.0.2"
[[package]]
name = "android_glue"
-version = "0.0.1"
-source = "git+https://github.com/tomaka/android-rs-glue#fa1eaa1d1857e0fa93832c5c8db5dc8bbcbc1eba"
+version = "0.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "azure"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-azure#3e5daf667a62f702dc16285e923464458bef785f"
+source = "git+https://github.com/servo/rust-azure#91e18a325fa5fdee9b1634b44a3a3a7ac1fb09ff"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
@@ -48,8 +48,8 @@ dependencies = [
"egl 0.1.0 (git+https://github.com/servo/rust-egl)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
@@ -63,44 +63,40 @@ name = "canvas"
version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
- "glutin 0.0.7 (git+https://github.com/servo/glutin?branch=servo)",
- "offscreen_gl_context 0.0.1 (git+https://github.com/ecoal95/rust-offscreen-rendering-context)",
+ "glutin 0.0.26 (git+https://github.com/servo/glutin?branch=servo)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "offscreen_gl_context 0.0.1 (git+https://github.com/servo/rust-offscreen-rendering-context)",
"util 0.0.1",
]
[[package]]
name = "cgl"
version = "0.0.1"
-source = "git+https://github.com/servo/rust-cgl#211afc4d1572d8fe67b91c452441b6cb292a2bc7"
+source = "git+https://github.com/servo/rust-cgl#16144321dc18d8ab538ee2acc0d2dad155a17899"
dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "clipboard"
version = "0.0.1"
-source = "git+https://github.com/aweinstock314/rust-x11-clipboard#eae9596e7e407c8b6037b934c1a8e42a309423fd"
+source = "git+https://github.com/servo/rust-x11-clipboard#43afb218871e3148758c603f335576cb101cb1fa"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
[[package]]
name = "clock_ticks"
-version = "0.0.4"
-source = "git+https://github.com/tomaka/clock_ticks#6a3005279bedc406b13eea09ff92447f05ca0de6"
-
-[[package]]
-name = "cocoa"
-version = "0.1.1"
-source = "git+https://github.com/servo/rust-cocoa#ca3441a14783aa0683e073f1a1f990ed21900718"
+version = "0.0.5"
+source = "git+https://github.com/tomaka/clock_ticks#462848731d99ed2f800e2e5a19e2d8ca3b11c90c"
dependencies = [
- "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -108,7 +104,7 @@ name = "compositing"
version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
- "clipboard 0.0.1 (git+https://github.com/aweinstock314/rust-x11-clipboard)",
+ "clipboard 0.0.1 (git+https://github.com/servo/rust-x11-clipboard)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
"core_text 0.1.0 (git+https://github.com/servo/rust-core-text)",
"devtools_traits 0.0.1",
@@ -117,73 +113,79 @@ dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"layout_traits 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net 0.0.1",
"net_traits 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
"script_traits 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
[[package]]
name = "cookie"
-version = "0.1.14"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_foundation"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-foundation#c577bd64b0301fe926cf7b757b9852a1ce1d521d"
+source = "git+https://github.com/servo/rust-core-foundation#928efbae42fc596e6ede2cf0949c3d6d6f3dad8f"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_graphics"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-graphics#e169ad38f71ed003c21fb550a9dfa0e51423ed3a"
+source = "git+https://github.com/servo/rust-core-graphics#da0d2fe947412afea55b438454194b2183c21594"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_text"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-text#8809f011445585d023d5e2a0712a1adcbf7ce609"
+source = "git+https://github.com/servo/rust-core-text#bc6994c3765f0660e9c04f5488ba194a9354e8fb"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "cssparser"
-version = "0.2.0"
-source = "git+https://github.com/servo/rust-cssparser#56d5f94d5239d4bd68358813405e4d5823c01ff6"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "debug-builders"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "devtools"
version = "0.0.1"
dependencies = [
"devtools_traits 0.0.1",
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -192,100 +194,109 @@ name = "devtools_traits"
version = "0.0.1"
dependencies = [
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "egl"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-egl#328e79b6256dea346f1821ccc4215e95fd1d58bc"
+source = "git+https://github.com/servo/rust-egl#c0159346b3adfdcf13f2cd86f5ee41750a72c078"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "encoding"
-version = "0.2.25"
+version = "0.2.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding-index-japanese 1.20141219.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-korean 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-simpchinese 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-singlebyte 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-tradchinese 1.20141219.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-japanese"
-version = "1.20141219.2"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-korean"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-simpchinese"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-singlebyte"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-tradchinese"
-version = "1.20141219.2"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding_index_tests"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "expat-sys"
version = "2.1.0"
-source = "git+https://github.com/servo/libexpat#523a2f2f51b41adf7bb5c4c65e80db0cb615d70b"
+source = "git+https://github.com/servo/libexpat#5f798cfbb74650a5e1d95e4c03a9e41e55e28625"
[[package]]
name = "flate2"
-version = "0.2.0"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "miniz-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "miniz-sys 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "fnv"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "fontconfig"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-fontconfig#91195bd29daa9280680bb28ba556821d504a17c6"
+source = "git+https://github.com/servo/rust-fontconfig#7839e5adcb4d6da3cefe2256f5071ac0203b9206"
dependencies = [
"fontconfig-sys 2.11.1 (git+https://github.com/servo/libfontconfig)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "fontconfig-sys"
version = "2.11.1"
-source = "git+https://github.com/servo/libfontconfig#adc60cacbca697123f4535ce2ff07619ec013cec"
+source = "git+https://github.com/servo/libfontconfig#ce4a38633dc649b95c9b4935c0cce53e76d8b46a"
dependencies = [
"expat-sys 2.1.0 (git+https://github.com/servo/libexpat)",
"freetype-sys 2.4.11 (git+https://github.com/servo/libfreetype2)",
@@ -296,38 +307,41 @@ name = "freetype"
version = "0.1.0"
source = "git+https://github.com/servo/rust-freetype#f256a9ac84893f0a183b8966de2a3a03d7552b8b"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "freetype-sys"
version = "2.4.11"
-source = "git+https://github.com/servo/libfreetype2#a488dfd86872bf9c163d54a7f73a5dc4d3c4fd9e"
+source = "git+https://github.com/servo/libfreetype2#50c1cf412d87f20ccbb940e39a14a38ae7cbb512"
[[package]]
name = "gcc"
-version = "0.3.1"
-source = "git+https://github.com/alexcrichton/gcc-rs#564247d019449ba46f25f64ffdefade5968b6ae7"
+version = "0.3.4"
+source = "git+https://github.com/alexcrichton/gcc-rs#9596a4e6da55e5ddbad6fd645b9727aae6b545ef"
[[package]]
name = "gcc"
-version = "0.3.1"
+version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "gdi32-sys"
-version = "0.0.4"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "winapi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "geom"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-geom#c47fc0f927b6d6e5543fe3b5445c86810831dce1"
+source = "git+https://github.com/servo/rust-geom#c4bdb1ef8f4915ae636eb752b103f69246b50304"
dependencies = [
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -344,20 +358,20 @@ dependencies = [
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"harfbuzz 0.1.0 (git+https://github.com/servo/rust-harfbuzz)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -369,51 +383,66 @@ dependencies = [
]
[[package]]
+name = "gl"
+version = "0.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "gl_common"
version = "0.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "gl_generator"
-version = "0.0.19"
+version = "0.0.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "xml-rs 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "xml-rs 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "gleam"
version = "0.0.1"
-source = "git+https://github.com/servo/gleam#70c5f2ea3ef3602277b7c380c24b504e42338056"
+source = "git+https://github.com/servo/gleam#f2edabf2ef0474bb270b107e5e68c2727c4a422d"
dependencies = [
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "glutin"
-version = "0.0.7"
-source = "git+https://github.com/servo/glutin?branch=servo#0feab4842c5b229bfe88739d2c526d03c198fd33"
+version = "0.0.26"
+source = "git+https://github.com/servo/glutin?branch=servo#c1af76550f311e3da7a08d393b4ea9805cb61a7b"
dependencies = [
- "android_glue 0.0.1 (git+https://github.com/tomaka/android-rs-glue)",
- "cocoa 0.1.1 (git+https://github.com/servo/rust-cocoa)",
- "core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
- "core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
- "gdi32-sys 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "android_glue 0.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gdi32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "kernel32-sys 0.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_cocoa 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_core_foundation 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_core_graphics 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "kernel32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "user32-sys 0.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "osmesa-sys 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "user32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "x11 0.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -426,99 +455,139 @@ dependencies = [
"egl 0.1.0 (git+https://github.com/servo/rust-egl)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
- "glutin 0.0.7 (git+https://github.com/servo/glutin?branch=servo)",
+ "glutin 0.0.26 (git+https://github.com/servo/glutin?branch=servo)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"script_traits 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "glutin_cocoa"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_core_foundation"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_core_graphics"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "glutin_core_foundation 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "glx"
version = "0.0.1"
-source = "git+https://github.com/servo/rust-glx#f2103861d38076ef5e01a8c2f58df1e79ca12f41"
+source = "git+https://github.com/servo/rust-glx#60ac0aee2438eadb4b51ddc8eac6fc4b5ca8e447"
dependencies = [
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "harfbuzz"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-harfbuzz#cc875777f820da0b85f39c2359d9609650b16600"
+source = "git+https://github.com/servo/rust-harfbuzz#33b6fd019fc04e46dd5fe15a5faf8efb1a9a0128"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "html5ever"
version = "0.0.0"
-source = "git+https://github.com/servo/html5ever#8bad1ca8e1e05a7972be80acc64efd729ffdc8a5"
+source = "git+https://github.com/servo/html5ever#74dc5f5a36451cfbe789488b20d51bef97c63898"
dependencies = [
"html5ever_macros 0.0.0 (git+https://github.com/servo/html5ever)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
- "phf 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_macros 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_macros 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "html5ever_macros"
version = "0.0.0"
-source = "git+https://github.com/servo/html5ever#8bad1ca8e1e05a7972be80acc64efd729ffdc8a5"
+source = "git+https://github.com/servo/html5ever#74dc5f5a36451cfbe789488b20d51bef97c63898"
dependencies = [
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "httparse"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "hyper"
-version = "0.3.0"
+version = "0.3.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "httparse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mime 0.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicase 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num_cpus 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "traitobject 0.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "typeable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicase 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "io_surface"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-io-surface#f380a03a9b0e0316866d4320d46a78dda87efbec"
+source = "git+https://github.com/servo/rust-io-surface#ab0ebd4ea6dd953c1581d9486b9e80ecf3c7577d"
dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "js"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-mozjs#402b7b2db8816ffeccacfa9a8d316f4487e96ba0"
+source = "git+https://github.com/servo/rust-mozjs#30a1ad31d1ee47a8e4e1ef582e793badfb405fa0"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mozjs_sys 0.0.0 (git+https://github.com/servo/mozjs)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "kernel32-sys"
-version = "0.0.11"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "winapi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -529,7 +598,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "layers"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-layers#df3a14d00260c8ab506565972555931444361ff8"
+source = "git+https://github.com/servo/rust-layers#018259e838c3842032010829feeaba316e577376"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
@@ -539,8 +608,10 @@ dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"glx 0.0.1 (git+https://github.com/servo/rust-glx)",
"io_surface 0.1.0 (git+https://github.com/servo/rust-io-surface)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
@@ -551,26 +622,26 @@ dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
- "clock_ticks 0.0.4 (git+https://github.com/tomaka/clock_ticks)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "clock_ticks 0.0.5 (git+https://github.com/tomaka/clock_ticks)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"layout_traits 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"script_traits 0.0.1",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -583,32 +654,40 @@ dependencies = [
"net_traits 0.0.1",
"profile_traits 0.0.1",
"script_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "lazy_static"
-version = "0.1.8"
-source = "git+https://github.com/Kimundi/lazy-static.rs#56b4be4141d3c58273cf5ee1d2e956e2f22248b9"
+version = "0.1.10"
+source = "git+https://github.com/Kimundi/lazy-static.rs#1366fce0e706ee8530c88b80039946c4c7e1f993"
+
+[[package]]
+name = "lazy_static"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libc"
-version = "0.1.2"
+version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libressl-pnacl-sys"
-version = "2.1.4"
+version = "2.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "pnacl-build-helper 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pnacl-build-helper 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "log"
-version = "0.2.5"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "mac"
@@ -616,6 +695,14 @@ version = "0.0.2"
source = "git+https://github.com/reem/rust-mac#6316d3f4663756180fd236b126a84e245e978765"
[[package]]
+name = "malloc_buf"
+version = "0.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "matches"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -625,21 +712,21 @@ name = "mime"
version = "0.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "miniz-sys"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "mod_path"
-version = "0.1.4"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -655,11 +742,11 @@ dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"io_surface 0.1.0 (git+https://github.com/servo/rust-io-surface)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
@@ -668,18 +755,18 @@ dependencies = [
name = "net"
version = "0.0.1"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "flate2 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "flate2 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"net_traits 0.0.1",
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex_macros 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex_macros 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -687,11 +774,11 @@ dependencies = [
name = "net_tests"
version = "0.0.1"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"net 0.0.1",
"net_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -700,80 +787,119 @@ name = "net_traits"
version = "0.0.1"
dependencies = [
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "num"
+version = "0.1.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "num_cpus"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "objc"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "malloc_buf 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "offscreen_gl_context"
version = "0.0.1"
-source = "git+https://github.com/ecoal95/rust-offscreen-rendering-context#9547d416019b15e0e59dc5176f5b1a14e14b44ca"
+source = "git+https://github.com/servo/rust-offscreen-rendering-context#9ef802439467c287178afe46c5dd7adec13993eb"
dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"glx 0.0.1 (git+https://github.com/servo/rust-glx)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
[[package]]
name = "openssl"
-version = "0.5.1"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl-sys 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "openssl-sys"
-version = "0.5.1"
+version = "0.6.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libressl-pnacl-sys 2.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "osmesa-sys"
+version = "0.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "libressl-pnacl-sys 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl 0.0.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "debug-builders 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_generator"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_macros"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_generator 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_generator 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_shared"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pkg-config"
-version = "0.3.0"
+version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -785,32 +911,36 @@ dependencies = [
[[package]]
name = "pnacl-build-helper"
-version = "1.3.2"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "tempdir 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "png"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-png#1d9c59c97598014860077f372443ae98b35ff4d9"
+source = "git+https://github.com/servo/rust-png#811e4d339441dd34fb087fc895e1619ba882933f"
dependencies = [
- "gcc 0.3.1 (git+https://github.com/alexcrichton/gcc-rs)",
+ "gcc 0.3.4 (git+https://github.com/alexcrichton/gcc-rs)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"png-sys 1.6.16 (git+https://github.com/servo/rust-png)",
]
[[package]]
name = "png-sys"
version = "1.6.16"
-source = "git+https://github.com/servo/rust-png#1d9c59c97598014860077f372443ae98b35ff4d9"
+source = "git+https://github.com/servo/rust-png#811e4d339441dd34fb087fc895e1619ba882933f"
[[package]]
name = "profile"
version = "0.0.1"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"profile_traits 0.0.1",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
"task_info 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -818,35 +948,39 @@ dependencies = [
name = "profile_traits"
version = "0.0.1"
dependencies = [
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "quicksort"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "rand"
-version = "0.1.4"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "regex"
-version = "0.1.18"
+version = "0.1.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "regex_macros"
-version = "0.1.11"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rustc-serialize"
-version = "0.3.4"
+version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -855,30 +989,32 @@ version = "0.0.1"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"devtools_traits 0.0.1",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"html5ever 0.0.0 (git+https://github.com/servo/html5ever)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"js 0.1.0 (git+https://github.com/servo/rust-mozjs)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicase 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
- "uuid 0.1.11 (git+https://github.com/rust-lang/uuid)",
+ "uuid 0.1.16 (git+https://github.com/rust-lang/uuid)",
"webdriver_traits 0.0.1",
]
@@ -895,10 +1031,10 @@ version = "0.0.1"
dependencies = [
"devtools_traits 0.0.1",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
@@ -906,11 +1042,13 @@ dependencies = [
[[package]]
name = "selectors"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-selectors#0d7d846090c21d71ebb1bc17921806933a38f52b"
+source = "git+https://github.com/servo/rust-selectors#1fda09bf0c59acfcb697f71b38dad22108b3d27a"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quicksort 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "smallvec 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
]
@@ -918,35 +1056,43 @@ dependencies = [
[[package]]
name = "skia"
version = "0.0.20130412"
-source = "git+https://github.com/servo/skia?branch=upstream-2014-06-16#db5b5393c83da9ff5b8fb2076481e98fb2b659f2"
+source = "git+https://github.com/servo/skia#d60e6753b2b23b3b4ff787b505da56cfad0335c9"
dependencies = [
"expat-sys 2.1.0 (git+https://github.com/servo/libexpat)",
"freetype-sys 2.4.11 (git+https://github.com/servo/libfreetype2)",
]
[[package]]
+name = "smallvec"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "stb_image"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-stb-image#b683cc9e7ba52a1bb65361347da0df1bc9c5e854"
+source = "git+https://github.com/servo/rust-stb-image#f6c411b381322609a321b7fb5f948b2365973604"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "string_cache"
version = "0.0.0"
-source = "git+https://github.com/servo/string-cache#124cb555651bd7838c5c6dc4788bc4f5350947a9"
+source = "git+https://github.com/servo/string-cache#385c4ac197742e355631209be3613c8a9c7594b6"
dependencies = [
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
- "phf 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_macros 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "phf 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_macros 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
]
[[package]]
name = "string_cache_plugin"
version = "0.0.0"
-source = "git+https://github.com/servo/string-cache#124cb555651bd7838c5c6dc4788bc4f5350947a9"
+source = "git+https://github.com/servo/string-cache#385c4ac197742e355631209be3613c8a9c7594b6"
dependencies = [
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
]
@@ -955,19 +1101,18 @@ name = "style"
version = "0.0.1"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "mod_path 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "mod_path 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -975,13 +1120,13 @@ dependencies = [
name = "style_tests"
version = "0.0.1"
dependencies = [
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -990,44 +1135,57 @@ name = "task_info"
version = "0.0.1"
[[package]]
+name = "tempdir"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "tenacious"
version = "0.0.1"
source = "git+https://github.com/Manishearth/rust-tenacious.git#d61782e70005a9f0cdf66f366d4ec88fc563ea1e"
[[package]]
-name = "text_writer"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
name = "time"
-version = "0.1.19"
+version = "0.1.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "traitobject"
+version = "0.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
+name = "typeable"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "unicase"
-version = "0.0.5"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "url"
-version = "0.2.23"
+version = "0.2.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "user32-sys"
-version = "0.0.11"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "winapi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1036,19 +1194,22 @@ version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num_cpus 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
+ "smallvec 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1061,32 +1222,32 @@ dependencies = [
[[package]]
name = "uuid"
-version = "0.1.11"
-source = "git+https://github.com/rust-lang/uuid#c7862508f84b114d22bb68ec01202eafc50a81b2"
+version = "0.1.16"
+source = "git+https://github.com/rust-lang/uuid#7c767220c41746d346c8195e31ddf090ac6568e7"
dependencies = [
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "uuid"
-version = "0.1.11"
+version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "webdriver"
-version = "0.0.1"
-source = "git+https://github.com/jgraham/webdriver-rust.git#fa625e3cf8fdb39b503c1cc902506df3a1d1c9de"
+version = "0.1.0"
+source = "git+https://github.com/jgraham/webdriver-rust.git#66547888f47bae7e938a92af4586276479343216"
dependencies = [
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "uuid 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "uuid 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1094,11 +1255,11 @@ name = "webdriver_server"
version = "0.0.1"
dependencies = [
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
- "uuid 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "webdriver 0.0.1 (git+https://github.com/jgraham/webdriver-rust.git)",
+ "uuid 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ "webdriver 0.1.0 (git+https://github.com/jgraham/webdriver-rust.git)",
"webdriver_traits 0.0.1",
]
@@ -1106,15 +1267,23 @@ dependencies = [
name = "webdriver_traits"
version = "0.0.1"
dependencies = [
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "winapi"
-version = "0.1.15"
+version = "0.1.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "x11"
+version = "0.0.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1123,12 +1292,12 @@ version = "0.1.0"
source = "git+https://github.com/servo/rust-xlib#1a0f3d48fbebf96e2d1bf83ac71309b27f49e0c7"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "xml-rs"
-version = "0.1.20"
+version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/components/servo/lib.rs b/components/servo/lib.rs
index b7a45efa1de..f3837112a82 100644
--- a/components/servo/lib.rs
+++ b/components/servo/lib.rs
@@ -17,7 +17,6 @@
// The `Browser` is fed events from a generic type that implements the
// `WindowMethods` trait.
#![feature(libc, thread_local)]
-#![cfg_attr(not(test), feature(path))]
extern crate compositing;
extern crate devtools;
diff --git a/components/servo/main.rs b/components/servo/main.rs
index 1bf329920e3..6de2b2d1399 100644
--- a/components/servo/main.rs
+++ b/components/servo/main.rs
@@ -15,7 +15,7 @@
//!
//! [glutin]: https://github.com/tomaka/glutin
-#![feature(start)]
+#![feature(start, libc)]
// The Servo engine
extern crate servo;
@@ -26,7 +26,7 @@ extern crate net;
// Servo common utilitiess
extern crate util;
// The window backed by glutin
-extern crate "glutin_app" as app;
+extern crate glutin_app as app;
extern crate time;
#[cfg(target_os="android")]
@@ -187,7 +187,6 @@ mod android {
use self::libc::funcs::posix88::stdio::fdopen;
use self::libc::funcs::c95::stdio::fgets;
use util::task::spawn_named;
- use std::mem;
use std::ffi::CString;
use std::str::from_utf8;
@@ -195,14 +194,15 @@ mod android {
let mut pipes: [c_int; 2] = [ 0, 0 ];
pipe(pipes.as_mut_ptr());
dup2(pipes[1], file_no);
- let mode = CString::from_slice("r".as_bytes());
+ let mode = CString::new("r").unwrap();
let input_file = FilePtr(fdopen(pipes[0], mode.as_ptr()));
spawn_named("android-logger".to_owned(), move || {
loop {
- let mut read_buffer: [u8; 1024] = mem::zeroed();
+ let mut read_buffer: Vec<u8> = vec!();
+ read_buffer.reserve(1024);
let FilePtr(input_file) = input_file;
fgets(read_buffer.as_mut_ptr() as *mut i8, read_buffer.len() as i32, input_file);
- let cs = CString::from_slice(&read_buffer);
+ let cs = CString::new(read_buffer).unwrap();
match from_utf8(cs.as_bytes()) {
Ok(s) => android_glue::write_log(s),
_ => {}
diff --git a/components/style/Cargo.toml b/components/style/Cargo.toml
index dde46e98962..96438546fc5 100644
--- a/components/style/Cargo.toml
+++ b/components/style/Cargo.toml
@@ -18,9 +18,6 @@ path = "../util"
[dependencies.geom]
git = "https://github.com/servo/rust-geom"
-[dependencies.cssparser]
-git = "https://github.com/servo/rust-cssparser"
-
[dependencies.selectors]
git = "https://github.com/servo/rust-selectors"
@@ -34,10 +31,10 @@ git = "https://github.com/servo/string-cache"
git = "https://github.com/servo/string-cache"
[dependencies]
-text_writer = "0.1.1"
encoding = "0.2"
rustc-serialize = "0.3"
matches = "0.1"
url = "0.2.16"
mod_path = "0.1"
bitflags = "*"
+cssparser = "0.3.1"
diff --git a/components/style/animation.rs b/components/style/animation.rs
index 06e073bf745..d8652b3ea0e 100644
--- a/components/style/animation.rs
+++ b/components/style/animation.rs
@@ -21,10 +21,8 @@ use values::computed::{LengthOrPercentageOrAuto, LengthOrPercentageOrNone, Lengt
use values::CSSFloat;
use cssparser::{RGBA, Color};
-use std::num::Float;
use std::cmp::Ordering;
use std::iter::repeat;
-use std::num::FromPrimitive;
use util::bezier::Bezier;
use util::geometry::Au;
@@ -155,7 +153,7 @@ impl PropertyAnimation {
}
}
- pub fn update(&self, style: &mut ComputedValues, time: f64) {
+ pub fn update(&self, style: &mut ComputedValues, time: f32) {
let progress = match self.timing_function {
TransitionTimingFunction::CubicBezier(p1, p2) => {
// See `WebCore::AnimationBase::solveEpsilon(double)` in WebKit.
@@ -163,10 +161,10 @@ impl PropertyAnimation {
Bezier::new(p1, p2).solve(time, epsilon)
}
TransitionTimingFunction::Steps(steps, StartEnd::Start) => {
- (time * (steps as f64)).ceil() / (steps as f64)
+ (time * (steps as f32)).ceil() / (steps as f32)
}
TransitionTimingFunction::Steps(steps, StartEnd::End) => {
- (time * (steps as f64)).floor() / (steps as f64)
+ (time * (steps as f32)).floor() / (steps as f32)
}
};
@@ -336,19 +334,19 @@ impl AnimatedProperty {
}
trait Interpolate {
- fn interpolate(&self, other: &Self, time: f64) -> Option<Self>;
+ fn interpolate(&self, other: &Self, time: f32) -> Option<Self>;
}
impl Interpolate for Au {
#[inline]
- fn interpolate(&self, other: &Au, time: f64) -> Option<Au> {
- Some(Au((self.0 as f64 + (other.0 as f64 - self.0 as f64) * time).round() as i32))
+ fn interpolate(&self, other: &Au, time: f32) -> Option<Au> {
+ Some(Au((self.0 as f32 + (other.0 as f32 - self.0 as f32) * time).round() as i32))
}
}
impl <T> Interpolate for Option<T> where T:Interpolate {
#[inline]
- fn interpolate(&self, other: &Option<T>, time: f64) -> Option<Option<T>> {
+ fn interpolate(&self, other: &Option<T>, time: f32) -> Option<Option<T>> {
match (self, other) {
(&Some(ref this), &Some(ref other)) => {
this.interpolate(other, time).and_then(|value| {
@@ -360,32 +358,32 @@ impl <T> Interpolate for Option<T> where T:Interpolate {
}
}
-impl Interpolate for f64 {
+impl Interpolate for f32 {
#[inline]
- fn interpolate(&self, other: &f64, time: f64) -> Option<f64> {
+ fn interpolate(&self, other: &f32, time: f32) -> Option<f32> {
Some(*self + (*other - *self) * time)
}
}
-impl Interpolate for f32 {
+impl Interpolate for f64 {
#[inline]
- fn interpolate(&self, other: &f32, time: f64) -> Option<f32> {
- Some(*self + (*other - *self) * (time as f32))
+ fn interpolate(&self, other: &f64, time: f32) -> Option<f64> {
+ Some(*self + (*other - *self) * (time as f64))
}
}
impl Interpolate for i32 {
#[inline]
- fn interpolate(&self, other: &i32, time: f64) -> Option<i32> {
- let a = *self as f64;
- let b = *other as f64;
+ fn interpolate(&self, other: &i32, time: f32) -> Option<i32> {
+ let a = *self as f32;
+ let b = *other as f32;
Some((a + (b - a) * time).round() as i32)
}
}
impl Interpolate for Visibility {
#[inline]
- fn interpolate(&self, other: &Visibility, time: f64)
+ fn interpolate(&self, other: &Visibility, time: f32)
-> Option<Visibility> {
match (*self, *other) {
(Visibility::visible, _) | (_, Visibility::visible) => {
@@ -404,7 +402,7 @@ impl Interpolate for Visibility {
impl Interpolate for ZIndex {
#[inline]
- fn interpolate(&self, other: &ZIndex, time: f64)
+ fn interpolate(&self, other: &ZIndex, time: f32)
-> Option<ZIndex> {
match (*self, *other) {
(ZIndex::Number(ref this),
@@ -420,7 +418,7 @@ impl Interpolate for ZIndex {
impl Interpolate for VerticalAlign {
#[inline]
- fn interpolate(&self, other: &VerticalAlign, time: f64)
+ fn interpolate(&self, other: &VerticalAlign, time: f32)
-> Option<VerticalAlign> {
match (*self, *other) {
(VerticalAlign::Length(ref this),
@@ -436,7 +434,7 @@ impl Interpolate for VerticalAlign {
impl Interpolate for BorderSpacing {
#[inline]
- fn interpolate(&self, other: &BorderSpacing, time: f64)
+ fn interpolate(&self, other: &BorderSpacing, time: f32)
-> Option<BorderSpacing> {
self.horizontal.interpolate(&other.horizontal, time).and_then(|horizontal| {
self.vertical.interpolate(&other.vertical, time).and_then(|vertical| {
@@ -448,7 +446,7 @@ impl Interpolate for BorderSpacing {
impl Interpolate for RGBA {
#[inline]
- fn interpolate(&self, other: &RGBA, time: f64) -> Option<RGBA> {
+ fn interpolate(&self, other: &RGBA, time: f32) -> Option<RGBA> {
match (self.red.interpolate(&other.red, time),
self.green.interpolate(&other.green, time),
self.blue.interpolate(&other.blue, time),
@@ -463,7 +461,7 @@ impl Interpolate for RGBA {
impl Interpolate for Color {
#[inline]
- fn interpolate(&self, other: &Color, time: f64) -> Option<Color> {
+ fn interpolate(&self, other: &Color, time: f32) -> Option<Color> {
match (*self, *other) {
(Color::RGBA(ref this), Color::RGBA(ref other)) => {
this.interpolate(other, time).and_then(|value| {
@@ -477,7 +475,7 @@ impl Interpolate for Color {
impl Interpolate for LengthOrPercentage {
#[inline]
- fn interpolate(&self, other: &LengthOrPercentage, time: f64)
+ fn interpolate(&self, other: &LengthOrPercentage, time: f32)
-> Option<LengthOrPercentage> {
match (*self, *other) {
(LengthOrPercentage::Length(ref this),
@@ -499,7 +497,7 @@ impl Interpolate for LengthOrPercentage {
impl Interpolate for LengthOrPercentageOrAuto {
#[inline]
- fn interpolate(&self, other: &LengthOrPercentageOrAuto, time: f64)
+ fn interpolate(&self, other: &LengthOrPercentageOrAuto, time: f32)
-> Option<LengthOrPercentageOrAuto> {
match (*self, *other) {
(LengthOrPercentageOrAuto::Length(ref this),
@@ -524,7 +522,7 @@ impl Interpolate for LengthOrPercentageOrAuto {
impl Interpolate for LengthOrPercentageOrNone {
#[inline]
- fn interpolate(&self, other: &LengthOrPercentageOrNone, time: f64)
+ fn interpolate(&self, other: &LengthOrPercentageOrNone, time: f32)
-> Option<LengthOrPercentageOrNone> {
match (*self, *other) {
(LengthOrPercentageOrNone::Length(ref this),
@@ -549,7 +547,7 @@ impl Interpolate for LengthOrPercentageOrNone {
impl Interpolate for LineHeight {
#[inline]
- fn interpolate(&self, other: &LineHeight, time: f64)
+ fn interpolate(&self, other: &LineHeight, time: f32)
-> Option<LineHeight> {
match (*self, *other) {
(LineHeight::Length(ref this),
@@ -572,20 +570,39 @@ impl Interpolate for LineHeight {
}
}
+/// http://dev.w3.org/csswg/css-transitions/#animtype-font-weight
impl Interpolate for FontWeight {
#[inline]
- fn interpolate(&self, other: &FontWeight, time: f64)
+ fn interpolate(&self, other: &FontWeight, time: f32)
-> Option<FontWeight> {
- let a = (*self as isize) as f64;
- let b = (*other as isize) as f64;
- let weight: Option<FontWeight> = FromPrimitive::from_isize((a + (b - a) * time).round() as isize);
- weight
+ let a = (*self as u32) as f32;
+ let b = (*other as u32) as f32;
+ let weight = a + (b - a) * time;
+ Some(if weight < 150. {
+ FontWeight::Weight100
+ } else if weight < 250. {
+ FontWeight::Weight200
+ } else if weight < 350. {
+ FontWeight::Weight300
+ } else if weight < 450. {
+ FontWeight::Weight400
+ } else if weight < 550. {
+ FontWeight::Weight500
+ } else if weight < 650. {
+ FontWeight::Weight600
+ } else if weight < 750. {
+ FontWeight::Weight700
+ } else if weight < 850. {
+ FontWeight::Weight800
+ } else {
+ FontWeight::Weight900
+ })
}
}
impl Interpolate for ClipRect {
#[inline]
- fn interpolate(&self, other: &ClipRect, time: f64)
+ fn interpolate(&self, other: &ClipRect, time: f32)
-> Option<ClipRect> {
match (self.top.interpolate(&other.top, time),
self.right.interpolate(&other.right, time),
@@ -601,7 +618,7 @@ impl Interpolate for ClipRect {
impl Interpolate for BackgroundPosition {
#[inline]
- fn interpolate(&self, other: &BackgroundPosition, time: f64)
+ fn interpolate(&self, other: &BackgroundPosition, time: f32)
-> Option<BackgroundPosition> {
match (self.horizontal.interpolate(&other.horizontal, time),
self.vertical.interpolate(&other.vertical, time)) {
@@ -615,7 +632,7 @@ impl Interpolate for BackgroundPosition {
impl Interpolate for TextShadow {
#[inline]
- fn interpolate(&self, other: &TextShadow, time: f64)
+ fn interpolate(&self, other: &TextShadow, time: f32)
-> Option<TextShadow> {
match (self.offset_x.interpolate(&other.offset_x, time),
self.offset_y.interpolate(&other.offset_y, time),
@@ -631,7 +648,7 @@ impl Interpolate for TextShadow {
impl Interpolate for TextShadowList {
#[inline]
- fn interpolate(&self, other: &TextShadowList, time: f64)
+ fn interpolate(&self, other: &TextShadowList, time: f32)
-> Option<TextShadowList> {
let zero = TextShadow {
offset_x: Au(0),
diff --git a/components/style/build.rs b/components/style/build.rs
index 8e2117614cf..80965f329f5 100644
--- a/components/style/build.rs
+++ b/components/style/build.rs
@@ -2,8 +2,6 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#![feature(io, path)]
-
use std::env;
use std::fs::File;
use std::io::Write;
diff --git a/components/style/legacy.rs b/components/style/legacy.rs
index c65332246a4..f3a66f5138a 100644
--- a/components/style/legacy.rs
+++ b/components/style/legacy.rs
@@ -16,8 +16,8 @@ use properties::PropertyDeclaration;
use properties::longhands::{self, border_spacing};
use selector_matching::Stylist;
-use selectors::smallvec::VecLike;
use util::geometry::Au;
+use util::smallvec::VecLike;
use util::str::LengthOrPercentageOrAuto;
/// Legacy presentational attributes that take a length as defined in HTML5 § 2.4.4.4.
@@ -88,9 +88,9 @@ impl PresentationalHintSynthesis for Stylist {
V: VecLike<DeclarationBlock<Vec<PropertyDeclaration>>> {
let element = node.as_element();
- let length = matching_rules_list.vec_len();
+ let length = matching_rules_list.len();
element.synthesize_presentational_hints_for_legacy_attributes(matching_rules_list);
- if matching_rules_list.vec_len() != length {
+ if matching_rules_list.len() != length {
// Never share style for elements with preshints
*shareable = false;
}
@@ -101,13 +101,13 @@ impl PresentationalHintSynthesis for Stylist {
LengthOrPercentageOrAuto::Auto => {}
LengthOrPercentageOrAuto::Percentage(percentage) => {
let width_value = specified::LengthOrPercentageOrAuto::Percentage(percentage);
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::Width(SpecifiedValue(width_value))));
*shareable = false
}
LengthOrPercentageOrAuto::Length(length) => {
let width_value = specified::LengthOrPercentageOrAuto::Length(specified::Length::Absolute(length));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::Width(SpecifiedValue(width_value))));
*shareable = false
}
@@ -127,7 +127,7 @@ impl PresentationalHintSynthesis for Stylist {
None => {}
Some(length) => {
let width_value = specified::Length::Absolute(Au::from_px(length as isize));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::BorderSpacing(
SpecifiedValue(
border_spacing::SpecifiedValue {
@@ -146,7 +146,7 @@ impl PresentationalHintSynthesis for Stylist {
Some(value) if value != 0 => {
let value = specified::Length::ServoCharacterWidth(
specified::CharacterWidth(value));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::Width(SpecifiedValue(
specified::LengthOrPercentageOrAuto::Length(value)))));
*shareable = false
@@ -166,7 +166,7 @@ impl PresentationalHintSynthesis for Stylist {
//
// https://html.spec.whatwg.org/multipage/#textarea-effective-width
let value = specified::Length::ServoCharacterWidth(specified::CharacterWidth(value));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::Width(SpecifiedValue(
specified::LengthOrPercentageOrAuto::Length(value)))));
*shareable = false
@@ -179,7 +179,7 @@ impl PresentationalHintSynthesis for Stylist {
//
// https://html.spec.whatwg.org/multipage/#textarea-effective-height
let value = specified::Length::FontRelative(specified::FontRelativeLength::Em(value as CSSFloat));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::Height(SpecifiedValue(
longhands::height::SpecifiedValue(
specified::LengthOrPercentageOrAuto::Length(value))))));
@@ -205,16 +205,16 @@ impl PresentationalHintSynthesis for Stylist {
None => {}
Some(length) => {
let width_value = specified::Length::Absolute(Au::from_px(length as isize));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::BorderTopWidth(SpecifiedValue(
longhands::border_top_width::SpecifiedValue(width_value)))));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::BorderLeftWidth(SpecifiedValue(
longhands::border_left_width::SpecifiedValue(width_value)))));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::BorderBottomWidth(SpecifiedValue(
longhands::border_bottom_width::SpecifiedValue(width_value)))));
- matching_rules_list.vec_push(from_declaration(
+ matching_rules_list.push(from_declaration(
PropertyDeclaration::BorderRightWidth(SpecifiedValue(
longhands::border_right_width::SpecifiedValue(width_value)))));
*shareable = false
diff --git a/components/style/lib.rs b/components/style/lib.rs
index b4de6f762c4..109216ecf55 100644
--- a/components/style/lib.rs
+++ b/components/style/lib.rs
@@ -18,7 +18,6 @@
extern crate collections;
extern crate geom;
-extern crate text_writer;
extern crate url;
#[macro_use]
@@ -28,7 +27,7 @@ extern crate cssparser;
extern crate matches;
extern crate encoding;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate string_cache;
extern crate selectors;
diff --git a/components/style/node.rs b/components/style/node.rs
index 6d2c84ac8cc..011066951c3 100644
--- a/components/style/node.rs
+++ b/components/style/node.rs
@@ -7,10 +7,10 @@
use legacy::{IntegerAttribute, LengthAttribute, UnsignedIntegerAttribute};
use properties::PropertyDeclaration;
+use util::smallvec::VecLike;
use util::str::LengthOrPercentageOrAuto;
use selectors::matching::DeclarationBlock;
-use selectors::smallvec::VecLike;
pub use selectors::tree::{TNode, TElement};
pub trait TElementAttributes : Copy {
diff --git a/components/style/properties.mako.rs b/components/style/properties.mako.rs
index 9100f8221cd..ccf5095c0e8 100644
--- a/components/style/properties.mako.rs
+++ b/components/style/properties.mako.rs
@@ -232,10 +232,10 @@ pub mod longhands {
use values::computed::{ToComputedValue, Context};
use util::geometry::Au;
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
self.0.to_css(dest)
}
}
@@ -384,7 +384,7 @@ pub mod longhands {
pub type SpecifiedValue = computed_value::T;
pub mod computed_value {
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(PartialEq, Clone, Eq, Copy, Debug)]
pub enum T {
@@ -393,7 +393,7 @@ pub mod longhands {
}
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&T::Auto => dest.write_str("auto"),
&T::Number(number) => write!(dest, "{}", number),
@@ -437,10 +437,10 @@ pub mod longhands {
<%self:longhand name="height">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
self.0.to_css(dest)
}
}
@@ -493,7 +493,7 @@ pub mod longhands {
<%self:longhand name="line-height">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::CSSFloat;
#[derive(Clone, PartialEq, Copy)]
@@ -505,7 +505,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&SpecifiedValue::Normal => dest.write_str("normal"),
&SpecifiedValue::Length(length) => length.to_css(dest),
@@ -583,7 +583,7 @@ pub mod longhands {
<%self:longhand name="vertical-align">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
<% vertical_align_keywords = (
"baseline sub super top text-top middle bottom text-bottom".split()) %>
@@ -597,7 +597,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
% for keyword in vertical_align_keywords:
&SpecifiedValue::${to_rust_ident(keyword)} => dest.write_str("${keyword}"),
@@ -716,12 +716,12 @@ pub mod longhands {
use values::computed::{Context, ToComputedValue};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
pub use self::computed_value::T as SpecifiedValue;
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
self.0.to_css(dest)
}
}
@@ -778,7 +778,7 @@ pub mod longhands {
use super::super::list_style_type;
use cssparser::{self, ToCss};
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(PartialEq, Eq, Clone)]
pub enum ContentItem {
@@ -799,7 +799,7 @@ pub mod longhands {
}
impl ToCss for ContentItem {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&ContentItem::String(ref s) => {
cssparser::serialize_string(&**s, dest)
@@ -837,7 +837,7 @@ pub mod longhands {
}
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&T::normal => dest.write_str("normal"),
&T::none => dest.write_str("none"),
@@ -943,10 +943,9 @@ pub mod longhands {
""")}
<%self:longhand name="list-style-image">
- use std::borrow::IntoCow;
use url::Url;
use cssparser::{ToCss, Token};
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::{ToComputedValue, Context};
#[derive(Clone, PartialEq, Eq)]
@@ -956,11 +955,11 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::None => dest.write_str("none"),
SpecifiedValue::Url(ref url) => {
- Token::Url(url.to_string().into_cow()).to_css(dest)
+ Token::Url(url.to_string().into()).to_css(dest)
}
}
}
@@ -997,11 +996,11 @@ pub mod longhands {
</%self:longhand>
<%self:longhand name="quotes">
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::ComputedValueAsSpecified;
+ use std::borrow::Cow;
use cssparser::{ToCss, Token};
- use std::borrow::IntoCow;
pub use self::computed_value::T as SpecifiedValue;
@@ -1013,16 +1012,16 @@ pub mod longhands {
impl ComputedValueAsSpecified for SpecifiedValue {}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let mut first = true;
for pair in self.0.iter() {
if !first {
try!(dest.write_str(" "));
}
first = false;
- try!(Token::QuotedString((*pair.0).into_cow()).to_css(dest));
+ try!(Token::QuotedString(Cow::from(&*pair.0)).to_css(dest));
try!(dest.write_str(" "));
- try!(Token::QuotedString((*pair.1).into_cow()).to_css(dest));
+ try!(Token::QuotedString(Cow::from(&*pair.1)).to_css(dest));
}
Ok(())
}
@@ -1066,11 +1065,11 @@ pub mod longhands {
<%self:longhand name="counter-increment">
use super::content;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::ComputedValueAsSpecified;
use cssparser::{ToCss, Token};
- use std::borrow::{IntoCow, ToOwned};
+ use std::borrow::{Cow, ToOwned};
pub use self::computed_value::T as SpecifiedValue;
@@ -1087,15 +1086,15 @@ pub mod longhands {
impl ComputedValueAsSpecified for SpecifiedValue {}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let mut first = true;
for pair in self.0.iter() {
if !first {
try!(dest.write_str(" "));
}
first = false;
- try!(Token::QuotedString(pair.0.as_slice().into_cow()).to_css(dest));
- try!(dest.write_str(format!(" {}", pair.1).as_slice()));
+ try!(Token::QuotedString(Cow::from(&*pair.0)).to_css(dest));
+ try!(write!(dest, " {}", pair.1));
}
Ok(())
}
@@ -1145,7 +1144,7 @@ pub mod longhands {
use values::specified::Image;
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
pub mod computed_value {
use values::computed;
@@ -1156,7 +1155,7 @@ pub mod longhands {
pub struct SpecifiedValue(pub Option<Image>);
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue(Some(ref image)) => image.to_css(dest),
SpecifiedValue(None) => dest.write_str("none"),
@@ -1190,7 +1189,7 @@ pub mod longhands {
<%self:longhand name="background-position">
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::{ToComputedValue, Context};
pub mod computed_value {
@@ -1210,7 +1209,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(self.horizontal.to_css(dest));
try!(dest.write_str(" "));
try!(self.vertical.to_css(dest));
@@ -1300,7 +1299,7 @@ pub mod longhands {
<%self:longhand name="background-size">
use cssparser::{ToCss, Token};
use std::ascii::AsciiExt;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::{Context, ToComputedValue};
pub mod computed_value {
@@ -1327,7 +1326,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedExplicitSize {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(self.width.to_css(dest));
try!(dest.write_str(" "));
self.height.to_css(dest)
@@ -1342,7 +1341,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Explicit(ref size) => size.to_css(dest),
SpecifiedValue::Cover => dest.write_str("cover"),
@@ -1461,12 +1460,13 @@ pub mod longhands {
use self::computed_value::FontFamily;
use string_cache::Atom;
use values::computed::ComputedValueAsSpecified;
+ pub use self::computed_value::T as SpecifiedValue;
impl ComputedValueAsSpecified for SpecifiedValue {}
pub mod computed_value {
use cssparser::ToCss;
use string_cache::Atom;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(PartialEq, Eq, Clone, Hash)]
pub enum FontFamily {
@@ -1487,15 +1487,15 @@ pub mod longhands {
}
}
impl ToCss for FontFamily {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&FontFamily::FamilyName(ref name) => dest.write_str(name.as_slice()),
}
}
}
- impl ToCss for Vec<FontFamily> {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
- let mut iter = self.iter();
+ impl ToCss for T {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
+ let mut iter = self.0.iter();
try!(iter.next().unwrap().to_css(dest));
for family in iter {
try!(dest.write_str(", "));
@@ -1504,23 +1504,23 @@ pub mod longhands {
Ok(())
}
}
- pub type T = Vec<FontFamily>;
+ #[derive(Clone, PartialEq, Eq, Hash)]
+ pub struct T(pub Vec<FontFamily>);
}
- pub type SpecifiedValue = computed_value::T;
#[inline]
pub fn get_initial_value() -> computed_value::T {
- vec![FontFamily::FamilyName(Atom::from_slice("serif"))]
+ computed_value::T(vec![FontFamily::FamilyName(Atom::from_slice("serif"))])
}
/// <family-name>#
/// <family-name> = <string> | [ <ident>+ ]
/// TODO: <generic-family>
pub fn parse(_context: &ParserContext, input: &mut Parser) -> Result<SpecifiedValue, ()> {
- input.parse_comma_separated(parse_one_family)
+ input.parse_comma_separated(parse_one_family).map(SpecifiedValue)
}
pub fn parse_one_family(input: &mut Parser) -> Result<FontFamily, ()> {
if let Ok(value) = input.try(|input| input.expect_string()) {
- return Ok(FontFamily::FamilyName(Atom::from_slice(value.as_slice())))
+ return Ok(FontFamily::FamilyName(Atom::from_slice(&value)))
}
let first_ident = try!(input.expect_ident());
// match_ignore_ascii_case! { first_ident,
@@ -1536,7 +1536,7 @@ pub mod longhands {
value.push_str(" ");
value.push_str(&ident);
}
- Ok(FontFamily::FamilyName(Atom::from_slice(value.as_slice())))
+ Ok(FontFamily::FamilyName(Atom::from_slice(&value)))
}
</%self:longhand>
@@ -1546,7 +1546,7 @@ pub mod longhands {
<%self:longhand name="font-weight">
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::{ToComputedValue, Context};
#[derive(Clone, PartialEq, Eq, Copy)]
@@ -1559,7 +1559,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&SpecifiedValue::Bolder => dest.write_str("bolder"),
&SpecifiedValue::Lighter => dest.write_str("lighter"),
@@ -1596,7 +1596,7 @@ pub mod longhands {
}
pub mod computed_value {
use std::fmt;
- #[derive(PartialEq, Eq, Copy, Clone, Hash, FromPrimitive)]
+ #[derive(PartialEq, Eq, Copy, Clone, Hash)]
pub enum T {
% for weight in range(100, 901, 100):
Weight${weight} = ${weight},
@@ -1667,10 +1667,10 @@ pub mod longhands {
use util::geometry::Au;
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
self.0.to_css(dest)
}
}
@@ -1730,12 +1730,59 @@ pub mod longhands {
${new_style_struct("InheritedText", is_inherited=True)}
- ${single_keyword("text-align", "start end left right center justify")}
+ <%self:longhand name="text-align">
+ pub use self::computed_value::T as SpecifiedValue;
+ use values::computed::ComputedValueAsSpecified;
+ impl ComputedValueAsSpecified for SpecifiedValue {}
+ pub mod computed_value {
+ macro_rules! define_text_align {
+ ( $( $name: ident => $discriminant: expr, )+ ) => {
+ define_css_keyword_enum! { T:
+ $(
+ stringify!($name) => $name,
+ )+
+ }
+ impl T {
+ pub fn to_u32(self) -> u32 {
+ match self {
+ $(
+ T::$name => $discriminant,
+ )+
+ }
+ }
+ pub fn from_u32(discriminant: u32) -> Option<T> {
+ match discriminant {
+ $(
+ $discriminant => Some(T::$name),
+ )+
+ _ => None
+ }
+ }
+ }
+ }
+ }
+ define_text_align! {
+ start => 0,
+ end => 1,
+ left => 2,
+ right => 3,
+ center => 4,
+ justify => 5,
+ }
+ }
+ #[inline] pub fn get_initial_value() -> computed_value::T {
+ computed_value::T::start
+ }
+ pub fn parse(_context: &ParserContext, input: &mut Parser)
+ -> Result<SpecifiedValue, ()> {
+ computed_value::T::parse(input)
+ }
+ </%self:longhand>
<%self:longhand name="letter-spacing">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Clone, Copy, PartialEq)]
pub enum SpecifiedValue {
@@ -1744,7 +1791,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Normal => dest.write_str("normal"),
SpecifiedValue::Specified(l) => l.to_css(dest),
@@ -1786,7 +1833,7 @@ pub mod longhands {
<%self:longhand name="word-spacing">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Clone, Copy, PartialEq)]
pub enum SpecifiedValue {
@@ -1795,7 +1842,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Normal => dest.write_str("normal"),
SpecifiedValue::Specified(l) => l.to_css(dest),
@@ -1852,7 +1899,7 @@ pub mod longhands {
<%self:longhand name="text-decoration">
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::ComputedValueAsSpecified;
impl ComputedValueAsSpecified for SpecifiedValue {}
@@ -1867,7 +1914,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let mut space = false;
if self.underline {
try!(dest.write_str("underline"));
@@ -2030,7 +2077,7 @@ pub mod longhands {
use values::computed::{Context, ToComputedValue};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use util::geometry::Au;
pub mod computed_value {
@@ -2058,7 +2105,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(self.horizontal.to_css(dest));
try!(dest.write_str(" "));
self.vertical.to_css(dest)
@@ -2137,7 +2184,7 @@ pub mod longhands {
pub mod computed_value {
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use util::cursor::Cursor;
#[derive(Clone, PartialEq, Eq, Copy, Debug)]
@@ -2147,7 +2194,7 @@ pub mod longhands {
}
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
T::AutoCursor => dest.write_str("auto"),
T::SpecifiedCursor(c) => c.to_css(dest),
@@ -2183,7 +2230,7 @@ pub mod longhands {
<%self:longhand name="column-width" experimental="True">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Clone, Copy, PartialEq)]
pub enum SpecifiedValue {
@@ -2192,7 +2239,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Auto => dest.write_str("auto"),
SpecifiedValue::Specified(l) => l.to_css(dest),
@@ -2234,7 +2281,7 @@ pub mod longhands {
<%self:longhand name="column-count" experimental="True">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Clone, Copy, PartialEq)]
pub enum SpecifiedValue {
@@ -2243,7 +2290,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Auto => dest.write_str("auto"),
SpecifiedValue::Specified(count) => write!(dest, "{}", count),
@@ -2276,10 +2323,9 @@ pub mod longhands {
if input.try(|input| input.expect_ident_matching("auto")).is_ok() {
Ok(SpecifiedValue::Auto)
} else {
- use std::u32;
let count = try!(input.expect_integer());
// Zero is invalid
- if count <= 0 || count > (u32::MAX as i64) {
+ if count <= 0 {
return Err(())
}
Ok(SpecifiedValue::Specified(count as u32))
@@ -2290,7 +2336,7 @@ pub mod longhands {
<%self:longhand name="column-gap" experimental="True">
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Clone, Copy, PartialEq)]
pub enum SpecifiedValue {
@@ -2299,7 +2345,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedValue::Normal => dest.write_str("normal"),
SpecifiedValue::Specified(l) => l.to_css(dest),
@@ -2345,10 +2391,10 @@ pub mod longhands {
use values::CSSFloat;
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
self.0.to_css(dest)
}
}
@@ -2385,10 +2431,11 @@ pub mod longhands {
<%self:longhand name="box-shadow">
use cssparser::{self, ToCss};
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::{ToComputedValue, Context};
- pub type SpecifiedValue = Vec<SpecifiedBoxShadow>;
+ #[derive(Clone, PartialEq)]
+ pub struct SpecifiedValue(Vec<SpecifiedBoxShadow>);
#[derive(Clone, PartialEq)]
pub struct SpecifiedBoxShadow {
@@ -2400,9 +2447,9 @@ pub mod longhands {
pub inset: bool,
}
- impl ToCss for Vec<SpecifiedBoxShadow> {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
- let mut iter = self.iter();
+ impl ToCss for SpecifiedValue {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
+ let mut iter = self.0.iter();
if let Some(shadow) = iter.next() {
try!(shadow.to_css(dest));
} else {
@@ -2418,7 +2465,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedBoxShadow {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
if self.inset {
try!(dest.write_str("inset "));
}
@@ -2474,9 +2521,9 @@ pub mod longhands {
pub fn parse(_context: &ParserContext, input: &mut Parser) -> Result<SpecifiedValue, ()> {
if input.try(|input| input.expect_ident_matching("none")).is_ok() {
- Ok(Vec::new())
+ Ok(SpecifiedValue(Vec::new()))
} else {
- input.parse_comma_separated(parse_one_box_shadow)
+ input.parse_comma_separated(parse_one_box_shadow).map(SpecifiedValue)
}
}
@@ -2485,7 +2532,7 @@ pub mod longhands {
#[inline]
fn to_computed_value(&self, context: &Context) -> computed_value::T {
- self.iter().map(|value| compute_one_box_shadow(value, context)).collect()
+ self.0.iter().map(|value| compute_one_box_shadow(value, context)).collect()
}
}
@@ -2567,7 +2614,7 @@ pub mod longhands {
<%self:longhand name="clip">
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
// NB: `top` and `left` are 0 if `auto` per CSS 2.1 11.1.2.
@@ -2595,10 +2642,11 @@ pub mod longhands {
pub left: specified::Length,
}
- pub type SpecifiedValue = Option<SpecifiedClipRect>;
+ #[derive(Clone, Debug, PartialEq, Copy)]
+ pub struct SpecifiedValue(Option<SpecifiedClipRect>);
impl ToCss for SpecifiedClipRect {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(dest.write_str("rect("));
try!(self.top.to_css(dest));
@@ -2625,9 +2673,9 @@ pub mod longhands {
}
}
- impl ToCss for Option<SpecifiedClipRect> {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
- if let Some(ref rect) = *self {
+ impl ToCss for SpecifiedValue {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
+ if let Some(ref rect) = self.0 {
rect.to_css(dest)
} else {
dest.write_str("auto")
@@ -2645,7 +2693,7 @@ pub mod longhands {
#[inline]
fn to_computed_value(&self, context: &Context) -> computed_value::T {
- self.map(|value| computed_value::ClipRect {
+ self.0.map(|value| computed_value::ClipRect {
top: value.top.to_computed_value(context),
right: value.right.map(|right| right.to_computed_value(context)),
bottom: value.bottom.map(|bottom| bottom.to_computed_value(context)),
@@ -2660,7 +2708,7 @@ pub mod longhands {
use values::specified::Length;
if input.try(|input| input.expect_ident_matching("auto")).is_ok() {
- return Ok(None)
+ return Ok(SpecifiedValue(None))
}
if !try!(input.expect_function()).eq_ignore_ascii_case("rect") {
return Err(())
@@ -2675,12 +2723,12 @@ pub mod longhands {
})
}));
if sides.len() == 4 {
- Ok(Some(SpecifiedClipRect {
+ Ok(SpecifiedValue(Some(SpecifiedClipRect {
top: sides[0].unwrap_or(Length::Absolute(Au(0))),
right: sides[1],
bottom: sides[2],
left: sides[3].unwrap_or(Length::Absolute(Au(0))),
- }))
+ })))
} else {
Err(())
}
@@ -2690,7 +2738,6 @@ pub mod longhands {
<%self:longhand name="text-shadow">
use cssparser::{self, ToCss};
use std::fmt;
- use text_writer::{self, TextWriter};
use values::computed::{Context, ToComputedValue};
@@ -2736,7 +2783,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let mut iter = self.0.iter();
if let Some(shadow) = iter.next() {
try!(shadow.to_css(dest));
@@ -2753,7 +2800,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedTextShadow {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(self.offset_x.to_css(dest));
try!(dest.write_str(" "));
try!(self.offset_y.to_css(dest));
@@ -2859,7 +2906,7 @@ pub mod longhands {
use values::specified::{Angle, Length};
use values::CSSFloat;
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Clone, PartialEq)]
pub struct SpecifiedValue(Vec<SpecifiedFilter>);
@@ -2937,7 +2984,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let mut iter = self.0.iter();
if let Some(filter) = iter.next() {
try!(filter.to_css(dest));
@@ -2954,7 +3001,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedFilter {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
SpecifiedFilter::Blur(value) => {
try!(dest.write_str("blur("));
@@ -3047,16 +3094,15 @@ pub mod longhands {
use values::computed::{ToComputedValue, Context};
use cssparser::ToCss;
- use std::f64;
+ use std::f32;
use std::ops::Mul;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use util::geometry::Au;
pub mod computed_value {
use values::CSSFloat;
use values::computed;
- use std::num::Float;
use std::ops::Mul;
#[derive(Clone, Copy, Debug, PartialEq)]
@@ -3148,8 +3194,8 @@ pub mod longhands {
m31: specified::LengthAndPercentage, m32: specified::LengthAndPercentage,
}
- impl ToCss for Option<SpecifiedMatrix> {
- fn to_css<W>(&self, _: &mut W) -> text_writer::Result where W: TextWriter {
+ impl ToCss for SpecifiedMatrix {
+ fn to_css<W>(&self, _: &mut W) -> fmt::Result where W: fmt::Write {
// TODO(pcwalton)
Ok(())
}
@@ -3217,7 +3263,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedOperation {
- fn to_css<W>(&self, _: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, _: &mut W) -> fmt::Result where W: fmt::Write {
// TODO(pcwalton)
Ok(())
}
@@ -3227,7 +3273,7 @@ pub mod longhands {
pub struct SpecifiedValue(Vec<SpecifiedOperation>);
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let mut first = true;
for operation in self.0.iter() {
if !first {
@@ -3267,8 +3313,8 @@ pub mod longhands {
return Err(())
}
let (tx, ty) =
- (specified::Length::Absolute(Au::from_frac_px(values[4])),
- specified::Length::Absolute(Au::from_frac_px(values[5])));
+ (specified::Length::Absolute(Au::from_frac32_px(values[4])),
+ specified::Length::Absolute(Au::from_frac32_px(values[5])));
let (tx, ty) =
(specified::LengthAndPercentage::from_length(tx),
specified::LengthAndPercentage::from_length(ty));
@@ -3394,7 +3440,7 @@ pub mod longhands {
result.scale(sx, sy)
}
SpecifiedOperation::Rotate(ref theta) => {
- result.rotate(f64::consts::PI_2 - theta.radians());
+ result.rotate(f32::consts::PI_2 - theta.radians());
}
SpecifiedOperation::Skew(sx, sy) => {
result.skew(sx, sy)
@@ -3411,7 +3457,7 @@ pub mod longhands {
use values::specified::LengthOrPercentage;
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
pub mod computed_value {
use values::computed::LengthOrPercentage;
@@ -3430,7 +3476,7 @@ pub mod longhands {
}
impl ToCss for SpecifiedValue {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(self.horizontal.to_css(dest));
try!(dest.write_str(" "));
self.vertical.to_css(dest)
@@ -3534,7 +3580,7 @@ pub mod longhands {
pub mod computed_value {
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
#[derive(Copy, Clone, Debug, PartialEq)]
pub enum T {
@@ -3544,7 +3590,7 @@ pub mod longhands {
}
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
T::Auto => dest.write_str("auto"),
T::CrispEdges => dest.write_str("crisp-edges"),
@@ -3596,7 +3642,7 @@ pub mod longhands {
pub mod computed_value {
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
use values::computed::{Context, ToComputedValue};
pub use values::computed::Time as SingleComputedValue;
@@ -3614,7 +3660,7 @@ pub mod longhands {
}
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
if self.0.is_empty() {
return dest.write_str("none")
}
@@ -3704,18 +3750,18 @@ pub mod longhands {
pub mod computed_value {
use cssparser::ToCss;
use geom::point::Point2D;
- use text_writer::{self, TextWriter};
+ use std::fmt;
pub use self::TransitionTimingFunction as SingleComputedValue;
#[derive(Copy, Clone, Debug, PartialEq)]
pub enum TransitionTimingFunction {
- CubicBezier(Point2D<f64>, Point2D<f64>),
+ CubicBezier(Point2D<f32>, Point2D<f32>),
Steps(u32, StartEnd),
}
impl ToCss for TransitionTimingFunction {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
TransitionTimingFunction::CubicBezier(p1, p2) => {
try!(dest.write_str("cubic-bezier("));
@@ -3746,7 +3792,7 @@ pub mod longhands {
}
impl ToCss for StartEnd {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
StartEnd::Start => dest.write_str("start"),
StartEnd::End => dest.write_str("end"),
@@ -3758,7 +3804,7 @@ pub mod longhands {
pub struct T(pub Vec<TransitionTimingFunction>);
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
if self.0.is_empty() {
return dest.write_str("none")
}
@@ -3857,7 +3903,7 @@ pub mod longhands {
pub mod computed_value {
use cssparser::ToCss;
- use text_writer::{self, TextWriter};
+ use std::fmt;
pub use self::TransitionProperty as SingleComputedValue;
@@ -3958,7 +4004,7 @@ pub mod longhands {
];
impl ToCss for TransitionProperty {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match *self {
TransitionProperty::All => dest.write_str("all"),
TransitionProperty::BackgroundColor => dest.write_str("background-color"),
@@ -4013,7 +4059,7 @@ pub mod longhands {
pub struct T(pub Vec<SingleComputedValue>);
impl ToCss for T {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
if self.0.is_empty() {
return dest.write_str("none")
}
@@ -4500,7 +4546,7 @@ pub mod shorthands {
font_weight: weight,
font_size: size,
line_height: line_height,
- font_family: Some(family)
+ font_family: Some(font_family::SpecifiedValue(family))
})
</%self:shorthand>
diff --git a/components/style/selector_matching.rs b/components/style/selector_matching.rs
index 6511f8c5772..211ae3dbe56 100644
--- a/components/style/selector_matching.rs
+++ b/components/style/selector_matching.rs
@@ -8,9 +8,9 @@ use selectors::bloom::BloomFilter;
use selectors::matching::{SelectorMap, Rule};
use selectors::matching::DeclarationBlock as GenericDeclarationBlock;
use selectors::parser::PseudoElement;
-use selectors::smallvec::VecLike;
use selectors::tree::TNode;
use util::resource_files::read_resource_file;
+use util::smallvec::VecLike;
use legacy::PresentationalHintSynthesis;
use media_queries::Device;
@@ -213,7 +213,7 @@ impl Stylist {
// Step 4: Normal style attributes.
style_attribute.map(|sa| {
shareable = false;
- applicable_declarations.vec_push(
+ applicable_declarations.push(
GenericDeclarationBlock::from_declarations(sa.normal.clone()))
});
@@ -226,7 +226,7 @@ impl Stylist {
// Step 6: `!important` style attributes.
style_attribute.map(|sa| {
shareable = false;
- applicable_declarations.vec_push(
+ applicable_declarations.push(
GenericDeclarationBlock::from_declarations(sa.important.clone()))
});
diff --git a/components/style/stylesheets.rs b/components/style/stylesheets.rs
index b910d3fe62a..90f4a7510df 100644
--- a/components/style/stylesheets.rs
+++ b/components/style/stylesheets.rs
@@ -18,7 +18,7 @@ use parser::{ParserContext, log_css_error};
use properties::{PropertyDeclarationBlock, parse_property_declaration_list};
use media_queries::{Device, MediaQueryList, parse_media_query_list};
use font_face::{FontFaceRule, parse_font_face_block};
-use util::smallvec::{SmallVec, SmallVec2};
+use util::smallvec::SmallVec2;
/// Each style rule has an origin, which determines where it enters the cascade.
@@ -178,7 +178,7 @@ impl<'a> Iterator for Rules<'a> {
fn next(&mut self) -> Option<&'a CSSRule> {
while !self.stack.is_empty() {
let top = self.stack.len() - 1;
- while let Some(rule) = self.stack.get_mut(top).next() {
+ while let Some(rule) = self.stack[top].next() {
// handle conditional group rules
match rule {
&CSSRule::Media(ref rule) => {
diff --git a/components/style/values.rs b/components/style/values.rs
index 12614a0bddc..185bfd7280a 100644
--- a/components/style/values.rs
+++ b/components/style/values.rs
@@ -12,7 +12,7 @@ macro_rules! define_css_keyword_enum {
};
($name: ident: $( $css: expr => $variant: ident ),+) => {
#[allow(non_camel_case_types)]
- #[derive(Clone, Eq, PartialEq, FromPrimitive, Copy, Hash, RustcEncodable)]
+ #[derive(Clone, Eq, PartialEq, Copy, Hash, RustcEncodable, Debug)]
pub enum $name {
$( $variant ),+
}
@@ -26,17 +26,9 @@ macro_rules! define_css_keyword_enum {
}
}
- impl ::std::fmt::Debug for $name {
- #[inline]
- fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
- use cssparser::ToCss;
- self.fmt_to_css(f)
- }
- }
-
impl ::cssparser::ToCss for $name {
- fn to_css<W>(&self, dest: &mut W) -> ::text_writer::Result
- where W: ::text_writer::TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> ::std::fmt::Result
+ where W: ::std::fmt::Write {
match self {
$( &$name::$variant => dest.write_str($css) ),+
}
@@ -51,7 +43,7 @@ macro_rules! define_numbered_css_keyword_enum {
};
($name: ident: $( $css: expr => $variant: ident = $value: expr ),+) => {
#[allow(non_camel_case_types)]
- #[derive(Clone, Eq, PartialEq, PartialOrd, Ord, FromPrimitive, Copy, RustcEncodable)]
+ #[derive(Clone, Eq, PartialEq, PartialOrd, Ord, Copy, RustcEncodable, Debug)]
pub enum $name {
$( $variant = $value ),+
}
@@ -65,17 +57,9 @@ macro_rules! define_numbered_css_keyword_enum {
}
}
- impl ::std::fmt::Debug for $name {
- #[inline]
- fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
- use cssparser::ToCss;
- self.fmt_to_css(f)
- }
- }
-
impl ::cssparser::ToCss for $name {
- fn to_css<W>(&self, dest: &mut W) -> ::text_writer::Result
- where W: ::text_writer::TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> ::std::fmt::Result
+ where W: ::std::fmt::Write {
match self {
$( &$name::$variant => dest.write_str($css) ),+
}
@@ -85,26 +69,24 @@ macro_rules! define_numbered_css_keyword_enum {
}
-pub type CSSFloat = f64;
+pub type CSSFloat = f32;
pub mod specified {
use std::ascii::AsciiExt;
use std::cmp;
- use std::f64::consts::PI;
+ use std::f32::consts::PI;
use std::fmt;
- use std::fmt::{Formatter, Debug};
- use std::num::{NumCast, ToPrimitive};
+ use std::fmt::Write;
use std::ops::{Add, Mul};
use url::Url;
use cssparser::{self, Token, Parser, ToCss, CssStringWriter};
use geom::size::Size2D;
use parser::ParserContext;
- use text_writer::{self, TextWriter};
use util::geometry::Au;
use super::CSSFloat;
- #[derive(Clone, PartialEq)]
+ #[derive(Clone, PartialEq, Debug)]
pub struct CSSColor {
pub parsed: cssparser::Color,
pub authored: Option<String>,
@@ -124,12 +106,8 @@ pub mod specified {
}
}
- impl fmt::Debug for CSSColor {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for CSSColor {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self.authored {
Some(ref s) => dest.write_str(s),
None => self.parsed.to_css(dest),
@@ -137,17 +115,14 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq)]
+ #[derive(Clone, PartialEq, Debug)]
pub struct CSSRGBA {
pub parsed: cssparser::RGBA,
pub authored: Option<String>,
}
- impl fmt::Debug for CSSRGBA {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
impl ToCss for CSSRGBA {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self.authored {
Some(ref s) => dest.write_str(s),
None => self.parsed.to_css(dest),
@@ -155,19 +130,15 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum FontRelativeLength {
Em(CSSFloat),
Ex(CSSFloat),
Rem(CSSFloat)
}
- impl fmt::Debug for FontRelativeLength {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for FontRelativeLength {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&FontRelativeLength::Em(length) => write!(dest, "{}em", length),
&FontRelativeLength::Ex(length) => write!(dest, "{}ex", length),
@@ -193,7 +164,7 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum ViewportPercentageLength {
Vw(CSSFloat),
Vh(CSSFloat),
@@ -201,12 +172,8 @@ pub mod specified {
Vmax(CSSFloat)
}
- impl fmt::Debug for ViewportPercentageLength {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for ViewportPercentageLength {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&ViewportPercentageLength::Vw(length) => write!(dest, "{}vw", length),
&ViewportPercentageLength::Vh(length) => write!(dest, "{}vh", length),
@@ -220,7 +187,7 @@ pub mod specified {
pub fn to_computed_value(&self, viewport_size: Size2D<Au>) -> Au {
macro_rules! to_unit {
($viewport_dimension:expr) => {
- $viewport_dimension.to_f64().unwrap() / 100.0
+ $viewport_dimension.to_frac32_px() / 100.0
}
}
@@ -234,11 +201,11 @@ pub mod specified {
&ViewportPercentageLength::Vmax(length) =>
length * to_unit!(cmp::max(viewport_size.width, viewport_size.height)),
};
- NumCast::from(value).unwrap()
+ Au::from_frac32_px(value)
}
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub struct CharacterWidth(pub i32);
impl CharacterWidth {
@@ -253,7 +220,7 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum Length {
Absolute(Au), // application units
FontRelative(FontRelativeLength),
@@ -266,14 +233,10 @@ pub mod specified {
ServoCharacterWidth(CharacterWidth),
}
- impl fmt::Debug for Length {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for Length {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
- &Length::Absolute(length) => write!(dest, "{}px", length.to_subpx()),
+ &Length::Absolute(length) => write!(dest, "{}px", length.to_frac32_px()),
&Length::FontRelative(length) => length.to_css(dest),
&Length::ViewportPercentage(length) => length.to_css(dest),
&Length::ServoCharacterWidth(_)
@@ -288,7 +251,7 @@ pub mod specified {
#[inline]
fn mul(self, scalar: CSSFloat) -> Length {
match self {
- Length::Absolute(Au(v)) => Length::Absolute(Au(((v as f64) * scalar) as i32)),
+ Length::Absolute(Au(v)) => Length::Absolute(Au(((v as f32) * scalar) as i32)),
Length::FontRelative(v) => Length::FontRelative(v * scalar),
Length::ViewportPercentage(v) => Length::ViewportPercentage(v * scalar),
Length::ServoCharacterWidth(_) => panic!("Can't multiply ServoCharacterWidth!"),
@@ -374,18 +337,14 @@ pub mod specified {
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum LengthOrPercentage {
Length(Length),
Percentage(CSSFloat), // [0 .. 100%] maps to [0.0 .. 1.0]
}
- impl fmt::Debug for LengthOrPercentage {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for LengthOrPercentage {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&LengthOrPercentage::Length(length) => length.to_css(dest),
&LengthOrPercentage::Percentage(percentage)
@@ -421,19 +380,15 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum LengthOrPercentageOrAuto {
Length(Length),
Percentage(CSSFloat), // [0 .. 100%] maps to [0.0 .. 1.0]
Auto,
}
- impl fmt::Debug for LengthOrPercentageOrAuto {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for LengthOrPercentageOrAuto {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&LengthOrPercentageOrAuto::Length(length) => length.to_css(dest),
&LengthOrPercentageOrAuto::Percentage(percentage)
@@ -472,19 +427,15 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum LengthOrPercentageOrNone {
Length(Length),
Percentage(CSSFloat), // [0 .. 100%] maps to [0.0 .. 1.0]
None,
}
- impl fmt::Debug for LengthOrPercentageOrNone {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for LengthOrPercentageOrNone {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&LengthOrPercentageOrNone::Length(length) => length.to_css(dest),
&LengthOrPercentageOrNone::Percentage(percentage)
@@ -580,7 +531,7 @@ pub mod specified {
fn add(self, other: LengthAndPercentage) -> LengthAndPercentage {
let mut new_lengths = self.lengths.clone();
- new_lengths.push_all(other.lengths.as_slice());
+ new_lengths.push_all(&other.lengths);
LengthAndPercentage {
lengths: new_lengths,
percentage: self.percentage + other.percentage,
@@ -650,22 +601,18 @@ pub mod specified {
}
}
- #[derive(Clone, PartialEq, PartialOrd, Copy)]
+ #[derive(Clone, PartialEq, PartialOrd, Copy, Debug)]
pub struct Angle(pub CSSFloat);
- impl fmt::Debug for Angle {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for Angle {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let Angle(value) = *self;
write!(dest, "{}rad", value)
}
}
impl Angle {
- pub fn radians(self) -> f64 {
+ pub fn radians(self) -> f32 {
let Angle(radians) = self;
radians
}
@@ -695,18 +642,14 @@ pub mod specified {
}
/// Specified values for an image according to CSS-IMAGES.
- #[derive(Clone, PartialEq)]
+ #[derive(Clone, PartialEq, Debug)]
pub enum Image {
Url(Url),
LinearGradient(LinearGradient),
}
- impl fmt::Debug for Image {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for Image {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&Image::Url(ref url) => {
try!(dest.write_str("url(\""));
@@ -740,7 +683,7 @@ pub mod specified {
}
/// Specified values for a CSS linear gradient.
- #[derive(Clone, PartialEq)]
+ #[derive(Clone, PartialEq, Debug)]
pub struct LinearGradient {
/// The angle or corner of the gradient.
pub angle_or_corner: AngleOrCorner,
@@ -749,42 +692,34 @@ pub mod specified {
pub stops: Vec<ColorStop>,
}
- impl fmt::Debug for LinearGradient {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for LinearGradient {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(dest.write_str("linear-gradient("));
try!(self.angle_or_corner.to_css(dest));
for stop in self.stops.iter() {
try!(dest.write_str(", "));
try!(stop.to_css(dest));
}
- try!(dest.write_char(')'));
+ try!(dest.write_str(")"));
Ok(())
}
}
/// Specified values for an angle or a corner in a linear gradient.
- #[derive(Clone, PartialEq, Copy)]
+ #[derive(Clone, PartialEq, Copy, Debug)]
pub enum AngleOrCorner {
Angle(Angle),
Corner(HorizontalDirection, VerticalDirection),
}
- impl fmt::Debug for AngleOrCorner {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for AngleOrCorner {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
match self {
&AngleOrCorner::Angle(angle) => angle.to_css(dest),
&AngleOrCorner::Corner(horizontal, vertical) => {
try!(dest.write_str("to "));
try!(horizontal.to_css(dest));
- try!(dest.write_char(' '));
+ try!(dest.write_str(" "));
try!(vertical.to_css(dest));
Ok(())
}
@@ -793,7 +728,7 @@ pub mod specified {
}
/// Specified values for one color stop in a linear gradient.
- #[derive(Clone, PartialEq)]
+ #[derive(Clone, PartialEq, Debug)]
pub struct ColorStop {
/// The color of this stop.
pub color: CSSColor,
@@ -803,15 +738,11 @@ pub mod specified {
pub position: Option<LengthOrPercentage>,
}
- impl fmt::Debug for ColorStop {
- #[inline] fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.fmt_to_css(f) }
- }
-
impl ToCss for ColorStop {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
try!(self.color.to_css(dest));
if let Some(position) = self.position {
- try!(dest.write_char(' '));
+ try!(dest.write_str(" "));
try!(position.to_css(dest));
}
Ok(())
@@ -909,7 +840,7 @@ pub mod specified {
impl Time {
/// Returns the time in fractional seconds.
- pub fn seconds(self) -> f64 {
+ pub fn seconds(self) -> f32 {
let Time(seconds) = self;
seconds
}
@@ -945,8 +876,8 @@ pub mod specified {
}
impl ToCss for Time {
- fn to_css<W>(&self, dest: &mut W) -> text_writer::Result where W: TextWriter {
- dest.write_str(format!("{}ms", self.0).as_slice())
+ fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
+ write!(dest, "{}ms", self.0)
}
}
}
@@ -959,7 +890,6 @@ pub mod computed {
use geom::size::Size2D;
use properties::longhands;
use std::fmt;
- use std::marker::MarkerTrait;
use std::ops::{Add, Mul};
use url::Url;
use util::geometry::Au;
@@ -995,7 +925,7 @@ pub mod computed {
fn to_computed_value(&self, _context: &Context) -> Self::ComputedValue;
}
- pub trait ComputedValueAsSpecified: MarkerTrait {}
+ pub trait ComputedValueAsSpecified {}
impl<T> ToComputedValue for T where T: ComputedValueAsSpecified + Clone {
type ComputedValue = T;
@@ -1184,7 +1114,7 @@ pub mod computed {
fn mul(self, scalar: CSSFloat) -> LengthAndPercentage {
LengthAndPercentage {
- length: Au::from_frac_px(self.length.to_subpx() * scalar),
+ length: Au::from_frac32_px(self.length.to_frac32_px() * scalar),
percentage: self.percentage * scalar,
}
}
diff --git a/components/util/Cargo.toml b/components/util/Cargo.toml
index 706ca02e9b6..d802cb92061 100644
--- a/components/util/Cargo.toml
+++ b/components/util/Cargo.toml
@@ -18,9 +18,6 @@ doctest = false
[dependencies.plugins]
path = "../plugins"
-[dependencies.cssparser]
-git = "https://github.com/servo/rust-cssparser"
-
[dependencies.selectors]
git = "https://github.com/servo/rust-selectors"
@@ -47,5 +44,9 @@ bitflags = "*"
libc = "*"
rand = "*"
rustc-serialize = "0.3"
-text_writer = "0.1.1"
time = "0.1.12"
+smallvec = "0.1"
+num_cpus = "0.2.2"
+fnv = "1.0"
+cssparser = "0.3.1"
+num = "0.1.24"
diff --git a/components/util/bezier.rs b/components/util/bezier.rs
index 768293b3421..28251745cbc 100644
--- a/components/util/bezier.rs
+++ b/components/util/bezier.rs
@@ -7,22 +7,21 @@
//! This is based on `WebCore/platform/graphics/UnitBezier.h` in WebKit.
use geom::point::Point2D;
-use std::num::Float;
const NEWTON_METHOD_ITERATIONS: u8 = 8;
pub struct Bezier {
- ax: f64,
- bx: f64,
- cx: f64,
- ay: f64,
- by: f64,
- cy: f64,
+ ax: f32,
+ bx: f32,
+ cx: f32,
+ ay: f32,
+ by: f32,
+ cy: f32,
}
impl Bezier {
#[inline]
- pub fn new(p1: Point2D<f64>, p2: Point2D<f64>) -> Bezier {
+ pub fn new(p1: Point2D<f32>, p2: Point2D<f32>) -> Bezier {
let cx = 3.0 * p1.x;
let bx = 3.0 * (p2.x - p1.x) - cx;
@@ -40,23 +39,23 @@ impl Bezier {
}
#[inline]
- fn sample_curve_x(&self, t: f64) -> f64 {
+ fn sample_curve_x(&self, t: f32) -> f32 {
// ax * t^3 + bx * t^2 + cx * t
((self.ax * t + self.bx) * t + self.cx) * t
}
#[inline]
- fn sample_curve_y(&self, t: f64) -> f64 {
+ fn sample_curve_y(&self, t: f32) -> f32 {
((self.ay * t + self.by) * t + self.cy) * t
}
#[inline]
- fn sample_curve_derivative_x(&self, t: f64) -> f64 {
+ fn sample_curve_derivative_x(&self, t: f32) -> f32 {
(3.0 * self.ax * t + 2.0 * self.bx) * t + self.cx
}
#[inline]
- fn solve_curve_x(&self, x: f64, epsilon: f64) -> f64 {
+ fn solve_curve_x(&self, x: f32, epsilon: f32) -> f32 {
// Fast path: Use Newton's method.
let mut t = x;
for _ in 0..NEWTON_METHOD_ITERATIONS {
@@ -98,7 +97,7 @@ impl Bezier {
}
#[inline]
- pub fn solve(&self, x: f64, epsilon: f64) -> f64 {
+ pub fn solve(&self, x: f32, epsilon: f32) -> f32 {
self.sample_curve_y(self.solve_curve_x(x, epsilon))
}
}
@@ -107,9 +106,9 @@ trait ApproxEq {
fn approx_eq(self, value: Self, epsilon: Self) -> bool;
}
-impl ApproxEq for f64 {
+impl ApproxEq for f32 {
#[inline]
- fn approx_eq(self, value: f64, epsilon: f64) -> bool {
+ fn approx_eq(self, value: f32, epsilon: f32) -> bool {
(self - value).abs() < epsilon
}
}
diff --git a/components/util/cursor.rs b/components/util/cursor.rs
index 4c6b61b38fe..622845deaa7 100644
--- a/components/util/cursor.rs
+++ b/components/util/cursor.rs
@@ -6,11 +6,10 @@
use cssparser::ToCss;
use std::ascii::AsciiExt;
-use text_writer::TextWriter;
macro_rules! define_cursor {
($( $css: expr => $variant: ident = $value: expr, )+) => {
- #[derive(Clone, Copy, PartialEq, Eq, FromPrimitive, Debug)]
+ #[derive(Clone, Copy, PartialEq, Eq, Debug)]
#[repr(u8)]
pub enum Cursor {
$( $variant = $value ),+
@@ -26,7 +25,7 @@ macro_rules! define_cursor {
}
impl ToCss for Cursor {
- fn to_css<W>(&self, dest: &mut W) -> ::text_writer::Result where W: TextWriter {
+ fn to_css<W>(&self, dest: &mut W) -> ::std::fmt::Result where W: ::std::fmt::Write {
match self {
$( &Cursor::$variant => dest.write_str($css) ),+
}
diff --git a/components/util/deque/mod.rs b/components/util/deque/mod.rs
index 1eb3f744c95..fc79d9f76ee 100644
--- a/components/util/deque/mod.rs
+++ b/components/util/deque/mod.rs
@@ -170,7 +170,9 @@ impl<T: Send + 'static> BufferPool<T> {
}
}
}
+}
+impl<T> BufferPool<T> {
fn free(&self, buf: Box<Buffer<T>>) {
let mut pool = self.pool.lock().unwrap();
match pool.iter().position(|v| v.size() > buf.size()) {
@@ -331,8 +333,7 @@ impl<T: Send + 'static> Deque<T> {
}
-#[unsafe_destructor]
-impl<T: Send + 'static> Drop for Deque<T> {
+impl<T> Drop for Deque<T> {
fn drop(&mut self) {
let t = self.top.load(SeqCst);
let b = self.bottom.load(SeqCst);
@@ -351,7 +352,7 @@ fn buffer_alloc_size<T>(log_size: usize) -> usize {
(1 << log_size) * size_of::<T>()
}
-impl<T: Send> Buffer<T> {
+impl<T> Buffer<T> {
unsafe fn new(log_size: usize) -> Buffer<T> {
let size = buffer_alloc_size::<T>(log_size);
let buffer = allocate(size, min_align_of::<T>());
@@ -399,8 +400,7 @@ impl<T: Send> Buffer<T> {
}
}
-#[unsafe_destructor]
-impl<T: Send> Drop for Buffer<T> {
+impl<T> Drop for Buffer<T> {
fn drop(&mut self) {
// It is assumed that all buffers are empty on drop.
let size = buffer_alloc_size::<T>(self.log_size);
diff --git a/components/util/geometry.rs b/components/util/geometry.rs
index c32a0264665..5d7c69d0010 100644
--- a/components/util/geometry.rs
+++ b/components/util/geometry.rs
@@ -10,7 +10,6 @@ use geom::num::Zero;
use std::default::Default;
use std::i32;
-use std::num::{Float, NumCast, ToPrimitive};
use std::fmt;
use std::ops::{Add, Sub, Neg, Mul, Div, Rem};
@@ -116,13 +115,13 @@ pub const MAX_AU: Au = Au(i32::MAX);
impl Encodable for Au {
fn encode<S: Encoder>(&self, e: &mut S) -> Result<(), S::Error> {
- e.emit_f64(to_frac_px(*self))
+ e.emit_f64(self.to_subpx())
}
}
impl fmt::Debug for Au {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
- write!(f, "{}px", to_frac_px(*self))
+ write!(f, "{}px", self.to_subpx())
}}
impl Add for Au {
@@ -188,40 +187,6 @@ impl Neg for Au {
}
}
-
-impl NumCast for Au {
- #[inline]
- fn from<T:ToPrimitive>(n: T) -> Option<Au> {
- Some(Au(n.to_i32().unwrap()))
- }
-}
-
-impl ToPrimitive for Au {
- #[inline]
- fn to_i64(&self) -> Option<i64> {
- let Au(s) = *self;
- Some(s as i64)
- }
-
- #[inline]
- fn to_u64(&self) -> Option<u64> {
- let Au(s) = *self;
- Some(s as u64)
- }
-
- #[inline]
- fn to_f32(&self) -> Option<f32> {
- let Au(s) = *self;
- s.to_f32()
- }
-
- #[inline]
- fn to_f64(&self) -> Option<f64> {
- let Au(s) = *self;
- s.to_f64()
- }
-}
-
impl Au {
/// FIXME(pcwalton): Workaround for lack of cross crate inlining of newtype structs!
#[inline]
@@ -230,19 +195,19 @@ impl Au {
}
#[inline]
- pub fn scale_by(self, factor: f64) -> Au {
+ pub fn scale_by(self, factor: f32) -> Au {
let Au(s) = self;
- Au(((s as f64) * factor) as i32)
+ Au(((s as f32) * factor) as i32)
}
#[inline]
pub fn from_px(px: isize) -> Au {
- NumCast::from(px * 60).unwrap()
+ Au((px * 60) as i32)
}
#[inline]
pub fn from_page_px(px: Length<PagePx, f32>) -> Au {
- NumCast::from(px.get() * 60f32).unwrap()
+ Au((px.get() * 60f32) as i32)
}
/// Rounds this app unit down to the previous (left or top) pixel and returns it.
@@ -297,7 +262,7 @@ impl Au {
#[inline]
pub fn from_frac_px(px: f64) -> Au {
- Au((px * 60f64) as i32)
+ Au((px * 60.) as i32)
}
#[inline]
@@ -317,20 +282,20 @@ impl Au {
// assumes 72 points per inch, and 96 px per inch
pub fn pt_to_px(pt: f64) -> f64 {
- pt / 72f64 * 96f64
+ pt / 72. * 96.
}
// assumes 72 points per inch, and 96 px per inch
pub fn px_to_pt(px: f64) -> f64 {
- px / 96f64 * 72f64
+ px / 96. * 72.
}
pub fn from_frac_px(px: f64) -> Au {
- Au((px * 60f64) as i32)
+ Au((px * 60.) as i32)
}
pub fn from_px(px: isize) -> Au {
- NumCast::from(px * 60).unwrap()
+ Au::from_px(px)
}
pub fn to_px(au: Au) -> isize {
@@ -338,20 +303,20 @@ pub fn to_px(au: Au) -> isize {
(a / 60) as isize
}
-pub fn to_frac_px(au: Au) -> f64 {
+pub fn to_frac_px(au: Au) -> f32 {
let Au(a) = au;
- (a as f64) / 60f64
+ (a as f32) / 60.
}
// assumes 72 points per inch, and 96 px per inch
-pub fn from_pt(pt: f64) -> Au {
- from_px((pt / 72f64 * 96f64) as isize)
+pub fn from_pt(pt: f32) -> Au {
+ from_px((pt / 72. * 96.) as isize)
}
// assumes 72 points per inch, and 96 px per inch
-pub fn to_pt(au: Au) -> f64 {
+pub fn to_pt(au: Au) -> f32 {
let Au(a) = au;
- (a as f64) / 60f64 * 72f64 / 96f64
+ (a as f32) / 60. * 72. / 96.
}
/// Returns true if the rect contains the given point. Points on the top or left sides of the rect
diff --git a/components/util/lib.rs b/components/util/lib.rs
index 28efc0e58e1..021499c3adc 100644
--- a/components/util/lib.rs
+++ b/components/util/lib.rs
@@ -7,16 +7,14 @@
#![feature(collections)]
#![feature(core)]
#![feature(exit_status)]
-#![feature(hash)]
-#![feature(io)]
#![feature(optin_builtin_traits)]
-#![feature(path)]
#![cfg_attr(not(target_os = "android"), feature(path_ext))]
#![feature(plugin)]
#![feature(rustc_private)]
+#![feature(step_by)]
+#![feature(step_trait)]
#![feature(std_misc)]
-#![feature(unicode)]
-#![feature(unsafe_destructor)]
+#![feature(zero_one)]
#![plugin(string_cache_plugin)]
@@ -25,29 +23,31 @@
extern crate azure;
extern crate alloc;
#[macro_use] extern crate bitflags;
-extern crate cssparser;
+#[macro_use] extern crate cssparser;
+extern crate fnv as fnv_;
extern crate geom;
extern crate getopts;
extern crate layers;
extern crate libc;
-#[no_link] #[macro_use] extern crate cssparser;
+extern crate num as num_lib;
+extern crate num_cpus;
extern crate rand;
-extern crate "rustc-serialize" as rustc_serialize;
-extern crate text_writer;
+extern crate rustc_serialize;
extern crate selectors;
+extern crate smallvec as smallvec_;
extern crate string_cache;
-pub use selectors::smallvec;
-
use std::sync::Arc;
+pub use fnv_ as fnv;
+pub use smallvec_ as smallvec;
+
pub mod bezier;
pub mod cache;
pub mod cursor;
pub mod debug_utils;
pub mod deque;
pub mod linked_list;
-pub mod fnv;
pub mod geometry;
pub mod logical_geometry;
pub mod mem;
diff --git a/components/util/mem.rs b/components/util/mem.rs
index ad7cf6108a2..cd1b9834e48 100644
--- a/components/util/mem.rs
+++ b/components/util/mem.rs
@@ -154,7 +154,6 @@ unsafe fn linked_list2_check() {
// Currently, types that implement the Drop type are larger than those that don't. Because
// LinkedList implements Drop, LinkedList2 must also so that linked_list2_check() doesn't fail.
-#[unsafe_destructor]
impl<T> Drop for LinkedList2<T> {
fn drop(&mut self) {}
}
diff --git a/components/util/opts.rs b/components/util/opts.rs
index aaca57729cc..70ca9d4b92b 100644
--- a/components/util/opts.rs
+++ b/components/util/opts.rs
@@ -11,13 +11,13 @@ use geom::scale_factor::ScaleFactor;
use geom::size::TypedSize2D;
use layers::geometry::DevicePixel;
use getopts;
+use num_cpus;
use std::collections::HashSet;
use std::cmp;
use std::env;
use std::io::{self, Write};
use std::mem;
use std::ptr;
-use std::rt;
/// Global flags for Servo, currently set on the command line.
#[derive(Clone)]
@@ -307,7 +307,7 @@ pub fn from_cmdline_args(args: &[String]) -> bool {
let mut paint_threads: usize = match opt_match.opt_str("t") {
Some(paint_threads_str) => paint_threads_str.parse().unwrap(),
- None => cmp::max(rt::default_sched_threads() * 3 / 4, 1),
+ None => cmp::max(num_cpus::get() * 3 / 4, 1),
};
// If only the flag is present, default to a 5 second period for both profilers.
@@ -322,7 +322,7 @@ pub fn from_cmdline_args(args: &[String]) -> bool {
let mut layout_threads: usize = match opt_match.opt_str("y") {
Some(layout_threads_str) => layout_threads_str.parse().unwrap(),
- None => cmp::max(rt::default_sched_threads() * 3 / 4, 1),
+ None => cmp::max(num_cpus::get() * 3 / 4, 1),
};
let nonincremental_layout = opt_match.opt_present("i");
diff --git a/components/util/range.rs b/components/util/range.rs
index e22fd478320..2c66c24dcd1 100644
--- a/components/util/range.rs
+++ b/components/util/range.rs
@@ -2,12 +2,38 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use std::cmp::{max, min};
+use num_lib;
+use std::cmp::{self, max, min};
use std::fmt;
+use std::iter;
use std::marker::PhantomData;
-use std::num::{self, Int};
+use std::num;
use std::ops;
+pub trait Int:
+ Copy
+ + ops::Add<Self, Output=Self>
+ + ops::Sub<Self, Output=Self>
+ + cmp::Ord
+{
+ fn zero() -> Self;
+ fn one() -> Self;
+ fn max_value() -> Self;
+ fn from_usize(n: usize) -> Option<Self>;
+}
+impl Int for isize {
+ fn zero() -> isize { 0 }
+ fn one() -> isize { 1 }
+ fn max_value() -> isize { ::std::isize::MAX }
+ fn from_usize(n: usize) -> Option<isize> { num_lib::NumCast::from(n) }
+}
+impl Int for usize {
+ fn zero() -> usize { 0 }
+ fn one() -> usize { 1 }
+ fn max_value() -> usize { ::std::usize::MAX }
+ fn from_usize(n: usize) -> Option<usize> { Some(n) }
+}
+
/// An index type to be used by a `Range`
pub trait RangeIndex: Int + fmt::Debug {
type Index;
@@ -61,32 +87,14 @@ macro_rules! int_range_index {
}
}
- impl ::std::num::Int for $Self_ {
- fn zero() -> $Self_ { $Self_(0) }
- fn one() -> $Self_ { $Self_(1) }
- fn min_value() -> $Self_ { $Self_(::std::num::Int::min_value()) }
- fn max_value() -> $Self_ { $Self_(::std::num::Int::max_value()) }
- fn count_ones(self) -> u32 { self.get().count_ones() }
- fn leading_zeros(self) -> u32 { self.get().leading_zeros() }
- fn trailing_zeros(self) -> u32 { self.get().trailing_zeros() }
- fn rotate_left(self, n: u32) -> $Self_ { $Self_(self.get().rotate_left(n)) }
- fn rotate_right(self, n: u32) -> $Self_ { $Self_(self.get().rotate_right(n)) }
- fn swap_bytes(self) -> $Self_ { $Self_(self.get().swap_bytes()) }
- fn checked_add(self, other: $Self_) -> Option<$Self_> {
- self.get().checked_add(other.get()).map($Self_)
- }
- fn checked_sub(self, other: $Self_) -> Option<$Self_> {
- self.get().checked_sub(other.get()).map($Self_)
- }
- fn checked_mul(self, other: $Self_) -> Option<$Self_> {
- self.get().checked_mul(other.get()).map($Self_)
- }
- fn checked_div(self, other: $Self_) -> Option<$Self_> {
- self.get().checked_div(other.get()).map($Self_)
- }
+ impl $crate::range::Int for $Self_ {
+ fn zero() -> $Self_ { $Self_($crate::range::Int::zero()) }
+ fn one() -> $Self_ { $Self_($crate::range::Int::one()) }
+ fn max_value() -> $Self_ { $Self_($crate::range::Int::max_value()) }
+ fn from_usize(n: usize) -> Option<$Self_> { $crate::range::Int::from_usize(n).map($Self_) }
}
- impl Add<$Self_> for $Self_ {
+ impl ::std::ops::Add<$Self_> for $Self_ {
type Output = $Self_;
#[inline]
@@ -95,7 +103,7 @@ macro_rules! int_range_index {
}
}
- impl Sub<$Self_> for $Self_ {
+ impl ::std::ops::Sub<$Self_> for $Self_ {
type Output = $Self_;
#[inline]
@@ -104,16 +112,7 @@ macro_rules! int_range_index {
}
}
- impl Mul<$Self_> for $Self_ {
- type Output = $Self_;
-
- #[inline]
- fn mul(self, other: $Self_) -> $Self_ {
- $Self_(self.get() * other.get())
- }
- }
-
- impl Neg for $Self_ {
+ impl ::std::ops::Neg for $Self_ {
type Output = $Self_;
#[inline]
@@ -121,105 +120,6 @@ macro_rules! int_range_index {
$Self_(-self.get())
}
}
-
- impl ToPrimitive for $Self_ {
- fn to_i64(&self) -> Option<i64> {
- Some(self.get() as i64)
- }
-
- fn to_u64(&self) -> Option<u64> {
- Some(self.get() as u64)
- }
- }
-
- impl ::std::num::NumCast for $Self_ {
- fn from<T: ToPrimitive>(n: T) -> Option<$Self_> {
- n.to_isize().map($Self_)
- }
- }
-
- impl Div<$Self_> for $Self_ {
- type Output = $Self_;
- fn div(self, other: $Self_) -> $Self_ {
- $Self_(self.get() / other.get())
- }
- }
-
- impl Rem<$Self_> for $Self_ {
- type Output = $Self_;
- fn rem(self, other: $Self_) -> $Self_ {
- $Self_(self.get() % other.get())
- }
- }
-
- impl Not for $Self_ {
- type Output = $Self_;
- fn not(self) -> $Self_ {
- $Self_(!self.get())
- }
- }
-
- impl BitAnd<$Self_> for $Self_ {
- type Output = $Self_;
- fn bitand(self, other: $Self_) -> $Self_ {
- $Self_(self.get() & other.get())
- }
- }
-
- impl BitOr<$Self_> for $Self_ {
- type Output = $Self_;
- fn bitor(self, other: $Self_) -> $Self_ {
- $Self_(self.get() | other.get())
- }
- }
-
- impl BitXor<$Self_> for $Self_ {
- type Output = $Self_;
- fn bitxor(self, other: $Self_) -> $Self_ {
- $Self_(self.get() ^ other.get())
- }
- }
-
- impl Shl<usize> for $Self_ {
- type Output = $Self_;
- fn shl(self, n: usize) -> $Self_ {
- $Self_(self.get() << n)
- }
- }
-
- impl Shr<usize> for $Self_ {
- type Output = $Self_;
- fn shr(self, n: usize) -> $Self_ {
- $Self_(self.get() >> n)
- }
- }
-
- impl ::std::num::wrapping::WrappingOps for $Self_ {
- fn wrapping_add(self, rhs: $Self_) -> $Self_ {
- $Self_(self.get().wrapping_add(rhs.get()))
- }
- fn wrapping_sub(self, rhs: $Self_) -> $Self_ {
- $Self_(self.get().wrapping_sub(rhs.get()))
- }
- fn wrapping_mul(self, rhs: $Self_) -> $Self_ {
- $Self_(self.get().wrapping_mul(rhs.get()))
- }
- }
-
- impl ::std::num::wrapping::OverflowingOps for $Self_ {
- fn overflowing_add(self, rhs: $Self_) -> ($Self_, bool) {
- let (x, b) = self.get().overflowing_add(rhs.get());
- ($Self_(x), b)
- }
- fn overflowing_sub(self, rhs: $Self_) -> ($Self_, bool) {
- let (x, b) = self.get().overflowing_sub(rhs.get());
- ($Self_(x), b)
- }
- fn overflowing_mul(self, rhs: $Self_) -> ($Self_, bool) {
- let (x, b) = self.get().overflowing_mul(rhs.get());
- ($Self_(x), b)
- }
- }
)
}
@@ -246,12 +146,13 @@ pub fn each_index<T: Int, I: RangeIndex<Index=T>>(start: I, stop: I) -> EachInde
EachIndex { it: start.get()..stop.get(), phantom: PhantomData }
}
-impl<T: Int, I: RangeIndex<Index=T>> Iterator for EachIndex<T, I> {
+impl<T: Int, I: RangeIndex<Index=T>> Iterator for EachIndex<T, I>
+where T: Int + num::One + iter::Step, for<'a> &'a T: ops::Add<&'a T, Output = T> {
type Item = I;
#[inline]
fn next(&mut self) -> Option<I> {
- self.it.next().map(|i| RangeIndex::new(i))
+ self.it.next().map(RangeIndex::new)
}
#[inline]
@@ -407,7 +308,7 @@ impl<T: Int, I: RangeIndex<Index=T>> Range<I> {
#[inline]
pub fn is_valid_for_string(&self, s: &str) -> bool {
let s_len = s.len();
- match num::cast::<usize, T>(s_len) {
+ match Int::from_usize(s_len) {
Some(len) => {
let len = RangeIndex::new(len);
self.begin() < len
diff --git a/components/util/resource_files.rs b/components/util/resource_files.rs
index f614673946f..7c61a48f0ba 100644
--- a/components/util/resource_files.rs
+++ b/components/util/resource_files.rs
@@ -8,7 +8,7 @@ use std::path::PathBuf;
#[cfg(target_os = "android")]
pub fn resources_dir_path() -> PathBuf {
- PathBuf::new("/sdcard/servo/")
+ PathBuf::from("/sdcard/servo/")
}
#[cfg(not(target_os = "android"))]
@@ -18,7 +18,7 @@ pub fn resources_dir_path() -> PathBuf {
use std::fs::PathExt;
match opts::get().resources_path {
- Some(ref path) => PathBuf::new(path),
+ Some(ref path) => PathBuf::from(path),
None => {
// FIXME: Find a way to not rely on the executable being
// under `<servo source>/components/servo/target`
diff --git a/components/util/str.rs b/components/util/str.rs
index 7c36aca7c18..afa4b85c24c 100644
--- a/components/util/str.rs
+++ b/components/util/str.rs
@@ -7,11 +7,11 @@ use geometry::Au;
use cssparser::{self, RGBA, Color};
use libc::c_char;
+use num_lib::ToPrimitive;
use std::ascii::AsciiExt;
use std::borrow::ToOwned;
use std::ffi::CStr;
use std::iter::Filter;
-use std::num::{Int, ToPrimitive};
use std::ops::Deref;
use std::str::{from_utf8, FromStr, Split};
@@ -130,7 +130,7 @@ pub fn parse_unsigned_integer<T: Iterator<Item=char>>(input: T) -> Option<u32> {
#[derive(Copy, Clone)]
pub enum LengthOrPercentageOrAuto {
Auto,
- Percentage(f64),
+ Percentage(f32),
Length(Au),
}
@@ -171,9 +171,9 @@ pub fn parse_length(mut value: &str) -> LengthOrPercentageOrAuto {
value = &value[..end_index];
if found_percent {
- let result: Result<f64, _> = FromStr::from_str(value);
+ let result: Result<f32, _> = FromStr::from_str(value);
match result {
- Ok(number) => return LengthOrPercentageOrAuto::Percentage((number as f64) / 100.0),
+ Ok(number) => return LengthOrPercentageOrAuto::Percentage((number as f32) / 100.0),
Err(_) => return LengthOrPercentageOrAuto::Auto,
}
}
@@ -243,7 +243,7 @@ pub fn parse_legacy_color(mut input: &str) -> Result<RGBA,()> {
}
// Step 9.
- if input.char_at(0) == '#' {
+ if input.as_bytes()[0] == b'#' {
input = &input[1..]
}
@@ -324,7 +324,7 @@ pub struct LowercaseString {
impl LowercaseString {
pub fn new(s: &str) -> LowercaseString {
LowercaseString {
- inner: s.chars().map(|c| c.to_lowercase()).collect(),
+ inner: s.to_lowercase(),
}
}
}
diff --git a/components/util/taskpool.rs b/components/util/taskpool.rs
index ff70bc4c1c0..064b2c9c07e 100644
--- a/components/util/taskpool.rs
+++ b/components/util/taskpool.rs
@@ -44,7 +44,7 @@ impl TaskPool {
loop {
let job = rx.lock().unwrap().recv();
match job {
- Ok(job) => job.invoke(()),
+ Ok(job) => job.call_box(()),
Err(..) => break,
}
}
@@ -54,6 +54,6 @@ impl TaskPool {
pub fn execute<F>(&self, job: F)
where F: FnOnce() + Send + 'static
{
- self.tx.send(Thunk::new(job)).unwrap();
+ self.tx.send(Box::new(job)).unwrap();
}
}
diff --git a/components/util/vec.rs b/components/util/vec.rs
index 238118aac1d..c660d26584a 100644
--- a/components/util/vec.rs
+++ b/components/util/vec.rs
@@ -2,10 +2,11 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-use selectors::smallvec::VecLike;
+use super::smallvec::VecLike;
use std::cmp::{PartialOrd, PartialEq, Ordering};
-use std::iter::range_step;
+use std::marker::PhantomData;
+use std::ops;
/// FIXME(pcwalton): Workaround for lack of unboxed closures. This is called in
/// performance-critical code, so a closure is insufficient.
@@ -68,7 +69,7 @@ impl<T:PartialEq + PartialOrd + Ord> Comparator<T,T> for DefaultComparator {
// TODO(pcwalton): Speed up with SIMD, or better yet, find some way to not do this.
pub fn byte_swap(data: &mut [u8]) {
let length = data.len();
- for i in range_step(0, length, 4) {
+ for i in (0..length).step_by(4) {
let r = data[i + 2];
data[i + 2] = data[i + 0];
data[i + 0] = r;
@@ -76,14 +77,16 @@ pub fn byte_swap(data: &mut [u8]) {
}
/// A `VecLike` that only tracks whether or not something was ever pushed to it.
-pub struct ForgetfulSink {
+pub struct ForgetfulSink<T> {
empty: bool,
+ _data: PhantomData<T>,
}
-impl ForgetfulSink {
- pub fn new() -> ForgetfulSink {
+impl<T> ForgetfulSink<T> {
+ pub fn new() -> ForgetfulSink<T> {
ForgetfulSink {
empty: true,
+ _data: PhantomData,
}
}
@@ -92,19 +95,50 @@ impl ForgetfulSink {
}
}
-impl<T> VecLike<T> for ForgetfulSink {
- #[inline]
- fn vec_len(&self) -> usize {
+impl<T> ops::Deref for ForgetfulSink<T> {
+ type Target = [T];
+ fn deref(&self) -> &[T] {
unreachable!()
}
+}
- #[inline]
- fn vec_push(&mut self, _value: T) {
- self.empty = false;
+impl<T> ops::DerefMut for ForgetfulSink<T> {
+ fn deref_mut(&mut self) -> &mut [T] {
+ unreachable!()
}
+}
+macro_rules! impl_index {
+ ($index_type: ty, $output_type: ty) => {
+ impl<T> ops::Index<$index_type> for ForgetfulSink<T> {
+ type Output = $output_type;
+ fn index(&self, _index: $index_type) -> &$output_type {
+ unreachable!()
+ }
+ }
+
+ impl<T> ops::IndexMut<$index_type> for ForgetfulSink<T> {
+ fn index_mut(&mut self, _index: $index_type) -> &mut $output_type {
+ unreachable!()
+ }
+ }
+ }
+}
+
+impl_index!(usize, T);
+impl_index!(ops::Range<usize>, [T]);
+impl_index!(ops::RangeFrom<usize>, [T]);
+impl_index!(ops::RangeTo<usize>, [T]);
+impl_index!(ops::RangeFull, [T]);
+
+impl<T> VecLike<T> for ForgetfulSink<T> {
#[inline]
- fn vec_slice_mut<'a>(&'a mut self, _start: usize, _end: usize) -> &'a mut [T] {
+ fn len(&self) -> usize {
unreachable!()
}
+
+ #[inline]
+ fn push(&mut self, _value: T) {
+ self.empty = false;
+ }
}
diff --git a/components/webdriver_server/lib.rs b/components/webdriver_server/lib.rs
index 7d410c90bf8..d22b4ba119b 100644
--- a/components/webdriver_server/lib.rs
+++ b/components/webdriver_server/lib.rs
@@ -5,8 +5,7 @@
#![crate_name = "webdriver_server"]
#![crate_type = "rlib"]
-#![feature(net)]
-#![feature(rustc_private)]
+#![feature(rustc_private, ip_addr)]
#[macro_use]
extern crate log;
@@ -15,7 +14,7 @@ extern crate webdriver;
extern crate msg;
extern crate url;
extern crate util;
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
extern crate uuid;
extern crate webdriver_traits;
@@ -35,15 +34,15 @@ use util::task::spawn_named;
use uuid::Uuid;
use std::borrow::ToOwned;
-use std::net::IpAddr;
use rustc_serialize::json::{Json, ToJson};
use std::collections::BTreeMap;
+use std::net::SocketAddr;
pub fn start_server(port: u16, constellation_chan: ConstellationChan) {
let handler = Handler::new(constellation_chan);
spawn_named("WebdriverHttpServer".to_owned(), move || {
- server::start(IpAddr::new_v4(0, 0, 0, 0), port, handler);
+ server::start(SocketAddr::new("0.0.0.0".parse().unwrap(), port), handler);
});
}
diff --git a/components/webdriver_traits/Cargo.toml b/components/webdriver_traits/Cargo.toml
index c4575e73a53..e27f0e4cf74 100644
--- a/components/webdriver_traits/Cargo.toml
+++ b/components/webdriver_traits/Cargo.toml
@@ -8,4 +8,4 @@ name = "webdriver_traits"
path = "lib.rs"
[dependencies]
-rustc-serialize="0.3.4" \ No newline at end of file
+rustc-serialize="0.3.4"
diff --git a/components/webdriver_traits/lib.rs b/components/webdriver_traits/lib.rs
index 4e6a307f64a..16157a42ce3 100644
--- a/components/webdriver_traits/lib.rs
+++ b/components/webdriver_traits/lib.rs
@@ -5,7 +5,7 @@
#![crate_name = "webdriver_traits"]
#![crate_type = "rlib"]
-extern crate "rustc-serialize" as rustc_serialize;
+extern crate rustc_serialize;
use rustc_serialize::json::{Json, ToJson};
use std::sync::mpsc::Sender;
diff --git a/ports/cef/Cargo.lock b/ports/cef/Cargo.lock
index cecc03294f7..2671a8cdc53 100644
--- a/ports/cef/Cargo.lock
+++ b/ports/cef/Cargo.lock
@@ -6,6 +6,7 @@ dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"cocoa 0.1.1 (git+https://github.com/servo/rust-cocoa)",
"compositing 0.0.1",
+ "core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
"core_text 0.1.0 (git+https://github.com/servo/rust-core-text)",
"devtools 0.0.1",
@@ -15,9 +16,10 @@ dependencies = [
"glutin_app 0.0.1",
"js 0.1.0 (git+https://github.com/servo/rust-mozjs)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net 0.0.1",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"script 0.0.1",
@@ -25,19 +27,19 @@ dependencies = [
"servo 0.0.1",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "android_glue"
-version = "0.0.1"
-source = "git+https://github.com/tomaka/android-rs-glue#5a68056599fb498b0cf3715fd359894825e3b856"
+version = "0.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "azure"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-azure#3e5daf667a62f702dc16285e923464458bef785f"
+source = "git+https://github.com/servo/rust-azure#91e18a325fa5fdee9b1634b44a3a3a7ac1fb09ff"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
@@ -45,8 +47,8 @@ dependencies = [
"egl 0.1.0 (git+https://github.com/servo/rust-egl)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
@@ -60,44 +62,50 @@ name = "canvas"
version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
- "glutin 0.0.7 (git+https://github.com/servo/glutin?branch=servo)",
- "offscreen_gl_context 0.0.1 (git+https://github.com/ecoal95/rust-offscreen-rendering-context)",
+ "glutin 0.0.26 (git+https://github.com/servo/glutin?branch=servo)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "offscreen_gl_context 0.0.1 (git+https://github.com/servo/rust-offscreen-rendering-context)",
"util 0.0.1",
]
[[package]]
name = "cgl"
version = "0.0.1"
-source = "git+https://github.com/servo/rust-cgl#211afc4d1572d8fe67b91c452441b6cb292a2bc7"
+source = "git+https://github.com/servo/rust-cgl#16144321dc18d8ab538ee2acc0d2dad155a17899"
dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "clipboard"
version = "0.0.1"
-source = "git+https://github.com/aweinstock314/rust-x11-clipboard#eae9596e7e407c8b6037b934c1a8e42a309423fd"
+source = "git+https://github.com/servo/rust-x11-clipboard#43afb218871e3148758c603f335576cb101cb1fa"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
[[package]]
name = "clock_ticks"
-version = "0.0.4"
-source = "git+https://github.com/tomaka/clock_ticks#6a3005279bedc406b13eea09ff92447f05ca0de6"
+version = "0.0.5"
+source = "git+https://github.com/tomaka/clock_ticks#462848731d99ed2f800e2e5a19e2d8ca3b11c90c"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "cocoa"
version = "0.1.1"
-source = "git+https://github.com/servo/rust-cocoa#ca3441a14783aa0683e073f1a1f990ed21900718"
+source = "git+https://github.com/servo/rust-cocoa#26d02e3f3606223645dde173a7bb924bce4836de"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -105,7 +113,7 @@ name = "compositing"
version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
- "clipboard 0.0.1 (git+https://github.com/aweinstock314/rust-x11-clipboard)",
+ "clipboard 0.0.1 (git+https://github.com/servo/rust-x11-clipboard)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
"core_text 0.1.0 (git+https://github.com/servo/rust-core-text)",
"devtools_traits 0.0.1",
@@ -114,73 +122,79 @@ dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"layout_traits 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net 0.0.1",
"net_traits 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
"script_traits 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
[[package]]
name = "cookie"
-version = "0.1.14"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_foundation"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-foundation#c577bd64b0301fe926cf7b757b9852a1ce1d521d"
+source = "git+https://github.com/servo/rust-core-foundation#928efbae42fc596e6ede2cf0949c3d6d6f3dad8f"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_graphics"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-graphics#e169ad38f71ed003c21fb550a9dfa0e51423ed3a"
+source = "git+https://github.com/servo/rust-core-graphics#da0d2fe947412afea55b438454194b2183c21594"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_text"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-text#8809f011445585d023d5e2a0712a1adcbf7ce609"
+source = "git+https://github.com/servo/rust-core-text#bc6994c3765f0660e9c04f5488ba194a9354e8fb"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "cssparser"
-version = "0.2.0"
-source = "git+https://github.com/servo/rust-cssparser#56d5f94d5239d4bd68358813405e4d5823c01ff6"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "debug-builders"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "devtools"
version = "0.0.1"
dependencies = [
"devtools_traits 0.0.1",
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -189,100 +203,109 @@ name = "devtools_traits"
version = "0.0.1"
dependencies = [
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "egl"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-egl#328e79b6256dea346f1821ccc4215e95fd1d58bc"
+source = "git+https://github.com/servo/rust-egl#c0159346b3adfdcf13f2cd86f5ee41750a72c078"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "encoding"
-version = "0.2.25"
+version = "0.2.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding-index-japanese 1.20141219.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-korean 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-simpchinese 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-singlebyte 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-tradchinese 1.20141219.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-japanese"
-version = "1.20141219.2"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-korean"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-simpchinese"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-singlebyte"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-tradchinese"
-version = "1.20141219.2"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding_index_tests"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "expat-sys"
version = "2.1.0"
-source = "git+https://github.com/servo/libexpat#523a2f2f51b41adf7bb5c4c65e80db0cb615d70b"
+source = "git+https://github.com/servo/libexpat#5f798cfbb74650a5e1d95e4c03a9e41e55e28625"
[[package]]
name = "flate2"
-version = "0.2.0"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "miniz-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "miniz-sys 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "fnv"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "fontconfig"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-fontconfig#91195bd29daa9280680bb28ba556821d504a17c6"
+source = "git+https://github.com/servo/rust-fontconfig#7839e5adcb4d6da3cefe2256f5071ac0203b9206"
dependencies = [
"fontconfig-sys 2.11.1 (git+https://github.com/servo/libfontconfig)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "fontconfig-sys"
version = "2.11.1"
-source = "git+https://github.com/servo/libfontconfig#adc60cacbca697123f4535ce2ff07619ec013cec"
+source = "git+https://github.com/servo/libfontconfig#ce4a38633dc649b95c9b4935c0cce53e76d8b46a"
dependencies = [
"expat-sys 2.1.0 (git+https://github.com/servo/libexpat)",
"freetype-sys 2.4.11 (git+https://github.com/servo/libfreetype2)",
@@ -293,38 +316,41 @@ name = "freetype"
version = "0.1.0"
source = "git+https://github.com/servo/rust-freetype#f256a9ac84893f0a183b8966de2a3a03d7552b8b"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "freetype-sys"
version = "2.4.11"
-source = "git+https://github.com/servo/libfreetype2#a488dfd86872bf9c163d54a7f73a5dc4d3c4fd9e"
+source = "git+https://github.com/servo/libfreetype2#50c1cf412d87f20ccbb940e39a14a38ae7cbb512"
[[package]]
name = "gcc"
-version = "0.3.1"
-source = "git+https://github.com/alexcrichton/gcc-rs#564247d019449ba46f25f64ffdefade5968b6ae7"
+version = "0.3.4"
+source = "git+https://github.com/alexcrichton/gcc-rs#9596a4e6da55e5ddbad6fd645b9727aae6b545ef"
[[package]]
name = "gcc"
-version = "0.3.1"
+version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "gdi32-sys"
-version = "0.0.4"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "winapi 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "geom"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-geom#c47fc0f927b6d6e5543fe3b5445c86810831dce1"
+source = "git+https://github.com/servo/rust-geom#c4bdb1ef8f4915ae636eb752b103f69246b50304"
dependencies = [
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -341,69 +367,84 @@ dependencies = [
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"harfbuzz 0.1.0 (git+https://github.com/servo/rust-harfbuzz)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "gl"
+version = "0.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "gl_common"
version = "0.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "gl_generator"
-version = "0.0.19"
+version = "0.0.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "xml-rs 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "xml-rs 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "gleam"
version = "0.0.1"
-source = "git+https://github.com/servo/gleam#70c5f2ea3ef3602277b7c380c24b504e42338056"
+source = "git+https://github.com/servo/gleam#f2edabf2ef0474bb270b107e5e68c2727c4a422d"
dependencies = [
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "glutin"
-version = "0.0.7"
-source = "git+https://github.com/servo/glutin?branch=servo#0feab4842c5b229bfe88739d2c526d03c198fd33"
+version = "0.0.26"
+source = "git+https://github.com/servo/glutin?branch=servo#c1af76550f311e3da7a08d393b4ea9805cb61a7b"
dependencies = [
- "android_glue 0.0.1 (git+https://github.com/tomaka/android-rs-glue)",
- "cocoa 0.1.1 (git+https://github.com/servo/rust-cocoa)",
- "core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
- "core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
- "gdi32-sys 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "android_glue 0.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gdi32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "kernel32-sys 0.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_cocoa 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_core_foundation 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_core_graphics 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "kernel32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "user32-sys 0.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "osmesa-sys 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "user32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "x11 0.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -416,99 +457,139 @@ dependencies = [
"egl 0.1.0 (git+https://github.com/servo/rust-egl)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
- "glutin 0.0.7 (git+https://github.com/servo/glutin?branch=servo)",
+ "glutin 0.0.26 (git+https://github.com/servo/glutin?branch=servo)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"script_traits 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "glutin_cocoa"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_core_foundation"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_core_graphics"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "glutin_core_foundation 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "glx"
version = "0.0.1"
-source = "git+https://github.com/servo/rust-glx#f2103861d38076ef5e01a8c2f58df1e79ca12f41"
+source = "git+https://github.com/servo/rust-glx#60ac0aee2438eadb4b51ddc8eac6fc4b5ca8e447"
dependencies = [
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "harfbuzz"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-harfbuzz#cc875777f820da0b85f39c2359d9609650b16600"
+source = "git+https://github.com/servo/rust-harfbuzz#33b6fd019fc04e46dd5fe15a5faf8efb1a9a0128"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "html5ever"
version = "0.0.0"
-source = "git+https://github.com/servo/html5ever#8bad1ca8e1e05a7972be80acc64efd729ffdc8a5"
+source = "git+https://github.com/servo/html5ever#74dc5f5a36451cfbe789488b20d51bef97c63898"
dependencies = [
"html5ever_macros 0.0.0 (git+https://github.com/servo/html5ever)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
- "phf 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_macros 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_macros 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "html5ever_macros"
version = "0.0.0"
-source = "git+https://github.com/servo/html5ever#8bad1ca8e1e05a7972be80acc64efd729ffdc8a5"
+source = "git+https://github.com/servo/html5ever#74dc5f5a36451cfbe789488b20d51bef97c63898"
dependencies = [
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "httparse"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "hyper"
-version = "0.3.0"
+version = "0.3.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "httparse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mime 0.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicase 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num_cpus 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "traitobject 0.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "typeable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicase 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "io_surface"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-io-surface#f380a03a9b0e0316866d4320d46a78dda87efbec"
+source = "git+https://github.com/servo/rust-io-surface#ab0ebd4ea6dd953c1581d9486b9e80ecf3c7577d"
dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "js"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-mozjs#402b7b2db8816ffeccacfa9a8d316f4487e96ba0"
+source = "git+https://github.com/servo/rust-mozjs#30a1ad31d1ee47a8e4e1ef582e793badfb405fa0"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mozjs_sys 0.0.0 (git+https://github.com/servo/mozjs)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "kernel32-sys"
-version = "0.0.11"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "winapi 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -519,7 +600,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "layers"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-layers#df3a14d00260c8ab506565972555931444361ff8"
+source = "git+https://github.com/servo/rust-layers#018259e838c3842032010829feeaba316e577376"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
@@ -529,8 +610,10 @@ dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"glx 0.0.1 (git+https://github.com/servo/rust-glx)",
"io_surface 0.1.0 (git+https://github.com/servo/rust-io-surface)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
@@ -541,26 +624,26 @@ dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
- "clock_ticks 0.0.4 (git+https://github.com/tomaka/clock_ticks)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "clock_ticks 0.0.5 (git+https://github.com/tomaka/clock_ticks)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"layout_traits 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"script_traits 0.0.1",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -573,32 +656,40 @@ dependencies = [
"net_traits 0.0.1",
"profile_traits 0.0.1",
"script_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "lazy_static"
-version = "0.1.8"
-source = "git+https://github.com/Kimundi/lazy-static.rs#56b4be4141d3c58273cf5ee1d2e956e2f22248b9"
+version = "0.1.10"
+source = "git+https://github.com/Kimundi/lazy-static.rs#1366fce0e706ee8530c88b80039946c4c7e1f993"
+
+[[package]]
+name = "lazy_static"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libc"
-version = "0.1.2"
+version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libressl-pnacl-sys"
-version = "2.1.4"
+version = "2.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "pnacl-build-helper 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pnacl-build-helper 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "log"
-version = "0.2.5"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "mac"
@@ -606,6 +697,14 @@ version = "0.0.2"
source = "git+https://github.com/reem/rust-mac#6316d3f4663756180fd236b126a84e245e978765"
[[package]]
+name = "malloc_buf"
+version = "0.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "matches"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -615,21 +714,21 @@ name = "mime"
version = "0.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "miniz-sys"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "mod_path"
-version = "0.1.4"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -645,11 +744,11 @@ dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"io_surface 0.1.0 (git+https://github.com/servo/rust-io-surface)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
@@ -658,18 +757,18 @@ dependencies = [
name = "net"
version = "0.0.1"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "flate2 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "flate2 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"net_traits 0.0.1",
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex_macros 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex_macros 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -678,80 +777,119 @@ name = "net_traits"
version = "0.0.1"
dependencies = [
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "num"
+version = "0.1.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "num_cpus"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "objc"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "malloc_buf 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "offscreen_gl_context"
version = "0.0.1"
-source = "git+https://github.com/ecoal95/rust-offscreen-rendering-context#9547d416019b15e0e59dc5176f5b1a14e14b44ca"
+source = "git+https://github.com/servo/rust-offscreen-rendering-context#9ef802439467c287178afe46c5dd7adec13993eb"
dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"glx 0.0.1 (git+https://github.com/servo/rust-glx)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
[[package]]
name = "openssl"
-version = "0.5.1"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl-sys 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "openssl-sys"
-version = "0.5.1"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "libressl-pnacl-sys 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libressl-pnacl-sys 2.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "osmesa-sys"
+version = "0.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "gl 0.0.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "debug-builders 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_generator"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_macros"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_generator 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_generator 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_shared"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pkg-config"
-version = "0.3.0"
+version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -763,32 +901,36 @@ dependencies = [
[[package]]
name = "pnacl-build-helper"
-version = "1.3.2"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "tempdir 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "png"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-png#1d9c59c97598014860077f372443ae98b35ff4d9"
+source = "git+https://github.com/servo/rust-png#811e4d339441dd34fb087fc895e1619ba882933f"
dependencies = [
- "gcc 0.3.1 (git+https://github.com/alexcrichton/gcc-rs)",
+ "gcc 0.3.4 (git+https://github.com/alexcrichton/gcc-rs)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"png-sys 1.6.16 (git+https://github.com/servo/rust-png)",
]
[[package]]
name = "png-sys"
version = "1.6.16"
-source = "git+https://github.com/servo/rust-png#1d9c59c97598014860077f372443ae98b35ff4d9"
+source = "git+https://github.com/servo/rust-png#811e4d339441dd34fb087fc895e1619ba882933f"
[[package]]
name = "profile"
version = "0.0.1"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"profile_traits 0.0.1",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
"task_info 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -796,35 +938,39 @@ dependencies = [
name = "profile_traits"
version = "0.0.1"
dependencies = [
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "quicksort"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "rand"
-version = "0.1.4"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "regex"
-version = "0.1.18"
+version = "0.1.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "regex_macros"
-version = "0.1.11"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rustc-serialize"
-version = "0.3.4"
+version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -833,30 +979,32 @@ version = "0.0.1"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"devtools_traits 0.0.1",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"html5ever 0.0.0 (git+https://github.com/servo/html5ever)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"js 0.1.0 (git+https://github.com/servo/rust-mozjs)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile_traits 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicase 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
- "uuid 0.1.11 (git+https://github.com/rust-lang/uuid)",
+ "uuid 0.1.16 (git+https://github.com/rust-lang/uuid)",
"webdriver_traits 0.0.1",
]
@@ -866,10 +1014,10 @@ version = "0.0.1"
dependencies = [
"devtools_traits 0.0.1",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
@@ -877,11 +1025,13 @@ dependencies = [
[[package]]
name = "selectors"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-selectors#0d7d846090c21d71ebb1bc17921806933a38f52b"
+source = "git+https://github.com/servo/rust-selectors#1fda09bf0c59acfcb697f71b38dad22108b3d27a"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quicksort 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "smallvec 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
]
@@ -904,8 +1054,8 @@ dependencies = [
"profile 0.0.1",
"profile_traits 0.0.1",
"script 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_server 0.0.1",
]
@@ -913,35 +1063,43 @@ dependencies = [
[[package]]
name = "skia"
version = "0.0.20130412"
-source = "git+https://github.com/servo/skia?branch=upstream-2014-06-16#db5b5393c83da9ff5b8fb2076481e98fb2b659f2"
+source = "git+https://github.com/servo/skia#d60e6753b2b23b3b4ff787b505da56cfad0335c9"
dependencies = [
"expat-sys 2.1.0 (git+https://github.com/servo/libexpat)",
"freetype-sys 2.4.11 (git+https://github.com/servo/libfreetype2)",
]
[[package]]
+name = "smallvec"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "stb_image"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-stb-image#b683cc9e7ba52a1bb65361347da0df1bc9c5e854"
+source = "git+https://github.com/servo/rust-stb-image#f6c411b381322609a321b7fb5f948b2365973604"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "string_cache"
version = "0.0.0"
-source = "git+https://github.com/servo/string-cache#124cb555651bd7838c5c6dc4788bc4f5350947a9"
+source = "git+https://github.com/servo/string-cache#385c4ac197742e355631209be3613c8a9c7594b6"
dependencies = [
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
- "phf 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_macros 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "phf 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_macros 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
]
[[package]]
name = "string_cache_plugin"
version = "0.0.0"
-source = "git+https://github.com/servo/string-cache#124cb555651bd7838c5c6dc4788bc4f5350947a9"
+source = "git+https://github.com/servo/string-cache#385c4ac197742e355631209be3613c8a9c7594b6"
dependencies = [
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
]
@@ -950,19 +1108,18 @@ name = "style"
version = "0.0.1"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "mod_path 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "mod_path 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -971,44 +1128,57 @@ name = "task_info"
version = "0.0.1"
[[package]]
+name = "tempdir"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "tenacious"
version = "0.0.1"
source = "git+https://github.com/Manishearth/rust-tenacious.git#d61782e70005a9f0cdf66f366d4ec88fc563ea1e"
[[package]]
-name = "text_writer"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
name = "time"
-version = "0.1.19"
+version = "0.1.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "traitobject"
+version = "0.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
+name = "typeable"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "unicase"
-version = "0.0.5"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "url"
-version = "0.2.23"
+version = "0.2.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "user32-sys"
-version = "0.0.11"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "winapi 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1017,49 +1187,52 @@ version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num_cpus 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
+ "smallvec 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "uuid"
-version = "0.1.11"
-source = "git+https://github.com/rust-lang/uuid#c7862508f84b114d22bb68ec01202eafc50a81b2"
+version = "0.1.16"
+source = "git+https://github.com/rust-lang/uuid#7c767220c41746d346c8195e31ddf090ac6568e7"
dependencies = [
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "uuid"
-version = "0.1.11"
+version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "webdriver"
-version = "0.0.1"
-source = "git+https://github.com/jgraham/webdriver-rust.git#fa625e3cf8fdb39b503c1cc902506df3a1d1c9de"
+version = "0.1.0"
+source = "git+https://github.com/jgraham/webdriver-rust.git#66547888f47bae7e938a92af4586276479343216"
dependencies = [
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "uuid 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "uuid 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1067,11 +1240,11 @@ name = "webdriver_server"
version = "0.0.1"
dependencies = [
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
- "uuid 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "webdriver 0.0.1 (git+https://github.com/jgraham/webdriver-rust.git)",
+ "uuid 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ "webdriver 0.1.0 (git+https://github.com/jgraham/webdriver-rust.git)",
"webdriver_traits 0.0.1",
]
@@ -1079,20 +1252,23 @@ dependencies = [
name = "webdriver_traits"
version = "0.0.1"
dependencies = [
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "winapi"
-version = "0.0.5"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
-name = "winapi"
-version = "0.1.15"
+name = "x11"
+version = "0.0.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1101,12 +1277,12 @@ version = "0.1.0"
source = "git+https://github.com/servo/rust-xlib#1a0f3d48fbebf96e2d1bf83ac71309b27f49e0c7"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "xml-rs"
-version = "0.1.20"
+version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/ports/cef/Cargo.toml b/ports/cef/Cargo.toml
index a8ea2e62517..2e73e96319c 100644
--- a/ports/cef/Cargo.toml
+++ b/ports/cef/Cargo.toml
@@ -62,6 +62,9 @@ git = "https://github.com/servo/rust-png"
[dependencies.stb_image]
git = "https://github.com/servo/rust-stb-image"
+[dependencies.core_foundation]
+git = "https://github.com/servo/rust-core-foundation"
+
[dependencies.core_graphics]
git = "https://github.com/servo/rust-core-graphics"
@@ -80,3 +83,4 @@ git = "https://github.com/servo/rust-cgl"
[dependencies]
url = "*"
libc = "*"
+objc = "0.1"
diff --git a/ports/cef/lib.rs b/ports/cef/lib.rs
index 6e0627b959b..2f6718a1dea 100644
--- a/ports/cef/lib.rs
+++ b/ports/cef/lib.rs
@@ -7,11 +7,12 @@
#![feature(plugin)]
#![feature(link_args)]
#![feature(thread_local)]
-#![feature(unicode)]
#![feature(core)]
#![feature(std_misc)]
#![feature(rustc_private)]
#![feature(collections)]
+#![feature(negate_unsigned)]
+#![feature(unicode)]
#![allow(non_camel_case_types)]
@@ -31,9 +32,9 @@ extern crate glutin_app;
extern crate js;
extern crate layers;
extern crate png;
+extern crate rustc_unicode;
extern crate script;
extern crate script_traits;
-extern crate unicode;
extern crate net;
extern crate msg;
@@ -42,16 +43,21 @@ extern crate style;
extern crate stb_image;
extern crate libc;
-extern crate "url" as std_url;
+extern crate url as std_url;
#[cfg(target_os="macos")]
extern crate cgl;
#[cfg(target_os="macos")]
extern crate cocoa;
#[cfg(target_os="macos")]
+extern crate core_foundation;
+#[cfg(target_os="macos")]
extern crate core_graphics;
#[cfg(target_os="macos")]
extern crate core_text;
+#[cfg(target_os="macos")]
+#[macro_use]
+extern crate objc;
// Must come first.
pub mod macros;
diff --git a/ports/cef/string.rs b/ports/cef/string.rs
index 37cdafac751..523c4f66d2d 100644
--- a/ports/cef/string.rs
+++ b/ports/cef/string.rs
@@ -94,7 +94,7 @@ pub extern "C" fn cef_string_utf8_set(src: *const u8, src_len: size_t, output: *
return 0;
}
- ptr::copy((*output).str, src, src_len as usize);
+ ptr::copy(src, (*output).str, src_len as usize);
(*output).length = src_len;
(*output).dtor = Some(string_utf8_dtor as extern "C" fn(*mut u8));
}
@@ -175,7 +175,7 @@ pub extern "C" fn cef_string_utf16_set(src: *const c_ushort, src_len: size_t, ou
return 0;
}
- ptr::copy((*output).str, src, src_len as usize);
+ ptr::copy(src, (*output).str, src_len as usize);
(*output).length = src_len;
(*output).dtor = Some(string_utf16_dtor as extern "C" fn(*mut c_ushort));
}
@@ -233,7 +233,7 @@ pub extern "C" fn cef_string_wide_set(src: *const wchar_t, src_len: size_t, outp
return 0;
}
- ptr::copy((*output).str, src, src_len as usize);
+ ptr::copy(src, (*output).str, src_len as usize);
(*output).length = src_len;
(*output).dtor = Some(string_wide_dtor as extern "C" fn(*mut wchar_t));
}
diff --git a/ports/cef/string_multimap.rs b/ports/cef/string_multimap.rs
index d0ad3aa0b87..909039bc2ad 100644
--- a/ports/cef/string_multimap.rs
+++ b/ports/cef/string_multimap.rs
@@ -3,9 +3,8 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use eutil::slice_to_str;
-use libc::{c_int};
+use libc::c_int;
use std::collections::BTreeMap;
-use std::iter::AdditiveIterator;
use std::mem;
use std::string::String;
use string::{cef_string_userfree_utf16_alloc, cef_string_userfree_utf16_free};
@@ -31,7 +30,11 @@ pub extern "C" fn cef_string_multimap_size(smm: *mut cef_string_multimap_t) -> c
unsafe {
if smm.is_null() { return 0; }
let v = string_multimap_to_treemap(smm);
- (*v).values().map(|val| (*val).len()).sum() as c_int
+ // t1 : collections::btree::map::Values<'_, collections::string::String, collections::vec::Vec<*mut types::cef_string_utf16>>`
+ let t1 = (*v).values();
+ // t2 : collections::btree::map::BTreeMap<collections::string::String, collections::vec::Vec<*mut types::cef_string_utf16>>
+ let t2 : usize = t1.map(|val| (*val).len()).sum();
+ t2 as c_int
}
}
diff --git a/ports/cef/window.rs b/ports/cef/window.rs
index 948a3c13380..90740c54622 100644
--- a/ports/cef/window.rs
+++ b/ports/cef/window.rs
@@ -10,8 +10,8 @@
use eutil::Downcast;
use interfaces::CefBrowser;
use render_handler::CefRenderHandlerExtensions;
+use rustc_unicode::str::Utf16Encoder;
use types::{cef_cursor_handle_t, cef_rect_t};
-use unicode::str::Utf16Encoder;
use compositing::compositor_task::{self, CompositorProxy, CompositorReceiver};
use compositing::windowing::{WindowEvent, WindowMethods};
@@ -91,30 +91,33 @@ impl Window {
/// bundles custom resources (which we don't yet do).
#[cfg(target_os="macos")]
fn cursor_handle_for_cursor(&self, cursor: Cursor) -> cef_cursor_handle_t {
- use cocoa::base::{class, msg_send, selector};
-
- let cocoa_name = match cursor {
- Cursor::NoCursor => return 0 as cef_cursor_handle_t,
- Cursor::ContextMenuCursor => "contextualMenuCursor",
- Cursor::GrabbingCursor => "closedHandCursor",
- Cursor::CrosshairCursor => "crosshairCursor",
- Cursor::CopyCursor => "dragCopyCursor",
- Cursor::AliasCursor => "dragLinkCursor",
- Cursor::TextCursor => "IBeamCursor",
- Cursor::GrabCursor | Cursor::AllScrollCursor => "openHandCursor",
- Cursor::NoDropCursor | Cursor::NotAllowedCursor => "operationNotAllowedCursor",
- Cursor::PointerCursor => "pointingHandCursor",
- Cursor::SResizeCursor => "resizeDownCursor",
- Cursor::WResizeCursor => "resizeLeftCursor",
- Cursor::EwResizeCursor | Cursor::ColResizeCursor => "resizeLeftRightCursor",
- Cursor::EResizeCursor => "resizeRightCursor",
- Cursor::NResizeCursor => "resizeUpCursor",
- Cursor::NsResizeCursor | Cursor::RowResizeCursor => "resizeUpDownCursor",
- Cursor::VerticalTextCursor => "IBeamCursorForVerticalLayout",
- _ => "arrowCursor",
- };
+ use cocoa::base::class;
+
unsafe {
- msg_send()(class("NSCursor"), selector(cocoa_name))
+ match cursor {
+ Cursor::NoCursor => return 0 as cef_cursor_handle_t,
+ Cursor::ContextMenuCursor => msg_send![class("NSCursor"), contextualMenuCursor],
+ Cursor::GrabbingCursor => msg_send![class("NSCursor"), closedHandCursor],
+ Cursor::CrosshairCursor => msg_send![class("NSCursor"), crosshairCursor],
+ Cursor::CopyCursor => msg_send![class("NSCursor"), dragCopyCursor],
+ Cursor::AliasCursor => msg_send![class("NSCursor"), dragLinkCursor],
+ Cursor::TextCursor => msg_send![class("NSCursor"), IBeamCursor],
+ Cursor::GrabCursor | Cursor::AllScrollCursor =>
+ msg_send![class("NSCursor"), openHandCursor],
+ Cursor::NoDropCursor | Cursor::NotAllowedCursor =>
+ msg_send![class("NSCursor"), operationNotAllowedCursor],
+ Cursor::PointerCursor => msg_send![class("NSCursor"), pointingHandCursor],
+ Cursor::SResizeCursor => msg_send![class("NSCursor"), resizeDownCursor],
+ Cursor::WResizeCursor => msg_send![class("NSCursor"), resizeLeftCursor],
+ Cursor::EwResizeCursor | Cursor::ColResizeCursor =>
+ msg_send![class("NSCursor"), resizeLeftRightCursor],
+ Cursor::EResizeCursor => msg_send![class("NSCursor"), resizeRightCursor],
+ Cursor::NResizeCursor => msg_send![class("NSCursor"), resizeUpCursor],
+ Cursor::NsResizeCursor | Cursor::RowResizeCursor =>
+ msg_send![class("NSCursor"), resizeUpDownCursor],
+ Cursor::VerticalTextCursor => msg_send![class("NSCursor"), IBeamCursorForVerticalLayout],
+ _ => msg_send![class("NSCursor"), arrowCursor],
+ }
}
}
@@ -325,9 +328,10 @@ struct CefCompositorProxy {
impl CompositorProxy for CefCompositorProxy {
#[cfg(target_os="macos")]
fn send(&mut self, msg: compositor_task::Msg) {
- use cocoa::appkit::{NSApp, NSApplication, NSApplicationDefined, NSAutoreleasePool};
- use cocoa::appkit::{NSEvent, NSEventModifierFlags, NSEventSubtype, NSPoint};
+ use cocoa::appkit::{NSApp, NSApplication, NSApplicationDefined};
+ use cocoa::appkit::{NSEvent, NSEventModifierFlags, NSEventSubtype};
use cocoa::base::nil;
+ use cocoa::foundation::{NSAutoreleasePool, NSPoint};
// Send a message and kick the OS event loop awake.
self.sender.send(msg).unwrap();
@@ -342,7 +346,7 @@ impl CompositorProxy for CefCompositorProxy {
NSEventModifierFlags::empty(),
0.0,
0,
- 0,
+ nil,
NSEventSubtype::NSWindowExposedEventType,
0,
0);
diff --git a/ports/cef/wrappers.rs b/ports/cef/wrappers.rs
index 99858f7887e..0ac8b5f668b 100644
--- a/ports/cef/wrappers.rs
+++ b/ports/cef/wrappers.rs
@@ -4,6 +4,7 @@
use interfaces::{cef_drag_data_t, cef_post_data_element_t, cef_v8value_t, CefPostDataElement};
use interfaces::{CefV8Value};
+use rustc_unicode::str::Utf16Encoder;
use types::{cef_base_t, cef_browser_settings_t, cef_color_model_t};
use types::{cef_context_menu_edit_state_flags_t, cef_context_menu_handler_t};
use types::{cef_context_menu_media_state_flags_t};
@@ -29,7 +30,6 @@ use types::{cef_termination_status_t, cef_text_input_context_t, cef_thread_id_t}
use types::{cef_time_t, cef_transition_type_t, cef_urlrequest_status_t};
use types::{cef_v8_accesscontrol_t, cef_v8_propertyattribute_t, cef_value_type_t};
use types::{cef_window_info_t, cef_xml_encoding_type_t, cef_xml_node_type_t};
-use unicode::str::Utf16Encoder;
use libc::{self, c_char, c_int, c_ushort, c_void};
use std::boxed;
@@ -183,8 +183,8 @@ cef_unimplemented_wrapper!(cef_string_t, String);
impl<'a> CefWrap<*const cef_string_t> for &'a [u16] {
fn to_c(buffer: &'a [u16]) -> *const cef_string_t {
unsafe {
- let ptr: *mut c_ushort = mem::transmute(libc::malloc(((buffer.len() + 1) * 2) as u64));
- ptr::copy(ptr, mem::transmute(buffer.as_ptr()), buffer.len());
+ let ptr = libc::malloc(((buffer.len() + 1) * 2) as u64) as *mut c_ushort;
+ ptr::copy(buffer.as_ptr(), ptr, buffer.len());
*ptr.offset(buffer.len() as isize) = 0;
// FIXME(pcwalton): This leaks!! We should instead have the caller pass some scratch
diff --git a/ports/glutin/lib.rs b/ports/glutin/lib.rs
index 8198eae5493..b655bf4ef7f 100644
--- a/ports/glutin/lib.rs
+++ b/ports/glutin/lib.rs
@@ -4,9 +4,7 @@
//! A simple application that uses glutin to open a window for Servo to display in.
-#![feature(int_uint)]
#![feature(box_syntax)]
-#![cfg_attr(all(feature = "window", target_os = "linux"), feature(old_io, std_misc))]
#[macro_use] extern crate bitflags;
#[cfg(target_os="macos")]
diff --git a/ports/glutin/window.rs b/ports/glutin/window.rs
index a13dbd56ff2..48a1c9b61c9 100644
--- a/ports/glutin/window.rs
+++ b/ports/glutin/window.rs
@@ -33,8 +33,6 @@ use msg::constellation_msg::{KeyState, CONTROL, SHIFT, ALT};
#[cfg(feature = "window")]
use std::cell::{Cell, RefCell};
#[cfg(feature = "window")]
-use std::num::Float;
-#[cfg(feature = "window")]
use util::opts;
#[cfg(all(feature = "headless", target_os="linux"))]
@@ -266,8 +264,7 @@ impl Window {
#[cfg(target_os="linux")]
fn handle_next_event(&self) -> bool {
- use std::old_io::timer::sleep;
- use std::time::duration::Duration;
+ use std::thread::sleep_ms;
// TODO(gw): This is an awful hack to work around the
// broken way we currently call X11 from multiple threads.
@@ -291,7 +288,7 @@ impl Window {
self.handle_window_event(event)
}
None => {
- sleep(Duration::milliseconds(16));
+ sleep_ms(16);
false
}
}
@@ -741,42 +738,42 @@ impl CompositorProxy for GlutinCompositorProxy {
#[allow(non_snake_case)]
#[no_mangle]
-pub extern "C" fn glBindVertexArrayOES(_array: uint)
+pub extern "C" fn glBindVertexArrayOES(_array: usize)
{
unimplemented!()
}
#[allow(non_snake_case)]
#[no_mangle]
-pub extern "C" fn glDeleteVertexArraysOES(_n: int, _arrays: *const ())
+pub extern "C" fn glDeleteVertexArraysOES(_n: isize, _arrays: *const ())
{
unimplemented!()
}
#[allow(non_snake_case)]
#[no_mangle]
-pub extern "C" fn glGenVertexArraysOES(_n: int, _arrays: *const ())
+pub extern "C" fn glGenVertexArraysOES(_n: isize, _arrays: *const ())
{
unimplemented!()
}
#[allow(non_snake_case)]
#[no_mangle]
-pub extern "C" fn glRenderbufferStorageMultisampleIMG(_: int, _: int, _: int, _: int, _: int)
+pub extern "C" fn glRenderbufferStorageMultisampleIMG(_: isize, _: isize, _: isize, _: isize, _: isize)
{
unimplemented!()
}
#[allow(non_snake_case)]
#[no_mangle]
-pub extern "C" fn glFramebufferTexture2DMultisampleIMG(_: int, _: int, _: int, _: int, _: int, _: int)
+pub extern "C" fn glFramebufferTexture2DMultisampleIMG(_: isize, _: isize, _: isize, _: isize, _: isize, _: isize)
{
unimplemented!()
}
#[allow(non_snake_case)]
#[no_mangle]
-pub extern "C" fn glDiscardFramebufferEXT(_: int, _: int, _: *const ())
+pub extern "C" fn glDiscardFramebufferEXT(_: isize, _: isize, _: *const ())
{
unimplemented!()
}
diff --git a/ports/gonk/Cargo.lock b/ports/gonk/Cargo.lock
index ccad0c6f5c3..6d8e591a0ba 100644
--- a/ports/gonk/Cargo.lock
+++ b/ports/gonk/Cargo.lock
@@ -5,12 +5,13 @@ dependencies = [
"compositing 0.0.1",
"devtools 0.0.1",
"egl 0.1.0 (git+https://github.com/servo/rust-egl)",
+ "errno 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"layout 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net 0.0.1",
"net_traits 0.0.1",
@@ -18,20 +19,20 @@ dependencies = [
"script 0.0.1",
"script_traits 0.0.1",
"servo 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "android_glue"
-version = "0.0.1"
-source = "git+https://github.com/tomaka/android-rs-glue#5a68056599fb498b0cf3715fd359894825e3b856"
+version = "0.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "azure"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-azure#3e5daf667a62f702dc16285e923464458bef785f"
+source = "git+https://github.com/servo/rust-azure#91e18a325fa5fdee9b1634b44a3a3a7ac1fb09ff"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
@@ -39,8 +40,8 @@ dependencies = [
"egl 0.1.0 (git+https://github.com/servo/rust-egl)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
@@ -54,45 +55,40 @@ name = "canvas"
version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
- "glutin 0.0.7 (git+https://github.com/servo/glutin?branch=servo)",
- "offscreen_gl_context 0.0.1 (git+https://github.com/ecoal95/rust-offscreen-rendering-context)",
+ "glutin 0.0.26 (git+https://github.com/servo/glutin?branch=servo)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "offscreen_gl_context 0.0.1 (git+https://github.com/servo/rust-offscreen-rendering-context)",
"util 0.0.1",
]
[[package]]
name = "cgl"
version = "0.0.1"
-source = "git+https://github.com/servo/rust-cgl#211afc4d1572d8fe67b91c452441b6cb292a2bc7"
+source = "git+https://github.com/servo/rust-cgl#16144321dc18d8ab538ee2acc0d2dad155a17899"
dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "clipboard"
version = "0.0.1"
-source = "git+https://github.com/aweinstock314/rust-x11-clipboard#eae9596e7e407c8b6037b934c1a8e42a309423fd"
+source = "git+https://github.com/servo/rust-x11-clipboard#43afb218871e3148758c603f335576cb101cb1fa"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
[[package]]
name = "clock_ticks"
-version = "0.0.4"
-source = "git+https://github.com/tomaka/clock_ticks#6a3005279bedc406b13eea09ff92447f05ca0de6"
-
-[[package]]
-name = "cocoa"
-version = "0.1.1"
-source = "git+https://github.com/servo/rust-cocoa#26d02e3f3606223645dde173a7bb924bce4836de"
+version = "0.0.5"
+source = "git+https://github.com/tomaka/clock_ticks#462848731d99ed2f800e2e5a19e2d8ca3b11c90c"
dependencies = [
- "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "objc 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -100,7 +96,7 @@ name = "compositing"
version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
- "clipboard 0.0.1 (git+https://github.com/aweinstock314/rust-x11-clipboard)",
+ "clipboard 0.0.1 (git+https://github.com/servo/rust-x11-clipboard)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
"core_text 0.1.0 (git+https://github.com/servo/rust-core-text)",
"devtools_traits 0.0.1",
@@ -109,73 +105,79 @@ dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"layout_traits 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net 0.0.1",
"net_traits 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "profile 0.0.1",
+ "profile_traits 0.0.1",
"script_traits 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
[[package]]
name = "cookie"
-version = "0.1.14"
+version = "0.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_foundation"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-foundation#c577bd64b0301fe926cf7b757b9852a1ce1d521d"
+source = "git+https://github.com/servo/rust-core-foundation#928efbae42fc596e6ede2cf0949c3d6d6f3dad8f"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_graphics"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-graphics#e169ad38f71ed003c21fb550a9dfa0e51423ed3a"
+source = "git+https://github.com/servo/rust-core-graphics#da0d2fe947412afea55b438454194b2183c21594"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "core_text"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-core-text#8809f011445585d023d5e2a0712a1adcbf7ce609"
+source = "git+https://github.com/servo/rust-core-text#bc6994c3765f0660e9c04f5488ba194a9354e8fb"
dependencies = [
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "cssparser"
-version = "0.2.0"
-source = "git+https://github.com/servo/rust-cssparser#56d5f94d5239d4bd68358813405e4d5823c01ff6"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "debug-builders"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "devtools"
version = "0.0.1"
dependencies = [
"devtools_traits 0.0.1",
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -184,100 +186,119 @@ name = "devtools_traits"
version = "0.0.1"
dependencies = [
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "egl"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-egl#328e79b6256dea346f1821ccc4215e95fd1d58bc"
+source = "git+https://github.com/servo/rust-egl#c0159346b3adfdcf13f2cd86f5ee41750a72c078"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "encoding"
-version = "0.2.25"
+version = "0.2.32"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding-index-japanese 1.20141219.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-korean 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-simpchinese 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-singlebyte 1.20141219.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "encoding-index-tradchinese 1.20141219.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-simpchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-japanese"
-version = "1.20141219.2"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-korean"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-simpchinese"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-singlebyte"
-version = "1.20141219.1"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding-index-tradchinese"
-version = "1.20141219.2"
+version = "1.20141219.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "encoding_index_tests 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "encoding_index_tests"
-version = "0.1.3"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
+name = "errno"
+version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "kernel32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "expat-sys"
version = "2.1.0"
-source = "git+https://github.com/servo/libexpat#523a2f2f51b41adf7bb5c4c65e80db0cb615d70b"
+source = "git+https://github.com/servo/libexpat#5f798cfbb74650a5e1d95e4c03a9e41e55e28625"
[[package]]
name = "flate2"
-version = "0.2.0"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "miniz-sys 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "miniz-sys 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "fnv"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "fontconfig"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-fontconfig#91195bd29daa9280680bb28ba556821d504a17c6"
+source = "git+https://github.com/servo/rust-fontconfig#7839e5adcb4d6da3cefe2256f5071ac0203b9206"
dependencies = [
"fontconfig-sys 2.11.1 (git+https://github.com/servo/libfontconfig)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "fontconfig-sys"
version = "2.11.1"
-source = "git+https://github.com/servo/libfontconfig#adc60cacbca697123f4535ce2ff07619ec013cec"
+source = "git+https://github.com/servo/libfontconfig#ce4a38633dc649b95c9b4935c0cce53e76d8b46a"
dependencies = [
"expat-sys 2.1.0 (git+https://github.com/servo/libexpat)",
"freetype-sys 2.4.11 (git+https://github.com/servo/libfreetype2)",
@@ -288,22 +309,22 @@ name = "freetype"
version = "0.1.0"
source = "git+https://github.com/servo/rust-freetype#f256a9ac84893f0a183b8966de2a3a03d7552b8b"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "freetype-sys"
version = "2.4.11"
-source = "git+https://github.com/servo/libfreetype2#a488dfd86872bf9c163d54a7f73a5dc4d3c4fd9e"
+source = "git+https://github.com/servo/libfreetype2#50c1cf412d87f20ccbb940e39a14a38ae7cbb512"
[[package]]
name = "gcc"
-version = "0.3.1"
-source = "git+https://github.com/alexcrichton/gcc-rs#564247d019449ba46f25f64ffdefade5968b6ae7"
+version = "0.3.4"
+source = "git+https://github.com/alexcrichton/gcc-rs#9596a4e6da55e5ddbad6fd645b9727aae6b545ef"
[[package]]
name = "gcc"
-version = "0.3.1"
+version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -317,9 +338,12 @@ dependencies = [
[[package]]
name = "geom"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-geom#c47fc0f927b6d6e5543fe3b5445c86810831dce1"
+source = "git+https://github.com/servo/rust-geom#c4bdb1ef8f4915ae636eb752b103f69246b50304"
dependencies = [
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -336,146 +360,201 @@ dependencies = [
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"harfbuzz 0.1.0 (git+https://github.com/servo/rust-harfbuzz)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "profile 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "profile_traits 0.0.1",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "gl"
+version = "0.0.12"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "gl_common"
version = "0.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "gl_generator"
-version = "0.0.19"
+version = "0.0.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "xml-rs 0.1.20 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "xml-rs 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "gleam"
version = "0.0.1"
-source = "git+https://github.com/servo/gleam#70c5f2ea3ef3602277b7c380c24b504e42338056"
+source = "git+https://github.com/servo/gleam#f2edabf2ef0474bb270b107e5e68c2727c4a422d"
dependencies = [
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "glutin"
-version = "0.0.7"
-source = "git+https://github.com/servo/glutin?branch=servo#0feab4842c5b229bfe88739d2c526d03c198fd33"
+version = "0.0.26"
+source = "git+https://github.com/servo/glutin?branch=servo#c1af76550f311e3da7a08d393b4ea9805cb61a7b"
dependencies = [
- "android_glue 0.0.1 (git+https://github.com/tomaka/android-rs-glue)",
- "cocoa 0.1.1 (git+https://github.com/servo/rust-cocoa)",
- "core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
- "core_graphics 0.1.0 (git+https://github.com/servo/rust-core-graphics)",
+ "android_glue 0.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gdi32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_cocoa 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_core_foundation 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "glutin_core_graphics 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"kernel32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "osmesa-sys 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"user32-sys 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"winapi 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "x11 0.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_cocoa"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "objc 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_core_foundation"
+version = "0.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "glutin_core_graphics"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "glutin_core_foundation 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "glx"
version = "0.0.1"
-source = "git+https://github.com/servo/rust-glx#f2103861d38076ef5e01a8c2f58df1e79ca12f41"
+source = "git+https://github.com/servo/rust-glx#60ac0aee2438eadb4b51ddc8eac6fc4b5ca8e447"
dependencies = [
"gl_common 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "gl_generator 0.0.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gl_generator 0.0.24 (registry+https://github.com/rust-lang/crates.io-index)",
"khronos_api 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "harfbuzz"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-harfbuzz#cc875777f820da0b85f39c2359d9609650b16600"
+source = "git+https://github.com/servo/rust-harfbuzz#33b6fd019fc04e46dd5fe15a5faf8efb1a9a0128"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "html5ever"
version = "0.0.0"
-source = "git+https://github.com/servo/html5ever#8bad1ca8e1e05a7972be80acc64efd729ffdc8a5"
+source = "git+https://github.com/servo/html5ever#74dc5f5a36451cfbe789488b20d51bef97c63898"
dependencies = [
"html5ever_macros 0.0.0 (git+https://github.com/servo/html5ever)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
- "phf 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_macros 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_macros 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "html5ever_macros"
version = "0.0.0"
-source = "git+https://github.com/servo/html5ever#8bad1ca8e1e05a7972be80acc64efd729ffdc8a5"
+source = "git+https://github.com/servo/html5ever#74dc5f5a36451cfbe789488b20d51bef97c63898"
dependencies = [
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "httparse"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "hyper"
-version = "0.3.0"
+version = "0.3.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "httparse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mime 0.0.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicase 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num_cpus 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "traitobject 0.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "typeable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicase 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "io_surface"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-io-surface#f380a03a9b0e0316866d4320d46a78dda87efbec"
+source = "git+https://github.com/servo/rust-io-surface#ab0ebd4ea6dd953c1581d9486b9e80ecf3c7577d"
dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "js"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-mozjs#402b7b2db8816ffeccacfa9a8d316f4487e96ba0"
+source = "git+https://github.com/servo/rust-mozjs#30a1ad31d1ee47a8e4e1ef582e793badfb405fa0"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"mozjs_sys 0.0.0 (git+https://github.com/servo/mozjs)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -494,7 +573,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "layers"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-layers#df3a14d00260c8ab506565972555931444361ff8"
+source = "git+https://github.com/servo/rust-layers#018259e838c3842032010829feeaba316e577376"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
@@ -504,8 +583,10 @@ dependencies = [
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"glx 0.0.1 (git+https://github.com/servo/rust-glx)",
"io_surface 0.1.0 (git+https://github.com/servo/rust-io-surface)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "skia 0.0.20130412 (git+https://github.com/servo/skia?branch=upstream-2014-06-16)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "skia 0.0.20130412 (git+https://github.com/servo/skia)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
@@ -516,26 +597,26 @@ dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
- "clock_ticks 0.0.4 (git+https://github.com/tomaka/clock_ticks)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "clock_ticks 0.0.5 (git+https://github.com/tomaka/clock_ticks)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"layout_traits 0.0.1",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "profile 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "profile_traits 0.0.1",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"script_traits 0.0.1",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -546,34 +627,42 @@ dependencies = [
"gfx 0.0.1",
"msg 0.0.1",
"net_traits 0.0.1",
- "profile 0.0.1",
+ "profile_traits 0.0.1",
"script_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
name = "lazy_static"
-version = "0.1.8"
-source = "git+https://github.com/Kimundi/lazy-static.rs#56b4be4141d3c58273cf5ee1d2e956e2f22248b9"
+version = "0.1.10"
+source = "git+https://github.com/Kimundi/lazy-static.rs#1366fce0e706ee8530c88b80039946c4c7e1f993"
+
+[[package]]
+name = "lazy_static"
+version = "0.1.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libc"
-version = "0.1.2"
+version = "0.1.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "libressl-pnacl-sys"
-version = "2.1.4"
+version = "2.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "pnacl-build-helper 1.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pnacl-build-helper 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "log"
-version = "0.2.5"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "mac"
@@ -585,7 +674,7 @@ name = "malloc_buf"
version = "0.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -598,21 +687,21 @@ name = "mime"
version = "0.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "miniz-sys"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "mod_path"
-version = "0.1.4"
+version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -628,11 +717,11 @@ dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"core_foundation 0.1.0 (git+https://github.com/servo/rust-core-foundation)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"io_surface 0.1.0 (git+https://github.com/servo/rust-io-surface)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
"style 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
@@ -641,19 +730,18 @@ dependencies = [
name = "net"
version = "0.0.1"
dependencies = [
- "cookie 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "flate2 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cookie 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "flate2 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"net_traits 0.0.1",
- "openssl 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "profile 0.0.1",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex_macros 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex_macros 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -662,90 +750,119 @@ name = "net_traits"
version = "0.0.1"
dependencies = [
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "profile 0.0.1",
"stb_image 0.1.0 (git+https://github.com/servo/rust-stb-image)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "num"
+version = "0.1.24"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "num_cpus"
+version = "0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "objc"
-version = "0.1.3"
+version = "0.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"malloc_buf 0.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "offscreen_gl_context"
version = "0.0.1"
-source = "git+https://github.com/ecoal95/rust-offscreen-rendering-context#9547d416019b15e0e59dc5176f5b1a14e14b44ca"
+source = "git+https://github.com/servo/rust-offscreen-rendering-context#9ef802439467c287178afe46c5dd7adec13993eb"
dependencies = [
"cgl 0.0.1 (git+https://github.com/servo/rust-cgl)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gleam 0.0.1 (git+https://github.com/servo/gleam)",
"glx 0.0.1 (git+https://github.com/servo/rust-glx)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"xlib 0.1.0 (git+https://github.com/servo/rust-xlib)",
]
[[package]]
name = "openssl"
-version = "0.5.1"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "openssl-sys 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "openssl-sys 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "openssl-sys"
-version = "0.5.1"
+version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "libressl-pnacl-sys 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libressl-pnacl-sys 2.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "osmesa-sys"
+version = "0.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "gl 0.0.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "debug-builders 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_generator"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_macros"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "phf_generator 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_shared 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_generator 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_shared 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "phf_shared"
-version = "0.6.12"
+version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pkg-config"
-version = "0.3.0"
+version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -757,60 +874,76 @@ dependencies = [
[[package]]
name = "pnacl-build-helper"
-version = "1.3.2"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "tempdir 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "png"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-png#1d9c59c97598014860077f372443ae98b35ff4d9"
+source = "git+https://github.com/servo/rust-png#811e4d339441dd34fb087fc895e1619ba882933f"
dependencies = [
- "gcc 0.3.1 (git+https://github.com/alexcrichton/gcc-rs)",
+ "gcc 0.3.4 (git+https://github.com/alexcrichton/gcc-rs)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"png-sys 1.6.16 (git+https://github.com/servo/rust-png)",
]
[[package]]
name = "png-sys"
version = "1.6.16"
-source = "git+https://github.com/servo/rust-png#1d9c59c97598014860077f372443ae98b35ff4d9"
+source = "git+https://github.com/servo/rust-png#811e4d339441dd34fb087fc895e1619ba882933f"
[[package]]
name = "profile"
version = "0.0.1"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "profile_traits 0.0.1",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
"task_info 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
[[package]]
+name = "profile_traits"
+version = "0.0.1"
+dependencies = [
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "quicksort"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "rand"
-version = "0.1.4"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "regex"
-version = "0.1.18"
+version = "0.1.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "regex_macros"
-version = "0.1.11"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "rustc-serialize"
-version = "0.3.4"
+version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -819,30 +952,32 @@ version = "0.0.1"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"devtools_traits 0.0.1",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"gfx 0.0.1",
"html5ever 0.0.0 (git+https://github.com/servo/html5ever)",
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
"js 0.1.0 (git+https://github.com/servo/rust-mozjs)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
- "profile 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "profile_traits 0.0.1",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
"style 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "unicase 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
- "uuid 0.1.11 (git+https://github.com/rust-lang/uuid)",
+ "uuid 0.1.16 (git+https://github.com/rust-lang/uuid)",
"webdriver_traits 0.0.1",
]
@@ -852,10 +987,10 @@ version = "0.0.1"
dependencies = [
"devtools_traits 0.0.1",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_traits 0.0.1",
]
@@ -863,11 +998,13 @@ dependencies = [
[[package]]
name = "selectors"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-selectors#0d7d846090c21d71ebb1bc17921806933a38f52b"
+source = "git+https://github.com/servo/rust-selectors#1fda09bf0c59acfcb697f71b38dad22108b3d27a"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quicksort 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "smallvec 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
]
@@ -887,9 +1024,10 @@ dependencies = [
"net_traits 0.0.1",
"png 0.1.0 (git+https://github.com/servo/rust-png)",
"profile 0.0.1",
+ "profile_traits 0.0.1",
"script 0.0.1",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
"webdriver_server 0.0.1",
]
@@ -897,35 +1035,43 @@ dependencies = [
[[package]]
name = "skia"
version = "0.0.20130412"
-source = "git+https://github.com/servo/skia?branch=upstream-2014-06-16#db5b5393c83da9ff5b8fb2076481e98fb2b659f2"
+source = "git+https://github.com/servo/skia#d60e6753b2b23b3b4ff787b505da56cfad0335c9"
dependencies = [
"expat-sys 2.1.0 (git+https://github.com/servo/libexpat)",
"freetype-sys 2.4.11 (git+https://github.com/servo/libfreetype2)",
]
[[package]]
+name = "smallvec"
+version = "0.1.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "stb_image"
version = "0.1.0"
-source = "git+https://github.com/servo/rust-stb-image#b683cc9e7ba52a1bb65361347da0df1bc9c5e854"
+source = "git+https://github.com/servo/rust-stb-image#f6c411b381322609a321b7fb5f948b2365973604"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "string_cache"
version = "0.0.0"
-source = "git+https://github.com/servo/string-cache#124cb555651bd7838c5c6dc4788bc4f5350947a9"
+source = "git+https://github.com/servo/string-cache#385c4ac197742e355631209be3613c8a9c7594b6"
dependencies = [
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
- "phf 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "phf_macros 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "phf 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "phf_macros 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
]
[[package]]
name = "string_cache_plugin"
version = "0.0.0"
-source = "git+https://github.com/servo/string-cache#124cb555651bd7838c5c6dc4788bc4f5350947a9"
+source = "git+https://github.com/servo/string-cache#385c4ac197742e355631209be3613c8a9c7594b6"
dependencies = [
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
"mac 0.0.2 (git+https://github.com/reem/rust-mac)",
]
@@ -934,19 +1080,18 @@ name = "style"
version = "0.0.1"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
- "encoding 0.2.25 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "mod_path 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "mod_path 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
]
@@ -955,36 +1100,49 @@ name = "task_info"
version = "0.0.1"
[[package]]
+name = "tempdir"
+version = "0.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "tenacious"
version = "0.0.1"
source = "git+https://github.com/Manishearth/rust-tenacious.git#d61782e70005a9f0cdf66f366d4ec88fc563ea1e"
[[package]]
-name = "text_writer"
-version = "0.1.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
name = "time"
-version = "0.1.19"
+version = "0.1.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "gcc 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "gcc 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
+name = "traitobject"
+version = "0.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
+name = "typeable"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
+[[package]]
name = "unicase"
-version = "0.0.5"
+version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "url"
-version = "0.2.23"
+version = "0.2.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1001,49 +1159,52 @@ version = "0.0.1"
dependencies = [
"azure 0.1.0 (git+https://github.com/servo/rust-azure)",
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "cssparser 0.2.0 (git+https://github.com/servo/rust-cssparser)",
+ "cssparser 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"geom 0.1.0 (git+https://github.com/servo/rust-geom)",
"layers 0.1.0 (git+https://github.com/servo/rust-layers)",
- "lazy_static 0.1.8 (git+https://github.com/Kimundi/lazy-static.rs)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 0.1.10 (git+https://github.com/Kimundi/lazy-static.rs)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num_cpus 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.1.0 (git+https://github.com/servo/rust-selectors)",
+ "smallvec 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.0.0 (git+https://github.com/servo/string-cache)",
"string_cache_plugin 0.0.0 (git+https://github.com/servo/string-cache)",
- "text_writer 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "time 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)",
+ "time 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "uuid"
-version = "0.1.11"
-source = "git+https://github.com/rust-lang/uuid#c7862508f84b114d22bb68ec01202eafc50a81b2"
+version = "0.1.16"
+source = "git+https://github.com/rust-lang/uuid#7c767220c41746d346c8195e31ddf090ac6568e7"
dependencies = [
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "uuid"
-version = "0.1.11"
+version = "0.1.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "rand 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rand 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "webdriver"
-version = "0.0.1"
-source = "git+https://github.com/jgraham/webdriver-rust.git#fa625e3cf8fdb39b503c1cc902506df3a1d1c9de"
+version = "0.1.0"
+source = "git+https://github.com/jgraham/webdriver-rust.git#66547888f47bae7e938a92af4586276479343216"
dependencies = [
- "hyper 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "uuid 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.30 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "uuid 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1051,11 +1212,11 @@ name = "webdriver_server"
version = "0.0.1"
dependencies = [
"msg 0.0.1",
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 0.2.23 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 0.2.31 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
- "uuid 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
- "webdriver 0.0.1 (git+https://github.com/jgraham/webdriver-rust.git)",
+ "uuid 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
+ "webdriver 0.1.0 (git+https://github.com/jgraham/webdriver-rust.git)",
"webdriver_traits 0.0.1",
]
@@ -1063,7 +1224,7 @@ dependencies = [
name = "webdriver_traits"
version = "0.0.1"
dependencies = [
- "rustc-serialize 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
+ "rustc-serialize 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1071,7 +1232,15 @@ name = "winapi"
version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "x11"
+version = "0.0.32"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1080,12 +1249,12 @@ version = "0.1.0"
source = "git+https://github.com/servo/rust-xlib#1a0f3d48fbebf96e2d1bf83ac71309b27f49e0c7"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "libc 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "xml-rs"
-version = "0.1.20"
+version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bitflags 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/ports/gonk/Cargo.toml b/ports/gonk/Cargo.toml
index 5ed55793d43..cf681e7edf7 100644
--- a/ports/gonk/Cargo.toml
+++ b/ports/gonk/Cargo.toml
@@ -57,4 +57,5 @@ git = "https://github.com/servo/gleam"
[dependencies]
url = "0.2.16"
time = "0.1.17"
+errno = "*"
libc = "*"
diff --git a/ports/gonk/src/input.rs b/ports/gonk/src/input.rs
index 54e54b87784..bac48d43162 100644
--- a/ports/gonk/src/input.rs
+++ b/ports/gonk/src/input.rs
@@ -8,9 +8,7 @@ use std::path::Path;
use std::mem::size_of;
use std::mem::transmute;
use std::mem::zeroed;
-use std::os::errno;
-use std::os::unix::AsRawFd;
-use std::num::Float;
+use std::os::unix::io::AsRawFd;
use std::fs::File;
use std::thread;
use std::sync::mpsc::Sender;
@@ -18,6 +16,7 @@ use std::io::Read;
use geom::point::TypedPoint2D;
+use errno::errno;
use libc::c_int;
use libc::c_long;
use libc::time_t;
@@ -135,7 +134,7 @@ fn read_input_device(device_path: &Path,
let mut last_dist: f32 = 0f32;
let mut touch_count: i32 = 0;
- let mut current_slot: uint = 0;
+ let mut current_slot: usize = 0;
// XXX: Need to use the real dimensions of the screen
let screen_dist = dist(0, 480, 854, 0);
loop {
@@ -154,7 +153,7 @@ fn read_input_device(device_path: &Path,
let count = read / size_of::<linux_input_event>();
let events: *mut linux_input_event = unsafe { transmute(buf.as_mut_ptr()) };
let mut tracking_updated = false;
- for idx in 0..(count as int) {
+ for idx in 0..(count as isize) {
let event: &linux_input_event = unsafe { transmute(events.offset(idx)) };
match (event.evt_type, event.code) {
(EV_SYN, EV_REPORT) => {
@@ -204,8 +203,8 @@ fn read_input_device(device_path: &Path,
},
(EV_SYN, _) => println!("Unknown SYN code {}", event.code),
(EV_ABS, ABS_MT_SLOT) => {
- if (event.value as uint) < slots.len() {
- current_slot = event.value as uint;
+ if (event.value as usize) < slots.len() {
+ current_slot = event.value as usize;
} else {
println!("Invalid slot! {}", event.value);
}
diff --git a/ports/gonk/src/lib.rs b/ports/gonk/src/lib.rs
index 6d4a2d517bb..d7a85e4dde2 100644
--- a/ports/gonk/src/lib.rs
+++ b/ports/gonk/src/lib.rs
@@ -4,8 +4,7 @@
#![feature(thread_local)]
#![feature(box_syntax)]
-#![feature(int_uint)]
-#![feature(path, rustc_private)]
+#![feature(rustc_private)]
// For FFI
#![allow(non_snake_case, dead_code)]
diff --git a/ports/gonk/src/main.rs b/ports/gonk/src/main.rs
index 5a6af9db9ef..335fdd361b6 100644
--- a/ports/gonk/src/main.rs
+++ b/ports/gonk/src/main.rs
@@ -6,8 +6,7 @@
#![deny(unused_variables)]
#![feature(box_syntax)]
-#![feature(int_uint)]
-#![feature(core, os, path, io, std_misc)]
+#![feature(convert)]
// For FFI
#![allow(non_snake_case, dead_code)]
@@ -27,6 +26,7 @@
extern crate servo;
extern crate time;
extern crate util;
+extern crate errno;
extern crate compositing;
extern crate script_traits;
diff --git a/ports/gonk/src/window.rs b/ports/gonk/src/window.rs
index 6c3258972a6..621804640bc 100644
--- a/ports/gonk/src/window.rs
+++ b/ports/gonk/src/window.rs
@@ -60,7 +60,7 @@ pub struct native_handle {
pub struct ANativeBase {
magic: u32,
version: u32,
- reserved: [int; 4],
+ reserved: [isize; 4],
incRef: extern fn(*mut ANativeBase),
decRef: extern fn(*mut ANativeBase),
}
@@ -86,7 +86,7 @@ pub struct ANativeWindow {
maxSwapInterval: c_int,
xdpi: f32,
ydpi: f32,
- oem: [int; 4],
+ oem: [isize; 4],
setSwapInterval: extern fn(*mut ANativeWindow, c_int) -> c_int,
//dequeueBuffer_DEPRECATED: extern fn(*mut ANativeWindow, *mut *mut ANativeWindowBuffer) -> c_int,
//lockBuffer_DEPRECATED: extern fn(*mut ANativeWindow, *mut ANativeWindowBuffer) -> c_int,
@@ -342,7 +342,7 @@ extern fn dequeueBuffer(base: *mut ANativeWindow, buf: *mut *mut ANativeWindowBu
unsafe {
let window: &mut GonkNativeWindow = transmute(base);
for idx in 0..window.bufs.len() {
- if idx == window.last_idx as uint {
+ if idx == window.last_idx as usize {
continue;
}
match window.bufs[idx] {
@@ -695,7 +695,7 @@ impl Window {
egl::EGL_ALPHA_SIZE, 0,
egl::EGL_NONE, 0];
- let mut config: EGLConfig = unsafe { transmute(0i) };
+ let mut config: EGLConfig = unsafe { transmute(0isize) };
let mut num_config: EGLint = 0;
let ret2 = unsafe {
diff --git a/rust-snapshot-hash b/rust-snapshot-hash
index edeea6b61f2..377c6efc0b2 100644
--- a/rust-snapshot-hash
+++ b/rust-snapshot-hash
@@ -1 +1 @@
-d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev
+551a74dddd84cf01440ee84148ebd18bc68bd7c8/rustc-1.1.0-dev
diff --git a/support/android-rs-glue b/support/android-rs-glue
-Subproject 34f588aace4d05ce42f4ca605d5470df8fdd236
+Subproject 10116eb3af332f9565e0fb803e600511bb585d6
diff --git a/tests/reftest.rs b/tests/reftest.rs
index 4ce8a96cdcb..43f187cb684 100644
--- a/tests/reftest.rs
+++ b/tests/reftest.rs
@@ -7,7 +7,7 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
-#![feature(collections, exit_status, fs_walk, io, old_io, path, path_ext, std_misc, test)]
+#![feature(collections, exit_status, fs_walk, io, path, path_ext, slice_patterns, std_misc, test)]
#[macro_use] extern crate bitflags;
extern crate png;
extern crate test;
@@ -16,8 +16,7 @@ extern crate url;
use std::env;
use std::ffi::OsStr;
use std::fs::{PathExt, File, walk_dir};
-use std::io::Read;
-use std::old_io::{Reader, IoResult};
+use std::io::{self, Read, Result};
use std::path::{Path, PathBuf};
use std::process::{Command, Stdio};
use std::thunk::Thunk;
@@ -72,7 +71,7 @@ fn main() {
let maybe_extension = file.extension();
match maybe_extension {
Some(extension) => {
- if extension == OsStr::from_str("list") && file.is_file() {
+ if extension == OsStr::new("list") && file.is_file() {
let mut tests = parse_lists(&file, servo_args, render_mode, all_tests.len());
println!("\t{} [{} tests]", file.display(), tests.len());
all_tests.append(&mut tests);
@@ -102,7 +101,7 @@ fn main() {
}
fn run(test_opts: TestOpts, all_tests: Vec<TestDescAndFn>,
- servo_args: Vec<String>) -> IoResult<bool> {
+ servo_args: Vec<String>) -> io::Result<bool> {
// Verify that we're passing in valid servo arguments. Otherwise, servo
// will exit before we've run any tests, and it will appear to us as if
// all the tests are failing.
@@ -238,7 +237,7 @@ fn make_test(reftest: Reftest) -> TestDescAndFn {
ignore: false,
should_panic: ShouldPanic::No,
},
- testfn: DynTestFn(Thunk::new(move || {
+ testfn: DynTestFn(Box::new(move || {
check_reftest(reftest);
})),
}
diff --git a/tests/unit/net/cookie.rs b/tests/unit/net/cookie.rs
index afdbd05334b..edf93ba2e05 100644
--- a/tests/unit/net/cookie.rs
+++ b/tests/unit/net/cookie.rs
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-extern crate "cookie" as cookie_rs;
+extern crate cookie as cookie_rs;
use net::cookie::Cookie;
use net::cookie_storage::CookieStorage;
diff --git a/tests/unit/net/lib.rs b/tests/unit/net/lib.rs
index 959133da74f..29d04d2ee65 100644
--- a/tests/unit/net/lib.rs
+++ b/tests/unit/net/lib.rs
@@ -2,7 +2,7 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#![cfg_attr(test, feature(net, alloc, path, io))]
+#![cfg_attr(test, feature(alloc))]
extern crate net;
extern crate net_traits;
diff --git a/tests/unit/net/mime_classifier.rs b/tests/unit/net/mime_classifier.rs
index 8bba57290c5..c44c3c1103a 100644
--- a/tests/unit/net/mime_classifier.rs
+++ b/tests/unit/net/mime_classifier.rs
@@ -23,7 +23,7 @@ fn read_file(path: &path::Path) -> io::Result<Vec<u8>> {
fn test_sniff_mp4_matcher() {
let matcher = Mp4Matcher;
- let p = PathBuf::new("parsable_mime/video/mp4/test.mp4");
+ let p = PathBuf::from("parsable_mime/video/mp4/test.mp4");
let read_result = read_file(&p);
match read_result {
@@ -43,7 +43,7 @@ fn test_sniff_full(filename_orig: &path::Path,type_string: &str,subtype_string:
let current_working_directory = env::current_dir().unwrap();
println!("The current directory is {}", current_working_directory.display());
- let mut filename = PathBuf::new("parsable_mime/");
+ let mut filename = PathBuf::from("parsable_mime/");
filename.push(filename_orig);
let classifier = MIMEClassifier::new();
@@ -73,7 +73,7 @@ fn test_sniff_full(filename_orig: &path::Path,type_string: &str,subtype_string:
#[cfg(test)]
fn test_sniff_classification(file: &str,type_string: &str,subtype_string: &str,
supplied_type: Option<(&'static str,&'static str)>){
- let mut x = PathBuf::new("./");
+ let mut x = PathBuf::from("./");
x.push(type_string);
x.push(subtype_string);
x.push(file);
@@ -181,19 +181,19 @@ fn test_sniff_vsn_ms_fontobject() {
#[test]
#[should_panic]
fn test_sniff_true_type() {
- test_sniff_full(&PathBuf::new("unknown/true_type.ttf"), "(TrueType)", "", None);
+ test_sniff_full(&PathBuf::from("unknown/true_type.ttf"), "(TrueType)", "", None);
}
#[test]
#[should_panic]
fn test_sniff_open_type() {
- test_sniff_full(&PathBuf::new("unknown/open_type"), "(OpenType)", "", None);
+ test_sniff_full(&PathBuf::from("unknown/open_type"), "(OpenType)", "", None);
}
#[test]
#[should_panic]
fn test_sniff_true_type_collection() {
- test_sniff_full(&PathBuf::new("unknown/true_type_collection.ttc"), "(TrueType Collection)", "", None);
+ test_sniff_full(&PathBuf::from("unknown/true_type_collection.ttc"), "(TrueType Collection)", "", None);
}
#[test]
@@ -435,10 +435,10 @@ fn test_sniff_utf_8_bom() {
#[test]
fn test_sniff_rss_feed() {
- test_sniff_full(&PathBuf::new("text/xml/feed.rss"), "application", "rss+xml", Some(("text", "html")));
+ test_sniff_full(&PathBuf::from("text/xml/feed.rss"), "application", "rss+xml", Some(("text", "html")));
}
#[test]
fn test_sniff_atom_feed() {
- test_sniff_full(&PathBuf::new("text/xml/feed.atom"), "application", "atom+xml", Some(("text", "html")));
+ test_sniff_full(&PathBuf::from("text/xml/feed.atom"), "application", "atom+xml", Some(("text", "html")));
}
diff --git a/tests/unit/net/resource_task.rs b/tests/unit/net/resource_task.rs
index d9ef7cde4d3..986c11b341e 100644
--- a/tests/unit/net/resource_task.rs
+++ b/tests/unit/net/resource_task.rs
@@ -167,7 +167,7 @@ fn test_replace_hosts() {
//Start the TCP server
let listener = TcpListener::bind("127.0.0.1:0").unwrap();
- let port = listener.socket_addr().unwrap().port();
+ let port = listener.local_addr().unwrap().port();
//Start the resource task and make a request to our TCP server
let resource_task = new_resource_task(None);
diff --git a/tests/unit/style/Cargo.toml b/tests/unit/style/Cargo.toml
index 64e34f2bd03..8f36c8890b5 100644
--- a/tests/unit/style/Cargo.toml
+++ b/tests/unit/style/Cargo.toml
@@ -26,8 +26,6 @@ git = "https://github.com/servo/rust-geom"
[dependencies.selectors]
git = "https://github.com/servo/rust-selectors"
-[dependencies.cssparser]
-git = "https://github.com/servo/rust-cssparser"
-
[dependencies]
url = "*"
+cssparser = "0.3.1"
diff --git a/tests/unit/util/vec.rs b/tests/unit/util/vec.rs
index 815e0500918..d8f259aac19 100644
--- a/tests/unit/util/vec.rs
+++ b/tests/unit/util/vec.rs
@@ -35,12 +35,12 @@ fn test_match<T: PartialEq>(b: &T, a: Option<&T>) -> bool {
#[test]
fn should_find_all_elements() {
- let arr_odd = [1u32, 2, 4, 6, 7, 8, 9];
- let arr_even = [1u32, 2, 5, 6, 7, 8, 9, 42];
- let arr_double = [1u32, 1, 2, 2, 6, 8, 22];
- let arr_one = [234986325u32];
- let arr_two = [3044u32, 8393];
- let arr_three = [12u32, 23, 34];
+ let arr_odd = [1_i32, 2, 4, 6, 7, 8, 9];
+ let arr_even = [1_i32, 2, 5, 6, 7, 8, 9, 42];
+ let arr_double = [1_i32, 1, 2, 2, 6, 8, 22];
+ let arr_one = [234986325_i32];
+ let arr_two = [3044_i32, 8393];
+ let arr_three = [12_i32, 23, 34];
test_find_all_elems(&arr_odd);
test_find_all_elems(&arr_even);
@@ -52,12 +52,12 @@ fn should_find_all_elements() {
#[test]
fn should_not_find_missing_elements() {
- let arr_odd = [1u32, 2, 4, 6, 7, 8, 9];
- let arr_even = [1u32, 2, 5, 6, 7, 8, 9, 42];
- let arr_double = [1u32, 1, 2, 2, 6, 8, 22];
- let arr_one = [234986325u32];
- let arr_two = [3044u32, 8393];
- let arr_three = [12u32, 23, 34];
+ let arr_odd = [1_i32, 2, 4, 6, 7, 8, 9];
+ let arr_even = [1_i32, 2, 5, 6, 7, 8, 9, 42];
+ let arr_double = [1_i32, 1, 2, 2, 6, 8, 22];
+ let arr_one = [234986325_i32];
+ let arr_two = [3044_i32, 8393];
+ let arr_three = [12_i32, 23, 34];
test_miss_all_elems(&arr_odd, &[-22, 0, 3, 5, 34938, 10, 11, 12]);
test_miss_all_elems(&arr_even, &[-1, 0, 3, 34938, 10, 11, 12]);
diff --git a/tests/wpt/metadata/encoding/api-replacement-encodings.html.ini b/tests/wpt/metadata/encoding/api-replacement-encodings.html.ini
deleted file mode 100644
index 99468e76336..00000000000
--- a/tests/wpt/metadata/encoding/api-replacement-encodings.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[api-replacement-encodings.html]
- type: testharness
- [Label for "replacement" should be rejected by API: hz-gb-2312]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/encoding/textdecoder-labels.html.ini b/tests/wpt/metadata/encoding/textdecoder-labels.html.ini
deleted file mode 100644
index 324cc276a86..00000000000
--- a/tests/wpt/metadata/encoding/textdecoder-labels.html.ini
+++ /dev/null
@@ -1,530 +0,0 @@
-[textdecoder-labels.html]
- type: testharness
- ["chinese" => "gbk"]
- expected: FAIL
-
- [" chinese" => "gbk"]
- expected: FAIL
-
- ["chinese " => "gbk"]
- expected: FAIL
-
- [" chinese " => "gbk"]
- expected: FAIL
-
- ["\\tchinese" => "gbk"]
- expected: FAIL
-
- ["chinese\\t" => "gbk"]
- expected: FAIL
-
- ["\\tchinese\\t" => "gbk"]
- expected: FAIL
-
- ["\\nchinese" => "gbk"]
- expected: FAIL
-
- ["chinese\\n" => "gbk"]
- expected: FAIL
-
- ["\\nchinese\\n" => "gbk"]
- expected: FAIL
-
- ["\\fchinese" => "gbk"]
- expected: FAIL
-
- ["chinese\\f" => "gbk"]
- expected: FAIL
-
- ["\\fchinese\\f" => "gbk"]
- expected: FAIL
-
- ["\\rchinese" => "gbk"]
- expected: FAIL
-
- ["chinese\\r" => "gbk"]
- expected: FAIL
-
- ["\\rchinese\\r" => "gbk"]
- expected: FAIL
-
- ["csgb2312" => "gbk"]
- expected: FAIL
-
- [" csgb2312" => "gbk"]
- expected: FAIL
-
- ["csgb2312 " => "gbk"]
- expected: FAIL
-
- [" csgb2312 " => "gbk"]
- expected: FAIL
-
- ["\\tcsgb2312" => "gbk"]
- expected: FAIL
-
- ["csgb2312\\t" => "gbk"]
- expected: FAIL
-
- ["\\tcsgb2312\\t" => "gbk"]
- expected: FAIL
-
- ["\\ncsgb2312" => "gbk"]
- expected: FAIL
-
- ["csgb2312\\n" => "gbk"]
- expected: FAIL
-
- ["\\ncsgb2312\\n" => "gbk"]
- expected: FAIL
-
- ["\\fcsgb2312" => "gbk"]
- expected: FAIL
-
- ["csgb2312\\f" => "gbk"]
- expected: FAIL
-
- ["\\fcsgb2312\\f" => "gbk"]
- expected: FAIL
-
- ["\\rcsgb2312" => "gbk"]
- expected: FAIL
-
- ["csgb2312\\r" => "gbk"]
- expected: FAIL
-
- ["\\rcsgb2312\\r" => "gbk"]
- expected: FAIL
-
- ["csiso58gb231280" => "gbk"]
- expected: FAIL
-
- [" csiso58gb231280" => "gbk"]
- expected: FAIL
-
- ["csiso58gb231280 " => "gbk"]
- expected: FAIL
-
- [" csiso58gb231280 " => "gbk"]
- expected: FAIL
-
- ["\\tcsiso58gb231280" => "gbk"]
- expected: FAIL
-
- ["csiso58gb231280\\t" => "gbk"]
- expected: FAIL
-
- ["\\tcsiso58gb231280\\t" => "gbk"]
- expected: FAIL
-
- ["\\ncsiso58gb231280" => "gbk"]
- expected: FAIL
-
- ["csiso58gb231280\\n" => "gbk"]
- expected: FAIL
-
- ["\\ncsiso58gb231280\\n" => "gbk"]
- expected: FAIL
-
- ["\\fcsiso58gb231280" => "gbk"]
- expected: FAIL
-
- ["csiso58gb231280\\f" => "gbk"]
- expected: FAIL
-
- ["\\fcsiso58gb231280\\f" => "gbk"]
- expected: FAIL
-
- ["\\rcsiso58gb231280" => "gbk"]
- expected: FAIL
-
- ["csiso58gb231280\\r" => "gbk"]
- expected: FAIL
-
- ["\\rcsiso58gb231280\\r" => "gbk"]
- expected: FAIL
-
- ["gb2312" => "gbk"]
- expected: FAIL
-
- [" gb2312" => "gbk"]
- expected: FAIL
-
- ["gb2312 " => "gbk"]
- expected: FAIL
-
- [" gb2312 " => "gbk"]
- expected: FAIL
-
- ["\\tgb2312" => "gbk"]
- expected: FAIL
-
- ["gb2312\\t" => "gbk"]
- expected: FAIL
-
- ["\\tgb2312\\t" => "gbk"]
- expected: FAIL
-
- ["\\ngb2312" => "gbk"]
- expected: FAIL
-
- ["gb2312\\n" => "gbk"]
- expected: FAIL
-
- ["\\ngb2312\\n" => "gbk"]
- expected: FAIL
-
- ["\\fgb2312" => "gbk"]
- expected: FAIL
-
- ["gb2312\\f" => "gbk"]
- expected: FAIL
-
- ["\\fgb2312\\f" => "gbk"]
- expected: FAIL
-
- ["\\rgb2312" => "gbk"]
- expected: FAIL
-
- ["gb2312\\r" => "gbk"]
- expected: FAIL
-
- ["\\rgb2312\\r" => "gbk"]
- expected: FAIL
-
- ["gb_2312" => "gbk"]
- expected: FAIL
-
- [" gb_2312" => "gbk"]
- expected: FAIL
-
- ["gb_2312 " => "gbk"]
- expected: FAIL
-
- [" gb_2312 " => "gbk"]
- expected: FAIL
-
- ["\\tgb_2312" => "gbk"]
- expected: FAIL
-
- ["gb_2312\\t" => "gbk"]
- expected: FAIL
-
- ["\\tgb_2312\\t" => "gbk"]
- expected: FAIL
-
- ["\\ngb_2312" => "gbk"]
- expected: FAIL
-
- ["gb_2312\\n" => "gbk"]
- expected: FAIL
-
- ["\\ngb_2312\\n" => "gbk"]
- expected: FAIL
-
- ["\\fgb_2312" => "gbk"]
- expected: FAIL
-
- ["gb_2312\\f" => "gbk"]
- expected: FAIL
-
- ["\\fgb_2312\\f" => "gbk"]
- expected: FAIL
-
- ["\\rgb_2312" => "gbk"]
- expected: FAIL
-
- ["gb_2312\\r" => "gbk"]
- expected: FAIL
-
- ["\\rgb_2312\\r" => "gbk"]
- expected: FAIL
-
- ["gb_2312-80" => "gbk"]
- expected: FAIL
-
- [" gb_2312-80" => "gbk"]
- expected: FAIL
-
- ["gb_2312-80 " => "gbk"]
- expected: FAIL
-
- [" gb_2312-80 " => "gbk"]
- expected: FAIL
-
- ["\\tgb_2312-80" => "gbk"]
- expected: FAIL
-
- ["gb_2312-80\\t" => "gbk"]
- expected: FAIL
-
- ["\\tgb_2312-80\\t" => "gbk"]
- expected: FAIL
-
- ["\\ngb_2312-80" => "gbk"]
- expected: FAIL
-
- ["gb_2312-80\\n" => "gbk"]
- expected: FAIL
-
- ["\\ngb_2312-80\\n" => "gbk"]
- expected: FAIL
-
- ["\\fgb_2312-80" => "gbk"]
- expected: FAIL
-
- ["gb_2312-80\\f" => "gbk"]
- expected: FAIL
-
- ["\\fgb_2312-80\\f" => "gbk"]
- expected: FAIL
-
- ["\\rgb_2312-80" => "gbk"]
- expected: FAIL
-
- ["gb_2312-80\\r" => "gbk"]
- expected: FAIL
-
- ["\\rgb_2312-80\\r" => "gbk"]
- expected: FAIL
-
- ["gbk" => "gbk"]
- expected: FAIL
-
- [" gbk" => "gbk"]
- expected: FAIL
-
- ["gbk " => "gbk"]
- expected: FAIL
-
- [" gbk " => "gbk"]
- expected: FAIL
-
- ["\\tgbk" => "gbk"]
- expected: FAIL
-
- ["gbk\\t" => "gbk"]
- expected: FAIL
-
- ["\\tgbk\\t" => "gbk"]
- expected: FAIL
-
- ["\\ngbk" => "gbk"]
- expected: FAIL
-
- ["gbk\\n" => "gbk"]
- expected: FAIL
-
- ["\\ngbk\\n" => "gbk"]
- expected: FAIL
-
- ["\\fgbk" => "gbk"]
- expected: FAIL
-
- ["gbk\\f" => "gbk"]
- expected: FAIL
-
- ["\\fgbk\\f" => "gbk"]
- expected: FAIL
-
- ["\\rgbk" => "gbk"]
- expected: FAIL
-
- ["gbk\\r" => "gbk"]
- expected: FAIL
-
- ["\\rgbk\\r" => "gbk"]
- expected: FAIL
-
- ["iso-ir-58" => "gbk"]
- expected: FAIL
-
- [" iso-ir-58" => "gbk"]
- expected: FAIL
-
- ["iso-ir-58 " => "gbk"]
- expected: FAIL
-
- [" iso-ir-58 " => "gbk"]
- expected: FAIL
-
- ["\\tiso-ir-58" => "gbk"]
- expected: FAIL
-
- ["iso-ir-58\\t" => "gbk"]
- expected: FAIL
-
- ["\\tiso-ir-58\\t" => "gbk"]
- expected: FAIL
-
- ["\\niso-ir-58" => "gbk"]
- expected: FAIL
-
- ["iso-ir-58\\n" => "gbk"]
- expected: FAIL
-
- ["\\niso-ir-58\\n" => "gbk"]
- expected: FAIL
-
- ["\\fiso-ir-58" => "gbk"]
- expected: FAIL
-
- ["iso-ir-58\\f" => "gbk"]
- expected: FAIL
-
- ["\\fiso-ir-58\\f" => "gbk"]
- expected: FAIL
-
- ["\\riso-ir-58" => "gbk"]
- expected: FAIL
-
- ["iso-ir-58\\r" => "gbk"]
- expected: FAIL
-
- ["\\riso-ir-58\\r" => "gbk"]
- expected: FAIL
-
- ["x-gbk" => "gbk"]
- expected: FAIL
-
- [" x-gbk" => "gbk"]
- expected: FAIL
-
- ["x-gbk " => "gbk"]
- expected: FAIL
-
- [" x-gbk " => "gbk"]
- expected: FAIL
-
- ["\\tx-gbk" => "gbk"]
- expected: FAIL
-
- ["x-gbk\\t" => "gbk"]
- expected: FAIL
-
- ["\\tx-gbk\\t" => "gbk"]
- expected: FAIL
-
- ["\\nx-gbk" => "gbk"]
- expected: FAIL
-
- ["x-gbk\\n" => "gbk"]
- expected: FAIL
-
- ["\\nx-gbk\\n" => "gbk"]
- expected: FAIL
-
- ["\\fx-gbk" => "gbk"]
- expected: FAIL
-
- ["x-gbk\\f" => "gbk"]
- expected: FAIL
-
- ["\\fx-gbk\\f" => "gbk"]
- expected: FAIL
-
- ["\\rx-gbk" => "gbk"]
- expected: FAIL
-
- ["x-gbk\\r" => "gbk"]
- expected: FAIL
-
- ["\\rx-gbk\\r" => "gbk"]
- expected: FAIL
-
- ["utf-16" => "utf-16le"]
- expected: FAIL
-
- [" utf-16" => "utf-16le"]
- expected: FAIL
-
- ["utf-16 " => "utf-16le"]
- expected: FAIL
-
- [" utf-16 " => "utf-16le"]
- expected: FAIL
-
- ["\\tutf-16" => "utf-16le"]
- expected: FAIL
-
- ["utf-16\\t" => "utf-16le"]
- expected: FAIL
-
- ["\\tutf-16\\t" => "utf-16le"]
- expected: FAIL
-
- ["\\nutf-16" => "utf-16le"]
- expected: FAIL
-
- ["utf-16\\n" => "utf-16le"]
- expected: FAIL
-
- ["\\nutf-16\\n" => "utf-16le"]
- expected: FAIL
-
- ["\\futf-16" => "utf-16le"]
- expected: FAIL
-
- ["utf-16\\f" => "utf-16le"]
- expected: FAIL
-
- ["\\futf-16\\f" => "utf-16le"]
- expected: FAIL
-
- ["\\rutf-16" => "utf-16le"]
- expected: FAIL
-
- ["utf-16\\r" => "utf-16le"]
- expected: FAIL
-
- ["\\rutf-16\\r" => "utf-16le"]
- expected: FAIL
-
- ["utf-16le" => "utf-16le"]
- expected: FAIL
-
- [" utf-16le" => "utf-16le"]
- expected: FAIL
-
- ["utf-16le " => "utf-16le"]
- expected: FAIL
-
- [" utf-16le " => "utf-16le"]
- expected: FAIL
-
- ["\\tutf-16le" => "utf-16le"]
- expected: FAIL
-
- ["utf-16le\\t" => "utf-16le"]
- expected: FAIL
-
- ["\\tutf-16le\\t" => "utf-16le"]
- expected: FAIL
-
- ["\\nutf-16le" => "utf-16le"]
- expected: FAIL
-
- ["utf-16le\\n" => "utf-16le"]
- expected: FAIL
-
- ["\\nutf-16le\\n" => "utf-16le"]
- expected: FAIL
-
- ["\\futf-16le" => "utf-16le"]
- expected: FAIL
-
- ["utf-16le\\f" => "utf-16le"]
- expected: FAIL
-
- ["\\futf-16le\\f" => "utf-16le"]
- expected: FAIL
-
- ["\\rutf-16le" => "utf-16le"]
- expected: FAIL
-
- ["utf-16le\\r" => "utf-16le"]
- expected: FAIL
-
- ["\\rutf-16le\\r" => "utf-16le"]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/encoding/textencoder-constructor-non-utf.html.ini b/tests/wpt/metadata/encoding/textencoder-constructor-non-utf.html.ini
deleted file mode 100644
index d186734577b..00000000000
--- a/tests/wpt/metadata/encoding/textencoder-constructor-non-utf.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[textencoder-constructor-non-utf.html]
- type: testharness
- [Non-UTF encodings supported only for decode, not encode: gbk]
- expected: FAIL
-
- [UTF encodings are supported for encode and decode: utf-16le]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini
index c2b01ccff71..6dedfeadca1 100644
--- a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/update-the-source-set.html.ini
@@ -66,18 +66,6 @@
[<picture><span><source srcset="data:,b"></span><img src="data:,a" data-expect="data:,a"></picture>]
expected: FAIL
- [<picture><svg><source srcset="data:,b"></svg><img src="data:,a" data-expect="data:,a"></picture>]
- expected: FAIL
-
- [<picture><svg><source srcset="data:,b"><img src="data:,a" data-expect="data:,b"></svg></picture>]
- expected: FAIL
-
- [<picture><svg><font><source srcset="data:,b"></font></svg><font><img src="data:,a" data-expect="data:,a"></font></picture>]
- expected: FAIL
-
- [<picture><svg><!--<font face> tag breaks out of svg--><font face=""></font><source srcset="data:,b"></svg><img src="data:,a" data-expect="data:,b"></picture>]
- expected: FAIL
-
[<picture><img src="data:,a"><img src="data:,b" data-expect="data:,b"></picture>]
expected: FAIL
@@ -267,3 +255,15 @@
[<picture><source srcset="data:,b"><img data-expect="data:,b"></picture>]
expected: FAIL
+ [<picture><svg><source srcset="data:,b"></source></svg><img src="data:,a" data-expect="data:,a"></picture>]
+ expected: FAIL
+
+ [<picture><svg></svg><source srcset="data:,b"><img src="data:,a" data-expect="data:,b"></picture>]
+ expected: FAIL
+
+ [<picture><svg><font></font><source srcset="data:,b"></source></svg><img src="data:,a" data-expect="data:,a"></picture>]
+ expected: FAIL
+
+ [<picture><svg><!--<font face> tag breaks out of svg--><font face=""></font><source srcset="data:,b"></source></svg><img src="data:,a" data-expect="data:,b"></picture>]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/131.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/131.html.ini
new file mode 100644
index 00000000000..91f628fdb7b
--- /dev/null
+++ b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/131.html.ini
@@ -0,0 +1,5 @@
+[131.html]
+ type: testharness
+ [scheduler: inline svg script ]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/133.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/133.html.ini
new file mode 100644
index 00000000000..91c80df2d42
--- /dev/null
+++ b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/133.html.ini
@@ -0,0 +1,5 @@
+[133.html]
+ type: testharness
+ [scheduler: inline HTML script added by SVG script ]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/137.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/137.html.ini
deleted file mode 100644
index 60d25da62d0..00000000000
--- a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/137.html.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[137.html]
- type: testharness
- [scheduler: SVG script empty xlink:href]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/145.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/145.html.ini
new file mode 100644
index 00000000000..b4836dc60d5
--- /dev/null
+++ b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/145.html.ini
@@ -0,0 +1,5 @@
+[145.html]
+ type: testharness
+ [scheduler: SVG inline script adding text to empty script ]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini
new file mode 100644
index 00000000000..c5cde10199c
--- /dev/null
+++ b/tests/wpt/metadata/old-tests/submission/Opera/script_scheduling/146.html.ini
@@ -0,0 +1,5 @@
+[146.html]
+ type: testharness
+ [scheduler: SVG script adding src attribute ]
+ expected: FAIL
+