diff --git a/.github/.cache-key b/.github/.cache-key index b25300ecf..d05221f2f 100644 --- a/.github/.cache-key +++ b/.github/.cache-key @@ -6,5 +6,5 @@ ; ; / \ _____________/_ __ \_____________ -Times we have broken CI: 3 +Times we have broken CI: 4 Times Windows has broken CI: 99+ diff --git a/packages/core/src/browser.js b/packages/core/src/browser.js index 74f3eade3..c84731727 100644 --- a/packages/core/src/browser.js +++ b/packages/core/src/browser.js @@ -20,8 +20,10 @@ export class Browser extends EventEmitter { #lastid = 0; args = [ - // disable the translate popup and optimization downloads - '--disable-features=Translate,OptimizationGuideModelDownloading', + // disable the translate popup, optimization downloads, baseline site + // isolation (so cross-origin sub-resources and worker fetches stay in + // the main renderer for interception), and HTTPS-first navigation blocking + '--disable-features=Translate,OptimizationGuideModelDownloading,IsolateOrigins,site-per-process,HttpsFirstBalancedModeAutoEnable', // disable several subsystems which run network requests in the background '--disable-background-networking', // disable task throttling of timer tasks from background pages diff --git a/packages/core/src/install.js b/packages/core/src/install.js index ac87c89bd..5bb788352 100644 --- a/packages/core/src/install.js +++ b/packages/core/src/install.js @@ -175,13 +175,13 @@ export function chromium({ }); } -// default chromium revisions corresponds to v126.0.6478.184 +// default chromium revisions corresponds to v143.0.7499.169 chromium.revisions = { - linux: '1300309', - win64: '1300297', - win32: '1300295', - darwin: '1300293', - darwinArm: '1300314' + linux: '1536366', + win64: '1536376', + win32: '1536377', + darwin: '1536380', + darwinArm: '1536376' }; // export the namespace by default diff --git a/packages/core/src/network.js b/packages/core/src/network.js index dba250149..e19d6e3b4 100644 --- a/packages/core/src/network.js +++ b/packages/core/src/network.js @@ -558,7 +558,7 @@ async function makeDirectRequest(network, request, session) { 'sec-fetch-site': 'same-origin', 'sec-fetch-mode': 'cors', 'sec-fetch-dest': 'font', - 'sec-ch-ua': '"Chromium";v="123", "Google Chrome";v="123", "Not?A_Brand";v="99"', + 'sec-ch-ua': '"Chromium";v="143", "Google Chrome";v="143", "Not?A_Brand";v="99"', 'sec-ch-ua-mobile': '?0', 'sec-ch-ua-platform': '"macOS"', 'sec-fetch-user': '?1', diff --git a/packages/core/test/helpers/server.js b/packages/core/test/helpers/server.js index ad8d0bdf0..0a1cfef9f 100644 --- a/packages/core/test/helpers/server.js +++ b/packages/core/test/helpers/server.js @@ -28,7 +28,11 @@ export function createTestServer({ default: defaultReply, ...replies }, port = 8 server.route(async (req, res, next) => { let pathname = req.url.pathname; if (req.url.search) pathname += req.url.search; - server.requests.push(req.body ? [pathname, req.body, req.headers] : [pathname, req.headers]); + // skip favicon.ico — Chrome >=128 new headless auto-requests it, but it's + // not part of any test's asset graph. Filter here to avoid per-test churn. + if (req.url.pathname !== '/favicon.ico') { + server.requests.push(req.body ? [pathname, req.body, req.headers] : [pathname, req.headers]); + } let reply = replies[pathname] || defaultReply; return reply ? await reply(req, res) : next(); });