Skip to content

Releases: MrHIDEn/cstruct

v1.9.0

Choose a tag to compare

@MrHIDEn MrHIDEn released this 09 Oct 22:12
e7511ae

What's Changed

  • perf: compile the interpreter model once (read ~2.5x, make ~1.5x faster) by @MrHIDEn in #83
  • perf: single-buffer writers + switch atom dispatch (interpreter ~2-6x faster) by @MrHIDEn in #84
  • fix: UTF-8 length prefix + enum support in codegen by @MrHIDEn in #85
  • feat: dynamic buffer (buf[i16]) in compiled write by @MrHIDEn in #86
  • docs: refresh format benchmark results by @MrHIDEn in #87
  • perf: compute UTF-8 length once per pass in codegen write by @MrHIDEn in #88
  • fix: static-JSON size validation used raw object length by @MrHIDEn in #89
  • fix: static JSON sized-atom (j8/j20/json20/any20) not stringified by @MrHIDEn in #90
  • docs: fix stale 'enum not supported in codegen' comment by @MrHIDEn in #91
  • docs: note codegen benchmark vs protobufjs in README by @MrHIDEn in #92
  • release: 1.9.0 by @MrHIDEn in #93

Full Changelog: v1.8.2...v1.9.0

v1.8.2

Choose a tag to compare

@MrHIDEn MrHIDEn released this 09 Oct 13:42
a340623

What's Changed

  • docs: badges w README (npm version, downloads, license, GH Actions) by @MrHIDEn in #81
  • docs/badges by @MrHIDEn in #82

Full Changelog: v1.8.1...v1.8.2

v1.8.0

Choose a tag to compare

@MrHIDEn MrHIDEn released this 09 Oct 12:46
957ce8b

What's new in 1.8.0

Added

  • CStructUint8Array — browser-ready serialization on Uint8Array/DataView (no Node Buffer): same model syntax, read/write/make, compileRead/compileWrite/compileMake, fromModelTypes/fromCompiled and { endian: 'be' } option (PR #78)

Performance

  • Interpreter (read/write/make) reuses reader/writer instances per CStruct (new reset()/run() on reader/writer classes) — ~15× faster interpreter (up to 2–3.5M ops/s) (PR #79)

Docs / Benchmarks

  • Full audit of doc/BENCHMARKS-*.md — all tables re-measured in one parallel Node/Bun/Deno session; added CStruct (Buffer codegen) column
  • New doc/BENCHMARKS-DENO.md; npm scripts: bench:node / bench:bun / bench:deno
  • README: new CStructUint8Array section (browser/Deno path)

v1.5.3

Choose a tag to compare

@MrHIDEn MrHIDEn released this 10 Jun 18:28

Added support for utf16le.
Thanks for @Sorunome

v1.4.0

Choose a tag to compare

@MrHIDEn MrHIDEn released this 07 Dec 10:18
8967429

Added - Atomic types, no you can use them instead string types but both works well.
'u16' -> 'u16' or AtomicType.U16
import { AtomicType } from '@mrhiden/cstruct';
const { U16 } = AtomicType;

v1.3.2

Choose a tag to compare

@MrHIDEn MrHIDEn released this 08 Nov 15:25
359e4cf

Fixed 1 issue. Thanks @ArkadyKoretsky!
Fix:
static from function in cstruct-le changed to getCStructLE

v1.3.1

Choose a tag to compare

@MrHIDEn MrHIDEn released this 05 Apr 11:56
c942c7c

removed budge fury.io - does not work well

v1.3.0

Choose a tag to compare

@MrHIDEn MrHIDEn released this 03 Apr 23:00
624c1bd

Add trailing zero dynamic length for "string" and "json".
Fixed some internal logic.

v1.2.0

Choose a tag to compare

@MrHIDEn MrHIDEn released this 20 Mar 08:57
6c8ff98

Removed unnecesary toAtom() functionality

v1.1.0

Choose a tag to compare

@MrHIDEn MrHIDEn released this 18 Mar 23:30
5a1afb3

Refactored approach
Refactored decorators