Skip to content
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

chore: pull in v0.13.13 from upstream #10

Merged
merged 263 commits into from
Dec 3, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
263 commits
Select commit Hold shift + click to select a range
92d5449
fix #1327: improve lowered template literals
evanw Jun 3, 2021
c765bc1
fix(linker): order of css imported from js (#1342)
dmitrage Jun 4, 2021
e3ec53a
release notes for #1342
evanw Jun 4, 2021
1b6c9fd
update compat-table
evanw Jun 4, 2021
00237e7
fix for "export default class" transform (#1346)
evanw Jun 4, 2021
0954cc6
publish 0.12.6 to npm
evanw Jun 4, 2021
537195a
add support for es5-style identifiers (#1349)
evanw Jun 5, 2021
18694cd
runtime: remove "__platform" flag
evanw Jun 6, 2021
488fe7c
runtime: remove "__profiler" flag
evanw Jun 6, 2021
236039d
runtime: check "for-of" not "=>" for es6 support
evanw Jun 6, 2021
5065800
fix #1349: quote modern unicode object properties
evanw Jun 7, 2021
d3ef487
fix #1355: ignore tsconfig.json in node_modules
evanw Jun 7, 2021
6dc45ba
fix #1357: "--metafile" with "--watch"
evanw Jun 8, 2021
a5f1387
fix(linker): add missing esm flag (#1338)
lbwa Jun 8, 2021
6ea75fe
Allow OnResolve plugins to mark modules as side effect free (#1313)
chriscasola Jun 8, 2021
4a98ad7
publish 0.12.7 to npm
evanw Jun 8, 2021
3a45460
Merge remote-tracking branch 'origin/master'
evanw Jun 8, 2021
6b42c96
fix #1358: remove warning about source map comment
evanw Jun 8, 2021
1eb9f0e
publish 0.12.8 to npm
evanw Jun 9, 2021
7a05678
fix #1361: allow "this" with "--define"
evanw Jun 10, 2021
a848ad6
fix #1372: css minification bug with !important
evanw Jun 15, 2021
223150f
publish 0.12.9 to npm
evanw Jun 16, 2021
e7b0f93
avoid checking "browser" for other platforms
evanw Jun 16, 2021
f96b797
add an "es2021" target
evanw Jun 23, 2021
35a1099
Avoid exporting a pointer to a loop variable in linker (#1389)
jschaf Jun 24, 2021
36073fc
feat: mangle Infinity (#1385)
Jun 24, 2021
6164456
add support for shorten transform/translate3d (#1390)
steambap Jun 26, 2021
80c92d4
css: implement minification for all matrix forms
evanw Jun 26, 2021
a7e007c
fix #1397: support "s" in css attribute selectors
evanw Jun 27, 2021
97416e7
publish 0.12.10 to npm
evanw Jun 27, 2021
b94802a
fix #1399: avoid "os.MkdirAll" to fix WebAssembly
evanw Jun 27, 2021
d58db79
fix #1396: improve invalid loader error message
evanw Jun 28, 2021
aa8b9ce
improve sync performance of js api by ~20x (#1000)
evanw Jun 28, 2021
5a45dbd
fix windows issues
evanw Jun 28, 2021
c3f23d0
publish 0.12.11 to npm
evanw Jun 28, 2021
73d50ef
move unique key prefix from compile to scan phase
evanw Jun 28, 2021
776ffc3
add "C" to unique keys for chunks
evanw Jun 28, 2021
c7be8d8
fix #1044: correct relative paths for file loader
evanw Jun 28, 2021
d4ce259
fix a windows path issue
evanw Jun 28, 2021
b63ebbf
publish 0.12.12 to npm
evanw Jun 28, 2021
d12fade
Fix using JS synchronous API from from non-main threads (#1411)
evanw Jul 1, 2021
1311305
publish 0.12.13 to npm
evanw Jul 1, 2021
4a6e106
keep wasm tests self-contained
evanw Jul 1, 2021
aa4646f
factor out some code related to "outfile"
evanw Jul 1, 2021
67f61ba
pull out relative-to-outbase code
evanw Jul 1, 2021
963ce60
fix #1404: "file" loader always copies to "outdir"
evanw Jul 1, 2021
bf72f26
publish 0.12.14 to npm
evanw Jul 1, 2021
9996d32
fix #1421: bug with css color lowering and "var()"
evanw Jul 5, 2021
f966747
avoid "var()" issues with other css minifications
evanw Jul 6, 2021
0586c9e
publish 0.12.15 to npm
evanw Jul 6, 2021
4c6c253
update the compat table
evanw Jul 17, 2021
32cf570
allow out-of-range tagged template unicode escapes
evanw Jul 17, 2021
7d630eb
fix #1426: remove warning about bad CSS "@" rules
evanw Jul 17, 2021
1d3c103
fix #1470: allow "ES2021" in "tsconfig.json"
evanw Jul 25, 2021
6d35ea9
fix #1462: avoid worker_threads in node <v12.17.0
evanw Jul 26, 2021
025d64e
fix #1466: paths with "node:" prefix are external
evanw Jul 26, 2021
d2a4f36
Consider `\` and `/` to be the same in file paths (#1472)
evanw Jul 26, 2021
773f15f
publish 0.12.16 to npm
evanw Jul 26, 2021
bb3a4cd
fix #1455: bundler hoisting bug with var+for loops
evanw Jul 27, 2021
748d8b4
fix #1418: private fields and logical assignment
evanw Jul 29, 2021
4267bef
Abort esbuild if stdin is closed when serving (#1449)
josevalim Jul 29, 2021
db673c3
release notes for #1449
evanw Jul 29, 2021
f95072d
fix #1424: always generate private method names
evanw Jul 29, 2021
fe3659e
publish 0.12.17 to npm
evanw Jul 29, 2021
4d815e2
fix #1483: UTF-8 and utf-8 are the same @charset
evanw Aug 1, 2021
01f0dd0
improve error about missing sub-condition (#1484)
evanw Aug 1, 2021
2041f0a
refactor(deno): use denoflate instead of compress (#1482)
lucacasonato Aug 1, 2021
f68030c
fix #1493: nullish coalescing assignment edge case
evanw Aug 4, 2021
cfcf8cf
fix #1489: do not warn about "es3" in node_modules
evanw Aug 4, 2021
b589476
fix #1497: "this" before "super()" when minifying
evanw Aug 5, 2021
a7a1b7f
avoid shadowing "expr" in "lowerClass"
evanw Aug 5, 2021
88da5ed
fix #1498: variable shadowing broke class lowering
evanw Aug 5, 2021
dba9590
fix: CSS import relative paths (#1494)
pd4d10 Aug 5, 2021
169e146
add release notes for #1494
evanw Aug 5, 2021
5235898
publish 0.12.18 to npm
evanw Aug 5, 2021
9d4ddac
move source map code to source map module
evanw Aug 7, 2021
b44071b
css: add location info to rules
evanw Aug 7, 2021
17d0fb6
css: printer returns result object
evanw Aug 7, 2021
4002228
move span object to logger
evanw Aug 7, 2021
0b98203
css: add support for source maps
evanw Aug 7, 2021
8923587
add extension to source map tests
evanw Aug 7, 2021
3ead19b
add a basic css source map test
evanw Aug 7, 2021
89a3afb
fix #519: release notes for css source maps
evanw Aug 7, 2021
e4fc1ce
fix #1507: wrong ts class field side effect order
evanw Aug 7, 2021
8095e75
publish 0.12.19 to npm
evanw Aug 7, 2021
3fbc735
avoid printing "</style" in CSS code (#1509)
evanw Aug 8, 2021
bb4ae37
attempt to fix flaky test
evanw Aug 8, 2021
d945c75
update browser compat data
evanw Aug 8, 2021
a9456df
fix #1512: asi issue with "." and type parameters
evanw Aug 10, 2021
b9445a5
fix #1509: make `</script` escape case-insensitive
evanw Aug 12, 2021
22aff9c
publish 0.12.20 to npm
evanw Aug 12, 2021
bff9917
update to go version 1.17.0
evanw Aug 17, 2021
decfb7a
fix #995: windows arm64 support
evanw Aug 17, 2021
edff9a4
run go format from go 1.17.0
evanw Aug 17, 2021
b8e00b4
css: terminate source map comment before "*/"
evanw Aug 18, 2021
192f084
add windows 64-bit arm build to installer (#995)
evanw Aug 18, 2021
d6f4f55
publish 0.12.21 to npm
evanw Aug 18, 2021
ff76ef7
fix #1536: http range requests now use less memory
evanw Aug 20, 2021
a521f72
fix #1538: minify bug for "var()" and "box-shadow"
evanw Aug 20, 2021
11ae81c
publish 0.12.22 to npm
evanw Aug 21, 2021
c4ab224
fix #1553: rest bindings in TypeScript arrow types
evanw Aug 25, 2021
68af591
fix #1545: "watch" is not allowed with "buildSync"
evanw Aug 26, 2021
3a612e2
fix #1552: keep names + minify + nested functions
evanw Aug 26, 2021
5010e9b
forbid "watch" w/ "buildSync" w/o "worker_threads"
evanw Aug 26, 2021
069f154
publish 0.12.23 to npm
evanw Aug 26, 2021
e75133f
fix direct "eval" variable renaming edge case
evanw Aug 27, 2021
66f1d16
publish 0.12.24 to npm
evanw Aug 27, 2021
9f507f4
fix #1560: bug with "!" after "new" in TypeScript
evanw Aug 31, 2021
0c2c0a0
capture and report parser panics
evanw Sep 2, 2021
e79ea6f
fix parser panic due to "#a in #b in c"
evanw Sep 2, 2021
5366809
class static blocks are a parse error
evanw Sep 2, 2021
b1debb6
illumos 64-bit support (#1562)
hadfl Sep 2, 2021
913bdfd
release notes for #1562
evanw Sep 2, 2021
44315fe
publish 0.12.25 to npm
evanw Sep 2, 2021
1dea2db
feat: Optimizing the __require function (#1580)
screetBloom Sep 8, 2021
840a287
release notes for #1579
evanw Sep 8, 2021
cfb2938
move "NO_COLOR" handling into the logger itself
evanw Sep 8, 2021
da15a5f
add an "analyze metafile" api
evanw Sep 8, 2021
41dbf4d
add import paths to analysis
evanw Sep 9, 2021
c2c2113
add a "verbose" flag to analysis
evanw Sep 9, 2021
ab666a1
fix #1568: release notes for "--analyze"
evanw Sep 9, 2021
2567e09
upgrade "golang.org/x/sys" (#1572)
evanw Sep 9, 2021
6a3d3a6
publish 0.12.26 to npm
evanw Sep 9, 2021
17e6cb2
fix #1594: update manual compat table overrides
evanw Sep 12, 2021
40b06d7
replace math.MaxInt usage (#1585)
Sep 12, 2021
fcfd63e
fix #1589: server "stop()" waits for active builds
evanw Sep 12, 2021
cd5597d
use "math.MaxUint32" not "math.MaxInt"
evanw Sep 12, 2021
39c79ad
update go 1.17.0 => go 1.17.1
evanw Sep 13, 2021
5347239
publish 0.12.27 to npm
evanw Sep 13, 2021
5c10033
fix #1599: U+30FB and U+FF65 in ES5 vs. ES6+
evanw Sep 13, 2021
9346bc9
fix #1600: "++" and "--" on class private fields
evanw Sep 14, 2021
9c86523
publish 0.12.28 to npm
evanw Sep 14, 2021
e03e743
fix #1614: proxy from "__require" to "require"
evanw Sep 21, 2021
3249e05
fix #1623: ignore class fields marked "abstract"
evanw Sep 21, 2021
0b90b0a
"typeof identifier" has no side effects
evanw Sep 22, 2021
61155d5
fix "__require" to have no side effects
evanw Sep 22, 2021
7ecdc28
fix mangle syntax edge case with "==" and "!="
evanw Sep 22, 2021
d4d0d65
fix missing return in "IsNumericValue"
evanw Sep 22, 2021
9452fce
add "--analyze" to cli help text
evanw Sep 22, 2021
7d15c6d
publish 0.12.29 to npm
evanw Sep 22, 2021
9e5e767
no side effects for "typeof x != undefined && x"
evanw Sep 22, 2021
feb6b42
separate "ignore annotations" from "tree shaking" (#1625)
evanw Sep 22, 2021
9e569c4
install using "optionalDependencies" (#1621)
evanw Sep 22, 2021
92a3a5b
release notes
evanw Sep 22, 2021
081c5fa
publish 0.13.0 to npm
evanw Sep 22, 2021
80fbcc9
fix release gh action to ignore nested headers
evanw Sep 22, 2021
98b0640
fix the "esbuild" package in yarn 2+
Sep 22, 2021
583569e
yarn pnp compat: copy binary into the current pkg
Sep 23, 2021
29e8f9d
publish 0.13.1 to npm
evanw Sep 23, 2021
67ce58c
fix #1628: "export {}" with "--tree-shaking=true"
evanw Sep 23, 2021
b806837
fix cache condition in iswin_wasm (#1630)
LeGEC Sep 23, 2021
2105a17
publish 0.13.2 to npm
evanw Sep 23, 2021
4adbb29
add "preferUnplugged: false" to binary packages
evanw Sep 23, 2021
4f42587
support type-only import/export specifiers (#1637)
g-plane Sep 28, 2021
78e0468
publish 0.13.3 to npm
evanw Sep 28, 2021
95f10ac
fix #1642: permission issues with install script
evanw Oct 4, 2021
1152047
basic support for ".mts" and ".cts" from TS 4.5
evanw Oct 4, 2021
ada73f9
fix #1647: add a fallback for "npm --no-optional"
evanw Oct 4, 2021
695ddb9
make pnpapi workaround platform-specific (#1656)
evanw Oct 5, 2021
cab83c9
no optimizations with yarn 1 just in case (#1656)
evanw Oct 5, 2021
3a5e0e0
fix #1657: invalid css transform of margin/padding
evanw Oct 5, 2021
a89e85c
remove ".mts" and ".cts" from resolve extensions
evanw Oct 5, 2021
18e13bd
publish 0.13.4 to npm
evanw Oct 5, 2021
0c888ea
fix #1113: improve watch mode accuracy (#1676)
evanw Oct 12, 2021
c1a3b8c
disallow certain "<" in ".mts/.cts" files
evanw Oct 12, 2021
150882d
fix #1665: don’t remove empty @keyframes (#1669)
eelco Oct 12, 2021
acb229e
release notes for #1665
evanw Oct 12, 2021
bc0a14a
Don't emit "duplicate label" error across function scopes. (#1671)
nevkontakte Oct 13, 2021
ae48978
release notes for #1671
evanw Oct 13, 2021
4ed228a
publish 0.13.5 to npm
evanw Oct 13, 2021
fd5c0a4
Add NetBSD amd64 binary (#1624)
gdt Oct 13, 2021
203ef65
https in changelog, rebalance makefile
evanw Oct 13, 2021
11d7eac
Allow bundled esbuild with ESBUILD_BINARY_PATH (#1678)
heypiotr Oct 13, 2021
d74ad57
feat: drop catch binding when optional catch binding is supported (#1…
sapphi-red Oct 13, 2021
c4c1ce9
fix subtle minify issues with eval
evanw Oct 13, 2021
3ae358c
ts: forbid "declare" fields from being initialized
evanw Oct 14, 2021
a7f0ec6
ts: forbid "declare" on non-field class properties
evanw Oct 14, 2021
6f6a77d
fix #1675: run decorators for "declare" fields
evanw Oct 14, 2021
d1b4132
avoid direct eval retaining unused imports in ts
evanw Oct 14, 2021
e766a0d
publish 0.13.6 to npm
evanw Oct 14, 2021
186446e
update parcel 2 version in benchmark
evanw Oct 14, 2021
929b172
remove now-unnecessary "@parcel/transformer-typescript-tsc"
evanw Oct 14, 2021
fb0856f
remove old bundler versions
evanw Oct 14, 2021
91bfb9f
update rollup and webpack too
evanw Oct 14, 2021
8b5d6e9
update benchmark image
evanw Oct 14, 2021
85f85f2
fix #1682: always use the shortest css alpha value
evanw Oct 15, 2021
b2d7329
fix #1680: match node's core module behavior
evanw Oct 15, 2021
344ec46
update go 1.17.1 => 1.17.2
evanw Oct 15, 2021
ae754ae
fix wasm on go 1.17.2 (#1684)
evanw Oct 15, 2021
8b77de1
update rollup tests so they work on node v16.11.1
evanw Oct 15, 2021
68e369d
publish 0.13.7 to npm
evanw Oct 15, 2021
b332f93
fix #1425: super inside arrow inside lowered async
evanw Oct 15, 2021
2c147bb
add "and CSS" to package description
evanw Oct 16, 2021
3690949
fix #1661: remove implicit trailing "/" in "[dir]"
evanw Oct 16, 2021
0964b6b
add a test for #1362
evanw Oct 17, 2021
e608c54
publish 0.13.8 to npm
evanw Oct 17, 2021
df08658
fix #1702: invalid css transform of border-radius
evanw Oct 23, 2021
0c626c5
make yaml formatting consistent
evanw Oct 23, 2021
2b52f3e
add simple end-to-end tests
evanw Oct 23, 2021
6f40235
fix #1703: handle silent "rename" syscall failure
evanw Oct 23, 2021
535445b
add pnpm end-to-end tests
evanw Oct 23, 2021
6cc57fd
check end-to-end test output
evanw Oct 23, 2021
440896c
resolver: rename "pe" => "pj"
evanw Oct 23, 2021
aac02ae
remove unused range
evanw Oct 23, 2021
62a3943
fix #1691: support "imports" in "package.json"
evanw Oct 23, 2021
9dc464a
publish 0.13.9 to npm
evanw Oct 23, 2021
e4268b7
yarn berry end-to-end test
evanw Oct 23, 2021
9609d51
try running end-to-end tests on github
evanw Oct 24, 2021
74993fa
check that esbuild builds on go 1.13
evanw Oct 24, 2021
b3a5471
Use `io.SeekStart` instead of deprecated `os.SEEK_SET` (#1701)
y-yagi Oct 24, 2021
412f976
add "check out code" to old go version ci
evanw Oct 24, 2021
77d6a5e
update @next targets for npm and yarn
evanw Oct 24, 2021
6be55d8
link from code to docs for vs code autocomplete
evanw Oct 25, 2021
fb1fe9e
remove invalid "es7" option in tsconfig parser
evanw Oct 27, 2021
5f558d4
update the compat table
evanw Oct 27, 2021
1be3582
Allow target for ES-Version to be uppercase (#1718)
timse Oct 27, 2021
91b8a21
fix #1539: implement legal comments for css
evanw Oct 28, 2021
937ec5a
update to unicode 14
evanw Oct 28, 2021
3f28da8
add ".mts" and ".cts" to exports kind checking
evanw Oct 28, 2021
df3e9c2
publish 0.13.10 to npm
evanw Oct 28, 2021
02bcaab
reorder some functions
evanw Oct 28, 2021
b7e0480
get tests working on node 17+
evanw Oct 28, 2021
5425bed
also run async transform tests un-transformed
evanw Oct 30, 2021
04bfcd7
run tests w/ node 16 not 14 to avoid hard-crash
evanw Oct 30, 2021
055f1fb
also run class lowering tests untransformed
evanw Oct 30, 2021
0ea9c51
test coverage for super and object methods
evanw Oct 30, 2021
0aa7f71
fix writing to a "super" property
evanw Oct 30, 2021
859382e
also handle "super" inside static class fields
evanw Oct 30, 2021
8161752
implement class static blocks (#1729)
evanw Oct 30, 2021
4c8f834
publish 0.13.11 to npm
evanw Oct 30, 2021
bc1a853
enable tree shaking for empty "static {}" blocks
evanw Oct 30, 2021
602625c
fix #1730: crash with legal comment and @import
evanw Oct 30, 2021
2959332
enable tree shaking of "Reflect" static methods
evanw Oct 30, 2021
b32360d
implement "calc()" reduction for css (#1731)
evanw Oct 31, 2021
a133f7d
publish 0.13.12 to npm
evanw Oct 31, 2021
ef1efb6
fix #1739: tree shaking bug with "var exports"
evanw Nov 3, 2021
41b49f6
border radius tests: use length instead of number
evanw Nov 3, 2021
9235001
Add css to help text for --loader (#1744)
danr Nov 4, 2021
d532cf7
allow empty string for CLI string arrays
evanw Nov 9, 2021
74f38a3
move "main fields" logic to a separate function
evanw Nov 9, 2021
0441a6b
make debug meta available to the entire resolver
evanw Nov 9, 2021
01b65ec
say if "main" is missing from main fields (#1754)
evanw Nov 9, 2021
c5cf17b
fix #1755: merge adjacent selectors with same body
evanw Nov 9, 2021
4416658
add spack to benchmarks (not ready due to bugs)
evanw Nov 9, 2021
c153d63
Shorten "top", "right" properties into "inset" property (#1758)
sapphi-red Nov 9, 2021
98fbfc1
add credit to changelog
evanw Nov 9, 2021
c09d098
publish 0.13.13 to npm
evanw Nov 9, 2021
a45b28d
Merge tag 'v0.13.13' into pull-in-v0.13.13
netlify-team-account-1 Nov 15, 2021
91e6955
chore: make build pass
netlify-team-account-1 Nov 16, 2021
15dce28
chore: update publishing scripts
netlify-team-account-1 Nov 19, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
190 changes: 104 additions & 86 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,11 @@ name: CI

on:
push:
branches: [ '*' ]
branches: ['*']
pull_request:
branches: [ '*' ]
branches: ['*']

jobs:

esbuild:
name: esbuild CI
runs-on: ${{ matrix.os }}
Expand All @@ -16,115 +15,134 @@ jobs:
os: [ubuntu-latest, macos-latest, windows-latest]

steps:
- name: Set up Go 1.x
uses: actions/setup-go@v2
with:
go-version: 1.17.2
id: go

- name: Setup Node.js environment
uses: actions/[email protected]
with:
node-version: 16

- name: Setup Deno 1.x
uses: denoland/setup-deno@main
with:
deno-version: v1.x

- name: Set up Go 1.x
uses: actions/setup-go@v2
with:
go-version: 1.16.4
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v2

- name: Setup Node.js environment
uses: actions/[email protected]
with:
node-version: 14
- name: go test
run: go test ./internal/...

- name: Setup Deno 1.x
uses: denoland/setup-deno@main
with:
deno-version: v1.x
- name: go vet
run: go vet ./cmd/... ./internal/... ./pkg/...

- name: Check out code into the Go module directory
uses: actions/checkout@v2
- name: Deno Tests
# Deno tests currently don't run on Windows because of "esbuild" vs.
# "esbuild.exe" in the test harness. This should be fixed...
if: matrix.os != 'windows-latest'
run: make test-deno

- name: go test
run: go test ./internal/...
- name: Test for path/filepath
if: matrix.os == 'ubuntu-latest'
run: make no-filepath

- name: go vet
run: go vet ./cmd/... ./internal/... ./pkg/...
- name: Make sure "check-go-version" works
if: matrix.os != 'windows-latest'
run: make check-go-version

- name: Deno Tests
# Deno tests currently don't run on Windows because of "esbuild" vs.
# "esbuild.exe" in the test harness. This should be fixed...
if: matrix.os != 'windows-latest'
run: make test-deno
- name: go fmt
if: matrix.os == 'macos-latest'
run: make fmt-go

- name: Test for path/filepath
if: matrix.os == 'ubuntu-latest'
run: make no-filepath
- name: npm ci
run: cd scripts && npm ci

- name: Make sure "check-go-version" works
if: matrix.os != 'windows-latest'
run: make check-go-version
- name: Register Test (ESBUILD_WORKER_THREADS=0)
if: matrix.os != 'windows-latest'
run: ESBUILD_WORKER_THREADS=0 node scripts/register-test.js

- name: go fmt
if: matrix.os == 'macos-latest'
run: make fmt-go
- name: Register Test
run: node scripts/register-test.js

- name: npm ci
run: cd scripts && npm ci
- name: Verify Source Map
run: node scripts/verify-source-map.js

- name: Register Test
run: node scripts/register-test.js
- name: E2E Tests
run: node scripts/end-to-end-tests.js

- name: Register Test (ESBUILD_WORKER_THREADS)
if: matrix.os != 'windows-latest'
run: ESBUILD_WORKER_THREADS=1 node scripts/register-test.js
- name: JS API Tests (ESBUILD_WORKER_THREADS=0)
if: matrix.os != 'windows-latest'
run: ESBUILD_WORKER_THREADS=0 node scripts/js-api-tests.js

- name: Verify Source Map
run: node scripts/verify-source-map.js
- name: JS API Tests
run: node scripts/js-api-tests.js

- name: E2E Tests
run: node scripts/end-to-end-tests.js
- name: NodeJS Unref Tests
run: node scripts/node-unref-tests.js

- name: JS API Tests
run: node scripts/js-api-tests.js
- name: Plugin Tests
run: node scripts/plugin-tests.js

- name: JS API Tests (ESBUILD_WORKER_THREADS)
if: matrix.os != 'windows-latest'
run: ESBUILD_WORKER_THREADS=1 node scripts/js-api-tests.js
- name: TypeScript Type Definition Tests
if: matrix.os == 'ubuntu-latest'
run: node scripts/ts-type-tests.js

- name: NodeJS Unref Tests
run: node scripts/node-unref-tests.js
- name: JS API Type Check
if: matrix.os == 'ubuntu-latest'
run: make lib-typecheck

- name: Plugin Tests
run: node scripts/plugin-tests.js
- name: WebAssembly API Tests (browser)
if: matrix.os == 'ubuntu-latest'
run: make test-wasm-browser

- name: TypeScript Type Definition Tests
if: matrix.os == 'ubuntu-latest'
run: node scripts/ts-type-tests.js
- name: WebAssembly API Tests (node)
if: matrix.os == 'ubuntu-latest'
run: make test-wasm-node

- name: JS API Type Check
if: matrix.os == 'ubuntu-latest'
run: make lib-typecheck
- name: WebAssembly API Tests (node)
if: matrix.os != 'ubuntu-latest'
run: node scripts/wasm-tests.js

- name: WebAssembly API Tests (browser)
if: matrix.os == 'ubuntu-latest'
run: make test-wasm-browser
- name: Sucrase Tests
if: matrix.os == 'ubuntu-latest'
run: make test-sucrase

- name: WebAssembly API Tests (node)
if: matrix.os == 'ubuntu-latest'
run: make test-wasm-node
- name: Esprima Tests
if: matrix.os == 'ubuntu-latest'
run: make test-esprima

- name: WebAssembly API Tests (node)
if: matrix.os != 'ubuntu-latest'
run: node scripts/wasm-tests.js
- name: Preact Splitting Tests
if: matrix.os == 'ubuntu-latest'
run: make test-preact-splitting

- name: Sucrase Tests
if: matrix.os == 'ubuntu-latest'
run: make test-sucrase
- name: Uglify Tests
if: matrix.os == 'ubuntu-latest'
run: make uglify

- name: Esprima Tests
if: matrix.os == 'ubuntu-latest'
run: make test-esprima
- name: Check the unicode table generator
if: matrix.os == 'ubuntu-latest'
run: cd scripts && node gen-unicode-table.js

esbuild-old-golang:
name: esbuild CI (old Go version)
runs-on: ubuntu-latest

steps:
- name: Set up Go 1.13 (the minimum required Go version for esbuild)
uses: actions/setup-go@v2
with:
go-version: 1.13
id: go

- name: Preact Splitting Tests
if: matrix.os == 'ubuntu-latest'
run: make test-preact-splitting
- name: Check out code into the Go module directory
uses: actions/checkout@v2

- name: Uglify Tests
if: matrix.os == 'ubuntu-latest'
run: make uglify
- name: go build
run: go build ./cmd/esbuild

- name: Check the unicode table generator
if: matrix.os == 'ubuntu-latest'
run: cd scripts && node gen-unicode-table.js
- name: go test
run: go test ./internal/...
32 changes: 32 additions & 0 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: End-to-end install tests

on:
schedule:
- cron: '0 */6 * * *'

jobs:
validate:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Setup Node.js environment
uses: actions/[email protected]
with:
node-version: 16

- name: Test npm
run: |
npm i -g npm@next-7
time make test-e2e-npm

- name: Test pnpm
run: |
npm i -g pnpm@next
time make test-e2e-pnpm

- name: Test yarn
run: |
npm i -g yarn@latest
time make test-e2e-yarn-berry
7 changes: 4 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,22 @@ name: Release

on:
push:
tags:
- 'v*'
tags: ['v*']

jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2

- name: Extract changelog
run: |
CHANGELOG=$(awk -v ver=$(cat version.txt) '/## / { if (p) { exit }; if ($2 == ver) { p=1; next} } p' CHANGELOG.md)
CHANGELOG=$(awk -v ver=$(cat version.txt) '/^## / { if (p) { exit }; if ($2 == ver) { p=1; next} } p' CHANGELOG.md)
echo "CHANGELOG<<EOF" >> $GITHUB_ENV
echo "$CHANGELOG" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV

- name: Create GitHub Release
uses: actions/create-release@v1
env:
Expand Down
Loading