Sam
d5d400c7d6
script: Use CString for Error::Type and Error::Range ( #42576 )
...
Continuation of https://github.com/servo/servo/pull/42135 , switch
Error::Type and Error::Range to also use CStrings internally, as they
are converted to CString for throwing JS exceptions (other get thrown as
DomException object, which uses rust string internally).
Changes in script crate are mechanical.
Testing: Should be covered by WPT tests.
Part of #42126
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
2026-02-12 15:17:30 +00:00
webbeef
3225d19907
cargo: Bump rustc to 1.89 ( #36818 )
...
Update Rustc to 1.89.
Reviewable by commit.
Leftover work:
- #37330
- #38777
---------
Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com >
Co-authored-by: sagudev <16504129+sagudev@users.noreply.github.com >
2025-08-19 11:07:53 +00:00
Martin Robinson
8743a11ba4
tidy: Add a rule ensuring that // comments are followed by a space in Rust ( #38698 )
...
This shows up sometimes in code reviews, so it makes sense that tidy
enforces it. `rustfmt` supports this via comment normalization, but it
does many other things and is still an unstable feature (with bugs).
Testing: There are new tidy tests for this change.
Signed-off-by: Martin Robinson <mrobinson@igalia.com >
2025-08-18 12:09:09 +00:00
Sebastian C
cdf5fdd2b4
script: Refactor dom/headers to match spec better ( #36943 )
...
This includes removing an implementation of normalize for `ByteString`,
because it is effectively duplicated in net under
`trim_http_whitespace`. This is part of an attempt to cleanup and
centralize code for header parsing and manipulation.
Testing: Covered by existing WPT tests
Signed-off-by: Sebastian C <sebsebmc@gmail.com >
2025-05-21 19:07:32 +00:00
Vincent Ricard
6e97fc0bc4
Use spec compliant content-type extraction in more places and enable a <stylesheet> quirk ( #28321 )
...
This changes includes two semi-related things:
1. Fixes some specification compliance issues when parsing mime
types and charsets for `XMLHttpRequest`.
2. Implements a `<stylesheet>` parsing quirk involving mime types.
Testing: There are tests for these changes.
Signed-off-by: Martin Robinson <mrobinson@igalia.com >
Co-authored-by: Martin Robinson <mrobinson@igalia.com >
2025-05-19 11:38:01 +00:00
Simon Wülker
3d320fa96a
Update rustfmt to the 2024 style edition ( #35764 )
...
* Use 2024 style edition
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de >
* Reformat all code
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de >
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de >
2025-03-03 11:26:53 +00:00
Josh Matthews
c94d909a86
script: Limit public exports. ( #34915 )
...
* script: Restrict reexport visibility of DOM types.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* script: Mass pub->pub(crate) conversion.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* script: Hide existing dead code warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Fix clippy warnings.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Fix unit tests.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Fix clippy.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* More formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
2025-01-10 08:19:19 +00:00
Josh Matthews
e956f3124c
Generate a trait abstracting over all known DOM interfaces ( #34357 )
...
* script: Generate trait for all DOM interfaces and parameterize generated Methods traits over it.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* script: Update trait implementations with new generic type.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Formatting.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
2024-11-24 07:35:14 +00:00
webbeef
f9a06d62a2
More CanGc fixes: Range, Event, gpu error, Header ( #33774 )
...
* Propagate CanGc parameter in Range
Signed-off-by: webbeef <me@webbeef.org >
* Propagate CanGc parameter in gpu code and dependencies
Signed-off-by: webbeef <me@webbeef.org >
* Propagate CanGc parameter in Header and dependencies
Signed-off-by: webbeef <me@webbeef.org >
* Propagate CanGc parameter in Event and dependencies
Signed-off-by: webbeef <me@webbeef.org >
* Propagate CanGc parameter in rtcdatachannel
Signed-off-by: webbeef <me@webbeef.org >
* Propagate CanGc parameter in servoparser
Signed-off-by: webbeef <me@webbeef.org >
---------
Signed-off-by: webbeef <me@webbeef.org >
2024-10-10 15:51:22 +00:00
Josh Matthews
7d931e673a
script: Include constructors and static methods in generated DOM traits ( #33665 )
...
* Add all constructors, special operations, and static methods to generated DOM interface traits.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Move all constructors and static methods defined in bare impl blocks inside FooMethods trait impls.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Add missing doc links.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
2024-10-08 01:51:58 +00:00
shanehandley
6a3cdc47ec
Improve spec conformance around request header validation ( #33418 )
...
* fix: improve spec conformance around request header validation
Signed-off-by: Shane Handley <shanehandley@fastmail.com >
* account for additional test passes
Signed-off-by: Shane Handley <shanehandley@fastmail.com >
* fix: remove redundant .to_vec call
Signed-off-by: Shane Handley <shanehandley@fastmail.com >
---------
Signed-off-by: Shane Handley <shanehandley@fastmail.com >
2024-09-14 03:01:22 +00:00
Josh Matthews
60ef6bc461
Start marking functions that can transitively trigger a GC ( #33144 )
...
* Mark JS reflector wrappers as CanGc.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Propagate CanGc from reflect_dom_object_with_proto.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
* Mark DOM constructors as GC operations.
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net >
2024-08-22 11:42:36 +00:00
ToBinio
8fab6911d1
script: dont unwrap in header set ( #32973 )
...
Signed-off-by: tobinio <tobias.frischmann1@gmail.com >
2024-08-08 14:33:54 +00:00
Martin Robinson
26624a109f
clippy: Fix a bunch of warnings in script ( #32680 )
...
This is just a portion of the errors that are remaining to be fixed.
2024-07-04 11:40:23 +00:00
Rosemary Ajayi
673eaa569a
clippy: Fix various clippy problems in components/scripts/dom ( #31910 )
...
* boxing is unnecessary
* boxing is unnecessary
* boxing is unnecessary
* boxing is unnecessary
* fix
* fix
* fix
* Update globalscope.rs
2024-03-31 20:21:52 +00:00
Ekta Siwach
1bc63801e7
fix redundant closures in component/script/dom ( #31917 )
...
* fixed unnecessary conversions
* resolved conflicts
* resolved conflicts
* fix redundant closures in component/script/dom
* resolved conflicts
* fixed formatting
2024-03-28 09:06:02 +00:00
Aarya Khandelwal
f7669b5238
fixes dereferencing on an immutable reference ( #31864 )
2024-03-26 08:37:44 +00:00
Aarya Khandelwal
bd39e03eeb
changed match to 'matches!' ( #31850 )
2024-03-25 11:28:12 +00:00
Aarya Khandelwal
566fd475d9
Clippy: Fixed some clippy warnings ( #31818 )
...
* Fixed clippy warnings
* made changes for lowercase characters.
* changed is_lowercase() to is_ascii_lowercase()
* added std library function `is_ascii_uppercase()` and `is_ascii_lowercase()`
* made recommended changes
2024-03-23 12:48:49 +00:00
Oluwatobi Sofela
3c05b58221
clippy: Fix explicit_auto_deref warnings in components/script ( #31837 )
...
* clippy: Fix explicit auto-deref warnings
* clippy: Fix explicit auto-deref warnings
* refactor: Tidy up code
* refactor: Fix method not found errors
2024-03-23 11:29:20 +00:00
Samson
aad2dccc9c
Strict import formatting (grouping and granularity) ( #30325 )
...
* strict imports formatting
* Reformat all imports
2023-09-11 19:16:54 +00:00
Samson
9514f670d1
No tracing of nop traceable fields ( #29926 )
...
* Add `no_trace` option to JSTraceable derive
* NoTrace wrapper
* Port some types to no_trace schematics
* Fixing my unsafe mistakes (not tracing traceables)
* Add docs & safety guards for no_trace
Safety guards (trait shenanigans) guarantees safety usage of `no_trace`
* Port canvas_traits to no_trace
* Port servo_media to no_trace
* Port net_traits to no_trace
* Port style to no_trace
* Port webgpu to no_trace
* Port script_traits to no_trace
* Port canvas_traits, devtools_traits, embedder_traits, profile_traits to no_trace
* unrooted_must_root lint in seperate file
* Add trace_in_no_trace_lint as script_plugin
* Composable types in must_not_have_traceable
* Introduced HashMapTracedValues wrapper
* `HashMap<NoTrace<K>,V>`->`HashMapTracedValues<K,V>`
* Port rest of servo's types to no_trace
* Port html5ever, euclid, mime and http to no_trace
* Port remaining externals to no_trace
* Port webxr and Arc<Mutex<_>>
* Fix spelling in notrace doc
2023-08-04 10:17:43 +00:00
Josh Matthews
cc07e27864
Rename reflect_dom_object2.
2023-05-31 23:03:32 -04:00
Josh Matthews
dbff26bce0
Support arbitrary protos when wrapping DOM objects with constructors.
2023-05-28 23:23:12 -04:00
cybai
c4882aab7e
Update steps comment to match latest (2023-04-14) spec
2023-04-14 14:32:28 +09:00
2shiori17
b6e4e44ccf
Fix return value of concept-header-list-get to Option<Vec<u8>>
2023-03-26 19:57:39 +09:00
2shiori17
e4a4f60c53
Fix concept-headers-append
2023-03-26 00:54:04 +09:00
2shiori17
80a140e82f
Add comments for concept-headers-append
2023-03-21 17:15:57 +09:00
2shiori17
74ecc2bd64
Remove net from dependencies
2023-03-20 22:12:50 +09:00
2shiori17
68472fabf8
Fix dom-headers-get
2023-03-11 20:15:14 +09:00
2shiori17
7d1d387f3d
Fix header ordering
2023-03-11 20:05:32 +09:00
2shiori17
b5b6225850
Fix concept-headers-append
2023-03-11 17:32:38 +09:00
2shiori17
ee1f241231
Implement concept-header-list-sort-and-combine
2023-03-06 23:34:04 +09:00
2shiori17
4ee3f575f6
Implement Headers.prototype.getSetCookie
2023-03-05 11:35:46 +09:00
Vincent Ricard
43b3d93aec
Use data_url::Mime to parse the MIME Types
...
This commit follows the spectification
https://fetch.spec.whatwg.org/#concept-header-extract-mime-type
2020-11-18 18:14:51 +01:00
Bastien Orivel
c4273d86f2
Fix the webidl for Headers
...
Make the HeadersInit type match the spec.
Fixes #26441
2020-05-30 12:46:51 +02:00
Bastien Orivel
e18a3ad841
Separate values in Headers with ", ", not ","
...
Tests expect header values to be separated by that so this fixes a few
of them.
2020-05-06 00:11:34 +02:00
YUAN LYU
3ea6d87bcc
Add trait DomObjectWrap to provide WRAP function
2020-03-20 22:16:56 -04:00
Kunal Mohan
f7db4b7f80
Modify script to prevent further violations of snake_case
2020-01-18 14:22:15 +05:30
Patrick Shaughnessy
0c08849d1c
Headers no longer have to be ASCII or UTF-8, though there is some disagreement with http::header::HeaderValue
2019-12-24 11:08:15 -05:00
Patrick Shaughnessy
67827debd8
Now just one is_cors_safelisted_request_header, with closer spec alignment
2019-12-16 09:07:02 -05:00
Kagami Sascha Rosylight
b697621b05
Support WebIDL record<>
2019-10-15 17:14:00 +09:00
Simon Sapin
1d38bc0419
Fix some new warnings
2019-06-22 14:59:09 +02:00
Simon Sapin
be69f9c3e6
Rustfmt has changed its default style :/
2018-12-28 13:17:47 +01:00
Jan Andre Ikenmeyer
a1a14459c1
Update MPL license to https (part 3)
2018-11-19 14:47:12 +01:00
Pyfisch
9e92eb205a
Reorder imports
2018-11-06 22:35:07 +01:00
Pyfisch
cb07debcb6
Format remaining files
2018-11-06 22:30:31 +01:00
Simon Sapin
45f7199eee
cargo fix --edition
2018-11-06 15:26:02 +01:00
Bastien Orivel
024b40b39d
Update hyper to 0.12
2018-11-01 19:17:36 +01:00
chansuke
c37a345dc9
Format script component
2018-09-19 17:40:47 -04:00