Commit Graph

562 Commits

Author SHA1 Message Date
Jesse Chan
77e29d735e Working on v3.1.0
CI workflows skip existing binaries in the same minor version. However,
some changes require us to rebuild and replace binaries.

As such, bump the minor version and create a Git tag to store the binaries.

Binaries to be carried over from v3.0:

- alpine, linux, linuxstatic and win

macOS ones would be recompiled due to 5d2bc3bb2, and Node 16.0.0
binaries will be dropped in v3.1.

No npm release is required for this change. We will do that after
binaries are compiled and hashes are updated.
2021-05-11 14:35:14 +01:00
dependabot[bot]
c8910c2fe2
Bump hosted-git-info from 2.8.8 to 2.8.9 (#181)
Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9.
- [Release notes](https://github.com/npm/hosted-git-info/releases)
- [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md)
- [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-11 15:16:24 +02:00
Jesse Chan
5d2bc3bb24 build: don't strip global symbols of macOS binaries
Bug: vercel/pkg#1155
2021-05-10 16:59:53 +01:00
Jesse Chan
a062bb42f5 build: strip signature from compiled macOS base binary
Newer versions of Apple Clang automatically ad-hoc sign the compiled
executable, due to the new mandatory code signing requirement [1].

However, for final executable to be signable, base binary MUST NOT
have an existing signature.

This change strips the ad-hoc signature from compiled macOS base binary.

[1]: https://developer.apple.com/documentation/macos-release-notes/macos-big-sur-11_0_1-universal-apps-release-notes

Refs: vercel/pkg#1164
Bug: vercel/pkg#1023
2021-05-10 16:58:56 +01:00
Jesse Chan
25b257cbcc patches: bump to 16.1.0 2021-05-10 08:56:52 +01:00
Jesse Chan
fa6e45dbf4
3.0.4 2021-04-27 08:38:41 +08:00
Jesse Chan
815ca0b354 expected: add hashes of Node.js 16.0.0 binaries 2021-04-24 18:20:29 +08:00
Jesse Chan
7c8ca68ade CI: don't upload if binary is not compiled 2021-04-23 23:01:44 +08:00
Jesse Chan
8b5e474f3c Revert "CI: don't fetch, build only"
This reverts commit e9c2efaf7a.

We don't want to waste resources. Plus, with #169, it is mandatory
to bump minor if there is any change of binary.
2021-04-23 23:01:44 +08:00
Jesse Chan
e3a3cacffd CI: add Node 16, drop Node 8 2021-04-23 23:01:44 +08:00
Jesse Chan
dd5991ab44 patches: apply nodejs/node@ea694e2b1 to 16 2021-04-23 23:01:44 +08:00
Jesse Chan
b0f3903209 patches: add Node.js 16.0.0
Test: manual, node v16.0.0
2021-04-23 23:01:44 +08:00
Lee Robinson
f4645a72b4 3.0.3 2021-04-22 10:30:22 -05:00
Jesse Chan
f28cbd6cf7
log: expand progress bar width to 35 (#170)
Otherwise we can't use "linuxstatic" due to progress bar out of range...
2021-04-22 10:28:23 -05:00
Jesse Chan
629cc71d26 Validate hash of fetched binary 2021-04-22 22:54:06 +08:00
Jesse Chan
7467b7f9d8 Move small utility functions to "utils" 2021-04-22 22:54:06 +08:00
Jesse Chan
b11eb6679a build: stop when a procedure failed 2021-04-22 22:54:06 +08:00
Lee Robinson
3b4aea993a 3.0.2 2021-04-18 14:46:06 -05:00
Jesse Chan
2a68741776 Revert "--without-snapshot for alpine builds as a temporary workaround"
This reverts commit d4b89a9511.

No longer needed.
2021-04-15 23:47:45 +08:00
Jesse Chan
963e36eae8 patches: disable LTO for ICU tools 2021-04-15 23:47:45 +08:00
Jesse Chan
835ae3b646 patches: get rid of "-fuse-linker-plugin" to get LTO working 2021-04-15 23:47:45 +08:00
Jesse Chan
b5d926af84 Add a fully static "linuxstatic" variant
Bug: #72
2021-04-15 23:47:45 +08:00
Jesse Chan
21ab8a26c8 build: statically link against libgcc and libstdc++ on Alpine
Bug: vercel/pkg#555
2021-04-15 23:47:45 +08:00
Jesse Chan
07b80947e2 Add workflows for Alpine binaries 2021-04-15 23:47:45 +08:00
Jesse Chan
ae15753d5f Dockerfile.linux: properly install "python3" 2021-04-15 22:17:14 +08:00
Jesse Chan
e9c2efaf7a CI: don't fetch, build only 2021-04-15 22:17:13 +08:00
Jesse Chan
e59b746f26 build: fix improper use of ".concat" 2021-04-13 10:45:03 +08:00
Jesse Chan
748f67a0fe build: workaround win-arm64 cross compilation issue with small-icu 2021-04-11 23:59:25 +08:00
Jesse Chan
97c892758f build: defaults to small ICU
Bug: #164
2021-04-11 23:59:25 +08:00
Lee Robinson
db09e58f4a 3.0.1 2021-04-09 07:58:30 -05:00
Jesse Chan
62f2b20a3d
Include TypeScript types in package (#161) 2021-04-08 11:22:58 -05:00
Jesse Chan
8c6b98a39d
Dockerfile.linux: install "patch" utility (#162) 2021-04-08 11:22:40 -05:00
Jesse Chan
0cc2634d4f
build: tweak Node configure flags (#160)
* build: consolidate common configure args

* build: re-enable LTCG for Windows

* build: enable LTO for Linux

* build: disable DTrace and bundled npm

* build: strip debug symbols from executable
2021-04-08 22:39:28 +08:00
Lee Robinson
ab743049ee 3.0.0 2021-04-08 08:48:13 -05:00
Jesse Chan
52a1754e42
build: hash and create ".sha256sum" for binary built (#157) 2021-04-07 22:09:21 +08:00
Jesse Chan
f79a54c2c8
patches: bump to 10.24.1, 12.22.1 and 14.16.1 (#158) 2021-04-07 06:52:52 -05:00
Jesse Chan
549db84226
CI: output to dist/ with "node-*" prefix (#156)
* Add "--output" CLI argument

* CI: output to dist/ with "node-*" prefix

* requests: remove tempFile when download failed
2021-04-07 17:59:50 +08:00
Jesse Chan
c21646bf37
CI: add binary workflows (#153) 2021-04-06 07:09:36 -05:00
Jesse Chan
b47c260d38
Cleanup, remove unused dependencies (#154)
* places: simplify and remove dependency on "expand-template"

* Remove dependency on "unique-temp-dir"

* Remove unused dependencies
2021-04-06 16:34:39 +08:00
Jesse Chan
532fb10d91
Allow to override build path with PKG_BUILD_PATH (#152)
To workaround a path problem with older Node versions and some
Windows environments.
2021-04-02 20:01:47 +08:00
Jesse Chan
2c5d74bf04
patches: bump to 10.24.0 and 12.22.0 (#151) 2021-04-02 19:57:01 +08:00
Jesse Chan
d7f74907ad
Allow cross compiling (#150) 2021-04-02 19:05:18 +08:00
Jesse Chan
19d8d077e0
Simplify expected name of release asset (#149)
e.g. uploaded-v2.6-node-v14.16.0-linux-x64 -> node-v14.16.0-linux-x64
2021-04-01 07:52:54 -05:00
Jesse Chan
cc13355f33
Allow to run basic binary verification with "--test" (#147) 2021-03-31 11:09:10 -05:00
Jesse Chan
521517902b
Migrate from requests to axios (#146) 2021-03-31 10:57:21 -05:00
Jesse Chan
ba011e4474
Improved CLI interface. (#145)
$ pkg-fetch -h
Options:
  -n, --node-range                                  [string] [default: "latest"]
  -p, --platform                                     [string] [default: "linux"]
  -a, --arch                                           [string] [default: "x64"]
  -f, --force-fetch                                                    [boolean]
  -b, --force-build                                                    [boolean]
  -v, --version      Show version number                               [boolean]
  -h, --help         Show help                                         [boolean]
2021-03-31 09:27:28 -05:00
Jesse Chan
e314198e53
[BREAKING] Remove upload and release functions to prepare for CI step. (#144) 2021-03-31 09:03:14 -05:00
Jesse Chan
cf794f6881
Drop fancy progress bar and use inherent stdio for child processes (#143)
Progress bar is fancy but not really useful. In most cases, we
want outputs of commands for easier development and debugging.

This change is not visible to users of `pkg` unless they choose to
compile binaries.
2021-03-31 20:23:14 +08:00
Jesse Chan
97afb00894
test: Drop a test that is not needed. (#141) 2021-03-29 09:07:12 -05:00
Jesse Chan
d8a494b5f3
patches: drop Node < 8 and old point releases (#140) 2021-03-29 21:20:23 +08:00