Skip to content
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Nov 30, 2022

Commits on Nov 24, 2022

Commits on Nov 19, 2022

  1. Minor fixes to COOP enforcement result processing

    Most notably, this properly creates a COOP enforcement result for the "inline content that doesn't have a DOM" case. Previously, that would just create a new COOP enforcement result struct, but not all of the struct's members have default values, so that was not actually allowed.
    Other changes are editorial:
    * Use <dl class="props"> whenever constructing new COOP enforcement results. (This was previously done in 2/5 cases.)
    * Make use of the default value for "needs a browsing context group switch" and "would need a browsing context group switch due to report-only", instead of always setting them.
    * Add a default value for "current context is navigation source".
    domenic committed Nov 19, 2022

Commits on Nov 18, 2022

  1. Fix a URL scheme check

    jeremyroman committed Nov 18, 2022

Commits on Nov 17, 2022

  1. Editorial: clarify where these variables are declared

    When we use a variable before it is declared, which is convenient in some cases when defining algorithm steps, it's best to add " defined below".
    jeremyroman committed Nov 17, 2022
  2. Fix non-fetch scheme initiator origin

    The navigation params were previously populated with a URL, which is not an origin.
    jeremyroman committed Nov 17, 2022

Commits on Nov 15, 2022

  1. Meta: zcorpan's employed changed

    zcorpan authored and foolip committed Nov 15, 2022
  2. Editorial: simplify session history serialized state

    Previously, it could be either a serialized state or null. But, we treated null the same as the serialized form of null (i.e., StructuredSerializeForStorage(null)), when we deserialized it in "restore the history object state". This simplifies the infrastructure always having it be a serialized state, and never null.
    Once this is done, it becomes clear that initializing new history entries with their serialized state set to StructuredSerializeForStorage(null) was pointless, since that is the default value. So, we can remove a couple instances of that.
    domenic committed Nov 15, 2022

Commits on Nov 8, 2022

  1. Meta: update outdated parts of the FAQ

    * Remove advice on using <h1>, per 6682bde.
    * Update the mention of W3C forks, since all known ones redirect nowadays.
    * Update "WHATWG and the W3C HTML WG" section to reflect the Memorandum of Understanding, and moved it toward the bottom since it's less important these days.
    domenic committed Nov 8, 2022
  2. Adjust adjective used to describe Jake Archibald

    "Imitable" means "capable of being imitated or copied"; what was meant here was its antonym "inimitable", i.e. unusual or unique as to be impossible to replace.
    jeremyroman committed Nov 8, 2022

Commits on Nov 7, 2022

  1. Minor fixes to session history traversal step appending

    * Call "append session history traversal steps" with the traversable, not with its steps queue.
    * Change the parameter declaration for "append session history synchronous navigaiton steps" to match its call sites.
    domenic committed Nov 7, 2022

Commits on Nov 4, 2022

Commits on Nov 1, 2022

  1. Meta: export various navigable-related terms

    Working on updating Fullscreen to a navigable-based model revealed the need for these.
    This also un-exports browsing context's "active document" and "active window", since other specifications should generally not be reaching into browsing contexts. (Doing so will likely not work as expected after COOP-induced browsing context group swaps.)
    domenic committed Nov 1, 2022
  2. Fix the exemplary Jake diagram to match its description

    The text following the diagram stated we traversed back to step 1, but the diagram accidentally showed step 2 as current.
    domenic committed Nov 1, 2022
  3. Add scrollend content and IDL attributes

    This supports the feature described in
    argyleink committed Nov 1, 2022

