Velocity v1.1.0
Velocity v1.1.0
Fast, zero-allocation structured logging for Go with rich terminal output.
Install
go get github.com/tensorfoundrylabs/velocity@v1.1.0Changelog
Other
- 6494500: LogEntry: avoid make() for base field prepend, reuse entry slice (@thushan)
- bbc55a6: add Logger.Render tests for JSON writer ignore and no-console-writer no-op paths (@thushan)
- 7783ae1: add Logger.Render, RenderRaw, Newline for terminal-aligned rich output (@thushan)
- 6082e53: add Logger.SetTheme to update theme on active writers (@thushan)
- 3a8a76e: add Renderable interface and extract render logic into result types in pretty (@thushan)
- 077858b: add Renderable interface compliance and parity tests for pretty result types (@thushan)
- 4266ff7: add benchmarks for Render API and pretty.NewFromLogger paths (@thushan)
- 3986197: add deterministic regression test for ring buffer write claim race (@thushan)
- 2f1f89c: add missing doc comment on pretty.New (@thushan)
- ec32b58: add pretty.NewFromLogger and Logger.Theme, route pretty output through logger mutex (@thushan)
- 668e8a9: add tree-mode benchmarks to validate zero-alloc cachedIndentStr path (@thushan)
- 14754c3: align Template struct after cachedIndentStr addition (@thushan)
- 6f193cc: apply gofumpt formatting (@thushan)
- 739894c: cache indent string on template, drop strings.Repeat per tree-mode log call (@thushan)
- 342d3d8: cache prefix width on Template at construction, skip repeated calculatePrefixWidth in badge tree mode (@thushan)
- 2805ad9: cache table header and info colour ANSI strings on Theme (@thushan)
- aaa7c19: console writer: use fmt.Fprintf for FieldTypeAny to avoid intermediate string alloc (@thushan)
- aa48b88: drop eager bytes.Buffer alloc from entryPool.New (@thushan)
- 521bda2: examples: drop fmt.Fprintln spacers, use log.Newline and Render API (@thushan)
- 9dfa26b: examples: indent tables under log lines via Render (@thushan)
- 7d38e18: extend SetTheme tests: Theme() getter, multi-writer propagation, With() clone inheritance (@thushan)
- 30a15a4: fix calculatePrefixWidth to use reference time, not entry time (@thushan)
- 31018f4: fix race in ring buffer write section and settheme test (@thushan)
- e82ea58: json writer: inline hex escape for control chars, drop fmt.Fprintf alloc (@thushan)
- 91b3c15: pretty: pool bytes.Buffer via root GetBuffer/PutBuffer instead of per-render alloc (@thushan)
- 5ea3185: pretty: use cached ANSI strings from Theme instead of calling ANSI() per render (@thushan)
- 552e662: replace strconv.Itoa with AppendInt into stack buf for caller line in template (@thushan)
- af15df9: replace strconv.Itoa with formatInt+UnsafeString in FieldValueToString (@thushan)
- 593265d: ring buffer writer: default nil timezone to time.Local, drop runtime nil-check in formatEntry (@thushan)
- ca21c24: tighten docs and nil-safety on v1.1 api (@thushan)
- 17403b2: tighten readme and refresh internal benchmarks for v1.1 (@thushan)
- dfec02c: tighten ring buffer high-throughput test with sequenced payloads (@thushan)