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

harttle / liquidjs / 40743699898
99%

Build:
DEFAULT BRANCH: master
Ran 28 Oct 2026 06:18PM UTC
Jobs 1
Files 119
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 06:17PM UTC coverage: 99.381% (+0.001%) from 99.38%
40743699898

push

github

web-flow
fix(base64_decode): throw on invalid input in every build (#971)

* fix(base64_decode): render invalid input as an empty string

The two builds disagreed on input that isn't valid Base64. The node
build decodes with Buffer, which skips characters outside the alphabet,
so ordinary text such as "hello" or "[object Object]" decoded to
garbage bytes. The browser builds decode with atob, which throws, so
the same input failed the whole render.

base64_decode now checks the input before decoding, in the filter
shared by both builds: exactly what atob accepts (the standard
alphabet, optional padding and whitespace) decodes as before, and
anything else renders an empty string. Valid input is decoded the same
way by both builds.

Fixes #965

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

* docs(base64_decode): say what Shopify renders for invalid input

Shopify/Liquid's default render writes an error message in place of
the filter's output and renders the rest of the page; only render!
raises. "Raises an error" read as failing the render.

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

* fix(base64_decode): throw on invalid input in every build

Invalid input rendered an empty string. It now throws "invalid base64
provided to base64_decode", the message Shopify/Liquid uses, from the
check both builds share, so the node and browser builds fail the same
way on the same input. Padding stays optional and whitespace ignored,
as both builds accept today.

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

---------

Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>

1206 of 1227 branches covered (98.29%)

Branch coverage included in aggregate %.

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

3132 of 3138 relevant lines covered (99.81%)

19463.19 hits per line

Jobs
ID Job ID Ran Files Coverage
1 40743699898.1 28 Oct 2026 06:18PM UTC 119
99.38
GitHub Action Run
Source Files on build 40743699898
  • Tree
  • List 119
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 83bbfe0c on github
  • Prev Build on master (#40740851194)
  • Next Build on master (#40746223417)
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