You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
8
8
## [Unreleased]
9
9
10
-
## [0.2.2] - 2026-03-
10
+
## [0.2.2] - 2026-03-17
11
11
12
12
### Added
13
13
-`LOG_LEVEL_DEBUG`, `LOG_LEVEL_INFO`, `LOG_LEVEL_WARNING`, `LOG_LEVEL_ERROR`, and `LOG_LEVEL_CRITICAL` named constants exported from the top-level package, replacing bare integer literals throughout the API.
@@ -17,7 +17,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
17
17
### Changed
18
18
-`shutdown_async_logging` is now registered with `atexit` so buffered async messages are flushed when the interpreter exits rather than being silently dropped.
19
19
-`shutdown_async_logging()` now drains the queue via a `None` sentinel and waits for the background worker to finish before returning, ensuring pending messages are processed.
20
-
-`AsyncLogger.flush()` and `AsyncLogger.close()`docstrings clarified to accurately describe the best-effort, timing-based nature of the operation.
20
+
-`AsyncLogger.flush()` and `AsyncLogger.close()`now use a deterministic synchronization barrier (`_FlushSignal`) so callers block until all preceding messages are fully written, replacing the previous timing-based best-effort approach.
21
21
- Removed legacy root-level `__init__.py` that shadowed the `kakashi/` package in editable installs.
22
22
- Removed `setup.py`; `pyproject.toml` is now the single canonical build configuration.
0 commit comments