From ea225e23406b56fe4f3f491435766d779ff435b3 Mon Sep 17 00:00:00 2001 From: Sean Whalen Date: Sat, 21 Mar 2026 11:44:47 -0400 Subject: [PATCH] Refactor changelog entries for clarity and consistency in configuration reload section --- .vscode/settings.json | 1 + CHANGELOG.md | 26 ++++++++------------------ 2 files changed, 9 insertions(+), 18 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index 366dc9f..f1f9dfc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -90,6 +90,7 @@ "mitigations", "MMDB", "modindex", + "msconfig", "msgconvert", "msgraph", "MSSP", diff --git a/CHANGELOG.md b/CHANGELOG.md index 6cb5530..ef4648b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,24 +4,14 @@ ### Added -- SIGHUP-based configuration reload for watch mode — update output - destinations, DNS/GeoIP settings, processing flags, and log level - without restarting the service or interrupting in-progress report - processing. Use `systemctl reload parsedmarc` when running under - systemd. On a successful reload, old output clients are closed and - recreated. On a failed reload, the previous configuration remains - fully active. -- `close()` methods on GelfClient, KafkaClient, SyslogClient, - WebhookClient, HECClient, and S3Client for clean resource teardown - on reload. -- `should_reload` parameter on all `MailboxConnection.watch()` - implementations and `watch_inbox()` to ensure SIGHUP never triggers - a new email batch mid-reload. -- Elasticsearch and OpenSearch connections are now tracked and cleaned - up on reload via `_close_output_clients()`. -- Extracted `_parse_config_file()` and `_init_output_clients()` from - `_main()` in `cli.py` to support config reload and reduce code - duplication. +- SIGHUP-based configuration reload for watch mode — update output destinations, DNS/GeoIP settings, processing flags, and log level without restarting the service or interrupting in-progress report processing. + - Use `systemctl reload parsedmarc` when running under `systemd`. + - On a successful reload, old output clients are closed and recreated. + - On a failed reload, the previous configuration remains fully active. +- `close()` methods on `GelfClient`, `KafkaClient`, `SyslogClient`, `WebhookClient`, HECClient, and `S3Client` for clean resource teardown on reload. +- `should_reload` parameter on all `MailboxConnection.watch()` implementations and `watch_inbox()` to ensure SIGHUP never triggers a new email batch mid-reload. +- Elasticsearch and OpenSearch connections are now tracked and cleaned up on reload via `_close_output_clients()`. +- Extracted `_parse_config_file()` and `_init_output_clients()` from `_main()` in `cli.py` to support config reload and reduce code duplication. ## 9.2.1