Skip to content

v0.3.2

Choose a tag to compare

@kishankumarhs kishankumarhs released this 30 Jul 18:31

Polyglot v0.3.2

Highlights

  • Tag-driven releases: CI sets Node / Python / .NET / Go versions from the git tag (fixes npm 403 republish of 0.3.0)
  • Async ReloadConfig no longer hangs under a live writer flood
  • Benchmark harness: Python vs stdlib, .NET vs Serilog, verbose progress, BENCH_QUICK, charts in README

Release / packaging

  • scripts/set-release-version.sh — rewrite binding + core versions from semver
  • Release workflow resolves vX.Y.ZX.Y.Z, applies versions before pack/publish, fails early if that npm version already exists
  • Docs: PUBLISHING.md, RELEASE-CHECKLIST.md

Core

  • Async worker prefers flush/reload/stop over a hot queue
  • drainQueue is bounded (cap(queue)+1) so reload/flush/stop can’t spin forever while producers refill the queue
  • Hot-reload bench: BENCH_RELOAD_WORKERS, 15s timeout; reload under 100 workers ~tens of ms

Benchmarks & docs

  • Python competitor (bench/python) and .NET/Serilog (bench/dotnet) + bindings.svg chart
  • Payload-shape docs and Node FFI tax notes in bench/README.md
  • go test -bench uses -run '^$' so tests don’t run before benchmarks
  • Phase banners, 30s heartbeat, line-buffered streaming, BENCH_QUICK=1
  • Scale CSV wired into full/release benches; empty scale shows a placeholder, not a flat zero line
  • Build Node bindings before Node benches (CI MODULE_NOT_FOUND fix)

Already in v0.3.1 (for reference)

Bench charts in README, scale chart fixes, Node build-before-bench in release, gofmt import fix, early chart pipeline work.