• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

mpyw / FILTER_VALIDATE_EMAIL.js / 29546208114 / 3
100%
master: 100%

Build:
DEFAULT BRANCH: master
Ran 17 Jul 2026 12:59AM UTC
Files 1
Run time 0s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

17 Jul 2026 12:58AM UTC coverage: 100.0%. Remained the same
29546208114.3

push

github

web-flow
chore: modernize toolchain to ESM-only (tsup + vitest) (#15)

* chore: modernize toolchain to ESM-only (tsup + vitest)

Dependabot PRs (#10-#14) were failing CI with ERESOLVE because each bumped a
single package into a major that conflicted with the rest of the babel/rollup/
ts-jest toolchain (e.g. @babel/core@8 vs @babel/cli@7, ts-jest peer <babel8).
These interdependent tools can only move together, so replace the whole build/
test stack instead of patching versions one by one.

- Package is now ESM-only (BREAKING, -> 2.0.0). require() consumers stay on v1.
- Build: drop babel (core/cli/preset-env/preset-typescript) + rollup + plugins,
  use tsup. Outputs ESM (dist/index.js), a minified IIFE browser global
  (dist/filter-validate-email.min.js, same CDN path) and dts.
- Test: drop jest + ts-jest + @types/jest, use vitest (+ v8 coverage / lcov).
  PHP parity test (test:php) unchanged.
- Lint: eslint 7 -> 10 flat config (eslint.config.mjs) with typescript-eslint 8,
  prettier 2 -> 3. Fix latent bug where fix:eslint lacked --fix.
- typescript 4 -> 5.9, tsconfig switched to ESM/bundler resolution; add a
  Typecheck step to CI (tsc --noEmit was never actually run before).
- CI node matrix 12-24 -> 22/24/26 (dropped EOL); engines: node >=22.
  release workflow node 15 -> 24.
- Unicode property escapes (\p{L}\p{N}) now ship natively; no babel transform.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

* chore: address Fable 5 / Codex audit findings

- tsup: fix clean race between the two concurrent builds (Promise.all) that
  could delete the freshly written IIFE bundle. Clean `dist` once via a
  `prebuild` script; both configs now use `clean: false`.
- CI/release: install PHP explicitly (shivammathur/setup-php) instead of
  relying on the runner image happening to bundle it — the PHP parity test
  and prepublishOnly both depend on it.
- ci.yml: `if: always()` on coverage-aggregation so Coveralls finishes even
  when a matrix leg fails.
- eslint: s... (continued)

8 of 8 branches covered (100.0%)

Branch coverage included in aggregate %.

8 of 8 relevant lines covered (100.0%)

79.25 hits per line

Source Files on job node:22 - 29546208114.3
  • Tree
  • List 1
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 29546208114
  • 54725e7b on github
  • Prev Job for on master (#29305786624.5)
  • Next Job for on master (#29546500489.3)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc