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

2023-08-28 - Node.js の fs.readdir と fs.readdirSync にバグがあって、recursive と withFileTypes オプションを両方有効にすると戻りのdirent一覧が大幅に欠落する #244

Closed
kachick opened this issue Aug 28, 2023 · 1 comment

Comments

@kachick
Copy link
Owner

kachick commented Aug 28, 2023

node v20.5.1 で、過去に数億回は書かれてきたであろうサブディレクトリ配下も含めたパスの一覧を取ろうと fs.readdirSync に recursive と withFileTypes オプションをくっつけた。そうすると、なんも問題なく返ってきたように見えて 何故か2エントリ しか返らない
使い方間違えたのかなと recursive や withFileTypes を外すと途端に全エントリが出るのだけれど、これだと求めている用途には不足なのではてはてと思ってたらまさにそういうバグだった。

nodejs/node#48858
nodejs/node#48698
nodejs/node#48640

upstream では2週間前に修正PRがマージされているのだけれど、まだリリースされてないっぽい。
Nodejs ぐらい広く使われてる処理系にしては、仕様がどうとか不足ではなく結構デカ目の不具合にあたったの初めてだったので、まぁすぐ修正版が使えるようにはなると思うけどなんとなくメモっておく

@kachick kachick closed this as completed Aug 28, 2023
@kachick kachick changed the title 2023-08-28 - Node.js の fs.readdirSync にバグがあって、recursive と withFileTypes オプションを両方有効にすると戻りのdirent一覧が大幅に欠落する 2023-08-28 - Node.js の fs.readdir と fs.readdirSync にバグがあって、recursive と withFileTypes オプションを両方有効にすると戻りのdirent一覧が大幅に欠落する Aug 28, 2023
kachick added a commit to kachick/wait-other-jobs that referenced this issue Oct 4, 2023
@kachick
Copy link
Owner Author

kachick commented Oct 4, 2023

直ってた kachick/wait-other-jobs@6e8d6a7

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

1 participant