-
Notifications
You must be signed in to change notification settings - Fork 1
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
Explore a replacement for display
rather than merely an override list
#10
Comments
I'm actually ok with this. I think the logic would be the same, except that maybe this could mean a different name for the field? Any suggestions? |
Thanks for filing @mgiuca. To summarise, the gist of my feedback is that the proposed API is a bit odd and is designed this way to improve backward compatibility. My suggestion was too look for the ideal API and walk back how we can make it backward compatible. UA should be able to make the transition smooth. It may mean that for some time (transition period), there will be two properties that authors will have to put on their Manifest but whenever completely dropping support of With regards to naming, I suggested |
I mentioned this in both the Tag review request & the section here. |
For starters, some generalities:
That isn't usually how web APIs are designed / evolved. We don't generally look for the ideal API and then have a transition period. We almost always extend existing APIs in ways that are totally backwards compatible, allowing existing sites to continue working exactly as they are, but offering new sites new features. The web platform doesn't generally deprecate and eventually remove old APIs in favour of slightly more ergonomic ones. Long-term stability is considered more important than small ergonomic improvements. (When you do have major ergonomic improvements, such as Basically, if it's a huge ergonomics win, deprecate-and-replace is OK. But for slight ergonomics improvements, just stick with full backwards compatibility. The churn is not worth it. Now as to the specifics: I think the difference between dmurph's proposed API and mounirlamouri's proposal definitely qualifies as "slight ergonomics win", not worthy of a decade-long deprecation plan. @mounirlamouri (on email):
I don’t think it’s going to be as odd as you make it out. I anticipate the vast majority of PWAs will want to use one of the existing display modes (typically, standalone). The On the other hand, if we introduce a replacement for
Therefore, I'm strongly in favour of just explicitly framing this as "basic mode" ( To be clear, I don't think this is the ideal API that I would've designed from scratch. But it's a perfectly reasonable design, given that the alternative is deprecation.
I'd rather not commit resources to tooling, articles and console warnings if there's no clear benefit. Again, deprecation is possible on the web, but it's a long road, and best reserved for things that are actively bad for the user (like security or DOS vectors), or extremely complex and un-ergonomic (like Appcache). In the common case, we extend, rather than replacing. |
That's a great explanation @mgiuca, thanks for typing that all out. I didn't think about all of the documentation that we (and others) have out there, as well as example. I think phrasing this as "basic" vs "advanced" mode for setting the display is a great way of explaining this. We could still allow a manifest to NOT have a I agree & think trying to 'deprecate' |
Proposed by @mounirlamouri on the corresponding blink-dev intent-to-prototype thread. I am moving the discussion to GitHub.
The summary is that Mounir wants to treat
display
as legacy (providing a mechanism to continue supporting it as a fallback for legacy browsers, but gradually fade it out), with a new display fallback list being the new way to specify display. (As opposed to the current proposal, which keepsdisplay
as the end of the fallback chain, withdisplay_override
being a list of things to try before falling back todisplay
.)Mounir's plan would make
display
eventually obsolete, while Daniel's current plan would keepdisplay
as part of the algorithm forever.Details are in the above thread.
The text was updated successfully, but these errors were encountered: