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

harttle / liquidjs / 27951652179
100%

Build:
DEFAULT BRANCH: master
Ran 22 Jun 2026 12:12PM 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

22 Jun 2026 12:11PM UTC coverage: 99.544% (+0.001%) from 99.543%
27951652179

push

github

web-flow
perf(parser): memoize createTrie to avoid rebuilding tries per Tokenizer (#911)

The Tokenizer constructor calls createTrie(operators) and
createTrie(literalValues) on every instantiation, and liquidjs builds a
fresh Tokenizer per output/tag while parsing. On typical templates this
rebuilt the same prefix-tries dozens of times and showed up as a large
share of parse CPU in profiling.

Memoize createTrie with a module-level WeakMap keyed on the input object.
The inputs (operators, literalValues) are stable references and the trie
is only ever read afterward (via matchTrie), never mutated, so caching by
reference is behavior-preserving. WeakMap (not Map) lets short-lived,
per-instance operator objects and their tries be garbage collected.

1132 of 1144 branches covered (98.95%)

Branch coverage included in aggregate %.

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

3015 of 3022 relevant lines covered (99.77%)

20816.53 hits per line

Jobs
ID Job ID Ran Files Coverage
1 27951652179.1 22 Jun 2026 12:12PM UTC 119
99.54
GitHub Action Run
Source Files on build 27951652179
  • 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
  • 3a0d80d1 on github
  • Prev Build on master (#27951436740)
  • Next Build on master (#28016992098)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc