ioredis icon indicating copy to clipboard operation
ioredis copied to clipboard

Start testing with Node 16 LTS

Open TysonAndre opened this issue 3 years ago • 4 comments

https://docs.travis-ci.com/user/languages/javascript-with-nodejs/ provides node 16, and node 16 LTS is out.

EDIT: This is consistently failing in node 16.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions#no_binding_of_arguments seems to be misused with arrow functions in test/functional/cluster/pub_sub.ts but that seems unrelated.

Node 15 would convert unhandled promise rejections to uncaught exceptions

Previously, mocha was suppressing unhandledRejections such as those from redis.connect(), due to console.error being stubbed out

TysonAndre avatar Nov 23 '21 01:11 TysonAndre

@luin - ~~Some of these are subtle timing issues where I'm not familiar with the implementation. Would it make sense to introduce tests for node 16 in CI, but skip it if process.versions.node >= 16.0.0 with a FIXME comment~~

TysonAndre avatar Nov 23 '21 15:11 TysonAndre

@luin - Some of these are subtle timing issues where I'm not familiar with the implementation. Would it make sense to introduce tests for node 16 in CI, but skip it if process.versions.node >= 16.0.0 with a FIXME comment

Yeah I think so.

luin avatar Nov 24 '21 06:11 luin

The build passes now but travis hasn't run for some reason.

Previously, mocha was suppressing unhandledRejections such as those from redis.connect(), and there was no indication due to console.error being stubbed out completely.

Node 15+ would convert unhandled promise rejections to uncaught exceptions, and uncaught exceptions got reported in unit tests as test failures

TysonAndre avatar Nov 24 '21 14:11 TysonAndre

The build passes now but travis hasn't run for some reason.

Travis has a credit thing which has run out and will be refilled tomorrow. Considering moving to GitHub CI but anyway it should work tomorrow.

luin avatar Nov 24 '21 14:11 luin