Files
servo/components/script/Cargo.toml
Jonathan Schwender 0ea42bc774 profile: Add instrumentation to startup related functions (#44456)
Follow-up to #44443.
This helps investigating the cold-start timeline, and could be used
by tooling to A/B compare branches affecting the cold-start time.

Additionally also change the `handle_request::select` span, so that we
can see the blocked time (which was probably what was intended), since
the actual time spent on recv after select is insignificant.

Testing: Tracing output is not covered by automatic tests.

---------

Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
2026-04-23 11:47:27 +00:00

181 lines
5.7 KiB
TOML

[package]
name = "servo-script"
build = "build.rs"
version.workspace = true
authors.workspace = true
license.workspace = true
edition.workspace = true
publish.workspace = true
rust-version.workspace = true
repository.workspace = true
description.workspace = true
[lib]
name = "script"
path = "lib.rs"
[features]
bluetooth = ['servo-bluetooth-traits', 'script_bindings/bluetooth']
crown = ['js/crown']
debugmozjs = ['js/debugmozjs']
gamepad = ["script_bindings/gamepad", "embedder_traits/gamepad"]
jitspew = ['js/jitspew']
js_backtrace = []
js_jit = ["js/jit"]
profilemozjs = ['js/profilemozjs']
refcell_backtrace = ["accountable-refcell"]
testbinding = ["script_bindings/testbinding"]
tracing = ["dep:tracing", "script_bindings/tracing"]
webgl_backtrace = ["servo-canvas-traits/webgl_backtrace"]
webgpu = [
"dep:webgpu_traits",
"dep:wgpu-core",
"dep:wgpu-types",
"script_bindings/webgpu",
"script_traits/webgpu",
]
webxr = ["gamepad", "webxr-api", "script_bindings/webxr"]
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(crown)'] }
[dependencies]
accountable-refcell = { workspace = true, optional = true }
aes = { workspace = true }
aes-gcm = { workspace = true }
aes-kw = { workspace = true }
app_units = { workspace = true }
argon2 = { workspace = true }
arrayvec = { workspace = true }
atomic_refcell = { workspace = true }
aws-lc-rs = { workspace = true }
backtrace = { workspace = true }
base64 = { workspace = true }
base64ct = { workspace = true }
bitflags = { workspace = true }
brotli = { workspace = true }
cbc = { workspace = true }
chacha20poly1305 = { workspace = true }
chardetng = { workspace = true }
chrono = { workspace = true }
cipher = { 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 = { workspace = true }
der = { workspace = true }
devtools_traits = { workspace = true }
digest = { workspace = true }
dom_struct = { workspace = true }
ecdsa = { workspace = true }
elliptic-curve = { workspace = true }
embedder_traits = { workspace = true }
encoding_rs = { workspace = true }
euclid = { workspace = true }
flate2 = { workspace = true }
fonts = { workspace = true }
fonts_traits = { workspace = true }
glow = { workspace = true }
headers = { workspace = true }
hkdf = { workspace = true }
html5ever = { workspace = true }
http = { workspace = true }
hyper_serde = { workspace = true }
icu_locid = { workspace = true }
indexmap = { workspace = true }
ipc-channel = { workspace = true }
itertools = { workspace = true }
js = { workspace = true }
jstraceable_derive = { workspace = true }
keyboard-types = { workspace = true }
layout_api = { workspace = true }
libc = { workspace = true }
log = { workspace = true }
malloc_size_of = { workspace = true }
malloc_size_of_derive = { workspace = true }
markup5ever = { workspace = true }
media = { workspace = true }
metrics = { workspace = true }
mime = { workspace = true }
mime-multipart-hyper1 = { workspace = true }
mime_guess = { workspace = true }
ml-dsa = { workspace = true }
ml-kem = { workspace = true }
net_traits = { workspace = true }
nom-rfc8288 = { workspace = true }
num-bigint-dig = { workspace = true }
num-traits = { workspace = true }
num_cpus = { workspace = true }
ocb3 = { workspace = true }
p256 = { workspace = true }
p384 = { workspace = true }
p521 = { workspace = true }
paint_api = { workspace = true }
parking_lot = { workspace = true }
percent-encoding = { workspace = true }
phf = "0.13"
pixels = { workspace = true }
pkcs8 = { workspace = true }
postcard = { workspace = true }
profile_traits = { workspace = true }
rand = { workspace = true }
regex = { workspace = true }
rsa = { workspace = true }
rustc-hash = { workspace = true }
script_bindings = { workspace = true }
script_traits = { workspace = true }
sec1 = { workspace = true }
selectors = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true, features = ["preserve_order"] }
servo-background-hang-monitor-api = { workspace = true }
servo-base = { workspace = true }
servo-bluetooth-traits = { workspace = true, optional = true }
servo-canvas-traits = { workspace = true }
servo-config = { workspace = true }
servo-constellation-traits = { workspace = true }
servo-geometry = { workspace = true }
servo-media = { workspace = true }
servo-tracing = { workspace = true }
servo-url = { workspace = true }
servo-wakelock = { workspace = true }
servo_arc = { workspace = true }
sha1 = { workspace = true }
sha2 = { workspace = true }
sha3 = { workspace = true }
smallvec = { workspace = true }
storage_traits = { workspace = true }
strum = { 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 = { workspace = true }
time = { workspace = true }
timers = { workspace = true }
tracing = { workspace = true, optional = true }
unicode-bidi = { workspace = true }
unicode-script = { workspace = true }
url = { workspace = true }
urlpattern = { workspace = true }
uuid = { workspace = true, features = ["serde"] }
web_atoms = "0.2.4"
webdriver = { workspace = true }
webgpu_traits = { workspace = true, optional = true }
webrender_api = { workspace = true }
webxr-api = { workspace = true, optional = true }
wgpu-core = { workspace = true, optional = true }
wgpu-types = { workspace = true, optional = true }
x25519-dalek = { workspace = true }
xml5ever = { workspace = true }
xpath = { workspace = true }
[target.'cfg(not(target_os = "ios"))'.dependencies]
mozangle = { workspace = true }