Skip to content

Update feature matrix to highlight unconditionally required DedicatedWorkerGlobalScope.name parameter.#24933

Merged
juj merged 7 commits intoemscripten-core:mainfrom
juj:update_feature_matrix_min_browsers
Aug 15, 2025
Merged

Update feature matrix to highlight unconditionally required DedicatedWorkerGlobalScope.name parameter.#24933
juj merged 7 commits intoemscripten-core:mainfrom
juj:update_feature_matrix_min_browsers

Conversation

@juj
Copy link
Collaborator

@juj juj commented Aug 14, 2025

Way back I recall I did not want to target Worker's name parameter given it had browser version requirements, and listed to be a debugging feature.

Though now that we have crossed that line, update minimum browser version feature matrix to require name support (e.g. after #24190), up[date the minimum required browser versions to highlight this fact.

We could maintain separate min required versions for singlethreaded and multithreaded builds, although given that the minimum browser version bump here is relatively small, probably no bother.

Although the version bump does mean that Emscripten does no longer support iPhone 5 devices. Fortunately they are very old by now, so practically absent.

Copy link
Collaborator

@sbc100 sbc100 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we can bump these version that would be great!

@kripken @dschuff any objections?

OLDEST_SUPPORTED_SAFARI = 101000 # September 20, 2016
OLDEST_SUPPORTED_CHROME = 70 # October 16, 2018
OLDEST_SUPPORTED_FIREFOX = 55 # August 08, 2017
OLDEST_SUPPORTED_SAFARI = 120200 # March 25, 2019
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These need to be kept in sync with the docs in for MIN_CHROME_VERSION etc in src/settings.js I think.

(Can you update comment above to mention this too)

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The src/settings.js min_*_version fields are already newer than these.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I meant in the comments. e.g.:

// Minimum supported value is 55, which was released on 2016-12-01 (see               
// feature_matrix.py).     

(these comments regarding the min versions would need updating).

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh I see, ok.

@juj juj enabled auto-merge (squash) August 14, 2025 16:32
@juj
Copy link
Collaborator Author

juj commented Aug 14, 2025

If we can bump these version that would be great!

@kripken @dschuff any objections?

To note that this PR is not a version bump, but the bump has already occurred in several previous PRs. We are in it already.

@sbc100
Copy link
Collaborator

sbc100 commented Aug 14, 2025

If we can bump these version that would be great!
@kripken @dschuff any objections?

To note that this PR is not a version bump, but the bump has already occurred in several previous PRs. We are in it already.

Thats only true for users using pthreads or wasm workers I think though? Those users are already tend to be targetting more recent browers anyway. For users targetting legacy browsers its unlikely they will be expecting pthreads to work.

Copy link
Member

@kripken kripken left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems reasonable to me. 2019 is still 6 years ago, our default is significantly newer, and I don't recall people complaining about these bumps. (And people can always use older Emscripten versions.)

// see https://github.com/emscripten-core/emscripten/pull/7191.
// MAX_INT (0x7FFFFFFF, or -1) specifies that target is not supported.
// Minimum supported value is 101000 which was released in 2016-09 (see
// Minimum supported value is 120200 which was released on 2019-03-25 (see
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The rest of the comment above might need updates too. "14.1" should be 15, unrelated to this PR though. And iPhone 4s should be 5 based on the PR description?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a second note to specifically list multithreaded code, since the above refers to singlethreaded code.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@sbc100
Copy link
Collaborator

sbc100 commented Aug 14, 2025

Codesize failures will be fixed by rebase/merge I believe.

@sbc100
Copy link
Collaborator

sbc100 commented Aug 14, 2025

I'm excited to make some cleanups once this lands.. but maybe will wait a release or two to see if there is feedback.

@juj
Copy link
Collaborator Author

juj commented Aug 14, 2025

I'm excited to make some cleanups once this lands.. but maybe will wait a release or two to see if there is feedback.

Cool. I was thinking maybe multithreading in general might be one feature to use the Feature mechanism for, if we wanted to distinguish singlethreaded vs multithreaded support rigorously.

@juj juj merged commit faa2069 into emscripten-core:main Aug 15, 2025
30 checks passed
sbc100 added a commit to sbc100/emscripten that referenced this pull request Sep 4, 2025
Since emscripten-core#24933 there are now certain comparisons which can be removed
since they are always false.
sbc100 added a commit that referenced this pull request Sep 4, 2025
Since #24933 there are now certain comparisons which can be removed
since they are always false.
inolen pushed a commit to inolen/emscripten that referenced this pull request Feb 13, 2026
…WorkerGlobalScope.name parameter. (emscripten-core#24933)

Way back I recall I did not want to target Worker's `name` parameter
given it had browser version requirements, and listed to be a [debugging
feature](https://html.spec.whatwg.org/multipage/workers.html#dom-worker-dev).

Though now that we have crossed that line, update minimum browser
version feature matrix to require `name` support (e.g. after emscripten-core#24190),
up[date the minimum required browser versions to highlight this fact.

We could maintain separate min required versions for singlethreaded and
multithreaded builds, although given that the minimum browser version
bump here is relatively small, probably no bother.

Although the version bump does mean that Emscripten does no longer
support iPhone 5 devices. Fortunately they are very old by now, so
practically absent.
inolen pushed a commit to inolen/emscripten that referenced this pull request Feb 13, 2026
…mscripten-core#25177)

Since emscripten-core#24933 there are now certain comparisons which can be removed
since they are always false.
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

Successfully merging this pull request may close these issues.

3 participants