Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The navigation API #200

Closed
domenic opened this issue Oct 12, 2022 · 9 comments
Closed

The navigation API #200

domenic opened this issue Oct 12, 2022 · 9 comments
Labels
focus-area-proposal Focus Area Proposal

Comments

@domenic
Copy link
Member

domenic commented Oct 12, 2022

Description

This proposal is about getting interop on the navigation API, which provides a much cleaner model for history and navigation and some new capabilities developers have requested. (This spec is currently in the WICG, but will be merged into the HTML Standard in October.)

Rationale

Navigation and history has historically been a large pain for developers; see some of the discussion in #199. The navigation API solves many of these issues by its design. Quantitatively, it has second-most of any WICG proposal to date.

Specification

All contents of https://wicg.github.io/navigation-api/, which will be part of HTML's "Loading web pages" section in October.

Tests

navigation-api/ (this will be moved into html/browsers/ in ~October)

Important note: wpt.fyi is especially fragile for these sorts of tests, often giving incorrect failures. (I.e., failures that don't match what a user sees by loading the corresponding test in the browser on wpt.live.) See web-platform-tests/wpt#33590. Fixing this would probably need to be a priority for the wpt.fyi infrastructure team, to make this project feasible.

@tbondwilkinson
Copy link

The Navigation API is P2 for Google's closure library.

"We have a goog.history API that could probably be simplified or obviated entirely. This is also a point of confusion for many developers."

@gsnedders
Copy link
Member

All contents of https://wicg.github.io/navigation-api/, which will be part of HTML's "Loading web pages" section in October.

It is now November, and I still can't see any issue or PR referencing this.

@domenic
Copy link
Member Author

domenic commented Nov 1, 2022

Apologies, we're running a week or so behind schedule! My understanding was that the true deadline was December 31, 2022, but we're working as fast as we can to be done well in advance of that.

@foolip
Copy link
Member

foolip commented Nov 2, 2022

This case is similar to #235 (comment), where I suggested that people can express conditional support. The proposal selection period is during November, and Nov 17 is our deadline for positions, so you can think of that as a deadline for when folks will want confidence that any outstanding spec and test work is going to be done.

It's still an individual judgement, so if there's anyone who's on the fence, spelling out here what you're looking for would be very helpful.

@gsnedders
Copy link
Member

Yeah, there's no hard deadline, but having some issue tracking it to easily check on the status would be nice!

@tbondwilkinson
Copy link

Navigation API is P1 for Google's internal web framework

"Reduce gaps in existing History API, significantly simplify internal framework code for navigation, new browser features and behavior for navigations."

@foolip
Copy link
Member

foolip commented Nov 11, 2022

In the MDN short survey on APIs & JavaScript, "Navigation API (window.navigation)" was selected by ~18% of survey takers, putting it in the middle third of options. (There is some uncertainty as with any survey data.)

@domenic
Copy link
Member Author

domenic commented Nov 14, 2022

Regarding spec status, I've put up what I've got so far at whatwg/html#8502 for people to track. I'm hopeful it'll be done by the end of the week, although reviews will probably take a bit longer.

Please let me know if there's anything I can help with to shore up confidence. The spec at https://wicg.github.io/navigation-api/ is quite complete, so moving it over to HTML is mostly mechanical plus taking the opportunity to do a bit of self-review and fix minor bugs. (E.g. I accidentally named two variables the same thing in one algorithm in the original spec, but caught that and fixed it when doing the port.) I'm hopeful that it's clear we're on the standards track and have a solid spec people can work from.

@nairnandu
Copy link
Contributor

Thank you for proposing Navigation API for inclusion in Interop 2023.

We wanted to let you know that this proposal was not selected to be part of Interop this year. We had many strong proposals, and could not accept them all. This should not be taken as a comment on the technology as a whole, and resubmitting a proposal for this feature as part of a future round of Interop would be welcome.

For an overview of our process, see the proposal selection summary. Thank you again for contributing to Interop 2023!

Posted on behalf of the Interop team.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
focus-area-proposal Focus Area Proposal
Projects
No open projects
Status: Proposed
Development

No branches or pull requests

5 participants