mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
df5e82bfd1
PR-URL: https://github.com/nodejs/node/pull/41027 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
38 lines
1.5 KiB
Bash
Executable File
38 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Shell script to update ESLint in the source tree to the latest release.
|
|
|
|
# This script must be in the tools directory when it runs because it uses the
|
|
# script source file path to determine directories to work in.
|
|
|
|
set -ex
|
|
|
|
cd "$( dirname "$0" )" || exit
|
|
rm -rf node_modules/eslint
|
|
(
|
|
rm -rf eslint-tmp
|
|
mkdir eslint-tmp
|
|
cd eslint-tmp || exit
|
|
|
|
ROOT="$PWD/../.."
|
|
[ -z "$NODE" ] && NODE="$ROOT/out/Release/node"
|
|
[ -x "$NODE" ] || NODE=$(command -v node)
|
|
NPM="$ROOT/deps/npm/bin/npm-cli.js"
|
|
|
|
"$NODE" "$NPM" init --yes
|
|
|
|
"$NODE" "$NPM" install --global-style --no-bin-links --ignore-scripts eslint
|
|
# Uninstall plugins that we want to install so that they are removed from devDependencies.
|
|
# Otherwise --production will cause them to be skipped.
|
|
(cd node_modules/eslint && "$NODE" "$NPM" uninstall --ignore-scripts eslint-plugin-jsdoc eslint-plugin-markdown @babel/core @babel/eslint-parser @babel/plugin-syntax-import-assertions)
|
|
(cd node_modules/eslint && "$NODE" "$NPM" install --no-save --no-bin-links --ignore-scripts --production --omit=peer eslint-plugin-jsdoc eslint-plugin-markdown @babel/core @babel/eslint-parser @babel/plugin-syntax-import-assertions)
|
|
# Use dmn to remove some unneeded files.
|
|
"$NODE" "$NPM" exec -- dmn@2.2.2 -f clean
|
|
# TODO: Get this into dmn.
|
|
find node_modules -name .package-lock.json -exec rm {} \;
|
|
find node_modules -name 'README*' -exec rm {} \;
|
|
)
|
|
|
|
mv eslint-tmp/node_modules/eslint node_modules/eslint
|
|
rm -rf eslint-tmp/
|