зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #13292 - Implement ExtendableEvent as base type for ServiceWorker events (from creativcoder:extendable); r=jdm
<!-- Please describe your changes on the following line: --> r? @jdm --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [ ] These changes fix #__ (github issue number if applicable). <!-- Either: --> - [X] These changes do not require tests because refactor <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> Source-Repo: https://github.com/servo/servo Source-Revision: 83f687a7be2d4cdda11f5ec03133c23d6d621e78
This commit is contained in:
Родитель
459bcb8d99
Коммит
0e57304e5b
|
@ -0,0 +1,68 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
use dom::bindings::codegen::Bindings::EventBinding::EventMethods;
|
||||
use dom::bindings::codegen::Bindings::ExtendableEventBinding;
|
||||
use dom::bindings::error::{Error, ErrorResult, Fallible};
|
||||
use dom::bindings::global::GlobalRef;
|
||||
use dom::bindings::inheritance::Castable;
|
||||
use dom::bindings::js::Root;
|
||||
use dom::bindings::reflector::reflect_dom_object;
|
||||
use dom::bindings::str::DOMString;
|
||||
use dom::event::Event;
|
||||
use js::jsapi::{HandleValue, JSContext};
|
||||
use string_cache::Atom;
|
||||
|
||||
// https://w3c.github.io/ServiceWorker/#extendable-event
|
||||
#[dom_struct]
|
||||
pub struct ExtendableEvent {
|
||||
event: Event,
|
||||
extensions_allowed: bool
|
||||
}
|
||||
|
||||
impl ExtendableEvent {
|
||||
pub fn new_inherited() -> ExtendableEvent {
|
||||
ExtendableEvent {
|
||||
event: Event::new_inherited(),
|
||||
extensions_allowed: true
|
||||
}
|
||||
}
|
||||
pub fn new(global: GlobalRef,
|
||||
type_: Atom,
|
||||
bubbles: bool,
|
||||
cancelable: bool)
|
||||
-> Root<ExtendableEvent> {
|
||||
let ev = reflect_dom_object(box ExtendableEvent::new_inherited(), global, ExtendableEventBinding::Wrap);
|
||||
{
|
||||
let event = ev.upcast::<Event>();
|
||||
event.init_event(type_, bubbles, cancelable);
|
||||
}
|
||||
ev
|
||||
}
|
||||
|
||||
pub fn Constructor(global: GlobalRef,
|
||||
type_: DOMString,
|
||||
init: &ExtendableEventBinding::ExtendableEventInit) -> Fallible<Root<ExtendableEvent>> {
|
||||
Ok(ExtendableEvent::new(global,
|
||||
Atom::from(type_),
|
||||
init.parent.bubbles,
|
||||
init.parent.cancelable))
|
||||
}
|
||||
|
||||
// https://w3c.github.io/ServiceWorker/#wait-until-method
|
||||
pub fn WaitUntil(&self, _cx: *mut JSContext, val: HandleValue) -> ErrorResult {
|
||||
// Step 1
|
||||
if !self.extensions_allowed {
|
||||
return Err(Error::InvalidState);
|
||||
}
|
||||
// Step 2
|
||||
// TODO add a extended_promises array to enqueue the `val`
|
||||
Ok(())
|
||||
}
|
||||
|
||||
// https://dom.spec.whatwg.org/#dom-event-istrusted
|
||||
pub fn IsTrusted(&self) -> bool {
|
||||
self.event.IsTrusted()
|
||||
}
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
use dom::bindings::codegen::Bindings::ExtendableMessageEventBinding;
|
||||
use dom::bindings::codegen::Bindings::ExtendableMessageEventBinding::ExtendableMessageEventMethods;
|
||||
use dom::bindings::error::Fallible;
|
||||
use dom::bindings::global::GlobalRef;
|
||||
use dom::bindings::inheritance::Castable;
|
||||
use dom::bindings::js::Root;
|
||||
use dom::bindings::reflector::reflect_dom_object;
|
||||
use dom::bindings::str::DOMString;
|
||||
use dom::event::Event;
|
||||
use dom::eventtarget::EventTarget;
|
||||
use dom::extendableevent::ExtendableEvent;
|
||||
use js::jsapi::{HandleValue, Heap, JSContext};
|
||||
use js::jsval::JSVal;
|
||||
use std::default::Default;
|
||||
use string_cache::Atom;
|
||||
|
||||
#[dom_struct]
|
||||
pub struct ExtendableMessageEvent {
|
||||
event: ExtendableEvent,
|
||||
data: Heap<JSVal>,
|
||||
origin: DOMString,
|
||||
lastEventId: DOMString,
|
||||
}
|
||||
|
||||
impl ExtendableMessageEvent {
|
||||
pub fn new(global: GlobalRef, type_: Atom,
|
||||
bubbles: bool, cancelable: bool,
|
||||
data: HandleValue, origin: DOMString, lastEventId: DOMString)
|
||||
-> Root<ExtendableMessageEvent> {
|
||||
let mut ev = box ExtendableMessageEvent {
|
||||
event: ExtendableEvent::new_inherited(),
|
||||
data: Heap::default(),
|
||||
origin: origin,
|
||||
lastEventId: lastEventId,
|
||||
};
|
||||
ev.data.set(data.get());
|
||||
let ev = reflect_dom_object(ev, global, ExtendableMessageEventBinding::Wrap);
|
||||
{
|
||||
let event = ev.upcast::<Event>();
|
||||
event.init_event(type_, bubbles, cancelable);
|
||||
}
|
||||
ev
|
||||
}
|
||||
|
||||
pub fn Constructor(global: GlobalRef,
|
||||
type_: DOMString,
|
||||
init: &ExtendableMessageEventBinding::ExtendableMessageEventInit)
|
||||
-> Fallible<Root<ExtendableMessageEvent>> {
|
||||
rooted!(in(global.get_cx()) let data = init.data);
|
||||
let ev = ExtendableMessageEvent::new(global, Atom::from(type_),
|
||||
init.parent.parent.bubbles,
|
||||
init.parent.parent.cancelable,
|
||||
data.handle(),
|
||||
init.origin.clone().unwrap(),
|
||||
init.lastEventId.clone().unwrap());
|
||||
Ok(ev)
|
||||
}
|
||||
}
|
||||
|
||||
impl ExtendableMessageEvent {
|
||||
pub fn dispatch_jsval(target: &EventTarget,
|
||||
scope: GlobalRef,
|
||||
message: HandleValue) {
|
||||
let Extendablemessageevent = ExtendableMessageEvent::new(
|
||||
scope, atom!("message"), false, false, message,
|
||||
DOMString::new(), DOMString::new());
|
||||
Extendablemessageevent.upcast::<Event>().fire(target);
|
||||
}
|
||||
}
|
||||
|
||||
impl ExtendableMessageEventMethods for ExtendableMessageEvent {
|
||||
// https://w3c.github.io/ServiceWorker/#extendablemessage-event-data-attribute
|
||||
fn Data(&self, _cx: *mut JSContext) -> JSVal {
|
||||
self.data.get()
|
||||
}
|
||||
|
||||
// https://w3c.github.io/ServiceWorker/#extendablemessage-event-origin-attribute
|
||||
fn Origin(&self) -> DOMString {
|
||||
self.origin.clone()
|
||||
}
|
||||
|
||||
// https://w3c.github.io/ServiceWorker/#extendablemessage-event-lasteventid-attribute
|
||||
fn LastEventId(&self) -> DOMString {
|
||||
self.lastEventId.clone()
|
||||
}
|
||||
|
||||
// https://dom.spec.whatwg.org/#dom-event-istrusted
|
||||
fn IsTrusted(&self) -> bool {
|
||||
self.event.IsTrusted()
|
||||
}
|
||||
}
|
|
@ -267,6 +267,8 @@ pub mod event;
|
|||
pub mod eventdispatcher;
|
||||
pub mod eventsource;
|
||||
pub mod eventtarget;
|
||||
pub mod extendableevent;
|
||||
pub mod extendablemessageevent;
|
||||
pub mod file;
|
||||
pub mod filelist;
|
||||
pub mod filereader;
|
||||
|
|
|
@ -13,8 +13,10 @@ use dom::bindings::inheritance::Castable;
|
|||
use dom::bindings::js::{Root, RootCollection};
|
||||
use dom::bindings::reflector::Reflectable;
|
||||
use dom::bindings::str::DOMString;
|
||||
use dom::event::Event;
|
||||
use dom::eventtarget::EventTarget;
|
||||
use dom::messageevent::MessageEvent;
|
||||
use dom::extendableevent::ExtendableEvent;
|
||||
use dom::extendablemessageevent::ExtendableMessageEvent;
|
||||
use dom::workerglobalscope::WorkerGlobalScope;
|
||||
use ipc_channel::ipc::{self, IpcSender, IpcReceiver};
|
||||
use ipc_channel::router::ROUTER;
|
||||
|
@ -195,7 +197,7 @@ impl ServiceWorkerGlobalScope {
|
|||
let _ = timer_chan.send(());
|
||||
});
|
||||
|
||||
scope.upcast::<EventTarget>().fire_simple_event("activate");
|
||||
global.dispatch_activate();
|
||||
let reporter_name = format!("service-worker-reporter-{}", random::<u64>());
|
||||
scope.mem_profiler_chan().run_with_memory_reporting(|| {
|
||||
while let Ok(event) = global.receive_event() {
|
||||
|
@ -243,7 +245,7 @@ impl ServiceWorkerGlobalScope {
|
|||
let _ac = JSAutoCompartment::new(scope.get_cx(), scope.reflector().get_jsobject().get());
|
||||
rooted!(in(scope.get_cx()) let mut message = UndefinedValue());
|
||||
data.read(GlobalRef::Worker(scope), message.handle_mut());
|
||||
MessageEvent::dispatch_jsval(target, GlobalRef::Worker(scope), message.handle());
|
||||
ExtendableMessageEvent::dispatch_jsval(target, GlobalRef::Worker(scope), message.handle());
|
||||
},
|
||||
CommonWorker(WorkerScriptMsg::Common(CommonScriptMsg::RunnableMsg(_, runnable))) => {
|
||||
runnable.handler()
|
||||
|
@ -309,6 +311,13 @@ impl ServiceWorkerGlobalScope {
|
|||
sender: self.own_sender.clone()
|
||||
}
|
||||
}
|
||||
|
||||
fn dispatch_activate(&self) {
|
||||
let global = GlobalRef::Worker(self.upcast::<WorkerGlobalScope>());
|
||||
let event = ExtendableEvent::new(global, atom!("activate"), false, false);
|
||||
let event = (&*event).upcast::<Event>();
|
||||
self.upcast::<EventTarget>().dispatch_event(event);
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://w3c.github.io/ServiceWorker/#extendable-event
|
||||
|
||||
[Constructor(DOMString type,
|
||||
optional ExtendableEventInit eventInitDict),
|
||||
Exposed=ServiceWorker,
|
||||
Pref="dom.serviceworker.enabled"]
|
||||
interface ExtendableEvent : Event {
|
||||
[Throws] void waitUntil(/*Promise<*/any/*>*/ f);
|
||||
};
|
||||
|
||||
dictionary ExtendableEventInit : EventInit {
|
||||
// Defined for the forward compatibility across the derived events
|
||||
};
|
|
@ -0,0 +1,24 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://w3c.github.io/ServiceWorker/#extendablemessage-event-section
|
||||
|
||||
[Constructor(DOMString type, optional ExtendableMessageEventInit eventInitDict),
|
||||
Exposed=ServiceWorker,
|
||||
Pref="dom.serviceworker.enabled"]
|
||||
interface ExtendableMessageEvent : ExtendableEvent {
|
||||
readonly attribute any data;
|
||||
readonly attribute DOMString origin;
|
||||
readonly attribute DOMString lastEventId;
|
||||
// [SameObject] readonly attribute (Client or ServiceWorker /*or MessagePort*/)? source;
|
||||
// readonly attribute FrozenArray<MessagePort>? ports;
|
||||
};
|
||||
|
||||
dictionary ExtendableMessageEventInit : ExtendableEventInit {
|
||||
any data;
|
||||
DOMString origin;
|
||||
DOMString lastEventId;
|
||||
// (Client or ServiceWorker /*or MessagePort*/)? source;
|
||||
// sequence<MessagePort>? ports;
|
||||
};
|
|
@ -819,7 +819,7 @@ dependencies = [
|
|||
"servo-fontconfig 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"simd 0.1.1 (git+https://github.com/huonw/simd)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -985,7 +985,7 @@ dependencies = [
|
|||
"phf 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"phf_codegen 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"tendril 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
@ -1192,7 +1192,7 @@ dependencies = [
|
|||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_macros 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"unicode-bidi 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -1988,7 +1988,7 @@ dependencies = [
|
|||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"tinyfiledialogs 0.1.0 (git+https://github.com/jdm/tinyfiledialogs)",
|
||||
|
@ -2022,7 +2022,7 @@ dependencies = [
|
|||
"range 0.0.1",
|
||||
"script_traits 0.0.1",
|
||||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"url 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"util 0.0.1",
|
||||
|
@ -2079,7 +2079,7 @@ dependencies = [
|
|||
"heapsize 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"heapsize_plugin 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -2256,7 +2256,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "string_cache"
|
||||
version = "0.2.27"
|
||||
version = "0.2.28"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"debug_unreachable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -2296,7 +2296,7 @@ dependencies = [
|
|||
"serde 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_macros 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style_traits 0.0.1",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"url 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -2313,7 +2313,7 @@ dependencies = [
|
|||
"euclid 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"url 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -2765,7 +2765,7 @@ dependencies = [
|
|||
"phf 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"phf_codegen 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"tendril 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
@ -2951,7 +2951,7 @@ dependencies = [
|
|||
"checksum simd 0.1.1 (git+https://github.com/huonw/simd)" = "<none>"
|
||||
"checksum smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "fcc8d19212aacecf95e4a7a2179b26f7aeb9732a915cf01f05b0d3e044865410"
|
||||
"checksum solicit 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "172382bac9424588d7840732b250faeeef88942e37b6e35317dce98cafdd75b2"
|
||||
"checksum string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)" = "8124780714454740877246380f6c12f5b0ed40975f8749eb28767087662cdbd5"
|
||||
"checksum string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)" = "5e6c7f40dbb924dc17fa0cb1b5f72e8e2498ecf6a78c5e2029d9b89b4c3551fc"
|
||||
"checksum target_build_utils 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a1be18d4d908e4e5697908de04fdd5099505463fc8eaf1ceb8133ae486936aa"
|
||||
"checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6"
|
||||
"checksum tempfile 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9270837a93bad1b1dac18fe67e786b3c960513af86231f6f4f57fddd594ff0c8"
|
||||
|
|
|
@ -735,7 +735,7 @@ dependencies = [
|
|||
"servo-fontconfig 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"simd 0.1.1 (git+https://github.com/huonw/simd)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -892,7 +892,7 @@ dependencies = [
|
|||
"phf 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"phf_codegen 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"tendril 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
@ -1099,7 +1099,7 @@ dependencies = [
|
|||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_macros 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"style_traits 0.0.1",
|
||||
"unicode-bidi 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -1839,7 +1839,7 @@ dependencies = [
|
|||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"tinyfiledialogs 0.1.0 (git+https://github.com/jdm/tinyfiledialogs)",
|
||||
|
@ -1873,7 +1873,7 @@ dependencies = [
|
|||
"range 0.0.1",
|
||||
"script_traits 0.0.1",
|
||||
"selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style 0.0.1",
|
||||
"url 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"util 0.0.1",
|
||||
|
@ -1920,7 +1920,7 @@ dependencies = [
|
|||
"heapsize 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"heapsize_plugin 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -2139,7 +2139,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "string_cache"
|
||||
version = "0.2.27"
|
||||
version = "0.2.28"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"debug_unreachable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -2179,7 +2179,7 @@ dependencies = [
|
|||
"serde 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_macros 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"style_traits 0.0.1",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"url 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -2625,7 +2625,7 @@ dependencies = [
|
|||
"phf 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"phf_codegen 0.7.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"tendril 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
@ -2805,7 +2805,7 @@ dependencies = [
|
|||
"checksum simd 0.1.1 (git+https://github.com/huonw/simd)" = "<none>"
|
||||
"checksum smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "fcc8d19212aacecf95e4a7a2179b26f7aeb9732a915cf01f05b0d3e044865410"
|
||||
"checksum solicit 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "172382bac9424588d7840732b250faeeef88942e37b6e35317dce98cafdd75b2"
|
||||
"checksum string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)" = "8124780714454740877246380f6c12f5b0ed40975f8749eb28767087662cdbd5"
|
||||
"checksum string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)" = "5e6c7f40dbb924dc17fa0cb1b5f72e8e2498ecf6a78c5e2029d9b89b4c3551fc"
|
||||
"checksum target_build_utils 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a1be18d4d908e4e5697908de04fdd5099505463fc8eaf1ceb8133ae486936aa"
|
||||
"checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6"
|
||||
"checksum tempfile 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9270837a93bad1b1dac18fe67e786b3c960513af86231f6f4f57fddd594ff0c8"
|
||||
|
|
|
@ -325,7 +325,7 @@ dependencies = [
|
|||
"cssparser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"fnv 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"matches 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -340,7 +340,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||
|
||||
[[package]]
|
||||
name = "string_cache"
|
||||
version = "0.2.27"
|
||||
version = "0.2.28"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"debug_unreachable 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
|
@ -542,7 +542,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||
"checksum selectors 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1f844a32e73a0d8e59a76036751fcb5581ca1ded4f2f2f3dc21720a80ba908af"
|
||||
"checksum serde 0.8.8 (registry+https://github.com/rust-lang/crates.io-index)" = "8523fd515099dac5b5abd25b0b9f9709d40eedf03f72ca519903bf138a6577be"
|
||||
"checksum smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "fcc8d19212aacecf95e4a7a2179b26f7aeb9732a915cf01f05b0d3e044865410"
|
||||
"checksum string_cache 0.2.27 (registry+https://github.com/rust-lang/crates.io-index)" = "8124780714454740877246380f6c12f5b0ed40975f8749eb28767087662cdbd5"
|
||||
"checksum string_cache 0.2.28 (registry+https://github.com/rust-lang/crates.io-index)" = "5e6c7f40dbb924dc17fa0cb1b5f72e8e2498ecf6a78c5e2029d9b89b4c3551fc"
|
||||
"checksum thread-id 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a9539db560102d1cef46b8b78ce737ff0bb64e7e18d35b2a5688f7d097d0ff03"
|
||||
"checksum thread_local 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "55dd963dbaeadc08aa7266bf7f91c3154a7805e32bb94b820b769d2ef3b4744d"
|
||||
"checksum time 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)" = "3c7ec6d62a20df54e07ab3b78b9a3932972f4b7981de295563686849eb3989af"
|
||||
|
|
Загрузка…
Ссылка в новой задаче