| CARVIEW |
Select Language
HTTP/2 200
expires: Thu, 19 Nov 1981 08:52:00 GMT
cache-control: no-store, no-cache, must-revalidate
pragma: no-cache
set-cookie: PHPSESSID=fvvktmfiublm19flvfb3jbc15a; path=/
content-type: text/html; charset=UTF-8
date: Sat, 27 Dec 2025 05:33:41 GMT
server: Apache
pkgsrc.se | The NetBSD package collection
archivers
audio
benchmarks
biology
cad
chat
comms
converters
cross
crosspkgtools
databases
devel
doc
editors
emulators
filesystems
finance
fonts
games
geography
graphics
ham
inputmethod
lang
mail
math
mbone
meta-pkgs
misc
multimedia
net
news
parallel
pkgtools
print
regress
security
shells
sysutils
py-struc..
textproc
time
wip
wm
www
x11
* = Virtual Category
Path to this page:
./sysutils/py-structlog, Painless structural logging
[
Branch: CURRENT, Version: 25.5.0, Package name: py313-structlog-25.5.0, Maintainer: pkgsrc-users
structlog makes structured logging in Python easy by augmenting your existing
logger. It allows you to split your log entries up into key/value pairs and
build them incrementally without annoying boilerplate code.
Required to run:
[devel/py-setuptools] [lang/py-six] [lang/python37]
Required to build:
[pkgtools/cwrappers]
Navigation:
-
Browse pkgsrc
(this page)
archivers
audio
benchmarks
biology
cad
chat
comms
converters
cross
crosspkgtools
databases
devel
doc
editors
emulators
filesystems
finance
fonts
games
geography
graphics
ham
inputmethod
lang
math
mbone
meta-pkgs
misc
multimedia
net
news
parallel
pkgtools
regress
security
shells
sysutils
py-struc..textproc
time
wip
wm
www
x11
* = Virtual Category
Path to this page:
./sysutils/py-structlog, Painless structural logging
[
CVSweb ] [
Homepage ] [
RSS ] [
Required by ] [
Add to tracker ]
Branch: CURRENT, Version: 25.5.0, Package name: py313-structlog-25.5.0, Maintainer: pkgsrc-users
structlog makes structured logging in Python easy by augmenting your existing
logger. It allows you to split your log entries up into key/value pairs and
build them incrementally without annoying boilerplate code.
Required to run:
[devel/py-setuptools] [lang/py-six] [lang/python37]
Required to build:
[pkgtools/cwrappers]
Master sites:
Filesize: 1426.592 KBVersion history: (Expand)
- (2025-10-30) Updated to version: py313-structlog-25.5.0
- (2025-10-24) Package has been reborn
- (2025-10-24) Updated to version: py313-structlog-25.4.0
- (2025-10-24) Package deleted from pkgsrc
- (2025-08-16) Updated to version: py312-structlog-25.4.0
- (2025-07-15) Package has been reborn
CVS history: (Expand)
| 2025-10-30 16:23:21 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-structlog: updated to 25.5.0
25.5.0
Deprecated
- `structlog.dev.ConsoleRenderer()`'s *pad_event* argument has been renamed to \
*pad_event_to* to differentiate it from the boolean *pad_level* argument.
*pad_event* is now deprecated.
Added
- Added `structlog.dev.ConsoleRenderer.get_active()` that returns the currently \
active `structlog.dev.ConsoleRenderer()`.
- `structlog.dev.ConsoleRenderer()` now supports setting the \
`exception_formatter` attribute.
You can now disable the pretty-printing of exceptions by setting it to \
`structlog.dev.plain_traceback`:
```python
cr = structlog.dev.ConsoleRenderer.get_active()
cr.exception_formatter = structlog.dev.plain_traceback
```
Same goes for *sort_keys*, *columns*, *colors*, *force_colors*, \
*level_styles*, *pad_event_to*, *event_key*, *timestamp_key*, and \
*repr_native_str*.
- Added `structlog.dev.ConsoleRenderer.get_default_column_styles()` for reuse \
the default column styles.
- `structlog.testing.capture_logs()` now optionally accepts *processors* to \
apply before capture.
- `structlog.dev.RichTracebackFormatter` now exposes the upstream *code_width* \
parameter.
Default *width* is now `None` for full terminal width.
Full terminal width is now handled by Rich itself, bringing support for reflow \
and `COLUMN` environment variable.
Passing `-1` for *width* is now deprecated and automatically replaced by `None`.
- Native loggers now allow the passing of a dictionary for dictionary-based \
interpolation `log.info("hello %(name)s!", {"name": \
"world"})`.
- On Python 3.11+, `structlog.processors.CallsiteParameterAdder` now supports \
`CallsiteParameter.QUAL_NAME` that adds the qualified name of the callsite, \
including scope and class names.
This is only available for *structlog*-originated events since the standard \
library has no equivalent.
- `structlog.stdlib.LoggerFactory` now supports the *stacklevel* parameter.
Changed
- `structlog.dev.rich_traceback()` now throws a more helpful error when Rich is \
missing.
Fixed
- `structlog.processors.MaybeTimeStamper` now respects the *key* argument when \
determining whether to overwrite the timestamp field.
- `structlog.tracebacks.extract()` no longer raises a `RecursionError` when the \
cause chain of an exception contains itself.
- Default config now respects `FORCE_COLOR` on Windows.
|
| 2025-08-16 09:04:57 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message: py-structlog: updated to 25.4.0 25.4.0 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()`. - `structlog.tracebacks` now handles [exception \ groups](https://docs.python.org/3/library/exceptions.html#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. Fixed - `structlog.processors.ExceptionPrettyPrinter` now respects the \ *exception_formatter* arguments instead of always using the default formatter. |
| 2025-05-10 13:14:32 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message: py-structlog: updated to 25.3.0 25.3.0 Fixed - `structlog.processors.TimeStamper` now again uses timestamps using UTC for \ custom format strings when `utc=True`. |
| 2025-03-12 07:04:36 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message: py-structlog: updated to 25.2.0 25.2.0 Added - `structlog.tracebacks.Stack` now includes an `exc_notes` field reflecting the \ notes attached to the exception. Changed - `structlog.stdlib.BoundLogger`'s binding-related methods now also return `Self`. - `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. Fixed - Expose `structlog.dev.RichTracebackFormatter` for imports. - Expose `structlog.processors.LogfmtRenderer` for imports. |
| 2025-01-29 22:38:08 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message:
py-structlog: updated to 25.1.0
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.
- 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()`.
Changed
- `structlog.typing.BindableLogger` protocol now returns `Self` instead of \
`BindableLogger`.
This adds a dependency on \
[*typing-extensions*](https://pypi.org/project/typing-extensions/) for Pythons \
older than 3.11.
- `structlog.dev.ConsoleRenderer` will quote string value with special characters.
- `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()`.
- Instantiating `structlog.dev.ConsoleRenderer` does not mutate the passed \
*styles* dict anymore.
- 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()`.
- `structlog.tracebacks.ExceptionDictTransformer` now actually accepts `None` \
for `locals_max_length` and `locals_max_string`.
|
| 2024-08-09 20:59:31 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message: py-structlog: updated to 24.4.0 24.4.0 Changed No code changes since 24.3.0 24.3.0 Added - Restore feature parity between `structlog.traceback.ExceptionDictTransformer` \ and Rich's traceback extractor: - When displaying locals, use Rich for formatting if it is available. - When displaying locals, call `repr()` on strings, too (improves handling of \ `SecretStr` implementations). - Add `locals_max_length` config option - Add `locals_hide_sunder` config option - Add `locals_hide_dunder` config option - Add `suppress` config option |
| 2024-06-07 22:59:35 by Adam Ciarcinski | Files touched by this commit (2) | |
Log message: py-structlog: updated to 24.2.0 24.2.0 Added - It is now possible to disable log level-padding in \ `structlog.dev.LogLevelColumnFormatter` and `structlog.dev.ConsoleRenderer`. - The `structlog.processors.CallsiteParameterAdder` can now be pickled. - `structlog.processors.CallsiteParameterAdder` now also works with \ `structlog.stdlib.BoundLogger`'s non-standard async methods (`ainfo()`, and so \ forth) Changed - `structlog.processors.LogfmtRenderer` now escapes newlines. - `structlog.processors.LogfmtRenderer` now escapes backslashes and double quotes. - `structlog.processors.CallsiteParameterAdder` has been optimized to be about \ 2x faster. Fixed - `structlog.stdlib.render_to_log_kwargs` now correctly passes stacklevel as a \ kwarg to stdlib logging. |
| 2024-01-08 20:56:14 by Adam Ciarcinski | Files touched by this commit (3) | |
Log message: py-structlog: updated to 24.1.0 24.1.0 Fixed - 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"`. Fixes regression in 23.3.0. - Don't ignore the `width` argument of `RichTracebackFormatter`. 23.3.0 Added - The colorful development logger is now even more configurable! Choose freely your colors and the order of the key-value pairs! Implement your own formatters for certain keys! 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`. Changed - `structlog.stdlib.recreate_defaults()` now also adds \ `structlog.stdlib.add_logger_name` to the processors. Check out the [updated \ screenshot](https://raw.githubusercontent.com/hynek/structlog/main/docs/_static/console_renderer.png)! Fixed - 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`. |
