FAQ | This is a LIVE service | Changelog

fix(deps): update dependency structlog to v25

This MR contains the following updates:

Package Change Age Confidence
structlog (changelog) ^24.1.0 -> ^25.0.0 age confidence

Release Notes

hynek/structlog (structlog)

v25.4.0

Compare Source

Added
  • Support for Python 3.14 and Python 3.13.4.

    Python 3.14 has an backwards-incompatible change to logging.Logger.isEnabledFor() (it now always returns False if a log entry is in flight) that has been backported to 3.13.4 (expected on 2025-06-03). It mainly affects structlog.stdlib.filter_by_level(). #​723

  • structlog.tracebacks now handles exception groups. structlog.tracebacks.Stack has two new fields, is_group: bool and exceptions: list[Trace]. This works similarly to what Rich v14.0.0 does. #​720

Fixed
  • structlog.processors.ExceptionPrettyPrinter now respects the exception_formatter arguments instead of always using the default formatter. #​724

v25.3.0

Compare Source

Fixed
  • structlog.processors.TimeStamper now again uses timestamps using UTC for custom format strings when utc=True. #​713

v25.2.0

Compare Source

Added
  • structlog.tracebacks.Stack now includes an exc_notes field reflecting the notes attached to the exception. #​684
Changed
  • structlog.stdlib.BoundLogger's binding-related methods now also return Self. #​694

  • structlog.processors.TimeStamper now produces internally timezone-aware datetime objects. Default output hasn't changed, but you can now use %z in your fmt string. #​709

Fixed
  • Expose structlog.dev.RichTracebackFormatter for imports. #​699
  • Expose structlog.processors.LogfmtRenderer for imports. #​701

v25.1.0

Compare Source

Added
  • Add structlog.stdlib.render_to_log_args_and_kwargs processor. Same as structlog.stdlib.render_to_log_kwargs, but also allows to pass positional arguments to logging. With it, you do not need to add structlog.stdlib.PositionalArgumentsFormatter processor to format positional arguments from structlog loggers. #​668

  • Native loggers now have is_enabled_for() and get_effective_level() methods that mirror the behavior of the standard library's logging.Logger.isEnabledFor() and logging.Logger.getEffectiveLevel(). #​689

Changed
  • structlog.typing.BindableLogger protocol now returns Self instead of BindableLogger. This adds a dependency on typing-extensions for Pythons older than 3.11. #​642 #​659

  • structlog.dev.ConsoleRenderer will quote string value with special characters. #​647

  • structlog.stdlib.recreate_defaults() now also adds structlog.stdlib.PositionalArgumentsFormatter. In default native mode, this is done by the loggers at the edge.

  • structlog.make_filtering_bound_logger() now also accepts a string for min_level.

Fixed
  • Fix handling calls to {logger}.exception() outside of exception blocks. Depending on the structlog configuration, this either resulted in an event dict key exception: "MISSING" or lead to an error. Now, an invalid or missing exc_info will just be ignored. This means, that calling {logger}.exception() outside of an exception block is basically the same as calling {logger}.error(). #​634 #​680

  • Instantiating structlog.dev.ConsoleRenderer does not mutate the passed styles dict anymore. #​669

  • The native FilteringBoundLogger.fatal() method now maps to the critical level, as it does in the standard library. Note that the level is discouraged to use there, so we recommend to stick to error() or critical(). #​677

  • structlog.tracebacks.ExceptionDictTransformer now actually accepts None for locals_max_length and locals_max_string. #​675


Configuration

📅 Schedule: Branch creation - Monday through Friday ( * * * * 1-5 ) in timezone Europe/London, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻️ Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Edited by uis-devops-renovatebot

Merge request reports

Loading