Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: add support to v16 #348

Merged
merged 9 commits into from
Nov 10, 2021
Merged

chore: add support to v16 #348

merged 9 commits into from
Nov 10, 2021

Conversation

RafaelGSS
Copy link
Contributor

Copy link
Contributor

@mcollina mcollina left a comment

Choose a reason for hiding this comment

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

lgtm

Copy link
Contributor

@mcollina mcollina left a comment

Choose a reason for hiding this comment

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

lgtm

@RafaelGSS
Copy link
Contributor Author

@mcollina The CI is failing for v16 because it has introduced a different behavior when using fs.createWriteStream. Look at the following reproducible code:

const fs = require('fs')
const stream = require('stream')

const processStatEncoder = new stream.Transform()
const out = processStatEncoder.pipe(fs.createWriteStream(`example-${process.version}`))
process.exit()

If you run it using v14 it will create the file, using v16 it doesn't create, looks like the fs.createWriteStream will create it in the next tick, however, since a process.exit() is found the file is never created. I mean, it only affects the tests, and I feel that it's correlated to: clinicjs/node-clinic#293 (comment).

I'll fix it by just running in the next tick, but it's important to note here.

@RafaelGSS
Copy link
Contributor Author

The remaining tests I'm not able to reproduce locally. But looks like it's indeterministic since the creation. https://github.com/clinicjs/node-clinic-doctor/actions

@RafaelGSS
Copy link
Contributor Author

@mcollina Can I merge it or should look at the flaky windows tests?

@RafaelGSS
Copy link
Contributor Author

Well, looks that ba904ed fixes it.

Just for reference, it's needed because tap@15 uses node-preload under the hood on windows paths: https://github.com/cfware/node-preload/blob/master/hook-spawn.js#L16. Similar behavior of: clinicjs/node-clinic-bubbleprof#382 (comment).

I'm a bit worried about that change on tap@15, changing the node environment under the hood is quite worrying. (Jest feeling)

@RafaelGSS RafaelGSS requested a review from mcollina November 10, 2021 01:11
@RafaelGSS RafaelGSS merged commit 9ac80d5 into main Nov 10, 2021
@simoneb simoneb deleted the chore/add-support-to-v16 branch November 10, 2021 17:42
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.

2 participants