Commits on Oct 31, 2022

  1. Navigation and session history rewrite

    This monster completely rewrites everything to do with navigation and traversal.
    It introduces the "navigable" and "traversable navigable" concepts, which take on many of the roles that browsing contexts previously did, but better. A navigable can present a sequence of browsing contexts, which to the user seem to all be the same, but due to browsing context group switches, have different WindowProxys and are allocated in different agent clusters. A traversable navigable manages the session history for itself and all its descendant navigables, providing a synchronization point and source of truth.
    The general flow of navigation and traversal is now geared toward creating a session history entry, populated with the appropriate document, before finally applying the history "step". The step concept for session history, managed by the traversable, replaces the previous idea of joint session history, which was a sort of deduplicated union of individual session histories for each browsing context within a top-level browsing context.
    Notable things we won't tackle this round, but are much easier to tackle in the future:
    - Iframe restoration on (non-bfcache) history traversal is not yet specified.
    - Overlapping navigations and traversals (see #6927) are not perfect yet, although this makes them better.
    - Browsing context names (see #313) are not perfect yet, although this makes them better.
    - Base URL inheritance and storage in session history (see #421, #2883, and #3989) is not yet specified.
    - Sandbox flag storage in session history (see #6809) is not yet specified.
    - Task queuing when creating agents/realms/windows/documents (see #8443) remains sketchy.
    - Window object reuse is not yet rationalized (see #3267).
    Closes #854 by clarifying the javascript: URL origin and origin-checking setup.
    Closes #1073 by properly resetting active-ness of documents when they are removed.
    Closes #1130 by removing the source browsing context concept, using a sourceDocument argument instead, and taking source snapshot params at the appropriate early time.
    Closes #1191 by properly sharing document state across documents, as well as overlapping same-document navigations plus cross-document traversals.
    Closes #1336 by properly handling child browsing contexts.
    Closes #1382 by only unloading after we are sure we have a new document (i.e., not a 204 or download).
    Closes #1454 by rewriting session history closer to what implementations do, with the nested history concept in particular taking care of the issues discussed there.
    Closes #1524 by introducing the POST data concept and storing it in the document state.
    Closes #2436 by rewriting the spec for history.go() to be clear about the results. Tests: web-platform-tests/wpt#36366.
    Closes #2566 by introducing an explicit "history object" definition. Tests: web-platform-tests/wpt#36367.
    Closes #2649 through clear creation of srcdoc documents, including during history traversal.
    Closes #3215 by preserving POST data and reusing it on reloads.
    Closes #3447 by specifying a precise mechanism (the ongoing navigation) for canceling navigations, and the points at which that mechanism is consulted. It also stops queuing a task for hyperlink navigations.
    Closes #3497 by posting appropriate tasks for cross-event-loop navigations.
    Closes #3615 by rewriting traverse a history by a delta, which eventually calls into apply the history step, to navigate all relevant navigables.
    Closes #3625 by storing information in the document state (not just the URL), so that future traversals can reconstruct the request appropriately.
    Closes #3730 by doing proper task queuing for navigation, including one for javascript: URLs but not including one for normal same-frame navigations. Tests: web-platform-tests/wpt#36358.
    Closes #3734 by rewriting the definition of script-closable to use well-defined concepts.
    Closes #3812 by removing all uses of "active document" as a predicate instead of a property.
    Closes #4054 by introducing the session history traversal queue and renaming the previous "history traversal task source" to "navigation and traversal task source".
    Closes #4121 by doing the "allowed to navigate" check at the top of apply the history step.
    Closes #4428 by keeping a strong reference from documents (including bfcached documents) to their containing browsing context.
    Closes #4782 by introducing the top-level traversable and navigable concepts.
    Closes #4838 by doing sandbox checking in a much more precise manner, in particular snapshotting the relevant flags early in any traversals.
    Closes #4852 by using document state (in particular history policy container, request referrer, and request referrer policy) in reloads.
    Closes #5103 by properly restoring scroll positions for everything that is traversed, as part of properly traversing more than one navigable.
    Closes #5350 by properly restoring window names across browsing context group switches, and going back to the same browsing context as was previously there when traversing back across a BCG switch boundary. (Implementations could create new browsing contexts, as long as they restore the WindowProxy scripting relationships and other browsing context features; the result is observably equivalent.)
    Closes #5597 by rewriting "allowed to download" to just take booleans, derived from the appropriate snapshotted or computed sandboxing flags.
    Closes #5767, modulo bugs and oversights we made, by rewriting everything :).
    Closes #5877 by re-specifying "fully active" in terms of navigables, instead of browsing contexts.
    Closes #6446 by properly firing beforeunload to all descendant navigables, although whether or not they actually prompt still allows implementation leeway.
    Closes #6483 by introducing the distinction between current session history entry and active session history entry.
    Closes #6514 by settling on using a single origin for these checks.
    Closes #6628 by storing values in the document state, so even in strange splitting situations like described there, they remain.
    Closes #6652 by no longer changing history.state when reactivating a document from bfcache ("restore the history object state" is called only when documentsEntryChanged is true). Tests: web-platform-tests/wpt#36368.
    Closes #6773 by having careful handling of synchronous navigations during traversals. Test updates: web-platform-tests/wpt#36364.
    Closes #6798 by treating javascript: URL navigations as replacements.
    Works towards #6809 by storing srcdoc resources in the document state.
    Closes #6813 by storing referrer in the document state. Tests for the repopulation case: web-platform-tests/wpt#36352. (No tests yet for the reload case.)
    Closes #6947 by rolling its contents into this change: PDF documents are put in the same category as other inaccessible, no-DOM documents.
    Closes #7107 by clearing history state on redirects and when origin changes by other means, such as CSP.
    Closes #7441 by making window.blur() a no-op because that was simpler than updating it to operate on navigables.
    Closes #7722 by incorporating its contents into the rewritten version.
    Closes #8295 by refactoring the iframe/frame load event specs to avoid the bug.
    Helps with #8395 by at least ensuring the javascript: case does not fire beforeunload. Tests: web-platform-tests/wpt#36488. (The other cases remain open for investigation and testing.)
    Closes #8449 by exporting "create a fresh top-level traversable" which is designed for the use case in question.
    Co-authored-by: Domenic Denicola <>
    Co-authored-by: Dominic Farolino <>
    3 people committed Oct 31, 2022
  2. Fix usage of processResponseConsumeBody

    Helps with #7996, but also fixes up other non-script parts of the specification.
    nicolo-ribaudo committed Oct 31, 2022

Commits on Oct 27, 2022

  1. Meta: my employer changed

    Also admit that 2015 is not so recent as one might like.
    annevk authored and domenic committed Oct 27, 2022

Commits on Oct 26, 2022

  1. Fix example in HTMLElement constructor steps

    The initial value of this variable in the example made it so that the branch in the constructor we were trying to exemplify would never actually be hit.
    ThoseGrapefruits committed Oct 26, 2022

Commits on Oct 25, 2022

  1. Add missing value for hidden in the index

    Closes #8414.
    Signed-off-by: Jens Oliver Meiert <>
    j9t committed Oct 25, 2022

Commits on Oct 24, 2022

  1. Fix HostResolveImportedModule's current realm handling

    If this is called as part of module script loading of a dependency, there is no current realm. But we don't actually need the current realm, except in the case of a top-level import() inside an event handler, in which case there *will* be a current realm. Rearrange the logic of the algorithm to only look at the current realm (or rather, current settings object) in that later case.
    Also removes some vestigial base URL stuff, and camel-cases all the variable names.
    Closes #8410.
    domenic committed Oct 24, 2022

Commits on Oct 22, 2022

  1. Yet more fixes to focus delegation

    Fixes #8156. Fixes #8157.
    See also previous work in #7361, #7284, and #7079.
    domenic committed Oct 22, 2022

Commits on Oct 20, 2022

Commits on Oct 19, 2022

  1. Specify a limit for HTMLOptionsCollection's length setter

    This aligns with WebKit's behavior, but bumps the limit to 100k from WebKit's 10k, as per the discussion in #8337.
    Closes #8337.
    emilio committed Oct 19, 2022
  2. Fix incorrect setup for COOP reporting

    The link was to "report only value", but the text just said "value". "Report only value" is correct.
    jyasskin committed Oct 19, 2022