-
Notifications
You must be signed in to change notification settings - Fork 739
Travis CI currently broken #893
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
Comments
CI was broken because the npm which ships with node v8 (and only that version of npm, for some reason), would modify package-lock.json when we ran `npm install`. This triggered our post-test hook which enforces docs changes: the modified file was detected as a false-positive for uncommitted docs changes. Fixes #893
CI was broken because the npm which ships with node v8 (and only that version of npm, for some reason), would modify package-lock.json when we ran `npm install`. This triggered our post-test hook which enforces docs changes: the modified file was detected as a false-positive for uncommitted docs changes. This fixes the issue by committing those docs changes. This seems to be compatible with other npm versions. Fixes #893
Regression is likely in npm, within the range 5.6.0 (good build) and 6.4.1 (bad build). |
Turns out, the fix is not as simple as committing the new format.
Might have to remove |
Or, maybe we can use |
Modifications of The recommendation that I hear is to always use |
@hbetts thanks for linking to the npm ticket. I figured this is probably intentional. The issue is that we need to conditionally run It would be nice to just install the newest npm and use that to install dependencies, but I think shelljs supports a wider range of node versions than npm. One way to detect support (since I forget which version introduced it) would be: $ npm help | egrep '\bci\b' |
For what it's worth, Though, I'm curious, even if you check for the existence of |
Basic algorithm is:
In the else-case, I don't expect I still need to verify these assumptions, however. |
This adds a script which checks the npm version and runs either `npm ci` or `npm install` based on support. This is primarily to work around an issue where `npm install` modifies `package-lock.json` for newer npm versions. A side benefit is that `npm ci` is slightly faster than `npm install`. Fixes #893
* chore(npm): add ci-or-install script This adds a script which checks the npm version and runs either `npm ci` or `npm install` based on support. This is primarily to work around an issue where `npm install` modifies `package-lock.json` for newer npm versions. A side benefit is that `npm ci` is slightly faster than `npm install`. Fixes #893
This removes our lockfile and our `ci-or-install` script. The lockfile caused headaches, since `npm install` would modify the lockfile. Unfortunately, `ci-or-install` (added in #896) didn't work reliably on appveyor, so removing the lockfile seems easier. We remove the script since it's now obsolete. Fixes #893
This removes our lockfile and our `ci-or-install` script. The lockfile caused headaches, since `npm install` would modify the lockfile. Unfortunately, `ci-or-install` (added in #896) didn't work reliably on appveyor, so removing the lockfile seems easier. We remove the script since it's now obsolete. Fixes #893
Reopening because #896 is flaking on appveyor. Trying a different approach instead. |
This removes the package-lock, since `npm install` modifies the lockfile (due to a disagreement between npm@5 and npm@6). We're removing it for ShellJS, and removing it here for consistency. See shelljs/shelljs#893
This removes the package-lock, since `npm install` modifies the lockfile (due to a disagreement between npm@5 and npm@6). We're removing it for ShellJS, and removing it here for consistency. See shelljs/shelljs#893
#911 flakes as well, which makes me suspect |
This removes the package-lock, since `npm install` modifies the lockfile (due to a disagreement between npm@5 and npm@6). We're removing it for ShellJS, and removing it here for consistency. See shelljs/shelljs#893
This removes our lockfile and our `ci-or-install` script. The lockfile caused headaches, since `npm install` would modify the lockfile. Unfortunately, `ci-or-install` (added in #896) didn't work reliably on appveyor, so removing the lockfile seems easier. We remove the script since it's now obsolete. Fixes #893
This removes the package-lock, since `npm install` modifies the lockfile (due to a disagreement between npm@5 and npm@6). We're removing it for ShellJS, and removing it here for consistency. See shelljs/shelljs#893
Due to a
npm
change,npm install
modifiespackage-lock.json
, which turns bots red (we check for modified files at the end of the script).Blocking #892, #889, and any other PRs.
The text was updated successfully, but these errors were encountered: