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

Kikobeats / html-scripts / 40661400655
100%

Build:
DEFAULT BRANCH: master
Ran 28 Oct 2026 09:04AM UTC
Jobs 1
Files 1
Run time 1min
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

28 Oct 2026 09:04AM UTC coverage: 100.0%. Remained the same
40661400655

push

github

web-flow
build(deps)!: upgrade htmlparser2 to v12 (#22)

* build(deps)!: upgrade htmlparser2 to v12

htmlparser2 v12 tokenizes foreign content itself through
`isInForeignContext`, so the Tokenizer subclass no longer ran. The parser
now points that hook at our own namespace stack, and the workarounds v12
makes redundant (self-closing script end search, iframe/noembed/noframes/
plaintext raw text tracking, isInScript) are gone.

v12 always treats annotation-xml as an integration point and makes more
tags raw text, which broke annotation-xml without an HTML encoding and let
raw text tags swallow </noscript>. Fixed by:

- skipping noscript content up to its end tag, as the spec raw text state does
- namespace-aware integration points, pushed after the self-closing decision
- foreign content breakout (p, div, font[color], ...)
- template inside svg/math is not inert
- svg/math nested in foreign content keep the parent namespace
- scripts cut off at the end of the input are not reported

Differential fuzz against parse5 (WHATWG spec): spec mismatches go from
~7% of random inputs to ~0.05%. Benchmark is at parity with master.

BREAKING CHANGE: htmlparser2 v11+ requires Node.js >= 20.19.

Closes #20

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

* fix: svg directly inside a math annotation-xml is svg

The tree construction dispatcher inserts an svg start tag in the SVG
namespace when the current node is a MathML annotation-xml, whatever its
encoding. Track open element depth so only a direct child gets this.

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

* fix: parse mglyph and malignmark inside math text as math

Those two elements stay in MathML when the current node is a text integration point. Treating them as HTML let a script there swallow later scripts.

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

79 of 79 branches covered (100.0%)

Branch coverage included in aggregate %.

178 of 178 new or added lines in 1 file covered. (100.0%)

216 of 216 relevant lines covered (100.0%)

94.96 hits per line

Jobs
ID Job ID Ran Files Coverage
1 40661400655.1 28 Oct 2026 09:04AM UTC 1
100.0
GitHub Action Run
Source Files on build 40661400655
  • Tree
  • List 1
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #40661400655
  • cae34d85 on github
  • Prev Build on master (#40649828055)
  • Next Build on master (#40661560326)
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