heroku / heroku-buildpack-nodejs

Heroku's buildpack for Node.js applications.
https://devcenter.heroku.com/articles/buildpacks
MIT License
1.31k stars 2.63k forks source link

Add ARM support for resolve-version #1321

Open mlarraz opened 2 months ago

mlarraz commented 2 months ago

I have not actually managed to build the new binaries myself as I'm not very experienced with Rust, but hoping somebody can help out.

I noticed there's a similar thing happening for yq but I didn't see any code handling the vendoring so I assume it was done manually. Presumably it will need ARM versions as well

This is meant to fix https://github.com/heroku/heroku-buildpack-nodejs/issues/1268

colincasey commented 2 months ago

@mlarraz thanks for the PR! I won't be able to fully review this until sometime next week due to other priorities but it looks like a good first step in addressing #1268.

As for the cross-compilation of the resolve-version binaries, that's a bit more complicated since the setup varies depending on the host/target but typically you need the following:

And you're right, the vendored yq binaries were manually sourced from their releases.

mlarraz commented 2 months ago

Thanks, I will work on adding the binaries.

I noticed a previous commit referenced compressing the yq binaries, but didn't go into detail. It doesn't look like it was using tar or some other container as the files are still directly executable.