fix: tiered rotate='size' actually rotates and tiers (logsetup-1, logsetup-4)
tiered size mode was broken two ways: (1) stdlib RotatingFileHandler's numbered .1/.2 shift can't manage files redirected into log_dir, so every roll overwrote slot 1 -> ~99% of history silently lost; (2) doRollover is gated on backupCount>0, so backup_count=0 (which the docstring says is ignored in tiered mode) meant NO rotation + unbounded live file. fix: tiered size now uses a timestamped per-roll namer (make_size_namer) like daily/on_start so retier manages the pile, and forces a nonzero internal backupCount so the roll always fires (retier bounds retention, not backupCount). non-tiered size unchanged. verified: tiered size rotates + bounds to tier total (was stuck at 1); backup_count=0 rotates + live file bounded (was unbounded); legacy size back-compat intact; v0.4.0/v0.4.1 suites still pass. bump v0.4.1 -> v0.4.2 Signed-off-by: disqualifier <dev@disqualifier.me>
This commit is contained in:
+1
-1
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
||||
|
||||
[project]
|
||||
name = "log_setup"
|
||||
version = "0.4.1"
|
||||
version = "0.4.2"
|
||||
description = "stdlib app-entry-point logging setup: live run.log, rotation, gzip, retention, consistent format"
|
||||
requires-python = ">=3.10"
|
||||
dependencies = []
|
||||
|
||||
Reference in New Issue
Block a user