Skip to content

Rewrite - #4

Merged
btoms20 merged 11 commits into
mainfrom
misc-work
Sep 6, 2026
Merged

Rewrite#4
btoms20 merged 11 commits into
mainfrom
misc-work

Conversation

@btoms20

@btoms20 btoms20 commented Sep 6, 2026

Copy link
Copy Markdown
Member

What?

This PR is a complete rewrite of the package focusing on providing a more efficient, streaming forward, API with typed errors instead of arbitrary int return values.

Changes:

  • VarIntBytes stores our 10 byte VarInts in a two int struct for fewer heap allocations (no arrays)
  • VarIntErrors for proper, informative, errors
  • VarIntDecoder, a byte-by-byte decoder
  • Proper Signed VarInt support (zigzag and two's complement)
  • A VarIntReader for reading multiple back to back VarInts and/or VarInt length prefixed fields (without copying arrays)
  • New tests

@btoms20 btoms20 self-assigned this Sep 6, 2026
@btoms20 btoms20 added enhancement New feature or request breaking-change This PR introduces breaking changes dependency-check Tests direct dependents for breaking changes labels Sep 6, 2026
@btoms20
btoms20 merged commit f66c053 into main Sep 6, 2026
33 checks passed
@btoms20
btoms20 deleted the misc-work branch September 6, 2026 21:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking-change This PR introduces breaking changes dependency-check Tests direct dependents for breaking changes enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant