Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ See docs/process.md for more on how version tagging works.

4.0.17 (in development)
-----------------------
- Minimum Firefox version was bumped up to Firefox 68 ESR, since older Firefox
versions are not able to run the parallel browser harness: (#25493)
- Firefox: v65 -> v68

4.0.16 - 10/07/25
-----------------
Expand Down
2 changes: 1 addition & 1 deletion site/source/docs/tools_reference/settings_reference.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2871,7 +2871,7 @@ are desired to work. Pass -sMIN_FIREFOX_VERSION=majorVersion to drop support
for Firefox versions older than < majorVersion.
Firefox 79 was released on 2020-07-28.
MAX_INT (0x7FFFFFFF, or -1) specifies that target is not supported.
Minimum supported value is 65 which was released on 2019-01-29 (see
Minimum supported value is 68 which was released on 2019-07-09 (see
feature_matrix.py)

Default value: 79
Expand Down
11 changes: 0 additions & 11 deletions src/lib/libwebgl.js
Original file line number Diff line number Diff line change
Expand Up @@ -859,17 +859,6 @@ for (/**@suppress{duplicate}*/var i = 0; i <= {{{ GL_POOL_TEMP_BUFFERS_SIZE }}};
if (gl.getContextAttributes().antialias) {
context.defaultFboForbidBlitFramebuffer = true;
}
#if MIN_FIREFOX_VERSION < 67
else {
// The WebGL 2 blit path doesn't work in Firefox < 67 (except in fullscreen).
// https://bugzil.la/1523030
var firefoxMatch = navigator.userAgent.toLowerCase().match(/firefox\/(\d\d)/);
if (firefoxMatch != null) {
var firefoxVersion = firefoxMatch[1];
context.defaultFboForbidBlitFramebuffer = firefoxVersion < 67;
}
}
#endif
Copy link
Collaborator

Choose a reason for hiding this comment

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

This kind of change always makes me happy!

#endif

// Create render targets to the FBO
Expand Down
2 changes: 1 addition & 1 deletion src/settings.js
Original file line number Diff line number Diff line change
Expand Up @@ -1880,7 +1880,7 @@ var AUTO_NATIVE_LIBRARIES = true;
// for Firefox versions older than < majorVersion.
// Firefox 79 was released on 2020-07-28.
// MAX_INT (0x7FFFFFFF, or -1) specifies that target is not supported.
// Minimum supported value is 65 which was released on 2019-01-29 (see
// Minimum supported value is 68 which was released on 2019-07-09 (see
// feature_matrix.py)
// [link]
var MIN_FIREFOX_VERSION = 79;
Expand Down
3 changes: 0 additions & 3 deletions test/common.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,9 +116,6 @@ def configure(data_dir):
"""Chrome has no special configuration step."""


# N.b. The earliest Firefox version that can run multithreaded browser harness
# is Firefox 67. If you need to test earlier Firefox versions, use EMTEST_CORES=1
# environment variable to revert to the single-threaded browser harness.
class FirefoxConfig:
data_dir_flag = '-profile '
default_flags = ('-new-instance',)
Expand Down
6 changes: 3 additions & 3 deletions test/test_other.py
Original file line number Diff line number Diff line change
Expand Up @@ -10530,7 +10530,7 @@ def compile(flags):
compile(['-sMIN_SAFARI_VERSION=160000', '-mno-sign-ext'])
verify_features_sec_linked('sign-ext', False)
# Flag enabling overrides explicit browser version
compile(['-sMIN_FIREFOX_VERSION=65', '-msign-ext'])
compile(['-sMIN_FIREFOX_VERSION=68', '-msign-ext'])
verify_features_sec_linked('sign-ext', True)
# Flag disabling overrides explicit version for bulk memory
compile(['-sMIN_SAFARI_VERSION=150000', '-mno-bulk-memory'])
Expand Down Expand Up @@ -14382,8 +14382,8 @@ def test_min_browser_version(self):
err = self.expect_fail([EMCC, test_file('hello_world.c'), '-Wno-transpile', '-Werror', '-sWASM_BIGINT', '-sMIN_SAFARI_VERSION=130000'])
self.assertContained('emcc: error: MIN_SAFARI_VERSION=130000 is not compatible with WASM_BIGINT (MIN_SAFARI_VERSION=150000 or above required)', err)

err = self.expect_fail([EMCC, test_file('hello_world.c'), '-Wno-transpile', '-Werror', '-pthread', '-sMIN_FIREFOX_VERSION=65'])
self.assertContained('emcc: error: MIN_FIREFOX_VERSION=65 is not compatible with pthreads (MIN_FIREFOX_VERSION=79 or above required)', err)
err = self.expect_fail([EMCC, test_file('hello_world.c'), '-Wno-transpile', '-Werror', '-pthread', '-sMIN_FIREFOX_VERSION=68'])
self.assertContained('emcc: error: MIN_FIREFOX_VERSION=68 is not compatible with pthreads (MIN_FIREFOX_VERSION=79 or above required)', err)

# Test that using two different ways to disable a target environment at the same time will not produce a warning.
def test_double_disable_environment(self):
Expand Down
2 changes: 1 addition & 1 deletion tools/feature_matrix.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
# N.b. when modifying these values, update comments in src/settings.js on
# MIN_x_VERSION fields to match accordingly.
OLDEST_SUPPORTED_CHROME = 74 # Released on 2019-04-23
OLDEST_SUPPORTED_FIREFOX = 65 # Released on 2019-01-29
OLDEST_SUPPORTED_FIREFOX = 68 # Released on 2019-07-09
OLDEST_SUPPORTED_SAFARI = 120200 # Released on 2019-03-25
# 12.22.09 is the oldest version of node that we do any testing with.
# Keep this in sync with the test-node-compat in .circleci/config.yml.
Expand Down