uber-go/zap
 Watch   
 Star   
 Fork   
29 days ago
zap

exp/v0.3.0

0.3.0 - 22 Oct 2024

Breaking changes:

  • #1339: zapslog: Drop HandlerOptions in favor of HandlerOption, which uses the functional options pattern.
  • #1339: zapslog: Rename AddSource option to WithCaller.

Enhancements:

  • #1339: zapslog: Record stack traces for error logs or higher. The new AddStackAt option changes this level.

Bug fixes:

  • #1344, #1408: zapslog: Comply fully with slog.Handler contract. This includes ignoring empty Attrs, inlining Groups with empty names, and omitting groups with no attributes.

Thanks to @zekth and @arukiidou for their contributions to this release.

2024-02-21 04:56:44
zap

v1.27.0

Enhancements:

  • #1378: Add WithLazy method for SugaredLogger.
  • #1399: zaptest: Add NewTestingWriter for customizing TestingWriter with more flexibility than NewLogger.
  • #1406: Add Log, Logw, Logln methods for SugaredLogger.
  • #1416: Add WithPanicHook option for testing panic logs.

Thanks to @defval, @dimmo, @arxeiss, and @MKrupauskas for their contributions to this release.

2023-09-15 04:30:47
zap

v1.26.0

Enhancements:

  • #1297: Add Dict as a Field.
  • #1319: Add WithLazy method to Logger which lazily evaluates the structured context.
  • #1350: String encoding is much (~50%) faster now.

Thanks to @hhk7734, @jquirke, @cdvr1993 for their contributions to this release.

2023-08-02 13:51:32
zap

v1.25.0

This release contains several improvements including performance, API additions, and two new experimental packages whose APIs are unstable and may change in the future.

Enhancements:

  • #1246: Add zap/exp/zapslog package for integration with slog.
  • #1273: Add Name to Logger which returns the Logger's name if one is set.
  • #1281: Add zap/exp/expfield package which contains helper methods Str and Strs for constructing String-like zap.Fields.
  • #1310: Reduce stack size on Any.

Thanks to @knight42, @dzakaammar, @bcspragu, and @rexywork for their contributions to this release.

2022-12-01 02:30:33
zap

v1.24.0

Enhancements:

  • #1148: Add Level to both Logger and SugaredLogger that reports the current minimum enabled log level.
  • #1185: SugaredLogger turns errors to zap.Error automatically.

Thanks to @Abirdcfly, @craigpastro, @nnnkkk7, and @sashamelentyev for their contributions to this release.

2022-08-24 23:40:28
zap

v1.23.0

Enhancements:

  • #1147: Add a zapcore.LevelOf function to determine the level of a LevelEnabler or Core.
  • #1155: Add zap.Stringers field constructor to log arrays of objects that implement String() string.
2022-08-09 03:16:51
zap

v1.22.0

Enhancements:

  • #1071: Add zap.Objects and zap.ObjectValues field constructors to log arrays of objects. With these two constructors, you don't need to implement zapcore.ArrayMarshaler for use with zap.Array if those objects implement zapcore.ObjectMarshaler.
  • #1079: Add SugaredLogger.WithOptions to build a copy of an existing SugaredLogger with the provided options applied.
  • #1080: Add *ln variants to SugaredLogger for each log level. These functions provide a string joining behavior similar to fmt.Println.
  • #1088: Add zap.WithFatalHook option to control the behavior of the logger for Fatal-level log entries. This defaults to exiting the program.
  • #1108: Add a zap.Must function that you can use with NewProduction or NewDevelopment to panic if the system was unable to build the logger.
  • #1118: Add a Logger.Log method that allows specifying the log level for a statement dynamically.

Thanks to @cardil, @craigpastro, @sashamelentyev, @shota3506, and @zhupeijun for their contributions to this release.

2022-02-08 00:54:17
zap

v1.21.0

1.21.0 (7 Feb 2022)

Enhancements:

  • #1047: Add zapcore.ParseLevel to parse a Level from a string.
  • #1048: Add zap.ParseAtomicLevel to parse an AtomicLevel from a string.

Bugfixes:

  • #1058: Fix panic in JSON encoder when EncodeLevel is unset.

Other changes:

  • #1052: Improve encoding performance when the AddCaller and AddStacktrace options are used together.

Thanks to @aerosol and @Techassi for their contributions to this release.

2022-01-05 03:15:23
zap

v1.20.0

Enhancements:

  • #989: Add EncoderConfig.SkipLineEnding flag to disable adding newline characters between log statements.
  • #1039: Add EncoderConfig.NewReflectedEncoder field to customize JSON encoding of reflected log fields.

Bugfixes:

  • #1011: Fix inaccurate precision when encoding complex64 as JSON.
  • #554, #1017: Close JSON namespaces opened in MarshalLogObject methods when the methods return.
  • #1033: Avoid panicking in Sampler core if thereafter is zero.

Other changes:

  • #1028: Drop support for Go < 1.15.

Thanks to @psrajat, @lruggieri, @sammyrnycreal for their contributions to this release.

2021-09-09 05:33:07
zap

v1.19.1

Fixed

  • #1001: JSON: Fix complex number encoding with negative imaginary part. Thanks to @hemantjadon.
  • #1003: JSON: Fix inaccurate precision when encoding float32.