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

elixir-mint / hpax / 21dc3f90571f8295ae5cd5cd1e02fc3c1e2a1454-PR-32
98%
main: 98%

Build:
Build:
LAST BUILD BRANCH: decoder-table-size-rules
DEFAULT BRANCH: main
Ran 20 Sep 2026 10:47PM UTC
Jobs 1
Files 4
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

20 Sep 2026 10:45PM UTC coverage: 96.316% (+0.3%) from 95.977%
21dc3f90571f8295ae5cd5cd1e02fc3c1e2a1454-PR-32

Pull #32

github

ericmj
Add HPAX.protocol_resize/2 for decoding tables

resize/2 sets both the protocol maximum and the table's own maximum
size. That's right for an encoding context, which takes the whole size
the protocol permits and declares it, but a decoding table's maximum
size is chosen by the peer's encoder and declared with a dynamic table
size update instruction (RFC 7541 4.2). Raising the protocol maximum on
a decoding table kept entries the peer's encoder had evicted, so an
indexed reference to one of them decoded to a stale header instead of
failing.

protocol_resize/2 changes only the maximum the peer is permitted to use
and follows it down when it drops below the table's own maximum. When
the new maximum is below the current size of the table, RFC 9113 4.3.1
requires the encoder to start the next block with a dynamic table size
update of at most the new maximum and requires the receiver to treat a
block that doesn't as a COMPRESSION_ERROR, so decode/2 now returns
{:error, :missing_size_update} for such a block.
Pull Request #32: Add HPAX.protocol_resize/2 for decoding tables

17 of 18 new or added lines in 2 files covered. (94.44%)

3 existing lines in 2 files now uncovered.

183 of 190 relevant lines covered (96.32%)

3960.12 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
95.0
-1.0% lib/hpax/table.ex

Coverage Regressions

Lines Coverage ∆ File
2
97.65
1.44% lib/hpax.ex
1
95.0
-1.0% lib/hpax/table.ex
Jobs
ID Job ID Ran Files Coverage
1 21dc3f90571f8295ae5cd5cd1e02fc3c1e2a1454-PR-32.1 20 Sep 2026 10:47PM UTC 4
96.32
GitHub Action Run
Source Files on build 21dc3f90571f8295ae5cd5cd1e02fc3c1e2a1454-PR-32
  • Tree
  • List 4
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #32
  • PR Base - main (#DEBEA435...)
  • Delete
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