Uh oh!
There was an error while loading. Please reload this page.
build: make .tar.xz creation opt-out, fail if no xz - #24551
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
refack
commented
Nov 21, 2018
/CC @nodejs/build-files |
rvagg
commented
Nov 22, 2018
OK, second commit on this PR, 94a2c9c8e5, implements the above behaviour suggested by @refack and the checks around the execution of |
Lite-CI (since it's not covered in CI anyway): https://ci.nodejs.org/job/node-test-pull-request-lite-pipeline/1678/ Reviewers, please 👍 if you are in favor of fast-tracking this PR. |
richardlau
commented
Nov 22, 2018
Is it worth asking @nodejs/releasers for a test release build? |
|
The ci-release job finished successfully, the output is at https://nodejs.org/download/nightly/v12.0.0-nightly20181122.2.94a2c9c8e5/ (no |
@refack you made a nightly with this with a weird date string: https://ci-release.nodejs.org/job/iojs+release/3956/ and now we have screwed up nightly version strings which won't parse with tools that expect a predictable format on this directory: Please don't do that. Nightlies are strictly not for testing. I'm going to have to figure out if I can clean this one out now. There's a bunch of good reasons we don't hand out ci-release access liberally, and the ability to make this kind of mess is one of them. |
My bad. What I meant to do was run a P.S. As a postmortem, we should add some validation code to assert our and our tools format assumptions (nodejs/build#1592) |
OK, so this should have failed on AIX but it didn't. The config doesn't have SKIP_XZ=1 for AIX, and the output https://ci-release.nodejs.org/job/iojs+release/nodes=aix61-ppc64/3956/consoleFull doesn't mention anything about |
refack
commented
Nov 23, 2018
P.P.S. we also have this one - https://nodejs.org/download/nightly/v11.0.0-nightly201806050300f7c68cffa5de7f0099e3afa95093b0bbbe3c/ |
rvagg
commented
Nov 23, 2018
Ah, so we have this in iojs+release: That traces back to the addition of the REPLACEME stuff for API docs which is too strict. I tried to fix that back in #12958 but it got stalled with too much discussion, so the |
There was a problem hiding this comment.
Maybe it's because check-xz should be .PHONY?
rvagg
commented
Nov 23, 2018
Proposed fix in #24575 so we can remove the |
rvagg
commented
Dec 5, 2018
Discovered some problems, not sure why these weren't picked up with test builds in ci-release for the PR. #24841 |
rvagg
commented
Dec 5, 2018
@nodejs/build FYI this is now in iojs+release for the It's building successfully now: Results for this test going to https://nodejs.org/download/test/v12.0.0-test201812040ba0e0fd89/ |
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: nodejs#24551 PR-URL: nodejs#24841 Refs: nodejs#24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: #24551 PR-URL: #24841 Refs: #24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: #24551 PR-URL: #24841 Refs: #24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: #24551 PR-URL: #24841 Refs: #24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: nodejs#24575 Refs: nodejs#24551 Refs: nodejs#12958 Refs: nodejs#12957 Refs: nodejs#8325 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: nodejs#24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: nodejs#24551 PR-URL: nodejs#24841 Refs: nodejs#24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: #24551 PR-URL: #24841 Refs: #24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: #24551 PR-URL: #24841 Refs: #24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #24551 Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
5e80a9a introduced check-xz, using `[[ .. ]]` syntax, but this is a bash builtin and some platforms default to `sh` when doing `$(shell ...)` in Makefiles. Fix is to make it sh friendly. Ref: #24551 PR-URL: #24841 Refs: #24551 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>



During a recent release, the 8.x before last I think, we discovered belatedly that the macos release machine didn't have
xzinstalled on it. This change was discussed (somewhere, but I know @MylesBorins was involved) to help resolve such oversights in future.XZtoHAS_XZand make it 0=no and 1=yesSKIP_XZas a possible user-supplied value, defaulting to 0=noHAS_XZ=1orSKIP_XZ=1on any release build that produces a tarball of some kind and fail if the system doesn't havexzandSKIP_XZ=1hasn't been supplied.HAS_XZ=1andSKIP_XZ=0(i.e. we havexzand haven't explicitly opted to skip)This would get backported to active lines and we'd have to put a
SKIP_XZ=1for AIX builds (only).I've tested the main permutations of this and it seems to work fine. I'd appreciate some experienced Makefile eyes though, @nodejs/build @bnoordhuis@joyeecheung?