aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/compositing/compositor.rs36
-rw-r--r--components/compositing/constellation.rs13
-rw-r--r--components/devtools_traits/Cargo.toml2
-rw-r--r--components/devtools_traits/lib.rs2
-rw-r--r--components/gfx/Cargo.toml2
-rw-r--r--components/gfx/font.rs2
-rw-r--r--components/layout/Cargo.toml2
-rw-r--r--components/layout/block.rs4
-rw-r--r--components/layout/data.rs2
-rw-r--r--components/layout/flow.rs13
-rw-r--r--components/layout/fragment.rs4
-rw-r--r--components/layout/incremental.rs4
-rw-r--r--components/layout/inline.rs2
-rw-r--r--components/msg/Cargo.toml2
-rw-r--r--components/msg/constellation_msg.rs2
-rw-r--r--components/script/Cargo.toml3
-rw-r--r--components/script/dom/htmlformelement.rs138
-rw-r--r--components/script/dom/htmliframeelement.rs13
-rw-r--r--components/script/dom/htmlinputelement.rs5
-rw-r--r--components/script/dom/htmlselectelement.rs4
-rw-r--r--components/script/dom/node.rs2
-rw-r--r--components/script/lib.rs2
-rw-r--r--components/script/script_thread.rs2
-rw-r--r--components/script_traits/lib.rs5
-rw-r--r--components/servo/Cargo.lock121
-rw-r--r--components/servo/Cargo.toml1
-rw-r--r--components/style/Cargo.toml2
-rw-r--r--components/style/element_state.rs2
-rw-r--r--components/style/logical_geometry.rs2
-rw-r--r--components/style/restyle_hints.rs2
-rw-r--r--components/util/Cargo.toml2
-rw-r--r--components/util/thread_state.rs2
-rw-r--r--ports/cef/Cargo.lock117
-rw-r--r--ports/geckolib/Cargo.lock39
-rw-r--r--ports/geckolib/Cargo.toml1
-rw-r--r--ports/geckolib/lib.rs2
-rw-r--r--ports/glutin/Cargo.toml2
-rw-r--r--ports/gonk/Cargo.lock111
-rw-r--r--tests/unit/script/dom/bindings.rs4
-rw-r--r--tests/wpt/metadata/MANIFEST.json6
-rw-r--r--tests/wpt/web-platform-tests/common/form-submission.py12
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body.html44
42 files changed, 477 insertions, 261 deletions
diff --git a/components/compositing/compositor.rs b/components/compositing/compositor.rs
index 4c3a3505b62..450951c99f1 100644
--- a/components/compositing/compositor.rs
+++ b/components/compositing/compositor.rs
@@ -633,7 +633,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
debug!("delayed composition timeout!");
if let CompositionRequest::DelayedComposite(this_timestamp) =
self.composition_request {
- if timestamp == this_timestamp {
+ if timestamp == this_timestamp && !opts::get().use_webrender {
self.composition_request = CompositionRequest::CompositeNow(
CompositingReason::DelayedCompositeTimeout)
}
@@ -752,7 +752,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
match animation_state {
AnimationState::AnimationsPresent => {
self.pipeline_details(pipeline_id).animations_running = true;
- self.composite_if_necessary(CompositingReason::Animation);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::Animation);
}
AnimationState::AnimationCallbacksPresent => {
if !self.pipeline_details(pipeline_id).animation_callbacks_running {
@@ -837,7 +837,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
self.send_window_size(WindowSizeType::Initial);
self.frame_tree_id.next();
- self.composite_if_necessary(CompositingReason::NewFrameTree);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::NewFrameTree);
}
fn create_root_layer_for_pipeline_and_size(&mut self,
@@ -1190,7 +1190,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
// FIXME(pcwalton): This is going to cause problems with inconsistent frames since
// we only composite one layer at a time.
layer.add_buffers(self, new_layer_buffer_set, epoch);
- self.composite_if_necessary(CompositingReason::NewPaintedBuffers);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::NewPaintedBuffers);
}
fn scroll_fragment_to_point(&mut self,
@@ -1453,7 +1453,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
cursor: cursor,
phase: ScrollEventPhase::Move(true),
});
- self.composite_if_necessary(CompositingReason::Zoom);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::Zoom);
}
TouchAction::DispatchEvent => {
if let Some(result) = self.find_topmost_layer_at_point(point / self.scene.scale) {
@@ -1507,7 +1507,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
cursor: cursor,
phase: ScrollEventPhase::Move(self.scroll_in_progress),
});
- self.composite_if_necessary(CompositingReason::Scroll);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::Scroll);
}
fn on_scroll_start_window_event(&mut self,
@@ -1520,7 +1520,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
cursor: cursor,
phase: ScrollEventPhase::Start,
});
- self.composite_if_necessary(CompositingReason::Scroll);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::Scroll);
}
fn on_scroll_end_window_event(&mut self,
@@ -1533,7 +1533,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
cursor: cursor,
phase: ScrollEventPhase::End,
});
- self.composite_if_necessary(CompositingReason::Scroll);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::Scroll);
}
fn process_pending_scroll_events(&mut self) {
@@ -1664,7 +1664,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
self.send_updated_display_ports_to_layout();
if self.send_buffer_requests_for_all_layers() {
self.schedule_delayed_composite_if_necessary();
- } else {
+ } else if !opts::get().use_webrender {
self.channel_to_self.send(Msg::Recomposite(CompositingReason::ContinueScroll));
}
}
@@ -1756,7 +1756,7 @@ impl<Window: WindowMethods> IOCompositor<Window> {
cursor: Point2D::typed(-1, -1), // Make sure this hits the base layer.
phase: ScrollEventPhase::Move(true),
});
- self.composite_if_necessary(CompositingReason::Zoom);
+ self.composite_if_necessary_if_not_using_webrender(CompositingReason::Zoom);
}
fn on_navigation_window_event(&self, direction: WindowNavigateMsg) {
@@ -2182,7 +2182,11 @@ impl<Window: WindowMethods> IOCompositor<Window> {
self.last_composite_time = precise_time_ns();
self.composition_request = CompositionRequest::NoCompositingNecessary;
- self.process_pending_scroll_events();
+
+ if !opts::get().use_webrender {
+ self.process_pending_scroll_events();
+ }
+
self.process_animations();
self.start_scrolling_bounce_if_necessary();
@@ -2230,6 +2234,12 @@ impl<Window: WindowMethods> IOCompositor<Window> {
}
}
+ fn composite_if_necessary_if_not_using_webrender(&mut self, reason: CompositingReason) {
+ if !opts::get().use_webrender {
+ self.composite_if_necessary(reason)
+ }
+ }
+
fn initialize_compositing(&mut self) {
if self.webrender.is_none() {
let show_debug_borders = opts::get().show_debug_borders;
@@ -2457,6 +2467,10 @@ impl<Window> CompositorEventListener for IOCompositor<Window> where Window: Wind
self.send_buffer_requests_for_all_layers();
}
+ if !self.pending_scroll_zoom_events.is_empty() && opts::get().use_webrender {
+ self.process_pending_scroll_events()
+ }
+
match self.composition_request {
CompositionRequest::NoCompositingNecessary |
CompositionRequest::DelayedComposite(_) => {}
diff --git a/components/compositing/constellation.rs b/components/compositing/constellation.rs
index 6e09fc4b15d..b855885b88a 100644
--- a/components/compositing/constellation.rs
+++ b/components/compositing/constellation.rs
@@ -982,7 +982,7 @@ impl<LTF: LayoutThreadFactory, STF: ScriptThreadFactory> Constellation<LTF, STF>
};
// If no url is specified, reload.
- let new_url = load_info.url.clone()
+ let new_url = load_info.load_data.clone().map(|data| data.url)
.or_else(|| old_pipeline.map(|old_pipeline| old_pipeline.url.clone()))
.unwrap_or_else(|| Url::parse("about:blank").expect("infallible"));
@@ -1016,13 +1016,20 @@ impl<LTF: LayoutThreadFactory, STF: ScriptThreadFactory> Constellation<LTF, STF>
};
+ let load_data = if let Some(mut data) = load_info.load_data {
+ data.url = new_url;
+ data
+ } else {
+ // TODO - loaddata here should have referrer info (not None, None)
+ LoadData::new(new_url, None, None)
+ };
+
// Create the new pipeline, attached to the parent and push to pending frames
- // TODO - loaddata here should have referrer info (not None, None)
self.new_pipeline(load_info.new_pipeline_id,
Some((load_info.containing_pipeline_id, load_info.new_subpage_id)),
window_size,
script_chan,
- LoadData::new(new_url, None, None));
+ load_data);
self.subpage_map.insert((load_info.containing_pipeline_id, load_info.new_subpage_id),
load_info.new_pipeline_id);
diff --git a/components/devtools_traits/Cargo.toml b/components/devtools_traits/Cargo.toml
index 87bfd8ed8ff..cb8e54184ae 100644
--- a/components/devtools_traits/Cargo.toml
+++ b/components/devtools_traits/Cargo.toml
@@ -16,7 +16,7 @@ heapsize = "0.3.0"
heapsize_plugin = "0.1.2"
hyper = { version = "0.9", features = [ "serde-serialization" ] }
time = "0.1"
-bitflags = "0.3"
+bitflags = "0.6.0"
serde = "0.7"
serde_macros = "0.7"
url = {version = "1.0.0", features = ["heap_size"]}
diff --git a/components/devtools_traits/lib.rs b/components/devtools_traits/lib.rs
index 9a46ddc0000..381af6016b3 100644
--- a/components/devtools_traits/lib.rs
+++ b/components/devtools_traits/lib.rs
@@ -242,7 +242,7 @@ pub struct ConsoleMessage {
bitflags! {
#[derive(Deserialize, Serialize)]
- flags CachedConsoleMessageTypes: u8 {
+ pub flags CachedConsoleMessageTypes: u8 {
const PAGE_ERROR = 1 << 0,
const CONSOLE_API = 1 << 1,
}
diff --git a/components/gfx/Cargo.toml b/components/gfx/Cargo.toml
index 93d510c62d9..d02445d606f 100644
--- a/components/gfx/Cargo.toml
+++ b/components/gfx/Cargo.toml
@@ -11,7 +11,7 @@ path = "lib.rs"
[dependencies]
app_units = {version = "0.2.3", features = ["plugins"]}
-bitflags = "0.3"
+bitflags = "0.6.0"
euclid = {version = "0.6.4", features = ["plugins"]}
fnv = "1.0"
harfbuzz-sys = "0.1"
diff --git a/components/gfx/font.rs b/components/gfx/font.rs
index 5bdfa78fb64..a6b2af9c8a2 100644
--- a/components/gfx/font.rs
+++ b/components/gfx/font.rs
@@ -105,7 +105,7 @@ pub struct Font {
}
bitflags! {
- flags ShapingFlags: u8 {
+ pub flags ShapingFlags: u8 {
#[doc = "Set if the text is entirely whitespace."]
const IS_WHITESPACE_SHAPING_FLAG = 0x01,
#[doc = "Set if we are to ignore ligatures."]
diff --git a/components/layout/Cargo.toml b/components/layout/Cargo.toml
index 2f15be9588d..f097dccdd26 100644
--- a/components/layout/Cargo.toml
+++ b/components/layout/Cargo.toml
@@ -27,7 +27,7 @@ util = {path = "../util"}
ipc-channel = {git = "https://github.com/servo/ipc-channel"}
webrender_traits = {git = "https://github.com/servo/webrender_traits"}
app_units = {version = "0.2.3", features = ["plugins"]}
-bitflags = "0.3"
+bitflags = "0.6.0"
cssparser = {version = "0.5.4", features = ["heap_size", "serde-serialization"]}
euclid = {version = "0.6.4", features = ["plugins"]}
fnv = "1.0"
diff --git a/components/layout/block.rs b/components/layout/block.rs
index 0b10ef39000..390fc120cd7 100644
--- a/components/layout/block.rs
+++ b/components/layout/block.rs
@@ -520,7 +520,7 @@ pub struct BlockFlow {
pub float: Option<Box<FloatedBlockInfo>>,
/// Various flags.
- pub flags: BlockFlowFlags,
+ flags: BlockFlowFlags,
}
bitflags! {
@@ -1518,8 +1518,6 @@ impl BlockFlow {
}
}
}
-
- flags.union_floated_descendants_flags(child_base.flags);
}
// FIXME(pcwalton): This should consider all float descendants, not just children.
diff --git a/components/layout/data.rs b/components/layout/data.rs
index 4e5c8339157..10c72667aae 100644
--- a/components/layout/data.rs
+++ b/components/layout/data.rs
@@ -51,7 +51,7 @@ impl PrivateLayoutData {
}
bitflags! {
- flags LayoutDataFlags: u8 {
+ pub flags LayoutDataFlags: u8 {
#[doc = "Whether a flow has been newly constructed."]
const HAS_NEWLY_CONSTRUCTED_FLOW = 0x01
}
diff --git a/components/layout/flow.rs b/components/layout/flow.rs
index 79ab2fc2c07..9ca27c352ce 100644
--- a/components/layout/flow.rs
+++ b/components/layout/flow.rs
@@ -629,7 +629,7 @@ pub trait InorderFlowTraversal {
bitflags! {
#[doc = "Flags used in flows."]
- flags FlowFlags: u32 {
+ pub flags FlowFlags: u32 {
// text align flags
#[doc = "Whether this flow must have its own layer. Even if this flag is not set, it might"]
#[doc = "get its own layer if it's deemed to be likely to overlap flows with their own"]
@@ -676,12 +676,6 @@ bitflags! {
}
}
-// NB: If you update this field, you must update the the floated descendants flags.
-/// The bitmask of flags that represent the `has_left_floated_descendants` and
-/// `has_right_floated_descendants` fields.
-
-static HAS_FLOATED_DESCENDANTS_BITMASK: FlowFlags = FlowFlags { bits: 0b0000_0011 };
-
/// The number of bits we must shift off to handle the text alignment field.
///
/// NB: If you update this, update `TEXT_ALIGN` above.
@@ -700,11 +694,6 @@ impl FlowFlags {
}
#[inline]
- pub fn union_floated_descendants_flags(&mut self, other: FlowFlags) {
- self.insert(other & HAS_FLOATED_DESCENDANTS_BITMASK);
- }
-
- #[inline]
pub fn float_kind(&self) -> float::T {
if self.contains(FLOATS_LEFT) {
float::T::left
diff --git a/components/layout/fragment.rs b/components/layout/fragment.rs
index 4dda58364aa..f90a18a438d 100644
--- a/components/layout/fragment.rs
+++ b/components/layout/fragment.rs
@@ -666,7 +666,7 @@ pub struct ScannedTextFragmentInfo {
}
bitflags! {
- flags ScannedTextFlags: u8 {
+ pub flags ScannedTextFlags: u8 {
/// Whether a line break is required after this fragment if wrapping on newlines (e.g. if
/// `white-space: pre` is in effect).
const REQUIRES_LINE_BREAK_AFTERWARD_IF_WRAPPING_ON_NEWLINES = 0x01,
@@ -2707,7 +2707,7 @@ impl Overflow {
}
bitflags! {
- flags FragmentFlags: u8 {
+ pub flags FragmentFlags: u8 {
/// Whether this fragment has a layer.
const HAS_LAYER = 0x01,
}
diff --git a/components/layout/incremental.rs b/components/layout/incremental.rs
index fb73e8b6d87..a743afd1555 100644
--- a/components/layout/incremental.rs
+++ b/components/layout/incremental.rs
@@ -11,7 +11,7 @@ use style::properties::{ComputedValues, ServoComputedValues};
bitflags! {
#[doc = "Individual layout actions that may be necessary after restyling."]
- flags RestyleDamage: u8 {
+ pub flags RestyleDamage: u8 {
#[doc = "Repaint the node itself."]
#[doc = "Currently unused; need to decide how this propagates."]
const REPAINT = 0x01,
@@ -45,7 +45,7 @@ bitflags! {
}
bitflags! {
- flags SpecialRestyleDamage: u8 {
+ pub flags SpecialRestyleDamage: u8 {
#[doc = "If this flag is set, we need to reflow the entire document. This is more or less a \
temporary hack to deal with cases that we don't handle incrementally yet."]
const REFLOW_ENTIRE_DOCUMENT = 0x01,
diff --git a/components/layout/inline.rs b/components/layout/inline.rs
index 6d1224dea25..95c3c85454a 100644
--- a/components/layout/inline.rs
+++ b/components/layout/inline.rs
@@ -1859,7 +1859,7 @@ pub struct InlineFragmentNodeInfo {
}
bitflags! {
- flags InlineFragmentNodeFlags: u8 {
+ pub flags InlineFragmentNodeFlags: u8 {
const FIRST_FRAGMENT_OF_ELEMENT = 0x01,
const LAST_FRAGMENT_OF_ELEMENT = 0x02,
}
diff --git a/components/msg/Cargo.toml b/components/msg/Cargo.toml
index 3a26b7d4afa..077a51f0186 100644
--- a/components/msg/Cargo.toml
+++ b/components/msg/Cargo.toml
@@ -14,7 +14,7 @@ layers = {git = "https://github.com/servo/rust-layers", features = ["plugins"]}
ipc-channel = {git = "https://github.com/servo/ipc-channel"}
plugins = {path = "../plugins"}
webrender_traits = {git = "https://github.com/servo/webrender_traits"}
-bitflags = "0.3"
+bitflags = "0.6.0"
cssparser = {version = "0.5.4", features = ["heap_size", "serde-serialization"]}
euclid = {version = "0.6.4", features = ["plugins"]}
heapsize = "0.3.0"
diff --git a/components/msg/constellation_msg.rs b/components/msg/constellation_msg.rs
index cd0232ca761..cab09add966 100644
--- a/components/msg/constellation_msg.rs
+++ b/components/msg/constellation_msg.rs
@@ -194,7 +194,7 @@ pub enum Key {
bitflags! {
#[derive(Deserialize, Serialize)]
- flags KeyModifiers: u8 {
+ pub flags KeyModifiers: u8 {
const NONE = 0x00,
const SHIFT = 0x01,
const CONTROL = 0x02,
diff --git a/components/script/Cargo.toml b/components/script/Cargo.toml
index 491fb077c9c..d032bc81921 100644
--- a/components/script/Cargo.toml
+++ b/components/script/Cargo.toml
@@ -31,7 +31,7 @@ xml5ever = {version = "0.1.2", features = ["unstable"]}
gfx_traits = {path = "../gfx_traits"}
webrender_traits = {git = "https://github.com/servo/webrender_traits"}
app_units = {version = "0.2.3", features = ["plugins"]}
-bitflags = "0.3"
+bitflags = "0.6.0"
caseless = "0.1.0"
cssparser = {version = "0.5.4", features = ["heap_size", "serde-serialization"]}
encoding = "0.2"
@@ -44,6 +44,7 @@ hyper = { version = "0.9", features = [ "serde-serialization" ] }
image = "0.9"
libc = "0.2"
log = "0.3.5"
+mime = "0.2.0"
num-traits = "0.1.32"
offscreen_gl_context = "0.1.2"
rand = "0.3"
diff --git a/components/script/dom/htmlformelement.rs b/components/script/dom/htmlformelement.rs
index 999ccacc8a8..0e8b6174ab5 100644
--- a/components/script/dom/htmlformelement.rs
+++ b/components/script/dom/htmlformelement.rs
@@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use dom::attr::AttrValue;
+use dom::bindings::codegen::Bindings::BlobBinding::BlobMethods;
use dom::bindings::codegen::Bindings::DocumentBinding::DocumentMethods;
use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
use dom::bindings::codegen::Bindings::HTMLButtonElementBinding::HTMLButtonElementMethods;
@@ -15,10 +16,12 @@ use dom::bindings::inheritance::{Castable, ElementTypeId, HTMLElementTypeId, Nod
use dom::bindings::js::{JS, MutNullableHeap, Root};
use dom::bindings::refcounted::Trusted;
use dom::bindings::reflector::Reflectable;
+use dom::blob::Blob;
use dom::document::Document;
use dom::element::Element;
use dom::event::{EventBubbles, EventCancelable};
use dom::eventtarget::EventTarget;
+use dom::file::File;
use dom::htmlbuttonelement::HTMLButtonElement;
use dom::htmlcollection::CollectionFilter;
use dom::htmldatalistelement::HTMLDataListElement;
@@ -33,19 +36,23 @@ use dom::htmltextareaelement::HTMLTextAreaElement;
use dom::node::{Node, document_from_node, window_from_node};
use dom::virtualmethods::VirtualMethods;
use dom::window::Window;
-use hyper::header::ContentType;
+use encoding::EncodingRef;
+use encoding::all::UTF_8;
+use encoding::label::encoding_from_whatwg_label;
+use hyper::header::{Charset, ContentDisposition, ContentType, DispositionParam, DispositionType};
use hyper::method::Method;
-use hyper::mime;
use msg::constellation_msg::{LoadData, PipelineId};
+use rand::random;
use script_runtime::ScriptChan;
use script_thread::{MainThreadScriptMsg, Runnable};
use std::borrow::ToOwned;
use std::cell::Cell;
+use std::str::from_utf8;
use std::sync::mpsc::Sender;
use string_cache::Atom;
use task_source::dom_manipulation::DOMManipulationTask;
use url::form_urlencoded;
-use util::str::DOMString;
+use util::str::{DOMString, split_html_space_chars};
#[derive(JSTraceable, PartialEq, Clone, Copy, HeapSizeOf)]
pub struct GenerationId(u32);
@@ -237,6 +244,86 @@ pub enum ResetFrom {
impl HTMLFormElement {
+ fn generate_boundary(&self) -> String {
+ let i1 = random::<u32>();
+ let i2 = random::<u32>();
+
+ format!("---------------------------{0}{1}", i1, i2)
+ }
+
+ // https://html.spec.whatwg.org/multipage/#picking-an-encoding-for-the-form
+ fn pick_encoding(&self) -> EncodingRef {
+ // Step 2
+ if self.upcast::<Element>().has_attribute(&atom!("accept-charset")) {
+ // Substep 1
+ let input = self.upcast::<Element>().get_string_attribute(&atom!("accept-charset"));
+
+ // Substep 2, 3, 4
+ let mut candidate_encodings = split_html_space_chars(&*input).filter_map(encoding_from_whatwg_label);
+
+ // Substep 5, 6
+ return candidate_encodings.next().unwrap_or(UTF_8);
+ }
+
+ // Step 1, 3
+ document_from_node(self).encoding()
+ }
+
+ // https://html.spec.whatwg.org/multipage/#multipart/form-data-encoding-algorithm
+ fn encode_form_data(&self, form_data: &mut Vec<FormDatum>,
+ encoding: Option<EncodingRef>,
+ boundary: String) -> String {
+ // Step 1
+ let mut result = "".to_owned();
+
+ // Step 2
+ // (maybe take encoding as input)
+ let encoding = encoding.unwrap_or(self.pick_encoding());
+
+ // Step 3
+ let charset = &*encoding.whatwg_name().unwrap();
+
+ // Step 4
+ for entry in form_data.iter_mut() {
+ // Substep 1
+ if entry.name == "_charset_" && entry.ty == "hidden" {
+ entry.value = FormDatumValue::String(DOMString::from(charset.clone()));
+ }
+ // TODO: Substep 2
+
+ // Step 5
+ // https://tools.ietf.org/html/rfc7578#section-4
+ result.push_str(&*format!("\r\n--{}\r\n", boundary));
+ let mut content_disposition = ContentDisposition {
+ disposition: DispositionType::Ext("form-data".to_owned()),
+ parameters: vec![DispositionParam::Ext("name".to_owned(), String::from(entry.name.clone()))]
+ };
+
+ match entry.value {
+ FormDatumValue::String(ref s) =>
+ result.push_str(&*format!("Content-Disposition: {}\r\n\r\n{}",
+ content_disposition,
+ s)),
+ FormDatumValue::File(ref f) => {
+ content_disposition.parameters.push(
+ DispositionParam::Filename(Charset::Ext(String::from(charset.clone())),
+ None,
+ f.name().clone().into()));
+ let content_type = ContentType(f.upcast::<Blob>().Type().parse().unwrap());
+ result.push_str(&*format!("Content-Disposition: {}\r\n{}\r\n\r\n",
+ content_disposition,
+ content_type));
+
+ result.push_str(from_utf8(&f.upcast::<Blob>().get_data().get_bytes()).unwrap());
+ }
+ }
+ }
+
+ result.push_str(&*format!("\r\n--{}--", boundary));
+
+ return result;
+ }
+
/// [Form submission](https://html.spec.whatwg.org/multipage/#concept-form-submit)
pub fn submit(&self, submit_method_flag: SubmittedFrom, submitter: FormSubmitter) {
// Step 1
@@ -264,7 +351,7 @@ impl HTMLFormElement {
}
}
// Step 6
- let form_data = self.get_form_dataset(Some(submitter));
+ let mut form_data = self.get_form_dataset(Some(submitter));
// Step 7
let mut action = submitter.action();
// Step 8
@@ -287,13 +374,21 @@ impl HTMLFormElement {
let parsed_data = match enctype {
FormEncType::UrlEncoded => {
- let mime: mime::Mime = "application/x-www-form-urlencoded".parse().unwrap();
- load_data.headers.set(ContentType(mime));
+ load_data.headers.set(ContentType::form_url_encoded());
+
form_urlencoded::Serializer::new(String::new())
- .extend_pairs(form_data.into_iter().map(|field| (field.name, field.value)))
+ .extend_pairs(form_data.into_iter().map(|field| (field.name.clone(), field.value_str())))
.finish()
}
- _ => "".to_owned() // TODO: Add serializers for the other encoding types
+ FormEncType::FormDataEncoded => {
+ let boundary = self.generate_boundary();
+ let mime = mime!(Multipart / FormData; Boundary =(&boundary));
+ load_data.headers.set(ContentType(mime));
+
+ self.encode_form_data(&mut form_data, None, boundary)
+ }
+ // TODO: Support plain text encoding
+ FormEncType::TextPlainEncoded => "".to_owned()
};
// Step 18
@@ -311,6 +406,7 @@ impl HTMLFormElement {
("http", FormMethod::FormPost) | ("https", FormMethod::FormPost) => {
load_data.method = Method::Post;
load_data.data = Some(parsed_data.into_bytes());
+ self.plan_to_navigate(load_data, &win);
}
// https://html.spec.whatwg.org/multipage/#submit-get-action
("file", _) | ("about", _) | ("data", FormMethod::FormGet) |
@@ -435,7 +531,7 @@ impl HTMLFormElement {
data_set.push(FormDatum {
ty: textarea.Type(),
name: name,
- value: textarea.Value()
+ value: FormDatumValue::String(textarea.Value())
});
}
}
@@ -489,7 +585,10 @@ impl HTMLFormElement {
"file" | "textarea" => (),
_ => {
datum.name = clean_crlf(&datum.name);
- datum.value = clean_crlf(&datum.value);
+ datum.value = FormDatumValue::String(clean_crlf( match datum.value {
+ FormDatumValue::String(ref s) => s,
+ FormDatumValue::File(_) => unreachable!()
+ }));
}
}
};
@@ -544,12 +643,25 @@ impl HTMLFormElement {
}
-// TODO: add file support
-#[derive(HeapSizeOf)]
+pub enum FormDatumValue {
+ File(Root<File>),
+ String(DOMString)
+}
+
+// #[derive(HeapSizeOf)]
pub struct FormDatum {
pub ty: DOMString,
pub name: DOMString,
- pub value: DOMString
+ pub value: FormDatumValue
+}
+
+impl FormDatum {
+ pub fn value_str(&self) -> String {
+ match self.value {
+ FormDatumValue::String(ref s) => String::from(s.clone()),
+ FormDatumValue::File(ref f) => String::from(f.name().clone())
+ }
+ }
}
#[derive(Copy, Clone, HeapSizeOf)]
diff --git a/components/script/dom/htmliframeelement.rs b/components/script/dom/htmliframeelement.rs
index 89e7d6f89e8..bf3ff02487c 100644
--- a/components/script/dom/htmliframeelement.rs
+++ b/components/script/dom/htmliframeelement.rs
@@ -33,7 +33,7 @@ use ipc_channel::ipc;
use js::jsapi::{JSAutoCompartment, JSAutoRequest, RootedValue, JSContext, MutableHandleValue};
use js::jsval::{UndefinedValue, NullValue};
use layout_interface::ReflowQueryType;
-use msg::constellation_msg::{ConstellationChan};
+use msg::constellation_msg::{ConstellationChan, LoadData};
use msg::constellation_msg::{NavigationDirection, PipelineId, SubpageId};
use net_traits::response::HttpsState;
use page::IterablePage;
@@ -98,7 +98,7 @@ impl HTMLIFrameElement {
(subpage_id, old_subpage_id)
}
- pub fn navigate_or_reload_child_browsing_context(&self, url: Option<Url>) {
+ pub fn navigate_or_reload_child_browsing_context(&self, load_data: Option<LoadData>) {
let sandboxed = if self.is_sandboxed() {
IFrameSandboxed
} else {
@@ -115,8 +115,8 @@ impl HTMLIFrameElement {
//TODO(#9592): Deal with the case where an iframe is being reloaded so url is None.
// The iframe should always have access to the nested context's active
// document URL through the browsing context.
- if let Some(ref url) = url {
- *load_blocker = Some(LoadBlocker::new(&*document, LoadType::Subframe(url.clone())));
+ if let Some(ref load_data) = load_data {
+ *load_blocker = Some(LoadBlocker::new(&*document, LoadType::Subframe(load_data.url.clone())));
}
let window = window_from_node(self);
@@ -127,7 +127,7 @@ impl HTMLIFrameElement {
let ConstellationChan(ref chan) = *window.constellation_chan();
let load_info = IFrameLoadInfo {
- url: url,
+ load_data: load_data,
containing_pipeline_id: window.pipeline(),
new_subpage_id: new_subpage_id,
old_subpage_id: old_subpage_id,
@@ -149,7 +149,8 @@ impl HTMLIFrameElement {
None => Url::parse("about:blank").unwrap(),
};
- self.navigate_or_reload_child_browsing_context(Some(url));
+ // TODO - loaddata here should have referrer info (not None, None)
+ self.navigate_or_reload_child_browsing_context(Some(LoadData::new(url, None, None)));
}
#[allow(unsafe_code)]
diff --git a/components/script/dom/htmlinputelement.rs b/components/script/dom/htmlinputelement.rs
index d42709b487d..0e675b35b27 100644
--- a/components/script/dom/htmlinputelement.rs
+++ b/components/script/dom/htmlinputelement.rs
@@ -22,7 +22,7 @@ use dom::event::{Event, EventBubbles, EventCancelable};
use dom::eventtarget::EventTarget;
use dom::htmlelement::HTMLElement;
use dom::htmlfieldsetelement::HTMLFieldSetElement;
-use dom::htmlformelement::{FormControl, FormDatum, FormSubmitter, HTMLFormElement};
+use dom::htmlformelement::{FormDatumValue, FormControl, FormDatum, FormSubmitter, HTMLFormElement};
use dom::htmlformelement::{ResetFrom, SubmittedFrom};
use dom::keyboardevent::KeyboardEvent;
use dom::node::{Node, NodeDamage, UnbindContext};
@@ -625,6 +625,7 @@ impl HTMLInputElement {
atom!("radio") | atom!("checkbox") => if !self.Checked() || name.is_empty() {
return None;
},
+
atom!("image") | atom!("file") => return None, // Unimplemented
// Step 3.1: it's not the "Image Button" and doesn't have a name attribute.
_ => if name.is_empty() {
@@ -637,7 +638,7 @@ impl HTMLInputElement {
Some(FormDatum {
ty: DOMString::from(&*ty), // FIXME(ajeffrey): Convert directly from Atoms to DOMStrings
name: name,
- value: self.Value()
+ value: FormDatumValue::String(self.Value())
})
}
diff --git a/components/script/dom/htmlselectelement.rs b/components/script/dom/htmlselectelement.rs
index 45161f5ee2d..cfce718bcbe 100644
--- a/components/script/dom/htmlselectelement.rs
+++ b/components/script/dom/htmlselectelement.rs
@@ -14,7 +14,7 @@ use dom::document::Document;
use dom::element::{AttributeMutation, Element};
use dom::htmlelement::HTMLElement;
use dom::htmlfieldsetelement::HTMLFieldSetElement;
-use dom::htmlformelement::{FormControl, FormDatum, HTMLFormElement};
+use dom::htmlformelement::{FormDatumValue, FormControl, FormDatum, HTMLFormElement};
use dom::htmloptionelement::HTMLOptionElement;
use dom::node::{Node, UnbindContext, window_from_node};
use dom::nodelist::NodeList;
@@ -94,7 +94,7 @@ impl HTMLSelectElement {
data_set.push(FormDatum {
ty: self.Type(),
name: self.Name(),
- value: opt.Value()
+ value: FormDatumValue::String(opt.Value())
});
}
}
diff --git a/components/script/dom/node.rs b/components/script/dom/node.rs
index f9111d7f7f1..3a77fb6fe6d 100644
--- a/components/script/dom/node.rs
+++ b/components/script/dom/node.rs
@@ -131,7 +131,7 @@ pub struct Node {
bitflags! {
#[doc = "Flags for node items."]
#[derive(JSTraceable, HeapSizeOf)]
- flags NodeFlags: u8 {
+ pub flags NodeFlags: u8 {
#[doc = "Specifies whether this node is in a document."]
const IS_IN_DOC = 0x01,
#[doc = "Specifies whether this node _must_ be reflowed regardless of style differences."]
diff --git a/components/script/lib.rs b/components/script/lib.rs
index dde2063cfc3..05700431c3d 100644
--- a/components/script/lib.rs
+++ b/components/script/lib.rs
@@ -51,6 +51,8 @@ extern crate js;
extern crate libc;
#[macro_use]
extern crate log;
+#[macro_use]
+extern crate mime;
extern crate msg;
extern crate net_traits;
extern crate num_traits;
diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs
index 107902b88ee..4768273c16e 100644
--- a/components/script/script_thread.rs
+++ b/components/script/script_thread.rs
@@ -1812,7 +1812,7 @@ impl ScriptThread {
doc.find_iframe(subpage_id)
});
if let Some(iframe) = iframe.r() {
- iframe.navigate_or_reload_child_browsing_context(Some(load_data.url));
+ iframe.navigate_or_reload_child_browsing_context(Some(load_data));
}
}
None => {
diff --git a/components/script_traits/lib.rs b/components/script_traits/lib.rs
index 568c1aac0b6..2d4469ef80d 100644
--- a/components/script_traits/lib.rs
+++ b/components/script_traits/lib.rs
@@ -51,7 +51,6 @@ use net_traits::response::HttpsState;
use net_traits::storage_thread::StorageThread;
use profile_traits::mem;
use std::any::Any;
-use url::Url;
use util::ipc::OptionalOpaqueIpcSender;
pub use script_msg::{LayoutMsg, ScriptMsg};
@@ -405,8 +404,8 @@ pub enum IFrameSandboxState {
/// Specifies the information required to load a URL in an iframe.
#[derive(Deserialize, Serialize)]
pub struct IFrameLoadInfo {
- /// Url to load
- pub url: Option<Url>,
+ /// Load data containing the url to load
+ pub load_data: Option<LoadData>,
/// Pipeline ID of the parent of this iframe
pub containing_pipeline_id: PipelineId,
/// The new subpage ID for this load
diff --git a/components/servo/Cargo.lock b/components/servo/Cargo.lock
index 9b683c2dd5d..553f32d446e 100644
--- a/components/servo/Cargo.lock
+++ b/components/servo/Cargo.lock
@@ -3,7 +3,6 @@ name = "servo"
version = "0.0.1"
dependencies = [
"android_glue 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"browserhtml 0.1.4 (git+https://github.com/browserhtml/browserhtml?branch=gh-pages)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
@@ -139,11 +138,11 @@ dependencies = [
[[package]]
name = "bincode"
-version = "0.5.3"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -160,7 +159,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "bitflags"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -223,7 +222,7 @@ name = "caseless"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -265,7 +264,7 @@ dependencies = [
[[package]]
name = "cmake"
-version = "0.1.14"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gcc 0.3.26 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -451,7 +450,7 @@ dependencies = [
name = "devtools_traits"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -566,7 +565,7 @@ name = "energymon-builder"
version = "0.2.0"
source = "git+https://github.com/energymon/energymon-sys.git#a0fb99b0312372958b110ae6378b5c89c2287172"
dependencies = [
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -601,7 +600,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -624,7 +623,7 @@ version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"make-cmd 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -638,7 +637,7 @@ dependencies = [
[[package]]
name = "fnv"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -702,12 +701,12 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"azure 0.4.3 (git+https://github.com/servo/rust-azure)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"gfx_traits 0.0.1",
"harfbuzz-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -803,7 +802,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
name = "glutin_app"
version = "0.0.1"
dependencies = [
- "bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"compositing 0.0.1",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"gleam 0.2.15 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -835,7 +834,7 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -843,8 +842,8 @@ name = "hbs-builder"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "cmake 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cmake 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -996,7 +995,7 @@ name = "ipc-channel"
version = "0.2.2"
source = "git+https://github.com/servo/ipc-channel#e43fb22c431740a9bc54ce96caebd0e67d1a0586"
dependencies = [
- "bincode 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bincode 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1077,11 +1076,11 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"azure 0.4.3 (git+https://github.com/servo/rust-azure)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas_traits 0.0.1",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx 0.0.1",
"gfx_traits 0.0.1",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1098,7 +1097,7 @@ dependencies = [
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"script_traits 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1185,7 +1184,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gcc 0.3.26 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1281,7 +1280,7 @@ dependencies = [
name = "msg"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1540,7 +1539,7 @@ dependencies = [
"gdi32-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libressl-pnacl-sys 2.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"user32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1605,7 +1604,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pkg-config"
-version = "0.3.5"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1654,7 +1653,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"profile_traits 0.0.1",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1756,18 +1755,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "regex"
-version = "0.1.55"
+version = "0.1.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"aho-corasick 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"memchr 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex-syntax 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex-syntax 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "thread_local 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
"utf8-ranges 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "regex-syntax"
-version = "0.2.5"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1785,11 +1785,8 @@ dependencies = [
[[package]]
name = "scoped_threadpool"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rustc_version 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
[[package]]
name = "script"
@@ -1797,7 +1794,7 @@ version = "0.0.1"
dependencies = [
"angle 0.1.0 (git+https://github.com/emilio/angle?branch=servo)",
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
"caseless 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1805,7 +1802,7 @@ dependencies = [
"devtools_traits 0.0.1",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx_traits 0.0.1",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1816,6 +1813,7 @@ dependencies = [
"js 0.1.2 (git+https://github.com/servo/rust-mozjs)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "mime 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1827,10 +1825,10 @@ dependencies = [
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"ref_filter_map 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ref_slice 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1884,12 +1882,12 @@ dependencies = [
[[package]]
name = "selectors"
-version = "0.5.5"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1958,7 +1956,7 @@ version = "2.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"expat-sys 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"servo-freetype-sys 2.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1967,7 +1965,7 @@ name = "servo-freetype-sys"
version = "2.4.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -2073,11 +2071,11 @@ name = "style"
version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2086,7 +2084,7 @@ dependencies = [
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2107,7 +2105,7 @@ dependencies = [
"msg 0.0.1",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
"style 0.0.1",
"style_traits 0.0.1",
@@ -2127,7 +2125,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2178,6 +2176,23 @@ dependencies = [
]
[[package]]
+name = "thread-id"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "kernel32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "thread_local"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "thread-id 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "threadpool"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2290,7 +2305,7 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2396,7 +2411,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"hyper 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -2411,7 +2426,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"plugins 0.0.1",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
@@ -2429,7 +2444,7 @@ dependencies = [
"core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"gleam 0.2.15 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)",
@@ -2437,7 +2452,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"offscreen_gl_context 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "scoped_threadpool 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "scoped_threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)",
"webrender_traits 0.1.0 (git+https://github.com/servo/webrender_traits)",
]
@@ -2499,7 +2514,7 @@ version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
diff --git a/components/servo/Cargo.toml b/components/servo/Cargo.toml
index d9ca96a4aa3..109d4e6d733 100644
--- a/components/servo/Cargo.toml
+++ b/components/servo/Cargo.toml
@@ -69,7 +69,6 @@ ipc-channel = {git = "https://github.com/servo/ipc-channel"}
layers = {git = "https://github.com/servo/rust-layers", features = ["plugins"]}
gleam = "0.2"
browserhtml = {git = "https://github.com/browserhtml/browserhtml", branch = "gh-pages"}
-bitflags = "0.3"
env_logger = "0.3"
euclid = {version = "0.6.4", features = ["plugins"]}
libc = "0.2"
diff --git a/components/style/Cargo.toml b/components/style/Cargo.toml
index 6f4d60c5d37..060a92682eb 100644
--- a/components/style/Cargo.toml
+++ b/components/style/Cargo.toml
@@ -18,7 +18,7 @@ plugins = {path = "../plugins"}
util = {path = "../util"}
style_traits = {path = "../style_traits"}
app_units = {version = "0.2.3", features = ["plugins"]}
-bitflags = "0.3"
+bitflags = "0.6.0"
cssparser = {version = "0.5.5", features = ["heap_size", "serde-serialization"]}
encoding = "0.2"
euclid = {version = "0.6.4", features = ["plugins"]}
diff --git a/components/style/element_state.rs b/components/style/element_state.rs
index 26a2198f3f1..f347f7d2164 100644
--- a/components/style/element_state.rs
+++ b/components/style/element_state.rs
@@ -5,7 +5,7 @@
bitflags! {
#[doc = "Event-based element states."]
#[derive(HeapSizeOf)]
- flags ElementState: u8 {
+ pub flags ElementState: u8 {
#[doc = "The mouse is down on this element. \
https://html.spec.whatwg.org/multipage/#selector-active \
FIXME(#7333): set/unset this when appropriate"]
diff --git a/components/style/logical_geometry.rs b/components/style/logical_geometry.rs
index 3f3bf1e4509..b6afaf6f540 100644
--- a/components/style/logical_geometry.rs
+++ b/components/style/logical_geometry.rs
@@ -23,7 +23,7 @@ pub enum InlineBaseDirection {
bitflags!(
#[derive(HeapSizeOf, RustcEncodable)]
- flags WritingMode: u8 {
+ pub flags WritingMode: u8 {
const FLAG_RTL = 1 << 0,
const FLAG_VERTICAL = 1 << 1,
const FLAG_VERTICAL_LR = 1 << 2,
diff --git a/components/style/restyle_hints.rs b/components/style/restyle_hints.rs
index e116594b02f..72a09ba4029 100644
--- a/components/style/restyle_hints.rs
+++ b/components/style/restyle_hints.rs
@@ -20,7 +20,7 @@ use string_cache::{Atom, Namespace};
/// short-circuit work we know is unnecessary.
bitflags! {
- flags RestyleHint: u8 {
+ pub flags RestyleHint: u8 {
#[doc = "Rerun selector matching on the element."]
const RESTYLE_SELF = 0x01,
#[doc = "Rerun selector matching on all of the element's descendants."]
diff --git a/components/util/Cargo.toml b/components/util/Cargo.toml
index 10f392e552d..4b9596c3860 100644
--- a/components/util/Cargo.toml
+++ b/components/util/Cargo.toml
@@ -23,7 +23,7 @@ js = {git = "https://github.com/servo/rust-mozjs", optional = true}
ipc-channel = {git = "https://github.com/servo/ipc-channel"}
app_units = {version = "0.2.3", features = ["plugins"]}
backtrace = "0.2.1"
-bitflags = "0.3"
+bitflags = "0.6.0"
deque = "0.3.1"
euclid = {version = "0.6.4", features = ["unstable", "plugins"]}
getopts = "0.2.11"
diff --git a/components/util/thread_state.rs b/components/util/thread_state.rs
index 5435e707986..25e77ecbb45 100644
--- a/components/util/thread_state.rs
+++ b/components/util/thread_state.rs
@@ -11,7 +11,7 @@
pub use self::imp::{enter, exit, get, initialize};
bitflags! {
- flags ThreadState: u32 {
+ pub flags ThreadState: u32 {
const SCRIPT = 0x01,
const LAYOUT = 0x02,
const PAINT = 0x04,
diff --git a/ports/cef/Cargo.lock b/ports/cef/Cargo.lock
index c8ef0e45e88..b724e54e5b6 100644
--- a/ports/cef/Cargo.lock
+++ b/ports/cef/Cargo.lock
@@ -124,11 +124,11 @@ dependencies = [
[[package]]
name = "bincode"
-version = "0.5.3"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -145,7 +145,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "bitflags"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -208,7 +208,7 @@ name = "caseless"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -250,7 +250,7 @@ dependencies = [
[[package]]
name = "cmake"
-version = "0.1.14"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gcc 0.3.26 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -421,7 +421,7 @@ dependencies = [
name = "devtools_traits"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -530,7 +530,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -553,7 +553,7 @@ version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"make-cmd 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -567,7 +567,7 @@ dependencies = [
[[package]]
name = "fnv"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -631,12 +631,12 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"azure 0.4.3 (git+https://github.com/servo/rust-azure)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"gfx_traits 0.0.1",
"harfbuzz-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -723,7 +723,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
name = "glutin_app"
version = "0.0.1"
dependencies = [
- "bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"compositing 0.0.1",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"gleam 0.2.15 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -755,7 +755,7 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -763,8 +763,8 @@ name = "hbs-builder"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "cmake 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cmake 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -916,7 +916,7 @@ name = "ipc-channel"
version = "0.2.2"
source = "git+https://github.com/servo/ipc-channel#e43fb22c431740a9bc54ce96caebd0e67d1a0586"
dependencies = [
- "bincode 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bincode 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -997,11 +997,11 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"azure 0.4.3 (git+https://github.com/servo/rust-azure)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas_traits 0.0.1",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx 0.0.1",
"gfx_traits 0.0.1",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1018,7 +1018,7 @@ dependencies = [
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"script_traits 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1098,7 +1098,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gcc 0.3.26 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1194,7 +1194,7 @@ dependencies = [
name = "msg"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1427,7 +1427,7 @@ dependencies = [
"gdi32-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libressl-pnacl-sys 2.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"user32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1492,7 +1492,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pkg-config"
-version = "0.3.5"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1532,7 +1532,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"profile_traits 0.0.1",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1624,18 +1624,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "regex"
-version = "0.1.55"
+version = "0.1.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"aho-corasick 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"memchr 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex-syntax 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex-syntax 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "thread_local 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
"utf8-ranges 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "regex-syntax"
-version = "0.2.5"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1653,11 +1654,8 @@ dependencies = [
[[package]]
name = "scoped_threadpool"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rustc_version 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
[[package]]
name = "script"
@@ -1665,7 +1663,7 @@ version = "0.0.1"
dependencies = [
"angle 0.1.0 (git+https://github.com/emilio/angle?branch=servo)",
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
"caseless 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1673,7 +1671,7 @@ dependencies = [
"devtools_traits 0.0.1",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx_traits 0.0.1",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1684,6 +1682,7 @@ dependencies = [
"js 0.1.2 (git+https://github.com/servo/rust-mozjs)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "mime 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1695,10 +1694,10 @@ dependencies = [
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"ref_filter_map 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ref_slice 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1741,12 +1740,12 @@ dependencies = [
[[package]]
name = "selectors"
-version = "0.5.5"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1796,7 +1795,6 @@ dependencies = [
name = "servo"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"browserhtml 0.1.4 (git+https://github.com/browserhtml/browserhtml?branch=gh-pages)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
@@ -1852,7 +1850,7 @@ version = "2.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"expat-sys 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"servo-freetype-sys 2.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1861,7 +1859,7 @@ name = "servo-freetype-sys"
version = "2.4.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1967,11 +1965,11 @@ name = "style"
version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1980,7 +1978,7 @@ dependencies = [
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2003,7 +2001,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2054,6 +2052,23 @@ dependencies = [
]
[[package]]
+name = "thread-id"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "kernel32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "thread_local"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "thread-id 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "threadpool"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2166,7 +2181,7 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2261,7 +2276,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"hyper 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -2276,7 +2291,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"plugins 0.0.1",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"util 0.0.1",
@@ -2294,7 +2309,7 @@ dependencies = [
"core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"gleam 0.2.15 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)",
@@ -2302,7 +2317,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"offscreen_gl_context 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "scoped_threadpool 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "scoped_threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)",
"webrender_traits 0.1.0 (git+https://github.com/servo/webrender_traits)",
]
@@ -2364,7 +2379,7 @@ version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
diff --git a/ports/geckolib/Cargo.lock b/ports/geckolib/Cargo.lock
index bdb596ceafa..39728767eab 100644
--- a/ports/geckolib/Cargo.lock
+++ b/ports/geckolib/Cargo.lock
@@ -3,7 +3,6 @@ name = "geckoservo"
version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -13,7 +12,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
"style 0.0.1",
@@ -62,28 +61,18 @@ dependencies = [
[[package]]
name = "bincode"
-version = "0.5.3"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "bitflags"
-version = "0.3.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "bitflags"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "bitflags"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -207,7 +196,7 @@ dependencies = [
[[package]]
name = "fnv"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -243,7 +232,7 @@ name = "ipc-channel"
version = "0.2.2"
source = "git+https://github.com/servo/ipc-channel#e43fb22c431740a9bc54ce96caebd0e67d1a0586"
dependencies = [
- "bincode 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bincode 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -424,12 +413,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "selectors"
-version = "0.5.5"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -485,11 +474,11 @@ name = "style"
version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -498,7 +487,7 @@ dependencies = [
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -521,7 +510,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -583,7 +572,7 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/ports/geckolib/Cargo.toml b/ports/geckolib/Cargo.toml
index 68dab0cc252..1984b181ec6 100644
--- a/ports/geckolib/Cargo.toml
+++ b/ports/geckolib/Cargo.toml
@@ -12,7 +12,6 @@ crate-type = ["staticlib"]
[dependencies]
app_units = {version = "0.2.3", features = ["plugins"]}
-bitflags = "0.4"
cssparser = {version = "0.5.4", features = ["heap_size", "serde-serialization"]}
euclid = {version = "0.6.4", features = ["plugins"]}
heapsize = "0.3.0"
diff --git a/ports/geckolib/lib.rs b/ports/geckolib/lib.rs
index 5a2a468d319..9d7ebdf3251 100644
--- a/ports/geckolib/lib.rs
+++ b/ports/geckolib/lib.rs
@@ -14,8 +14,6 @@
extern crate app_units;
#[macro_use]
-extern crate bitflags;
-#[macro_use]
extern crate cssparser;
extern crate euclid;
extern crate heapsize;
diff --git a/ports/glutin/Cargo.toml b/ports/glutin/Cargo.toml
index cba640ac274..5998f23999c 100644
--- a/ports/glutin/Cargo.toml
+++ b/ports/glutin/Cargo.toml
@@ -8,7 +8,7 @@ name = "glutin_app"
path = "lib.rs"
[dependencies]
-bitflags = "0.4"
+bitflags = "0.6.0"
url = {version = "1.0.0", features = ["heap_size"]}
gleam = "0.2.8"
euclid = {version = "0.6.4", features = ["plugins"]}
diff --git a/ports/gonk/Cargo.lock b/ports/gonk/Cargo.lock
index 2c953c70829..ccbf31025ca 100644
--- a/ports/gonk/Cargo.lock
+++ b/ports/gonk/Cargo.lock
@@ -117,11 +117,11 @@ dependencies = [
[[package]]
name = "bincode"
-version = "0.5.3"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -138,7 +138,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "bitflags"
-version = "0.5.0"
+version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -201,7 +201,7 @@ name = "caseless"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-normalization 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -243,7 +243,7 @@ dependencies = [
[[package]]
name = "cmake"
-version = "0.1.14"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gcc 0.3.26 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -414,7 +414,7 @@ dependencies = [
name = "devtools_traits"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -523,7 +523,7 @@ version = "0.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -556,7 +556,7 @@ version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"make-cmd 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -570,7 +570,7 @@ dependencies = [
[[package]]
name = "fnv"
-version = "1.0.0"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -634,12 +634,12 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"azure 0.4.3 (git+https://github.com/servo/rust-azure)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-foundation 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"gfx_traits 0.0.1",
"harfbuzz-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -738,7 +738,7 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -746,8 +746,8 @@ name = "hbs-builder"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "cmake 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "cmake 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -899,7 +899,7 @@ name = "ipc-channel"
version = "0.2.2"
source = "git+https://github.com/servo/ipc-channel#e43fb22c431740a9bc54ce96caebd0e67d1a0586"
dependencies = [
- "bincode 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bincode 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"byteorder 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -980,11 +980,11 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"azure 0.4.3 (git+https://github.com/servo/rust-azure)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas_traits 0.0.1",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx 0.0.1",
"gfx_traits 0.0.1",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1001,7 +1001,7 @@ dependencies = [
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"script_traits 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1081,7 +1081,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"gcc 0.3.26 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1177,7 +1177,7 @@ dependencies = [
name = "msg"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1410,7 +1410,7 @@ dependencies = [
"gdi32-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"libressl-pnacl-sys 2.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"user32-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1475,7 +1475,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "pkg-config"
-version = "0.3.5"
+version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1515,7 +1515,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"profile_traits 0.0.1",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_json 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1607,18 +1607,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "regex"
-version = "0.1.55"
+version = "0.1.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"aho-corasick 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
"memchr 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex-syntax 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex-syntax 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "thread_local 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
"utf8-ranges 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
name = "regex-syntax"
-version = "0.2.5"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
@@ -1636,11 +1637,8 @@ dependencies = [
[[package]]
name = "scoped_threadpool"
-version = "0.1.6"
+version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "rustc_version 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
-]
[[package]]
name = "script"
@@ -1648,7 +1646,7 @@ version = "0.0.1"
dependencies = [
"angle 0.1.0 (git+https://github.com/emilio/angle?branch=servo)",
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
"caseless 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1656,7 +1654,7 @@ dependencies = [
"devtools_traits 0.0.1",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"gfx_traits 0.0.1",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1667,6 +1665,7 @@ dependencies = [
"js 0.1.2 (git+https://github.com/servo/rust-mozjs)",
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "mime 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1678,10 +1677,10 @@ dependencies = [
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"ref_filter_map 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
"ref_slice 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "regex 0.1.55 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.69 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"script_traits 0.0.1",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
"string_cache 0.2.13 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1724,12 +1723,12 @@ dependencies = [
[[package]]
name = "selectors"
-version = "0.5.5"
+version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1779,7 +1778,6 @@ dependencies = [
name = "servo"
version = "0.0.1"
dependencies = [
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
"browserhtml 0.1.4 (git+https://github.com/browserhtml/browserhtml?branch=gh-pages)",
"canvas 0.0.1",
"canvas_traits 0.0.1",
@@ -1833,7 +1831,7 @@ version = "2.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"expat-sys 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
"servo-freetype-sys 2.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
]
@@ -1842,7 +1840,7 @@ name = "servo-freetype-sys"
version = "2.4.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@@ -1948,11 +1946,11 @@ name = "style"
version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"cssparser 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
"encoding 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
"heapsize_plugin 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1961,7 +1959,7 @@ dependencies = [
"num-traits 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"smallvec 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1984,7 +1982,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"plugins 0.0.1",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "selectors 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "selectors 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_macros 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
"url 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2035,6 +2033,23 @@ dependencies = [
]
[[package]]
+name = "thread-id"
+version = "2.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "kernel32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
+name = "thread_local"
+version = "0.2.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "thread-id 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+]
+
+[[package]]
name = "threadpool"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2147,7 +2162,7 @@ version = "0.0.1"
dependencies = [
"app_units 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"backtrace 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitflags 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
"deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
"getopts 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2245,7 +2260,7 @@ dependencies = [
"core-graphics 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
"core-text 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
"euclid 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "fnv 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "fnv 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
"freetype 0.1.0 (git+https://github.com/servo/rust-freetype)",
"gleam 0.2.15 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.2.2 (git+https://github.com/servo/ipc-channel)",
@@ -2253,7 +2268,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"num 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
"offscreen_gl_context 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "scoped_threadpool 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "scoped_threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"time 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)",
"webrender_traits 0.1.0 (git+https://github.com/servo/webrender_traits)",
]
@@ -2315,7 +2330,7 @@ version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"libc 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
- "pkg-config 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "pkg-config 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
diff --git a/tests/unit/script/dom/bindings.rs b/tests/unit/script/dom/bindings.rs
index e6742107136..7dfb308e1ed 100644
--- a/tests/unit/script/dom/bindings.rs
+++ b/tests/unit/script/dom/bindings.rs
@@ -10,8 +10,8 @@ fn test_byte_string_move() {
let mut byte_vec = byte_str.bytes();
assert_eq!(byte_vec, "servo".as_bytes());
- assert_eq!(*byte_str, []);
+ assert_eq!(&*byte_str, &*Vec::<u8>::new());
byte_vec = byte_str.into();
- assert_eq!(byte_vec, Vec::new());
+ assert_eq!(byte_vec, Vec::<u8>::new());
}
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 4fbeada837c..35840679f11 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -35264,6 +35264,12 @@
"path": "html/dom/documents/dom-tree-accessors/Document.body.html",
"url": "/html/dom/documents/dom-tree-accessors/Document.body.html"
}
+ ],
+ "html/semantics/forms/form-submission-0/submit-entity-body.html": [
+ {
+ "path": "html/semantics/forms/form-submission-0/submit-entity-body.html",
+ "url": "/html/semantics/forms/form-submission-0/submit-entity-body.html"
+ }
]
}
},
diff --git a/tests/wpt/web-platform-tests/common/form-submission.py b/tests/wpt/web-platform-tests/common/form-submission.py
new file mode 100644
index 00000000000..eb9c654444b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/common/form-submission.py
@@ -0,0 +1,12 @@
+def main(request, response):
+ if request.headers.get('Content-Type') == 'application/x-www-form-urlencoded':
+ if request.body == 'foo=bara':
+ return 'OK'
+ else:
+ return 'FAIL'
+ else:
+ if request.POST.first('foo') == 'bar':
+ return 'OK'
+ else:
+ return 'FAIL'
+
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body.html b/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body.html
new file mode 100644
index 00000000000..a94244c7e67
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/submit-entity-body.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+var simple_tests = [
+ {
+ name: "form submission should navigate to url with x-www-form-urlencoded",
+ input: "<input name=foo value=bara>",
+ enctype: "application/x-www-form-urlencoded"
+ },
+ {
+ name: "form submission should navigate to url with multipart/form-data",
+ input: "<textarea name=foo>bar</textarea>",
+ enctype: "multipart/form-data"
+ },
+];
+simple_tests.forEach(function(test_obj) {
+ test_obj.test = async_test(test_obj.name);
+});
+function run_simple_test() {
+ if (simple_tests.length == 0) {
+ return;
+ }
+ var test_obj = simple_tests.pop();
+ var t = test_obj.test;
+ var testframe = document.getElementById("testframe");
+ var testdocument = testframe.contentWindow.document;
+ testdocument.body.innerHTML =
+ "<form id=testform method=post action=\"form-submission.py\" enctype=\"" + test_obj.enctype + "\">" +
+ test_obj.input +
+ "</form>";
+ testframe.onload = function() {
+ t.step(function (){
+ var response = testframe.contentDocument.documentElement.textContent;
+ assert_equals(response, "OK");
+ });
+ t.done();
+ run_simple_test();
+ };
+ testdocument.getElementById("testform").submit();
+}
+</script>
+<iframe id=testframe src="/common/blank.html" onload="run_simple_test();"></iframe>