Commit message (Collapse) | Author | Age | Lines | |
---|---|---|---|---|
* | Issue #1629 - Part 5: Remove pointless local variables. | athenian200 | 2020-09-21 | -8/+7 |
| | | | | Since the local variable is always initialized to false, we don't actually need to declare it and can just pass "false" directly as a parameter to the PrepareSheet function's bool. I was worried about code readability at first, but some well-placed comments took care of that. | |||
* | Issue #1629 - Part 4: Ensure isExplicitlyEnabled is false upon sheet creation. | athenian200 | 2020-09-21 | -2/+5 |
| | | | | This clarifies the assumptions the code is making and the order in which the variables pass through the loading process. The new variable is set after the sheet is created and prepared, and is assumed to be false in the beginning. | |||
* | Issue #618 - Clear the module map when changing a Document's global and add | Moonchild | 2020-09-08 | -3/+17 |
| | | | | release build assertions for mismatching compartments. | |||
* | Issue #618 - Make ES6 modules work for resource: URIs | Moonchild | 2020-09-08 | -1/+23 |
| | ||||
* | Issue #618 - Implement preloading of module scripts. | Moonchild | 2020-09-08 | -22/+63 |
| | | | | This hooks up module scripts to the existing preload mechanism. | |||
* | Issue #1644 - Remove plugin checking code leftovers | Moonchild | 2020-09-08 | -30/+2 |
| | ||||
* | Clobber for CSS flow-root implementation | Moonchild | 2020-09-08 | -1/+1 |
| | ||||
* | Issue #1641 - Implement CSS flow-root keyword | athenian200 | 2020-09-08 | -16/+68 |
| | | | | This is just a clean port of 1322191 and follow-up 1325970. It really seems to add create a new way to access existing code relating to block formatting and floating elements rather than implementing new functionality, and it is mercifully straightforwards. | |||
* | Issue #1639 - Implement object.fromEntries() | Moonchild | 2020-09-06 | -2/+21 |
| | | | | | Adds a self-hosted implementation of this map->object conversion. This resolves #1639. | |||
* | Fix build error. | Moonchild | 2020-09-05 | -4/+0 |
| | ||||
* | Regenerate the HTML Parser code for nomodule changes. | Gaming4JC | 2020-09-05 | -326/+333 |
| | ||||
* | Issue #618 - Don't preload nomodule scripts when modules are enabled (uplift) | Gaming4JC | 2020-09-05 | -17/+56 |
| | ||||
* | Regenerate Parser for Marquee Removal | Gaming4JC | 2020-09-05 | -127/+122 |
| | ||||
* | Issue #1525 - Kill marquee element (uplift) | Moonchild | 2020-09-05 | -3903/+18 |
| | ||||
* | Update old.configure for --enable-phoenix-extensions | Matt A. Tobin | 2020-09-01 | -0/+1 |
| | ||||
* | Remove unsupported CE keyword from HTMLLinkElement.webidl | Moonchild | 2020-08-30 | -1/+1 |
| | ||||
* | Clobber for NSS update | Moonchild | 2020-08-30 | -1/+0 |
| | ||||
* | [NSS] Version and build bump | Moonchild | 2020-08-30 | -6/+7 |
| | ||||
* | [NSS] Prevent slotLock race in NSC_GetTokenInfo | J.C. Jones | 2020-08-30 | -2/+4 |
| | | | | | Basically, NSC_GetTokenInfo doesn't lock slot->slotLock before accessing slot after obtaining it, even though slotLock is defined as its lock. | |||
* | Issue #1587 followup - Improve resilience of AbortSignals. | Moonchild | 2020-08-30 | -2/+9 |
| | ||||
* | [misc/mar] Don't use a signed type for a length parameter. | Moonchild | 2020-08-30 | -1/+1 |
| | ||||
* | [DOM] Only construct JS-implemented objects if inner window is current. | Kris Maglione | 2020-08-30 | -1/+6 |
| | ||||
* | [media] Only include source error details in debugging scenarios. | Moonchild | 2020-08-30 | -1/+21 |
| | | | | | | | Unless a user is debugging media errors, this detail is unnecessary to report and could include sensitive data which could be abused by third-party requesters. This aligns it with the standard success/error paradigms in normal browsing situations. | |||
* | Issue #618 - Implement async attribute for inline module scripts. (uplift) | Moonchild | 2020-08-30 | -41/+73 |
| | | | | | | | | | | This commit does several things: - Moves the pref check from ScriptLoader to ns[I]Document so it can be called on the document. - Changes the atrribute freezing function to a better name that takes the document as a parameter. - Sets the proper async/defer attributes on HTML script elements based on keywords and whether they are module scripts or not. | |||
* | Issue #618 - (async) Keep track of script modes in a single mode state. | Moonchild | 2020-08-30 | -17/+61 |
| | | | | | | This simplifies handling of combinations of async/defer by assigning one and only one state to scripts. If async then always async > if defer or module then defer > otherwise blocking. | |||
* | Issue #618 - (async, preload) Correctly pass info about async/defer to parser. | Moonchild | 2020-08-30 | -15/+53 |
| | | | | | | This makes sure we don't block body-referred sub-resources by head-referenced defer and async scripts. This is important for all script loads, not just modules, but is added here because it was run into while implementing modules. | |||
* | Issue #618 - (async) Split out function to add async request. | Moonchild | 2020-08-30 | -23/+31 |
| | ||||
* | Issue #618 - Rename some script load request flags to be more descriptive. | Moonchild | 2020-08-30 | -11/+11 |
| | ||||
* | Issue #618 - Make document.currentScript null in modules. | Moonchild | 2020-08-30 | -4/+7 |
| | | | | Because the spec says so. | |||
* | Issue #618 - Fix processing of non-parser-generated module scripts. | Jon Coppeard | 2020-08-30 | -23/+32 |
| | ||||
* | Issue #618 - Handle errors for inline module scripts and ensure we update the | Jon Coppeard | 2020-08-30 | -12/+18 |
| | | | | module map after fetch errors. | |||
* | Issue #618 - Split SRI verification out from OnStreamComplete. | Moonchild | 2020-08-30 | -19/+35 |
| | ||||
* | Issue #618 - Split handling of load errors out from OnStreamComplete. | Moonchild | 2020-08-30 | -59/+67 |
| | ||||
* | Issue #618 - Integrity for descendant module scripts should be the empty string | Moonchild | 2020-08-30 | -4/+4 |
| | | | | Because the spec says so. | |||
* | Issue #618 - Don't mute errors for module scripts because they always use CORS | Jon Coppeard | 2020-08-30 | -4/+4 |
| | ||||
* | Issue #618: Pass down referrer and referrer policy when fetching modules. | Moonchild | 2020-08-30 | -25/+42 |
| | | | | Because the spec says so. | |||
* | Issue #618: Ignore 'event' and 'for' attributes for module scripts. | Moonchild | 2020-08-30 | -23/+30 |
| | | | | Because the spec says so. | |||
* | Issue #618 - Simplify module resolve hook to be a function pointer | Moonchild | 2020-08-30 | -74/+76 |
| | | | | | This is an ahead-of time port to try and address #1624. This is based on BZ 1461751 and Jon Coppeard's work in it. | |||
* | [js] Add some utility functions to get the current JS runtime. | Moonchild | 2020-08-30 | -0/+8 |
| | ||||
* | Issue #618 - Keep track of which modules in a graph have been fetched using ↵ | Gaming4JC | 2020-08-30 | -72/+92 |
| | | | | | | a visited set Ref: BZ 1365187 | |||
* | Issue #618 - Simplify module map interface | Gaming4JC | 2020-08-30 | -14/+14 |
| | | | | Ref: BZ 1365187 | |||
* | Issue #618 - Align error handling for module scripts with the spec - Debug ↵ | Gaming4JC | 2020-08-30 | -1/+2 |
| | | | | | | | | follow up MODULE_STATUS_ERRORED is no more. Replacing with newer API. Ref: BZ 1420420 | |||
* | Issue #618 - Lazily initialise module binding maps - Debug follow up | Gaming4JC | 2020-08-30 | -1/+1 |
| | | | | | | The added debug assertion does not work due to missing API. They were added in BZ 1337491, 1395366, and others, but were primarily used for multi-threading. This uses our existing non-multithreaded syntax instead, resolving a `no member named` build error. | |||
* | Issue #618 - Record module dependency before starting fetch so that error | Jon Coppeard | 2020-08-30 | -1/+1 |
| | | | | | | handling works correctly Ref BZ 1395896 | |||
* | Issue #618 - Lazily initialise module binding maps | Moonchild | 2020-08-30 | -27/+35 |
| | | | | | | | Make it so they are not allocated on a background thread in a different zone to the final module. Ref: BZ 1372258 | |||
* | Issue #618 - Use a single slot for the module's environment object. | Moonchild | 2020-08-30 | -47/+29 |
| | | | | | | | | | | | | | | | | | | | | According to the spec this isn't created until the module is instantiated, but we create it when we compile the module. We stored this previously in InitialEnvironmentSlot and copied it to EnvironmentSlot when it was supposed to be created, but we can just store it in the latter slot straight away and check the module's status and return null if it shouldn't exist yet. This reduces the number of slots needed on a moduleObject to 17. Re: BZ 1420412 Part 1 We can't implement the second part to further reduce our number of slots, because it relies on SetProxyReservedSlot which in turn relies on rearchitecturing JS proxies to make reserved slots dynamic. That's a rabbit hole we really don't want to fall into. So, we'll end up being a bit slower because it can't be in-line allocated with having more than 16 slots, but so be it. I sincerely doubt it will make any practical difference. | |||
* | Issue #618 - Align error handling for module scripts with the spec (again) | Moonchild | 2020-08-30 | -266/+331 |
| | | | | | | | | This updates module implementation to match spec regarding handling of instantiation errors, after it was changed yet again, this time to not remember instantiation errors, but instead immediately rethrow applicable ones. Ref: BZ 1420420 | |||
* | Issue #618 - Fix error events fired when loading JS module dependencies fail | Moonchild | 2020-08-30 | -9/+12 |
| | | | | | | | When module dependencies fail, don't spam with errors for each import; only fire the error event once. Ref: BZ 1421259 | |||
* | Follow up to eb28b1f32 - Correct inputmethod build file by putting ↵ | Matt A. Tobin | 2020-08-30 | -1/+2 |
| | | | | | | Keyboard.jsm back in EXTRA_JS_MODULES JSMs are NOT Components. | |||
* | [js] Reinstate precise floating point model for all js sources. | Moonchild | 2020-08-30 | -1/+1 |
| |