endojs / endo

Endo is a distributed secure JavaScript sandbox, based on SES
Apache License 2.0
804 stars 71 forks source link

Windows broke atomic rename #1955

Closed kriskowal closed 8 months ago

kriskowal commented 8 months ago

Describe the bug

Per https://github.com/nodejs/node/issues/29481, Windows does not support atomic swap (POSIX rename semantics) by default when the target file exists. Since CI caches the target for some tests, we’re seeing CI errors on Windows only like https://github.com/endojs/endo/actions/runs/7471064596. To address this, we may need an environment variable or to back off atomic swap on Windows only.

mhofman commented 8 months ago

"broke" is a strong word. Looks like Windows never had atomic renames.

kriskowal commented 8 months ago

Yeah, true: it did not support POSIX rename. This is manifesting now with the CI cache. I got a test to pass by killing the windows cache. https://github.com/endojs/endo/actions/caches

kriskowal commented 8 months ago

"broke" is a strong word. Looks like Windows never had atomic renames.

WHAT YEAR IS THIS

kriskowal commented 8 months ago

Related Node.js issue with some information on the problem https://github.com/nodejs/node/issues/29481