v0.3.2
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
ReloadConfigno 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.Z→X.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
drainQueueis 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.svgchart - Payload-shape docs and Node FFI tax notes in
bench/README.md go test -benchuses-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_FOUNDfix)
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.