[package] name = "script" build = "build.rs" version.workspace = true authors.workspace = true license.workspace = true edition.workspace = true publish.workspace = true rust-version.workspace = true [lib] name = "script" path = "lib.rs" [features] bluetooth = ['bluetooth_traits', 'script_bindings/bluetooth'] crown = ['js/crown'] debugmozjs = ['js/debugmozjs'] jitspew = ['js/jitspew'] profilemozjs = ['js/profilemozjs'] tracing = ["dep:tracing", "script_bindings/tracing"] webgl_backtrace = ["canvas_traits/webgl_backtrace"] js_backtrace = [] refcell_backtrace = ["accountable-refcell"] webxr = ["webxr-api", "script_bindings/webxr"] webgpu = ["script_bindings/webgpu", "script_traits/webgpu"] [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(crown)'] } unsafe_op_in_unsafe_fn = { level = "allow" } [dependencies] accountable-refcell = { workspace = true, optional = true } aes = { workspace = true } aes-gcm = { workspace = true } aes-kw = { workspace = true } app_units = { workspace = true } arrayvec = { workspace = true } atomic_refcell = { workspace = true } aws-lc-rs = { workspace = true } background_hang_monitor_api = { workspace = true } backtrace = { workspace = true } base = { workspace = true } base64 = { workspace = true } bincode = { workspace = true } bitflags = { workspace = true } bluetooth_traits = { workspace = true, optional = true } canvas_traits = { workspace = true } cbc = { workspace = true } chrono = { workspace = true } cipher = { workspace = true } constellation_traits = { workspace = true } content-security-policy = { workspace = true } cookie = { workspace = true } crossbeam-channel = { workspace = true } cssparser = { workspace = true } ctr = { workspace = true } data-url = { workspace = true } deny_public_fields = { path = "../deny_public_fields" } devtools_traits = { workspace = true } dom_struct = { path = "../dom_struct" } domobject_derive = { path = "../domobject_derive" } embedder_traits = { workspace = true } encoding_rs = { workspace = true } euclid = { workspace = true } fnv = { workspace = true } fonts = { path = "../fonts" } fonts_traits = { workspace = true } fxhash = { workspace = true } glow = { workspace = true } headers = { workspace = true } html5ever = { workspace = true } http = { workspace = true } hyper_serde = { workspace = true } image = { workspace = true } indexmap = { workspace = true } ipc-channel = { workspace = true } itertools = { workspace = true } js = { workspace = true } jstraceable_derive = { path = "../jstraceable_derive" } keyboard-types = { workspace = true } libc = { workspace = true } log = { workspace = true } malloc_size_of = { workspace = true } malloc_size_of_derive = { workspace = true } media = { path = "../media" } metrics = { path = "../metrics" } mime = { workspace = true } mime_guess = { workspace = true } net_traits = { workspace = true } nom = "7.1.3" num-traits = { workspace = true } num_cpus = { workspace = true } parking_lot = { workspace = true } percent-encoding = { workspace = true } phf = "0.11" pixels = { path = "../pixels" } profile_traits = { workspace = true } range = { path = "../range" } ref_filter_map = "1.0.1" regex = { workspace = true } script_bindings = { path = "../script_bindings" } script_layout_interface = { workspace = true } script_traits = { workspace = true } selectors = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } servo-media = { workspace = true } servo_allocator = { path = "../allocator" } servo_arc = { workspace = true } servo_config = { path = "../config" } servo_geometry = { path = "../geometry" } servo_rand = { path = "../rand" } servo_url = { path = "../url" } smallvec = { workspace = true, features = ["union"] } strum = { workspace = true } strum_macros = { workspace = true } stylo = { workspace = true } stylo_atoms = { workspace = true } stylo_dom = { workspace = true } stylo_malloc_size_of = { workspace = true } stylo_traits = { workspace = true } swapper = "0.1" tempfile = "3" tendril = { version = "0.4.1", features = ["encoding_rs"] } time = { workspace = true } timers = { path = "../timers" } tracing = { workspace = true, optional = true } unicode-bidi = { workspace = true } unicode-segmentation = { workspace = true } url = { workspace = true } utf-8 = "0.7" uuid = { workspace = true, features = ["serde"] } webdriver = { workspace = true } webgpu = { path = "../webgpu" } webrender_api = { workspace = true } webrender_traits = { workspace = true } webxr-api = { workspace = true, features = ["ipc"], optional = true } xml5ever = { workspace = true } [target.'cfg(not(target_os = "ios"))'.dependencies] mozangle = { workspace = true }