Skip to content
This repository was archived by the owner on Jan 3, 2024. It is now read-only.

Conversation

jesec
Copy link
Contributor

@jesec jesec commented Apr 2, 2021

Linux: https://github.com/jesec/pkg-fetch/actions/runs/711723135

Windows: https://github.com/jesec/pkg-fetch/actions/runs/711723405

  • Node < 14 does not support cross compilation for win-arm64

macOS: https://github.com/jesec/pkg-fetch/actions/runs/711723492

This should allow us to release 3.0.

@leerob , after we merge this change, please:

  1. Bump and tag version. Build and release to npm.
  2. Go to Actions and run binary workflows.
  3. Fetch the binaries from Actions after workflows finish.
  4. Rename from built-* to node-*.
  5. Upload them to a v3.0 release. (strictly vMAJOR.MINOR here. no patch. patch releases are not expected to change binaries)

Users of pkg are not going to be affected by the new pkg-fetch release at this moment, as pkg uses a pre-defined version of pkg-fetch.

With a new release of pkg-fetch and binaries ready, we can go back to pkg, bump the pkg-fetch, and run the test suite. If everything goes well, we can do a release there, but we can also wait a while.

I plan to add support for a fully static (Linux) variant soon. Additionally, I think we can tweak the configure arguments of Node to make the binaries smaller. And, should we strip (debugging symbols from) binaries?

@robertsLando
Copy link
Contributor

Why don't just create a draft release now and instead of uploading artifacts directly upload tags to that release?

@leerob
Copy link
Contributor

leerob commented Apr 2, 2021

I'm all in favor of whatever reduces the amount of manual work needed. Less chance for me to make mistakes 😄

@jesec
Copy link
Contributor Author

jesec commented Apr 3, 2021

It is indeed possible to add workflows that create and upload binaries to a release automatically.

However, that may not be desired in some cases. For instance, we may want to coordinate release with npm side, and we may not want to override existing release assets before we actually do a release.

This change definitely makes things significantly easier. Maintainers no longer have to spend (tens of) hours with different build configurations and machines. Though, we still have some relatively trivial jobs to do: fetch binaries from Actions, rename, and upload to Releases.

@robertsLando
Copy link
Contributor

robertsLando commented Apr 3, 2021

I would (at least) remove the need to rename them, I'm still not 100% sure about the manual downlaod/upload as it takes some (useless) time to download ad upload them... I think that once we have them on assets we could decide if drop or keep them. Maybe we could add a check and if the asset is already present on relase don't override it but upload as artifact or with a (2) at the end so we can later decide which one to keep. Manual rename could have some typos and I think we should make this part almost all automated

@jesec
Copy link
Contributor Author

jesec commented Apr 3, 2021

Reply to all Node 8 comments:

Because Node 8 is still in the patches/. If we don't want to support it, we have to remove it from the patches/.

Per our previous discussions, we may want to allow at least one recently deprecated Node version.

Copy link
Contributor

@robertsLando robertsLando left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@robertsLando
Copy link
Contributor

@leerob Let's go on with this as it is a must have

@leerob leerob merged commit c21646b into master Apr 6, 2021
@leerob leerob deleted the pr/workflows branch April 6, 2021 12:09
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants