GoToSocial/vendor/codeberg.org/gruf/go-kv
kim a156188b3e
[chore] update dependencies, bump to Go 1.19.1 (#826)
* update dependencies, bump Go version to 1.19

* bump test image Go version

* update golangci-lint

* update gotosocial-drone-build

* sign

* linting, go fmt

* update swagger docs

* update swagger docs

* whitespace

* update contributing.md

* fuckin whoopsie doopsie

* linterino, linteroni

* fix followrequest test not starting processor

* fix other api/client tests not starting processor

* fix remaining tests where processor not started

* bump go-runners version

* don't check last-webfingered-at, processor may have updated this

* update swagger command

* update bun to latest version

* fix embed to work the same as before with new bun

Signed-off-by: kim <grufwub@gmail.com>
Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
2022-09-28 18:30:40 +01:00
..
format [chore] update dependencies, bump to Go 1.19.1 (#826) 2022-09-28 18:30:40 +01:00
benchmark.png [chore] use our own logging implementation (#716) 2022-07-19 10:47:55 +02:00
field_fmt.go [chore] update dependencies, bump to Go 1.19.1 (#826) 2022-09-28 18:30:40 +01:00
field_format.go [chore] update dependencies, bump to Go 1.19.1 (#826) 2022-09-28 18:30:40 +01:00
field.go [chore] update dependencies, bump to Go 1.19.1 (#826) 2022-09-28 18:30:40 +01:00
LICENSE [chore] use our own logging implementation (#716) 2022-07-19 10:47:55 +02:00
README.md [chore] use our own logging implementation (#716) 2022-07-19 10:47:55 +02:00
util.go [chore] update dependencies, bump to Go 1.19.1 (#826) 2022-09-28 18:30:40 +01:00

go-kv

This library provides a key-value field structure kv.Field{} that plays well with the "fmt" package. It gives an easy means of appending key-value fields to log entries, in a manner that also happens to look nice! (it's not far removed from using a map[string]interface{}).

The formatting for these key-value fields is handled by the "fmt" package by default. If you set the kvformat build tag then it will use a custom formatting library found under format/. You can see the benchmarks for both below.

benchmarks

TODO: benchmarks comparing these to using fmt.Sprintf("%q=%+v", ...) yourself.