aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/script_runtime.rs
Commit message (Collapse)AuthorAgeFilesLines
* Make GlobalScope.get_cx a static method.Josh Matthews2023-05-201-3/+3
|
* Clean up debug optionsMartin Robinson2023-05-011-1/+1
|
* Format.Josh Matthews2022-11-231-8/+5
|
* Changes for spidermomkey upgrade.Josh Matthews2022-11-231-7/+8
|
* refactor(script): move `crate::dom::bindings::{utils → ↵yvt2021-07-131-3/+4
| | | | principals)::ServoJSPrincipal`
* doc(script): prettify a commentyvt2021-07-121-1/+1
|
* chore(deps): update mozjsyvt2021-07-111-1/+3
| | | | - 798c5b6: Bring `RustJSPrincipals` back
* fix: accommodate to the modern ageyvt2021-07-101-1/+1
|
* Merge remote-tracking branch 'upstream/master' into feat-cow-infrayvt2021-07-101-248/+867
|\ | | | | | | | | `tests/wpt/web-platform-tests/html/browsers/origin/cross-origin-objects/cross-origin-objects.html` was reverted to the upstream version.
| * Formatingsagudev2021-03-121-2/+10
| |
| * Fix errorssagudev2021-03-121-9/+3
| |
| * Update mozjs.Josh Matthews2021-02-181-31/+29
| |
| * ensure clean shutdown of all threads running JSGregory Terzian2020-06-301-1/+32
| |
| * Auto merge of #26943 - jdm:promise-incumbent, r=Manishearthbors-servo2020-06-161-1/+6
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix panic on vimeo.com The only time we end up enqueuing a promise reaction job with a null incumbent global argument is when SpiderMonkey does some weird stuff behind the scenes for its JS Debugger support (based on https://searchfox.org/mozilla-central/rev/2c1092dc68c63f7bad6da6a03c5883a5ab5ff2ca/js/src/builtin/Promise.cpp#3168). This commit works around that case and adds a regression test so we don't forget about that in the future. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #26930 - [x] There are tests for these changes
| | * dom: Avoid panic when SpiderMonkey enqueues dummy promise jobs.Josh Matthews2020-06-161-1/+6
| | |
| * | Don't pretend we support SharedArrayBuffer.Josh Matthews2020-06-161-9/+0
| |/
| * integrate readablestream with fetch and blobGregory Terzian2020-06-041-2/+2
| |
| * Use dynamic dispatch in `mozjs::panic::wrap_panic`Simon Sapin2020-05-251-102/+95
| | | | | | | | | | | | | | | | Pick up https://github.com/servo/rust-mozjs/pull/512 Fixes https://github.com/servo/servo/issues/26585 This diff is best viewed with "ignore whitespace changes", because of indentation change.
| * Implement client-side logic for WebGPU id recyclingKunal Mohan2020-05-221-0/+1
| |
| * Remove WebVRAlan Jeffrey2020-04-081-1/+0
| |
| * Auto merge of #26056 - gterzian:enable_atomics_wait_on_dedicated_worker, r=jdmbors-servo2020-03-301-4/+15
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable Atomics.wait in a dedicated worker agent <!-- Please describe your changes on the following line: --> FIX #25191 --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| | * enable Atomics.wait in a dedicated worker agentGregory Terzian2020-03-301-4/+15
| | |
| * | Propagate user interacting flag to timers and promisesPaul Rouget2020-03-261-1/+11
| |/
| * Update SpiderMonkeyAnthony Ramine2020-03-061-19/+20
| |
| * Always pass InRealm to GlobalScope::from_context to avoid getting null globalCYBAI2020-02-161-2/+5
| |
| * Modify `script` to prevent further violations of snake_caseKunal Mohan2020-01-181-1/+1
| |
| * Scaffold module scriptCYBAI2020-01-031-0/+3
| |
| * Now using eq_ignore_case on WASM mimetype, per #25317Patrick Shaughnessy2019-12-311-10/+7
| |
| * Add StreamConsumer wrapper and methods to responseRidhim Rastogi2019-12-031-4/+9
| |
| * Remove use of deprecated language construct.Josh Matthews2019-11-261-1/+1
| |
| * script: Ensure JS engine is initialized and deinitialized on the same thread.Josh Matthews2019-11-261-4/+26
| |
| * Bind runnable dispatching in script_runtimeAkash-Pateria2019-11-191-13/+52
| |
| * Add consume stream callbackRidhim Rastogi2019-11-111-1/+108
| |
| * Add StreamConsumer wrapper and ReportStreamErrorCallback fnRidhim Rastogi2019-11-031-0/+56
| |
| * begin messageport, transferable objects, implKeith Yeung2019-10-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Accept transfer argument for StructuredCloneData::write Allow structured clone reads to return a boolean Add Transferable trait Add basic skeletons to MessagePort Implement transfer and transfer-receiving steps on MessagePort Use transfer and transfer_receive in StructuredClone callbacks Implement MessageChannel Freeze the array object for the MessageEvent ports attribute Implement transfer argument on window.postMessage Use ReentrantMutex instead for MessagePortInternal Accept origin as a parameter in dispatch_jsval Fix BorrowMut crash with pending_port_message Detach port on closure and check for detached during transfer Enable webmessaging tests fix webidl fix
| * Work around crash on Windows when returning JS::Value by value.Josh Matthews2019-08-301-3/+6
| |
| * Auto merge of #23930 - CYBAI:incumbent-global-assertion, r=jdmbors-servo2019-08-091-1/+5
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assert incumbent global is always some in get_incumbent_global hook While working on module script, I'd like to use Promise with a custom callback with type `Box<dyn TaskBox>` which means we didn't use web API callbacks as native handlers. However, we'll get a panic from `enqueue_promise_job` and the panic says we have a `null` incumbent global. The main problem here is, the Promise API is strongly tied to JS engine and it always assumes there's a meaningful answer for "what specific global is this promise associated with". So, when I don't use the Promise for a specific web API, our engine cannot find a proper incumbent global for us so that we get the `null` incumbent global panic. To make us catch this case easier in the future, we should add the assertion inside `get_incumbent_global` hook so that we can know this quickly next time. Ref: https://mozilla.logbot.info/servo/20190807#c16525481 --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes do not require tests because it should just add assertion inside the hook <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23930) <!-- Reviewable:end -->
| | * Assert incumbent global is always some in get_incumbent_global hookCYBAI2019-08-081-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While working on module script, I'd like to use Promise with a custom callback with type `Box<dyn TaskBox>` which means we didn't use web API callbacks as native handlers. However, we'll get a panic from `enqueue_promise_job` and the panic says we have a `null` incumbent global. The main problem here is, the Promise API is strongly tied to JS engine and it always assumes there's a meaningful answer for "what specific global is this promise associated with". So, when I don't use the Promise for a specific web API, our engine cannot find a proper incumbent global for us so that we get the `null` incumbent global panic. To make us catch this case easier in the future, we should add the assertion inside `get_incumbent_global` hook so that we can know this quickly next time. Ref: https://mozilla.logbot.info/servo/20190807#c16525481
| * | Use safe JSContext in MicrotaskQueuemarmeladema2019-08-091-1/+2
| | |
| * | Remove some usage of unsafe code in Promisemarmeladema2019-08-091-2/+3
| |/
| * Modify *::get_cx methods to return a safe JSContext instead of a raw onemarmeladema2019-07-241-5/+4
| |
| * Callbacks now uses safe JSContext instead of raw JSContextmarmeladema2019-07-241-1/+1
| |
| * Add safe JSontext wrapper around unsafe RawJSContextmarmeladema2019-07-241-0/+19
| |
| * Rename JSContext from js::jsapi to RawJSContextmarmeladema2019-07-241-10/+10
| |
| * Upgrade to Spidermonkey 67.Josh Matthews2019-06-261-18/+66
| |
| * Update to SpiderMonkey 66.Josh Matthews2019-05-101-6/+8
| |
| * Fix debugmozjs build #23074Alan Jeffrey2019-05-061-2/+2
| |
| * #8539 Config preferences backend restructurePeter Hall2019-03-201-179/+126
| |
| * Reintroduce parent runtimes for worker threads.Josh Matthews2019-01-151-2/+17
| |
| * Update to new JS runtime creation APIs.Josh Matthews2019-01-151-1/+7
| |