Taym Haddadi
a5cf04c479
script: implement ReadableByteStreamController ( #35410 )
...
* script: implement ReadableByteStreamController
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement can_copy_data_block_bytes and copy_data_block_bytes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove BufferSource::Default
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement StartAlgorithmFulfillmentHandler, StartAlgorithmRejectionHandler, PullAlgorithmFulfillmentHandler, PullAlgorithmRejectionHandler for ReadableByteStreamController
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* implement perform_pull_into
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix build
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix build
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove RefCell from PullIntoDescriptor and QueueEntry
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove commented code
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* add perform_cancel_steps, perform_release_steps and perform_pull_steps
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix crown
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* unskip readable-byte-streams
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix CRASH
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix more CRASHS
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix more crashes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix bad-buffers-and-views.any.js test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Update test expectations
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix BorrowMutError crashes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix view_byte_length test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix non-transferable-buffers test
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Pass contexts as much as possible by reference
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Make respond_internal Fallible
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix crwon
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* fix process pull into descriptors using queue logic and resulting double-borrow
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* Fix clippy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* FIx more crashes
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix timeout tests
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix all tests
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove all error! logs
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Remove #[allow(unsafe_code)]
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix lint
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix tidy
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
* Fix test expectation
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
Co-authored-by: gterzian <2792687+gterzian@users.noreply.github.com>
2025-03-10 19:43:04 +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
Yerkebulan Tulibergenov
245a39c07e
refactor: add CanGc as argument to create_buffer_source ( #35597 )
...
Signed-off-by: Yerkebulan Tulibergenov <yerkebulan@gmail.com>
2025-02-22 05:42:55 +00:00
Josh Matthews
875e387004
script: Feature-gate all crown support. ( #35055 )
...
* script: Feature-gate all crown support.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* script: Use cfg(crown) instead of a cargo feature.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
---------
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
2025-01-18 21:36:15 +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
Nico Burns
deb819f233
Upgrade rustc to 1.83 ( #34793 )
...
* Upgrade rustc to 1.83
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix crown (change copied from linked clippy function)
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix named lifetime lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Bump shell.nix
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix non-local impl warnings
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Format with 1.83 formatting changes
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix manual non-local impl
Signed-off-by: Nico Burns <nico@nicoburns.com>
* More fixes for crown
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix tidy
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix needless_return lints
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix doc comment lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix missing wait lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Allow needless_lifetimes lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
* more doc comments
Signed-off-by: Nico Burns <nico@nicoburns.com>
* More needless_returns
Signed-off-by: Nico Burns <nico@nicoburns.com>
* is_empty lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fix needless_lifetime lints
Signed-off-by: Nico Burns <nico@nicoburns.com>
* fix div_ceil lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Allow non-minimal bool
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Non-local impl in constellation
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Missing wait in constellation
Signed-off-by: Nico Burns <nico@nicoburns.com>
* fmt
Signed-off-by: Nico Burns <nico@nicoburns.com>
* remove useless lints table
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Fixup comments
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Allow non-local definition in sandboxing code to simplify feature flagging
Signed-off-by: Nico Burns <nico@nicoburns.com>
* Remove wait calls and allow zombie_processes lint
Signed-off-by: Nico Burns <nico@nicoburns.com>
---------
Signed-off-by: Nico Burns <nico@nicoburns.com>
2025-01-01 09:38:28 +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
tanishka
65c866285f
Multiple CanGc fixes in components/script/dom ( #33924 )
...
Signed-off-by: taniishkaaa <tanishkasingh2004@gmail.com>
2024-10-20 16:07:15 +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
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
Taym Haddadi
a50e6a503e
Remove unnecessary unsafe
block ( #33109 )
...
Signed-off-by: Taym <haddadi.taym@gmail.com>
2024-08-18 16:18:28 +00:00
Azhar Ismagulova
f183170786
clippy: Fix all errors in components/script
( #31911 )
...
* clippy: Fix errors in components/script/dom
* clippy: fixed remaining errors in components/script
2024-03-28 09:03:18 +00:00
Ekta Siwach
188f3caff1
clippy: fix some warnings in components/script ( #31865 )
2024-03-26 10:31:22 +00:00
Mucha Naibei
d1fd8d55ab
Fix rustdoc errors in components/script/dom
( #31617 )
...
* Fix rustdoc errors in components/script/dom
* Revert if to iff in audiobuffer.rs
2024-03-11 22:04:05 +00:00
Taym Haddadi
d0b663800f
WedIDL: bring dom/bindings/typedarray further in line with spec ( #31375 )
...
* WedIDL: bring dom/bindings/typedarray further in line with spec
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Rename HeapBufferSourceTypes to HeapBufferSource
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* fmt code
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
2024-02-25 12:13:17 +00:00
Taym Haddadi
742d3ed97f
Make HeapFloat32Array generic ( #31167 )
...
* Make HeapFloat32Array generic
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Define all the methods defaults on the HeapTypedArray trait
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Use generic type instead of trait
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
---------
Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
2024-01-29 11:57:50 +00:00
Martin Robinson
5c1723c983
rustdoc: Fix many rustdoc errors ( #31147 )
...
This fixes many rustdoc errors that occur due to raw URLs in rustdoc
comments as well as unescaped Rust code that should be in backticks.
2024-01-22 13:13:48 +00:00
Gregory Terzian
ee46f233d9
audiobuffer: ensure dest has the same size as source in copy from channel ( #31071 )
2024-01-15 07:04:05 +00:00
Gregory Terzian
e145c51234
WebIDL: use FLoat32Array ( #30990 )
...
* inital
* audiobuffer: return float 32 array as channel data
* add on heap float 32 array type
* fix warnings
* add list of webidl interfaces to ignore for float 32
* codegen: remove duplication of builtin return type handling
* bindings: derive default for float 32 array wrapper
* bindings: allow unsafe code in typedarrays module
* bindings: rename float 32 array wrapper
* bindings: rename HeapFloat32Array is_set method to is_initialized
* bindings: assert float 32 array is initialized before data can be acquired
* bindings: use let syntax for error handling in float 32 array wrapper
* bindings: use copy_from_slice where possible in float 32 array wrapper
* bindings: rename args in typedarray copy methods
* codegen: use idl type in builtin names for float 32 array
* bindings: add a util to create float 32 arrays, use in dom matrix readonly
* codegen: tidy
* bindings: box the heap inside heaped float 32 arrays
2024-01-11 09:43:36 +00:00
Samson
604979e367
Replace script_plugins with a clippy like rustc driver (named crown) ( #30508 )
...
* Remove script_plugins
* Use crown instead of script_plugins
* crown_is_not_used
* Use crown in command base
* bootstrap crown
* tidy happy
* disable sccache
* Bring crown in tree
* Install crown from tree
* fix windows ci
* fix warning
* fix mac
libscript_plugins.dylib is not available anymore
* Update components/script/lib.rs
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Update for nightly-2023-03-18
Mostly just based off https://github.com/servo/servo/pull/30630
* Always install crown
it's slow only when there is new version
* Run crown test with `mach test-unit`
* Small fixups; better trace_in_no_trace tests
* Better doc
* crown in config.toml
* Fix tidy for real
* no sccache on rustc_wrapper
* document rustc overrides
* fixup of compiletest
* Make a few minor comment adjustments
* Fix a typo in python/servo/platform/base.py
Co-authored-by: Samson <16504129+sagudev@users.noreply.github.com>
* Proper test types
* Ignore tidy on crown/tests
---------
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2023-12-01 15:50:52 +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
0e8ac3fdac
Formatting.
2023-05-28 23:54:02 -04:00
Josh Matthews
dbff26bce0
Support arbitrary protos when wrapping DOM objects with constructors.
2023-05-28 23:23:12 -04:00
Josh Matthews
f79e1e327d
Make GlobalScope.get_cx a static method.
2023-05-20 11:05:09 -04:00
YUAN LYU
3ea6d87bcc
Add trait DomObjectWrap to provide WRAP function
2020-03-20 22:16:56 -04:00
Kunal Mohan
5a3e1b8e69
rename compartment to realm
2020-01-24 20:52:36 +05:30
Kunal Mohan
f7db4b7f80
Modify script
to prevent further violations of snake_case
2020-01-18 14:22:15 +05:30
Kunal Mohan
02c1612cb0
Add accountable-refcell as optional build time feature
2020-01-08 09:44:41 +05:30
Mauricio Collares
992e7ba630
AudioBuffer: Track sample rate
2019-08-19 14:36:30 -03:00
marmeladema
b08a3e6217
Remove some usage of unsafe code in AudioBuffer
2019-08-09 00:02:09 +01:00
marmeladema
88cacfb009
Modify *::get_cx methods to return a safe JSContext instead of a raw one
2019-07-24 09:53:10 +01:00
marmeladema
2c5d0a6ebc
Convert CGTraitInterface to use safe JSContext instead of raw JSContext
2019-07-24 08:24:50 +01:00
Kamil Niski
adb402487e
Create a helper API for entering a DOM object's compartment
...
Revert some unnecessary changes
Fix fmt errors
2019-06-29 19:23:17 +02:00
Josh Matthews
63714c90fb
Upgrade to Spidermonkey 67.
2019-06-26 18:10:46 -04:00
Josh Matthews
4328713f71
Update to SpiderMonkey 66.
2019-05-10 22:43:43 -04:00
Josh Matthews
57d2b5a92d
Remove mozjs dep from malloc_size_of.
2019-05-02 09:30:03 -04: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
9f9bf8f6bc
Switch most crates to the 2018 edition
2018-11-06 16:12:04 +01:00
Simon Sapin
45f7199eee
cargo fix --edition
2018-11-06 15:26:02 +01:00
Fernando Jiménez Moreno
091ad49d68
Allow reusing AudioBuffers
2018-10-11 19:27:21 +02:00
Manish Goregaokar
600f997a51
Increase webaudio sample rate threshold to match firefox
2018-10-10 17:32:12 -07:00
Fernando Jiménez Moreno
4a927b5b78
Rustfmt audiobuffer.rs
2018-09-19 07:28:12 +02:00
Fernando Jiménez Moreno
138c739205
Keep shared and js channels in sync
2018-09-19 06:54:17 +02:00
Fernando Jiménez Moreno
346d705c66
Do not skip buffer update during copyToChannel
2018-09-19 06:54:17 +02:00
Fernando Jiménez Moreno
a81389268a
Throw IndexError if start_in_channel is equal to ArrayBuffer length
2018-09-19 06:54:17 +02:00
Fernando Jiménez Moreno
10e8ab3892
Apply start_in_channel to destination and not source during AudioBuffer.CopyToChannel
2018-09-19 06:54:17 +02:00