Skip to content

Releases: uber-go/zap

v1.18.1

28 Jun 19:13
120b08c
Compare
Choose a tag to compare

Bugfixes:

  • #974: Fix nil dereference in logger constructed by zap.NewNop.

v1.18.0

28 Jun 17:59
35f15d1
Compare
Choose a tag to compare

Enhancements:

  • #961: Add zapcore.BufferedWriteSyncer, a new WriteSyncer that buffers
    messages in-memory and flushes them periodically.
  • #971: Add zapio.Writer to use a Zap logger as an io.Writer.
  • #897: Add zap.WithClock option to control the source of time via the
    new zapcore.Clock interface.
  • #949: Avoid panicking in zap.SugaredLogger when arguments of *w
    methods don't match expectations.
  • #943: Add support for filtering by level or arbitrary matcher function to
    zaptest/observer.
  • #691: Comply with io.StringWriter and io.ByteWriter in Zap's
    buffer.Buffer.

Thanks to @atrn0, @ernado, @heyanfu, @hnlq715, @zchee
for their contributions to this release.

v1.17.0

25 May 21:56
ebebbf3
Compare
Choose a tag to compare

Bugfixes:

  • #867: Encode <nil> for nil error instead of a panic.
  • #931, #936: Update minimum version constraints to address
    vulnerabilities in dependencies.

Enhancements:

  • #865: Improve alignment of fields of the Logger struct, reducing its
    size from 96 to 80 bytes.
  • #881: Support grpclog.LoggerV2 in zapgrpc.
  • #903: Support URL-encoded POST requests to the AtomicLevel HTTP handler
    with the application/x-www-form-urlencoded content type.
  • #912: Support multi-field encoding with zap.Inline.
  • #913: Speed up SugaredLogger for calls with a single string.
  • #928: Add support for filtering by field name to zaptest/observer.

Thanks to @ash2k, @FMLS, @jimmystewpot, @oncilla, @tsoslow, @tylitianrui, @withshubh, and @wziww for their contributions to this release.

v1.16.0

01 Sep 21:21
404189c
Compare
Choose a tag to compare

Bugfixes:

  • #828: Fix missing newline in IncreaseLevel error messages.
  • #835: Fix panic in JSON encoder when encoding times or durations
    without specifying a time or duration encoder.
  • #843: Honor CallerSkip when taking stack traces.
  • #862: Fix the default file permissions to use 0666 and rely on the umask instead.
  • #854: Encode <nil> for nil Stringer instead of a panic error log.

Enhancements:

  • #629: Added zapcore.TimeEncoderOfLayout to easily create time encoders
    for custom layouts.
  • #697: Added support for a configurable delimiter in the console encoder.
  • #852: Optimize console encoder by pooling the underlying JSON encoder.
  • #844: Add ability to include the calling function as part of logs.
  • #843: Add StackSkip for including truncated stacks as a field.
  • #861: Add options to customize Fatal behaviour for better testability.

Thanks to @SteelPhase, @tmshn, @lixingwang, @wyxloading, @moul, @segevfiner, @andy-retailnext and @jcorbin for their contributions to this release.

v1.15.0

24 Apr 16:49
feeb9a0
Compare
Choose a tag to compare

Bugfixes:

  • #804: Fix handling of Time values out of UnixNano range.
  • #812: Fix IncreaseLevel being reset after a call to With.

Enhancements:

  • #806: Add WithCaller option to supersede the AddCaller option. This
    allows disabling annotation of log entries with caller information if
    previously enabled with AddCaller.
  • #813: Deprecate NewSampler constructor in favor of
    NewSamplerWithOptions which supports a SamplerHook option. This option
    adds support for monitoring sampling decisions through a hook.

Thanks to @danielbprice for their contributions to this release.

v1.14.1

15 Mar 15:47
2aa9fa2
Compare
Choose a tag to compare

Bugfixes:

  • #791: Fix panic on attempting to build a logger with an invalid Config.
  • #795: Vendoring Zap with go mod vendor no longer includes Zap's
    development-time dependencies.
  • #799: Fix issue introduced in 1.14.0 that caused invalid JSON output to
    be generated for arrays of time.Time objects when using string-based time
    formats.

Thanks to @YashishDua for their contributions to this release.

v1.14.0

20 Feb 16:58
c89bd3c
Compare
Choose a tag to compare

Enhancements:

  • #771: Optimize calls for disabled log levels.
  • #773: Add millisecond duration encoder.
  • #775: Add option to increase the level of a logger.
  • #786: Optimize time formatters using Time.AppendFormat where possible.

Thanks to @caibirdme for their contributions to this release.

v1.13.0

13 Nov 22:26
33e58d4
Compare
Choose a tag to compare

Enhancements:

  • #758: Add Intp, Stringp, and other similar *p field constructors
    to log pointers to primitives with support for nil values.

Thanks to @jbizzle for their contributions to this release.

v1.12.0

30 Oct 01:34
a6015e1
Compare
Choose a tag to compare

Enhancements:

  • #751: Migrate to Go modules.

v1.11.0

21 Oct 20:37
0065243
Compare
Choose a tag to compare

Enhancements:

  • #725: Add zapcore.OmitKey to omit keys in an EncoderConfig.
  • #736: Add RFC3339 and RFC3339Nano time encoders.

Thanks to @juicemia, @uhthomas for their contributions to this release.