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

Drop Node.js 10 support & Require Node.js >= 12 #4378

Closed
SukkaW opened this issue Jun 25, 2020 · 5 comments
Closed

Drop Node.js 10 support & Require Node.js >= 12 #4378

SukkaW opened this issue Jun 25, 2020 · 5 comments

Comments

@SukkaW
Copy link
Member

SukkaW commented Jun 25, 2020

Continuing #3508 & #3698.

With Node.js 12 we will be able to use:

Also, worker_threads requires Node.js 12+ as well, which is important for multi-core usage proposal (#4355).

On the other hand, async/await is significantly faster than native Promise and its performance is now comparable to that of Bluebird:

image
image

Ref: https://blog.kuzzle.io/bluebird-vs-native-vs-async/await-state-of-promises-performances-in-2019
Ref: https://v8.dev/blog/fast-async


Eventually we will drop Node.js 10. The question is whether we should bump minimum required Node.js version to 12 before we publish Hexo 5.0.0.

cc @hexojs/core @curbengh @segayuu @seaoak @tomap @stevenjoezhang

@tomap
Copy link
Contributor

tomap commented Sep 26, 2020

So, we will drop node 12 with hexo 6?

@SukkaW
Copy link
Member Author

SukkaW commented Sep 26, 2020

@tomap Yeah, wait for Hexo 6.

@stevenjoezhang
Copy link
Member

stevenjoezhang commented Jan 31, 2021

Node.js 10 will reach EOL on April 30, 2021

https://github.com/nodejs/Release

See also hexojs/hexo-generator-index#51 hexojs/hexo-generator-index#59

String.prototype.matchAll requires Node.js 12.4.0: hexojs/hexo-util#246

@stevenjoezhang
Copy link
Member

Node.js 12 supports esm import export without --experimental-modules flag

Automated ESM conversion tools: https://github.com/lebab/lebab https://github.com/wessberg/cjstoesm
(Both of them could not perfectly handle naming conflicts of const and import)

@stevenjoezhang
Copy link
Member

Closed by #4750

@yoshinorin yoshinorin unpinned this issue Mar 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants