build web-tooling-benchmark for verification testing (#4776)

This commit is contained in:
Alex Lam S.L
2021-03-16 09:34:10 +00:00
committed by GitHub
parent 352a944868
commit 67f8fcb103
9 changed files with 58 additions and 9 deletions

View File

@@ -8,8 +8,8 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
options: [ '-mb braces', '-mc', '--toplevel -mc passes=10,pure_getters,unsafe' ] options: [ '-mb braces', '--ie8 -c', '-mc', '--toplevel -mc passes=3,pure_getters,unsafe' ]
script: [ acorn.sh, buble.sh, butternut.sh, mathjs.sh, rollup-es.sh, rollup-ts.sh, sucrase.sh ] script: [ acorn.sh, buble.sh, butternut.sh, mathjs.sh, rollup-es.sh, rollup-ts.sh, sucrase.sh, web-tooling-benchmark.sh ]
include: include:
- node: '14' - node: '14'
script: acorn.sh script: acorn.sh
@@ -25,6 +25,8 @@ jobs:
script: rollup-ts.sh script: rollup-ts.sh
- node: '14' - node: '14'
script: sucrase.sh script: sucrase.sh
- node: '14'
script: web-tooling-benchmark.sh
name: ${{ matrix.script }} ${{ matrix.options }} name: ${{ matrix.script }} ${{ matrix.options }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
env: env:

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS=$@ UGLIFY_OPTIONS=$@
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS=$@ UGLIFY_OPTIONS=$@
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS=$@ UGLIFY_OPTIONS=$@
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS="--annotations $@" UGLIFY_OPTIONS="--annotations $@"
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS=$@ UGLIFY_OPTIONS=$@
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS=$@ UGLIFY_OPTIONS=$@
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -4,7 +4,7 @@ alias uglify-js=$PWD/bin/uglifyjs
UGLIFY_OPTIONS=$@ UGLIFY_OPTIONS=$@
minify_in_situ() { minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --in-situ" ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1" DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'` for i in `find $DIRS -name '*.js'`

View File

@@ -0,0 +1,47 @@
#!/bin/sh
alias uglify-js="node --max-old-space-size=4096 $PWD/bin/uglifyjs"
UGLIFY_OPTIONS=$@
minify_in_situ() {
ARGS="$UGLIFY_OPTIONS --validate --in-situ"
DIRS="$1"
echo '> uglify-js' $DIRS $UGLIFY_OPTIONS
for i in `find $DIRS -name '*.js'`
do
ARGS="$ARGS $i"
done
uglify-js $ARGS
}
rm -rf tmp/web-tooling-benchmark \
&& git clone --depth 1 --branch v0.5.3 https://github.com/v8/web-tooling-benchmark.git tmp/web-tooling-benchmark \
&& cd tmp/web-tooling-benchmark \
&& rm -rf .git/hooks \
&& patch -l -p1 <<EOF
--- a/package.json
+++ b/package.json
@@ -12 +11,0 @@
- "postinstall": "npm run build:terser-bundled && npm run build:uglify-js-bundled && npm run build",
--- a/src/cli-flags-helper.js
+++ b/src/cli-flags-helper.js
@@ -7 +6,0 @@ const targetList = new Set([
- "chai",
--- a/src/cli.js
+++ b/src/cli.js
@@ -18,0 +19 @@ suite.on("error", event => {
+ global.process.exitCode = 42;
EOF
ERR=$?; if [ "$ERR" != "0" ]; then echo "Error: $ERR"; exit $ERR; fi
minify_in_situ "src" \
&& minify_in_situ "third_party" \
&& rm -rf node_modules \
&& npm ci \
&& rm -rf build/* \
&& npm run build:terser-bundled \
&& npm run build:uglify-js-bundled \
&& minify_in_situ "build" \
&& rm -rf dist \
&& npm run build \
&& minify_in_situ "dist" \
&& node dist/cli.js