Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
64f9535
chore: upgrade TypeScript to 5.9.3 and enable .ts imports
bennypowers Mar 16, 2026
0bbdcdb
fix: upgrade prettier-plugin-package to v2 for prettier 3 compat
bennypowers Mar 17, 2026
dd30253
fix: update eslint config for @typescript-eslint v8 compatibility
bennypowers Mar 17, 2026
6dad14a
fix: add return type annotation to mocks preset for TS 5.9 compat
bennypowers Mar 17, 2026
c261ccf
fix: update test-runner-mocha rollup config for rewriteRelativeImport…
bennypowers Mar 17, 2026
59e04ae
fix: restore test files to master versions on PR1
bennypowers Mar 17, 2026
a570577
fix: restore test assertions and add hanbi type declarations
bennypowers Mar 17, 2026
803e77a
fix: comprehensive PR1 cleanup for TS 5.9 + nodenext compat
bennypowers Mar 18, 2026
65e34a0
fix: remove junk files accidentally committed
bennypowers Mar 18, 2026
7eb223d
fix: add TS_NODE_COMPILER_OPTIONS override for mocha test scripts
bennypowers Mar 18, 2026
17a87c3
fix: override module and moduleResolution for mocha test scripts
bennypowers Mar 18, 2026
324c7af
fix: regenerate package-lock.json
bennypowers Mar 18, 2026
f7309da
fix: upgrade koa/ws deps and fix nested @types conflicts
bennypowers Mar 18, 2026
e2af495
fix: regenerate package-lock.json after dep changes
bennypowers Mar 18, 2026
69de815
fix: restore parse5 v6 deps and fix ws/koa type resolution
bennypowers Mar 19, 2026
f42369a
fix: restore parse5-utils main/exports to master (src/index.js)
bennypowers Mar 19, 2026
e55eb08
fix: regenerate package-lock.json for parse5 v6
bennypowers Mar 19, 2026
08fa46f
fix: resolve remaining TS 5.9 strictness issues
bennypowers Mar 19, 2026
4f8de57
fix: clean PR1 of all leaked PR2/PR4 changes
bennypowers Mar 19, 2026
b7f95f3
fix: use --loader ts-node/esm for mocha test scripts
bennypowers Mar 19, 2026
08af462
fix: override module and moduleResolution for mocha test scripts
bennypowers Mar 19, 2026
573cc0c
fix: add ts-node compilerOptions override and regenerate package-lock…
bennypowers Mar 19, 2026
a085557
fix: add ts-node overrides to package tsconfigs and fix recurring issues
bennypowers Mar 19, 2026
4ebdb56
fix: override module and moduleResolution for mocha test scripts
bennypowers Mar 19, 2026
511c326
fix: use TS_NODE_SKIP_PROJECT to prevent ts-node reading nodenext config
bennypowers Mar 19, 2026
70f5530
fix: require Node 24 in CI workflows
bennypowers Mar 19, 2026
ad66bfc
fix: rewrite .js to .ts imports in test files
bennypowers Mar 19, 2026
c1e189b
fix: remove leaked test file
bennypowers Mar 19, 2026
183f4e7
fix: copy source files from fix/node24 for correct import type keywords
bennypowers Mar 19, 2026
3734527
fix: fix import type keywords and package subpath exports
bennypowers Mar 19, 2026
e73f205
fix: rewrite .js to .ts imports in test files (re-apply)
bennypowers Mar 19, 2026
49fe13f
fix: revert import.meta.dirname to __dirname for CJS output
bennypowers Mar 20, 2026
41be238
fix: restore test files to master, fix lint, add react-dom devDep
bennypowers Mar 20, 2026
39d73bd
fix: add argsIgnorePattern to no-unused-vars eslint rule
bennypowers Mar 22, 2026
74c322d
fix: rewrite remaining .js imports on multi-line from clauses
bennypowers Mar 22, 2026
d7b44b2
fix: update prettier script paths for v3 and format files
bennypowers Mar 22, 2026
06a7fca
chore: migrate tests from mocha/chai to node:test + node:assert
bennypowers Mar 16, 2026
745e02a
fix: regenerate package-lock.json for tsx dependency
bennypowers Mar 17, 2026
5635116
fix: regenerate package-lock.json
bennypowers Mar 19, 2026
fcbd41e
fix: resolve conflict markers in test files and remove unused imports
bennypowers Mar 20, 2026
5b73d10
fix: fix JSDoc package test imports and exports map
bennypowers Mar 22, 2026
e70b56b
fix: rewrite remaining .js imports on multi-line from clauses
bennypowers Mar 22, 2026
11fa9de
ci: trigger CI
bennypowers Mar 22, 2026
2cc8e4e
fix: format files with prettier v3
bennypowers Mar 22, 2026
fc5426d
fix: add --experimental-transform-types for node test, fix type imports
bennypowers Mar 22, 2026
f813e66
fix: fix browser-logs stack trace assertions and add test timeouts
bennypowers Mar 22, 2026
e1cea9b
fix: split parse5 type imports and fix stale .js imports
bennypowers Mar 23, 2026
0240038
fix: use import.meta for ESM compat on Node 24, suppress TS1470
bennypowers Mar 23, 2026
66be3c0
fix: revert source files to CJS-compatible versions
bennypowers Mar 23, 2026
7ef4673
fix: import from dist/ instead of src/ in tests with CJS deps
bennypowers Mar 23, 2026
225cfca
fix: add --test-force-exit to prevent 30-minute CI hangs
bennypowers Mar 23, 2026
8e0c2aa
chore: require Node >=22.0.0, drop --experimental-transform-types
bennypowers May 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Empty file added (JSDoc→TS
Empty file.
19 changes: 19 additions & 0 deletions .changeset/browser-logs-node-test-runner.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
"@web/browser-logs": major
---

BREAKING: Migrate to Node.js native test runner

- Replace Mocha with Node.js `node:test` module
- Replace Chai with Node.js `node:assert/strict`
- Use Node 24's native TypeScript type stripping (enabled by default)
- Update test imports for ES modules (__dirname, require)
- All 41 tests passing

**Migration:** No API changes. Development-only breaking change.

**For contributors:**
- Tests now use `node:test` instead of Mocha
- Use `npm run test:node` to run tests
- Node 24+ required for development
- TypeScript test files run directly without build step
4 changes: 2 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Setup Node 20
- name: Setup Node 22
uses: actions/setup-node@v4
env:
FORCE_COLOR: 0
with:
node-version: 20
node-version: 22
cache: npm

- name: Install Dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/verify-browser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ jobs:
- name: Workaround for Chrome sandbox issue in Ubuntu 24.04
run: sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0

- name: Setup Node 20
- name: Setup Node 22
uses: actions/setup-node@v4
env:
FORCE_COLOR: 0
with:
node-version: 20
node-version: 22
cache: npm

- name: Install Dependencies
Expand Down
7 changes: 3 additions & 4 deletions .github/workflows/verify-node.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,8 @@ jobs:
fail-fast: false
matrix:
node-version:
- '18'
- '20'
- '22'
- '24'
- 'latest'

steps:
Expand Down Expand Up @@ -69,12 +68,12 @@ jobs:

- uses: actions/checkout@v4

- name: Setup Node '20'
- name: Setup Node '22'
uses: actions/setup-node@v4
env:
FORCE_COLOR: 0
with:
node-version: '20'
node-version: '22'
cache: 'npm'

# Set up GitHub Actions caching for Wireit.
Expand Down
Loading