tinyglobby icon indicating copy to clipboard operation
tinyglobby copied to clipboard

Intermittent assertion error running `glob` on Windows: `Assertion failed: process_title, file c:\ws\deps\uv\src\win\util.c, line 412`

Open askoufis opened this issue 6 months ago • 6 comments

Since migrating to tinyglobby (https://github.com/vanilla-extract-css/vanilla-extract/pull/1582), our Windows CI has intermittently (~10% of the time) failed with the following error:

Assertion failed: process_title, file c:\ws\deps\uv\src\win\util.c, line 412
 ELIFECYCLE  Command failed with exit code 3221226505.
 ELIFECYCLE  Command failed with exit code 3221226505.

Link to failed CI run.

Unfortunately I don't have a reliable reproduction of the issue as I don't have a functioning Windows dev setup at the moment. The script that's failing is our DTS bundling script. Our other scripts also use tinyglobby so they may be intermittently failing as well but just never get run as the build-dts is the first script executed in CI.

Given that this is libuv code that's erroring, I doubt this is tinyglobby's fault. I'm guessing it's something to do with fdir's Node API usage, but I can't find any relevant issues in the repo. Happy to raise this issue in fdir if you think it's more appropriate.

askoufis avatar Jun 10 '25 01:06 askoufis

thanks for the report, that is indeed very odd. i wonder if the latest fdir release has something to do with it. do you mind checking to see if it happens with fdir 6.4.4?

on a bit of an unrelated note, you might want to disable the expandDirectories option if migrating from fast-glob. it's on by default to match globby, and the expand directories functionality isn't in fast-glob

SuperchupuDev avatar Jun 10 '25 05:06 SuperchupuDev

thanks for the report, that is indeed very odd. i wonder if the latest fdir release has something to do with it. do you mind checking to see if it happens with fdir 6.4.4?

The repo is currently using 6.4.4, so not sure if that release is the problem.

on a bit of an unrelated note, you might want to disable the expandDirectories option if migrating from fast-glob. it's on by default to match globby, and the expand directories functionality isn't in fast-glob

Thanks for the tip. https://github.com/vanilla-extract-css/vanilla-extract/pull/1612

askoufis avatar Jun 12 '25 01:06 askoufis

ah. can you try to update fdir and see if it works? 6.4.5 happened to fix a windows bug that we believe is a bug in node 😅

SuperchupuDev avatar Jun 12 '25 07:06 SuperchupuDev

ah. can you try to update fdir and see if it works? 6.4.5 happened to fix a windows bug that we believe is a bug in node 😅

Bumped fdir to 6.4.6 (and updated tinyglobby) but got the same error.

askoufis avatar Jun 13 '25 06:06 askoufis

ah. can you try to update fdir and see if it works? 6.4.5 happened to fix a windows bug that we believe is a bug in node 😅

Bumped fdir to 6.4.6 (and updated tinyglobby) but got the same error.

i see you are running your script with tsx, maybe it's a tsx issue? neither tinyglobby or any of its two subdependencies use process.title

SuperchupuDev avatar Aug 20 '25 17:08 SuperchupuDev

Seems like it's a libuv bug https://github.com/nodejs/node/issues/58695. Fixed upstream in https://github.com/libuv/libuv/pull/4807, though libuv hasn't had a release since April, so it hasn't made it into any recent Node versions, and likely won't for a while still given https://github.com/nodejs/TSC/issues/1657.

Feel free to close this issue if you want.

askoufis avatar Aug 26 '25 11:08 askoufis