baileyherbert / utimes

🕓 Cross-platform native addon to change the btime, mtime, and atime of files in Node.js.
https://npmjs.com/utimes
MIT License
47 stars 6 forks source link

fix: upgrade node version to 16 #31

Closed akosbalasko closed 3 months ago

baileyherbert commented 3 months ago

Hi @akosbalasko!

Apologies, but can you please explain the reason for the PR? Is it just aiming to bump the minimum node version to what is currently supported?

This package should run on all versions of node between v10 and v22 (inclusive). Today, the binary files built in the package are version-agnostic and don't need to be compiled against a specific node version.

Bumping the minimum version to v16 will not affect the built binary files or improve security, so I considered it an unnecessary breaking change and had a preference to remain in support of these older versions until otherwise necessary.

akosbalasko commented 3 months ago

Hi @baileyherbert ,

Thanks for messaging me! Currently all projects that uses github actions with node are pushed to use at least Node16 in the actions, therefore I increased the version of the required node to make it compliant, otherwise none of the gh action will work.

My main target is to fix my project (https://github.com/akosbalasko/yarle) with the same error (node16 is required), but when I increased the node version, the step of electron builder hangs on rebuiliding utimes dependency, hence I thought that it could be solved if we offer a prebuild with the desired node version, and in this case it should not need to be build on-the-fly. Feel free to share if you have any ideas or concerns about this way is not doable!

baileyherbert commented 3 months ago

Thanks for the clarifications.

Indeed, it is now a requirement that actions run on Node 16. This requirement only applies to the actions themselves, such as actions/setup-node@v2, so if the workflows are outdated then these actions only need to be bumped, e.g. to actions/setup-node@v4.

It's still acceptable for setup-node to install and run node versions older than 16 as long as the action itself runs on 16. In any case, none of this should be having an impact on your builds, and it won't change the resulting binaries, so I would not expect this to resolve your issues.

The stalled builds are very strange. I recommend that you try running the electron-builder step where it's getting stuck with the DEBUG=electron-builder environment variable, to see if any errors are occurring silently.

akosbalasko commented 3 months ago

okay @baileyherbert , I get your point, thank you, I try to debug then. And close this one.