Building Node.js without a ccache cache takes longer than the 50 minute
Travis time limit for jobs for public repositories. To mitigate this we
added a job to compile V8 on the basis that in the worst case it would
complete within 50 minutes and provide a cache that could be used by a
restarted `Compile Node.js` job.
Recent PRs have exceeded the 50 minute time limit for the `Compile V8`
job. When Travis times out a build the cache is not stored.
This commit drops the `Compile V8` job and adds a manual timeout to the
`Compile Node.js` job which will allow the cache to be stored and used
in restarts of the job.
PR-URL: https://github.com/nodejs/node/pull/30469
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Denys Otrishko <shishugi@gmail.com>
As discussed in
https://github.com/nodejs/node/issues/30129#issuecomment-546662351, when
we vendor in code, we own the Syntax Errors in that code. This PR adds
The `.flake8` config file at the root of this repo puts blinders on the
linting of our dependencies so this test disables that file before
linting.
fixup: allow_failures until dependencies pass
PR-URL: https://github.com/nodejs/node/pull/30143
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Request Python 3 with pyenv and ensure that python3 is used by Makefile
to run Python scripts.
PR-URL: https://github.com/nodejs/node/pull/29451
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
These tests do not help us to get closer to Python 3 compatibility and
they take up valuable time yet they always fail.
PR-URL: https://github.com/nodejs/node/pull/29413
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: David Carlier <devnexen@gmail.com>
Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com>
Reverted for breaking the Travis CI builds with the following error:
$ cp ${PYTHON2_CACHE}/node out/Release/node
cp: cannot stat '/home/travis/.ccache/py2.7.15/node': No such file
or directory
The command "cp ${PYTHON2_CACHE}/node out/Release/node" failed and
exited with 1 during .
This reverts commit c602b0a4e5.
Refs: https://github.com/nodejs/node/pull/29360
PR-URL: https://github.com/nodejs/node/pull/29406
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: David Carlier <devnexen@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Christian Clauss <cclauss@me.com>
Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/29360
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: David Carlier <devnexen@gmail.com>
These tests are run in allow_failures mode on Python 3.7.1 and they
bypasses the Python version checks in ./configure by directly running
./configure.py.
PR-URL: https://github.com/nodejs/node/pull/29196
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Extracted from #28537 for shorter review cycle. This makes it easier to
experiment with new versions of Python as they become available on the
Travis CI platform.
PR-URL: https://github.com/nodejs/node/pull/28694
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
even though jobs can run in parallel they start in declaration order
* this patch makes "compiles >> no lint" in terms of precedence
PR-URL: https://github.com/nodejs/node/pull/27205
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
The exit code of the make command used to execute tests was being lost
after being piped through to grep.
PR-URL: https://github.com/nodejs/node/pull/27176
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com>
Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Minwoo Jung <minwoo@nodesource.com>
Skipping flaky tests in CI is an anti-pattern that should be avoided,
as we do in our ownCI. Failing flaky tests don’t need to be blockers
for a green CI result, but they should be run and reported *somehow*.
PR-URL: https://github.com/nodejs/node/pull/27158
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
The `lint-ci` Makefile target differs from `lint` in that it writes to
a tap file and not stdout and also stops execution when an error is
found (e.g. if JavaScript linting fails the C++ and docs linting are
not run).
The switch to `lint-ci` was to enable Python linting. Revert to `lint`
and add the `lint-py` target.
PR-URL: https://github.com/nodejs/node/pull/27062
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
* Add `lint-py-build` to get `lint-ci` to lint python
* Add compile V8 job
* Make compilation verbose
* Test with `test-ci`
PR-URL: https://github.com/nodejs/node/pull/26969
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
`PARALLEL_ARGS` is overwritten in the Makefile if `JOBS` is set. Use
`CI_JS_SUITES` instead.
PR-URL: https://github.com/nodejs/node/pull/27002
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Combined compile and test of Node.js where lots of files need to be
compiled (e.g. after a V8 update) is exceeding the time limit for
Travis jobs (50 minutes).
Add a job to Travis that compiles Node.js but doesnt run any tests to
populate the ccache. Introduce staging and move the `Test Suite` job
into a later stage so that it can use the populated ccache.
PR-URL: https://github.com/nodejs/node/pull/27002
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Restore running tests on Travis once the ccache is populated.
PR-URL: https://github.com/nodejs/node/pull/26720
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
We're hitting the Travis job timeout of 50mins if built with a new
compiler (as there is no ccache). Temporarily disable the running
of tests so the Travis job can complete within the timeout and
populate the ccache.
PR-URL: https://github.com/nodejs/node/pull/26720
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Move the first commit message linting to a separate Travis job. Run the
script in bash debug mode to capture any issues communicating with the
GitHub API (e.g. network issues, rate limits).
PR-URL: https://github.com/nodejs/node/pull/24254
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Matheus Marchini <mat@mmarchini.me>
Do not run any linting at all when `TRAVIS_PULL_REQUEST` is `false`.
This would otherwise break Travis CI for `master` and release branches.
Refs: https://github.com/nodejs/node/pull/24030
PR-URL: https://github.com/nodejs/node/pull/24076
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Decouple first commit in pull request linting from Travis by using
the GitHub API to work out the first commit.
The shell script obtains the pull request number in one of the
following ways:
1) supplied on the command line (use this to test against any PR)
2) derived from the HEAD commit via the GitHub API
PR-URL: https://github.com/nodejs/node/pull/24030
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
The version of `clang` provided in the Travis linux image uses
libstdc++4.8 whice is below our minimal supported version.
Switching to `make test -j1` is to avoid races during the test cycle
causes by the main target being "unstable", that is it always builds
some files, and relinks the binary, which is used by the test procedure.
PR-URL: https://github.com/nodejs/node/pull/23778
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Clarify in Travis results that the commit message linting is for the
commit message and not something else.
PR-URL: https://github.com/nodejs/node/pull/23742
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Use Travis-CI to check the formatting of the first commit in a pull
request. This will hopefully reduce formatting errors and nits about
them in pull requests.
PR-URL: https://github.com/nodejs/node/pull/22452
Reviewed-By: Weijia Wang <starkwang@126.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Steven R Loomis <srloomis@us.ibm.com>
- In release guide
- In Travis config
Refs: https://github.com/nodejs/node/pull/20109
PR-URL: https://github.com/nodejs/node/pull/22991
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Remove macOS-specific steps, and reduce warnings due to compilation with
clang.
PR-URL: https://github.com/nodejs/node/pull/21459
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
As discussed with @isaacs, build reports will be sent to #libuv IRC
channel. E-mail notifications are turned off so that Travis doesn't
bother committers about failures in forks.