-
Notifications
You must be signed in to change notification settings - Fork 30.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Revert "build,test: make building addon tests less fragile" - broken source tarballs #18287
Revert "build,test: make building addon tests less fragile" - broken source tarballs #18287
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll have a look but I'm good with reverting in the interim.
addons don't build for tests, so this isn't quite ready |
583687d
to
3c78c37
Compare
reverted both commits and the addons fail to build properly in CI, giving up for another day |
@bnoordhuis do you think you can come up with a fix soon? In that case that might be the best to do? |
#17407 landed as five commits. |
FWIW, I can't reproduce locally. Here is what I did:
It doesn't fail because of anything introduced by #17407, as far as I can tell. |
@bnoordhuis Is it because the linters are run prior to building addons? For testing source tarballs |
I figured out what the non-reproduce issue was: the diff --git a/Makefile b/Makefile
index 6efb50950e..f62182d62e 100644
--- a/Makefile
+++ b/Makefile
@@ -831,7 +831,9 @@ $(TARBALL): release-only $(NODE_EXE) doc
cp -r out/doc/api/* $(TARNAME)/doc/api/
$(RM) -r $(TARNAME)/deps/v8/{test,samples,tools/profviz,tools/run-tests.py}
$(RM) -r $(TARNAME)/doc/images # too big
- $(RM) -r $(TARNAME)/deps/uv/{docs,samples,test}
+ $(RM) -r $(TARNAME)/deps/uv/docs
+ $(RM) -r $(TARNAME)/deps/uv/samples
+ $(RM) -r $(TARNAME)/deps/uv/test
$(RM) -r $(TARNAME)/deps/openssl/openssl/{doc,demos,test}
$(RM) -r $(TARNAME)/deps/zlib/contrib # too big, unused
$(RM) -r $(TARNAME)/.{editorconfig,git*,mailmap} I'll see what I can do. |
@joyeecheung No, the add-ons built fine (but I clipped that from the output.) |
That seems odd. So the other similar lines work, e.g.
but not that one? |
Make it easier for Node.js to ship libuv in its tarballs without also including the test suite. Node.js already does so but recent changes to its build system complicate that. Kills two birds with one stone: it helps out Node.js and it makes it harder for us to introduce hidden dependencies between the library and the test suite. Refs: nodejs/node#18287
@gibfahn None of them work but the one I highlighted was the reason for me not being able to reproduce. |
@bnoordhuis so does libuv/libuv#1725 fix the issue? If so I guess we'll still need to revert until we can get an updated libuv into master. |
023c8ca
to
e8372f1
Compare
This gets all green now except for a single unrelated failure on Windows https://ci.nodejs.org/job/node-test-commit/15643/ I've reverted 4 commits from the original PR of 5:
EDIT(gibfahn): For posterity the comment that wasn't reverted is
@bnoordhuis are you OK with this, is it the best path forward in the short-term while you sort it out from the libuv end upward? |
@rvagg Go ahead. I just hope people don't land too many conflicting changes in the interim. |
This reverts commit d9b59de. Breaks downloadable source tarball builds as we remove some files prior to creating a tarball but those files are included in the comprehensive list of dependencies listed in .deps.
e8372f1
to
cd9fd23
Compare
landed, thanks for the reviews folks |
This reverts commit 2cb9e2a. Reverted along with d9b59de as this introduces freshness checks that are too stringent without the comprehensive dependency checking of introduced in d9b59de so `make test` won't work with this. Ref: #17407 PR-URL: #18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
This reverts commit d9b59de. Breaks downloadable source tarball builds as we remove some files prior to creating a tarball but those files are included in the comprehensive list of dependencies listed in .deps. Ref: #17407 PR-URL: #18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
This reverts commit c668263. Reverted along with d9b59de as this breaks compilation from downloadable source tarballs. Ref: #17407 PR-URL: #18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
This reverts commit 920c132. Reverted along with d9b59de as this breaks compilation from downloadable source tarballs. Ref: #17407 PR-URL: #18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
Make it easier for Node.js to ship libuv in its tarballs without also including the test suite. Node.js already does so but recent changes to its build system complicate that. Kills two birds with one stone: it helps out Node.js and it makes it harder for us to introduce hidden dependencies between the library and the test suite. PR-URL: libuv#1725 Refs: nodejs/node#18287 Reviewed-By: Colin Ihrig <[email protected]>
I don't think the original landed on v9.x and am setting this to don't land |
This reverts commit 2cb9e2a. Reverted along with d9b59de as this introduces freshness checks that are too stringent without the comprehensive dependency checking of introduced in d9b59de so `make test` won't work with this. Ref: nodejs#17407 PR-URL: nodejs#18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
This reverts commit d9b59de. Breaks downloadable source tarball builds as we remove some files prior to creating a tarball but those files are included in the comprehensive list of dependencies listed in .deps. Ref: nodejs#17407 PR-URL: nodejs#18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
This reverts commit c668263. Reverted along with d9b59de as this breaks compilation from downloadable source tarballs. Ref: nodejs#17407 PR-URL: nodejs#18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
This reverts commit 920c132. Reverted along with d9b59de as this breaks compilation from downloadable source tarballs. Ref: nodejs#17407 PR-URL: nodejs#18287 Reviewed-By: Gireesh Punathil <[email protected]> Reviewed-By: Richard Lau <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ben Noordhuis <[email protected]>
@bnoordhuis this is yours, it was landed in between the last two nightlies. Current one is broken, previous one (commit e9c6dcd) is fine.
Simulate this in the full source tree with
rm -rf deps/uv/test/
prior tomake
and you'll get the error. It's because we$(RM) -r $(TARNAME)/deps/uv/{docs,samples,test}
for the source tarball but we've introduced a dependency on test/* and basically everything else that gets built thanks to the new .deps functionality introduced in gyp.Not sure what the way forward is here, I understand what the change is intending to do, but it doesn't work for distributable source now. Do you want to come up with a solution or should we revert while you take some time with it?