All Versions
41
Latest Version
Avg Release Cycle
123 days
Latest Release
49 days ago

Changelog History
Page 1

  • v1.28.0 Changes

    April 28, 2026

    โœจ Enhancements:

    • #1534: Add zapcore.CheckPreWriteHook and CheckedEntry.Before method for transforming entries before they are written to any Cores.
  • v1.27.1 Changes

    November 19, 2025

    โœจ Enhancements:

    • #1501: prevent Object from panicking on nils
    • #1511: Fix a race condition in WithLazy.

    ๐Ÿš€ Thanks to @rabbbit, @alshopov, @jquirke, @arukiidou for their contributions to this release.

  • v1.27.0 Changes

    February 20, 2024

    โœจ 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.

  • v1.26.0 Changes

    September 14, 2023

    โœจ 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.

  • v1.25.0 Changes

    August 02, 2023

    ๐Ÿš€ 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.

  • v1.24.0 Changes

    November 30, 2022

    โœจ 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.

  • v1.23.0 Changes

    August 24, 2022

    โœจ 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.
  • v1.22.0 Changes

    August 08, 2022

    โœจ 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
      0๏ธโƒฃ 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.

  • v1.21.0 Changes

    February 07, 2022

    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.

  • v1.20.0 Changes

    January 04, 2022

    โœจ 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.