From 285c1aaca647e5dce2d6d462a9214865760a1a07 Mon Sep 17 00:00:00 2001 From: Michael Vartan Date: Mon, 30 Aug 2021 14:03:03 -0700 Subject: [PATCH] Force socket.io to always use native timeouts, preventing Karma from hanging due to mocked clocks. --- package.json | 3 ++- static/karma.js | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index e6511014e..2fd2188c3 100644 --- a/package.json +++ b/package.json @@ -284,6 +284,7 @@ "Merott Movahedi ", "Merrick Christensen ", "Michael Krotscheck ", + "Michael Vartan ", "MichaƂ Siwek ", "Milan Aleksic ", "Milana Stojadinov ", @@ -435,7 +436,7 @@ "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^3.1.0", + "socket.io": "^4.2.0", "source-map": "^0.6.1", "tmp": "^0.2.1", "ua-parser-js": "^0.7.28", diff --git a/static/karma.js b/static/karma.js index 95be74c59..43dc114ea 100644 --- a/static/karma.js +++ b/static/karma.js @@ -334,11 +334,12 @@ var BROWSER_SOCKET_TIMEOUT = constants.BROWSER_SOCKET_TIMEOUT // Connect to the server using socket.io https://socket.io/ var socket = io(location.host, { + 'sync disconnect on unload': true, + path: KARMA_PROXY_PATH + KARMA_URL_ROOT.substr(1) + 'socket.io', reconnectionDelay: 500, reconnectionDelayMax: Infinity, timeout: BROWSER_SOCKET_TIMEOUT, - path: KARMA_PROXY_PATH + KARMA_URL_ROOT.substr(1) + 'socket.io', - 'sync disconnect on unload': true + useNativeTimers: true, }) // instantiate the updater of the view