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

node.js version support #10

Closed
coreyfarrell opened this issue May 11, 2020 · 2 comments · Fixed by #12 or #14 · May be fixed by sttk/fs-mkdirp-stream#1
Closed

node.js version support #10

coreyfarrell opened this issue May 11, 2020 · 2 comments · Fixed by #12 or #14 · May be fixed by sttk/fs-mkdirp-stream#1

Comments

@coreyfarrell
Copy link
Member

This is a follow-up to #6 (comment) where I pointed out use of a 10.12.0 form of options argument to fs.mkdir. I'm thinking we might want to specify engines.node >=10.12.0 or >=10.13.0 on everything anyways. It is very common in the ecosystem for packages that support node.js 10+ to either require recursive fs.mkdir (10.12.0) or to not support minor releases before LTS (10.13.0).

Supporting 10.0.0 brings little value and will setup a long term conflict with both production and development dependencies. For example eslint 7.0.0 (just released) declares support for node.js ^10.12.0 || >=12.0.0. babel 8 and nyc 16 also will not support node.js 10.0.0 - 10.11.x. These are examples of packages which will explicitly declare non-support for older point releases of 10.x. Many packages will simply declare support for >=10 but only work on >=10.12.0.

@phated
Copy link
Member

phated commented May 11, 2020

Ugh! The npm ecosystem makes me really frustrated. I agree with your assessment and will need to update the .boilerplate. I probably won't make the engine bump on my lead project which was the first project I updated to these patterns.

@coreyfarrell
Copy link
Member Author

The specific reason projects require node.js 10.12.0+ is usually recursive fs.mkdir, nobody switched to fs.mkdir(dirname, {mode: mode}, callback). From this the requirement ripples out.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants