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

Publish and maintain a browserslist query. #264

Open
romainmenke opened this issue Jul 12, 2023 · 9 comments
Open

Publish and maintain a browserslist query. #264

romainmenke opened this issue Jul 12, 2023 · 9 comments

Comments

@romainmenke
Copy link
Contributor

There are multiple requests to re-create X but for Baseline or to add support for Baseline in Y.

I personally don't want to spend my time doing that.
Any tool that already exists and supports browserslist can be configured to align with Baseline.

The missing piece however is an authoritative and maintained browserslist query.

Today this might be :

last 2 Chrome versions, last 2 ChromeAndroid versions, last 2 Edge versions, last 2 Firefox versions, last 2 FirefoxAndroid versions, Safari >= 15, iOS >= 15

or

last 2 Chrome versions, last 2 ChromeAndroid versions, last 2 Edge versions, last 2 Firefox versions, last 2 FirefoxAndroid versions, last 2 Safari versions, last 2 iOS versions

It would make sense if this working group maintained and published a browserslist query that can be used by others.


I don't know what "published" means.
It might just be text on a web page.

@nickmccurdy
Copy link

nickmccurdy commented Jul 16, 2023

Personally I'd use this list from web.dev and the creator of Browserslist, excluding mobile versions that already mirror desktop versions:

last 2 chrome versions
last 2 edge versions
last 2 firefox versions
last 2 safari major versions

Theses lists are all evergreen so far, which means they'd dynamically target recent browsers, and not support yearly updates like Baseline 24. Is this intentional, or would we need to support those yearly versions for parity with the rest of the Baseline ecosystem? As far as I'm aware, these haven't been released yet, but they have been announced by Google.

@romainmenke
Copy link
Contributor Author

That definition isn't correct :

  • mobile isn't the same as desktop (e.g. iOS webviews)
  • last 2 safari versions is 16.5, 16.4 whereas Baseline has 16 and 15 at this time

But I also think this is off topic :)

This issue isn't about the definition of Baseline or the exact browserslist query.
It's about who makes, maintains and publishes this browserslist query.

I think it should be done by this community group.

@nickmccurdy
Copy link

nickmccurdy commented Jul 16, 2023

mobile isn't the same as desktop (e.g. iOS webviews)

I believe they are practically the same. iOS apps are currently only allowed to use WebKit/Safari in webviews and apps (including "different" browsers). Android AOSP uses Chromium, though consumers are likely using a fork with Chrome installed through the a store (OEM ROMs) or a gapps apk (custom ROMs).

last 2 safari versions is 16.5, 16.4 whereas Baseline has 16 and 15 at this time

I didn't realize that. Is there native syntax in Browserslist that would support that?

But I also think this is off topic. :) ... I think [publishing the browserslistquery] should be done by this community group.

I think that's reasonable, especially since this group would probably understand how to maintain updates better.

@romainmenke
Copy link
Contributor Author

romainmenke commented Jul 16, 2023

I believe they are practically the same.

They are not :)

iOS webviews have a different set of feature flags and also unfortunately unique bugs.

IntersectionObserver for example still doesn't work on the current iOS webviews.
iOS webviews are not iOS Safari. These are what is used by for example Facebook in app.


I didn't realize that. Is there native syntax in Browserslist that would support that?

Not at this time, but it's also not yet important given that the definition already changed here and is likely to change further.

If the final definition is something that isn't easy to express in browserslist it would make sense to make some changes there.

@nickmccurdy
Copy link

nickmccurdy commented Jul 22, 2023

last 2 safari versions is 16.5, 16.4 whereas Baseline has 16 and 15 at this time

I didn't realize that. Is there native syntax in Browserslist that would support that?

Not at this time, but it's also not yet important given that the definition already changed here and is likely to change further.

If the final definition is something that isn't easy to express in browserslist it would make sense to make some changes there.

I figured out that replacing safari versions with safari major versions fixes this! I have fixed (my list).

ios major versions also works. major versions seems to not do anything for other browsers, though.

@romainmenke
Copy link
Contributor Author

romainmenke commented Jul 22, 2023

Please keep this in mind :

Not at this time, but it's also not yet important given that the definition already changed here and is likely to change further.

see : #173 (comment)

@romainmenke
Copy link
Contributor Author

romainmenke commented Jul 22, 2023

And again, it isn't relevant what the Baseline definition is or which browserslist query it translates to for the purpose of this issue :)

In fact it is about the opposite.

If this working group publishes and maintains a browserslist query it will allow people willing to adopt it, to stop thinking about both.

@romainmenke
Copy link
Contributor Author

The current definition is very feature centric so it isn't possible to publish a browserslist for "Widely available" or Newly available as it would differ per feature.

I think this issue can be closed as it isn't actionable.

@dfabulich
Copy link
Collaborator

Since the distinction between "Widely available" and "Newly available" is just whether the feature has been available in the target browsers for 30 months, you can get a very close approximation with this Browserslist query:

last 3 years, not dead

https://browsersl.ist/#q=last+3+years%2C+not+dead

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants