14
0
Files
python-structlog/python-structlog.spec

74 lines
2.3 KiB
RPMSpec
Raw Normal View History

#
# spec file for package python-structlog
#
- Update to 25.1.0: 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 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=26
2025-02-05 08:19:52 +00:00
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?sle15_python_module_pythons}
Name: python-structlog
- Update to 25.1.0: 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 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=26
2025-02-05 08:19:52 +00:00
Version: 25.1.0
Release: 0
Summary: Structured Logging for Python
License: Apache-2.0 OR MIT
Group: Development/Languages/Python
URL: http://www.structlog.org/en/stable/
Source: https://github.com/hynek/structlog/archive/%{version}.tar.gz
BuildRequires: %{python_module Twisted}
BuildRequires: %{python_module coverage}
Accepting request 958252 from home:jubalh:branches:devel:languages:python - Update to 21.5.0: * Added the structlog.processors.LogfmtRenderer processor to render log lines using the logfmt format. #376 * Added the structlog.stdlib.ExtraAdder processor that adds extra attributes of logging.LogRecord objects to the event dictionary. This processor can be used for adding data passed in the extra parameter of the logging module's log methods to the event dictionary. #209 #377 * Added the structlog.processor.CallsiteParameterAdder processor that adds parameters of the callsite that an event dictionary orginated from to the event dictionary. This processor can be used to enrich events dictionaries with information such as the function name, line number and filename that an event dictionary orignated from. #380 - Update to 21.4.0: * Fixed import when running in optimized mode (PYTHONOPTIMIZE=2 or python -OO). #373 * Added the structlog.threadlocal.bound_threadlocal and structlog.contextvars.bound_contextvars decorator/context managers to temporarily bind key/value pairs to a thread-local and context-local context. #371 - Update to 21.3.0: * structlog.dev.ConsoleRenderer now has sort_keys boolean parameter that allows to disable the sorting of keys on output. #358 * structlog.processors.TimeStamper now works well with FreezeGun even when it gets applied before the loggers are configured. #364 * structlog.stdlib.AsyncBoundLogger now determines the running loop when logging, not on instantiation. That has a minor performance impact, but makes it more robust when loops change OBS-URL: https://build.opensuse.org/request/show/958252 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=12
2022-03-02 10:26:39 +00:00
BuildRequires: %{python_module flit >= 2}
BuildRequires: %{python_module freezegun >= 0.2.8}
- update to 24.1.0: * The lazy logger proxy returned by `structlog.get_logger()` now returns its initial values when asked for context. * When asked for context before binding for the first time, it returned an empty dictionary in 23.3.0. * The displayed level name when using `structlog.stdlib.BoundLogger.exception()` is `"error"` instead of `"exception"`. * Don't ignore the `width` argument of `RichTracebackFormatter`. * Implementing the output on top of the new columns API has changed the default very slightly, but shouldn't be noticeable. * Async log methods (those starting with an `a`) now also support the collection of callsite information using `structlog.processors.CallsiteParameterAdder`. * `structlog.stdlib.recreate_defaults()` now also adds `structlog.stdlib.add_logger_name` to the processors. * The return value from `get_logger()` (a `BoundLoggerLazyProxy`) now passes `isinstance`-checks against `structlog.typing.BindableLogger` on Python 3.12. * `structlog.threadlocal.tmp_bind()` now also works with `BoundLoggerLazyProxy` (in other words: before anything is bound to a bound logger). * stdlib: `ProcessorFormatter` can now be told to not render the log record message using `getMessage` and just `str(record.msg)` instead. * stdlib: `structlog.stdlib.BoundLogger.exception()`'s handling of`LogRecord.exc_info` is now set consistent with `logging`. * Official support for Python 3.12. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=18
2024-01-14 15:13:14 +00:00
BuildRequires: %{python_module hatch-fancy-pypi-readme}
BuildRequires: %{python_module hatch_vcs}
Accepting request 958252 from home:jubalh:branches:devel:languages:python - Update to 21.5.0: * Added the structlog.processors.LogfmtRenderer processor to render log lines using the logfmt format. #376 * Added the structlog.stdlib.ExtraAdder processor that adds extra attributes of logging.LogRecord objects to the event dictionary. This processor can be used for adding data passed in the extra parameter of the logging module's log methods to the event dictionary. #209 #377 * Added the structlog.processor.CallsiteParameterAdder processor that adds parameters of the callsite that an event dictionary orginated from to the event dictionary. This processor can be used to enrich events dictionaries with information such as the function name, line number and filename that an event dictionary orignated from. #380 - Update to 21.4.0: * Fixed import when running in optimized mode (PYTHONOPTIMIZE=2 or python -OO). #373 * Added the structlog.threadlocal.bound_threadlocal and structlog.contextvars.bound_contextvars decorator/context managers to temporarily bind key/value pairs to a thread-local and context-local context. #371 - Update to 21.3.0: * structlog.dev.ConsoleRenderer now has sort_keys boolean parameter that allows to disable the sorting of keys on output. #358 * structlog.processors.TimeStamper now works well with FreezeGun even when it gets applied before the loggers are configured. #364 * structlog.stdlib.AsyncBoundLogger now determines the running loop when logging, not on instantiation. That has a minor performance impact, but makes it more robust when loops change OBS-URL: https://build.opensuse.org/request/show/958252 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=12
2022-03-02 10:26:39 +00:00
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pretend}
BuildRequires: %{python_module pytest >= 3.3.0}
BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module python-rapidjson}
BuildRequires: %{python_module simplejson}
- update to 24.1.0: * The lazy logger proxy returned by `structlog.get_logger()` now returns its initial values when asked for context. * When asked for context before binding for the first time, it returned an empty dictionary in 23.3.0. * The displayed level name when using `structlog.stdlib.BoundLogger.exception()` is `"error"` instead of `"exception"`. * Don't ignore the `width` argument of `RichTracebackFormatter`. * Implementing the output on top of the new columns API has changed the default very slightly, but shouldn't be noticeable. * Async log methods (those starting with an `a`) now also support the collection of callsite information using `structlog.processors.CallsiteParameterAdder`. * `structlog.stdlib.recreate_defaults()` now also adds `structlog.stdlib.add_logger_name` to the processors. * The return value from `get_logger()` (a `BoundLoggerLazyProxy`) now passes `isinstance`-checks against `structlog.typing.BindableLogger` on Python 3.12. * `structlog.threadlocal.tmp_bind()` now also works with `BoundLoggerLazyProxy` (in other words: before anything is bound to a bound logger). * stdlib: `ProcessorFormatter` can now be told to not render the log record message using `getMessage` and just `str(record.msg)` instead. * stdlib: `structlog.stdlib.BoundLogger.exception()`'s handling of`LogRecord.exc_info` is now set consistent with `logging`. * Official support for Python 3.12. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=18
2024-01-14 15:13:14 +00:00
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildArch: noarch
%python_subpackages
%description
structlog makes logging in Python less painful and more powerful by adding
structure to your log entries.
Its up to you whether you want structlog to take care about the output of your
log entries or whether you prefer to forward them to an existing logging system
like the standard librarys logging module.
%prep
%setup -q -n structlog-%{version}
%build
Accepting request 958252 from home:jubalh:branches:devel:languages:python - Update to 21.5.0: * Added the structlog.processors.LogfmtRenderer processor to render log lines using the logfmt format. #376 * Added the structlog.stdlib.ExtraAdder processor that adds extra attributes of logging.LogRecord objects to the event dictionary. This processor can be used for adding data passed in the extra parameter of the logging module's log methods to the event dictionary. #209 #377 * Added the structlog.processor.CallsiteParameterAdder processor that adds parameters of the callsite that an event dictionary orginated from to the event dictionary. This processor can be used to enrich events dictionaries with information such as the function name, line number and filename that an event dictionary orignated from. #380 - Update to 21.4.0: * Fixed import when running in optimized mode (PYTHONOPTIMIZE=2 or python -OO). #373 * Added the structlog.threadlocal.bound_threadlocal and structlog.contextvars.bound_contextvars decorator/context managers to temporarily bind key/value pairs to a thread-local and context-local context. #371 - Update to 21.3.0: * structlog.dev.ConsoleRenderer now has sort_keys boolean parameter that allows to disable the sorting of keys on output. #358 * structlog.processors.TimeStamper now works well with FreezeGun even when it gets applied before the loggers are configured. #364 * structlog.stdlib.AsyncBoundLogger now determines the running loop when logging, not on instantiation. That has a minor performance impact, but makes it more robust when loops change OBS-URL: https://build.opensuse.org/request/show/958252 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=12
2022-03-02 10:26:39 +00:00
%pyproject_wheel
%install
Accepting request 958252 from home:jubalh:branches:devel:languages:python - Update to 21.5.0: * Added the structlog.processors.LogfmtRenderer processor to render log lines using the logfmt format. #376 * Added the structlog.stdlib.ExtraAdder processor that adds extra attributes of logging.LogRecord objects to the event dictionary. This processor can be used for adding data passed in the extra parameter of the logging module's log methods to the event dictionary. #209 #377 * Added the structlog.processor.CallsiteParameterAdder processor that adds parameters of the callsite that an event dictionary orginated from to the event dictionary. This processor can be used to enrich events dictionaries with information such as the function name, line number and filename that an event dictionary orignated from. #380 - Update to 21.4.0: * Fixed import when running in optimized mode (PYTHONOPTIMIZE=2 or python -OO). #373 * Added the structlog.threadlocal.bound_threadlocal and structlog.contextvars.bound_contextvars decorator/context managers to temporarily bind key/value pairs to a thread-local and context-local context. #371 - Update to 21.3.0: * structlog.dev.ConsoleRenderer now has sort_keys boolean parameter that allows to disable the sorting of keys on output. #358 * structlog.processors.TimeStamper now works well with FreezeGun even when it gets applied before the loggers are configured. #364 * structlog.stdlib.AsyncBoundLogger now determines the running loop when logging, not on instantiation. That has a minor performance impact, but makes it more robust when loops change OBS-URL: https://build.opensuse.org/request/show/958252 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-structlog?expand=0&rev=12
2022-03-02 10:26:39 +00:00
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%pytest
%files %{python_files}
%doc CHANGE* README*
%license LICENSE*
%{python_sitelib}/structlog
%{python_sitelib}/structlog*-info
%changelog