Revision history for Log-Dispatchouli 3.101 2026-04-13 13:31:24-04:00 America/New_York - fix auto-using of Log::Fmt::XS, which was straight up broken 3.100 2026-04-01 10:35:56-04:00 America/New_York - when present, use Log::Fmt::XS for emitting logfmt - abstract out logfmt tests for use in both Log::Fmt and Log::Fmt::XS test suites (but don't consider this public yet) 3.013 2025-10-15 10:12:50-04:00 America/New_York - typo fixes and spec clarifications 3.012 2025-10-14 12:39:48-04:00 America/New_York - [ BREAKING CHANGE (BARELY) ] Log::Fmt now includes a formal specification of the logfmt grammar we implement, as well as a description of algorithmns to correctly encode strings. The code has been updated to fall in line, meaning: - tabs now become \t - control and vertical space characters are now encoded as \x{...} of their UTF-8-encoded form, not their Unicode codepoint value - the "\" character now triggers double-quoting 3.011 2025-07-28 11:43:33-04:00 America/New_York - [ BREAKING CHANGE ] This release converts all Logger methods to signatured-subs. This should not really break anything, unless methods are being called erroneously, as strict arity checking will now notice the wrong number of args. 3.010 2025-07-16 09:04:21-04:00 America/New_York - add flog_messages and fmt_event, which return formatted strings without logging them 3.009 2025-01-07 21:22:25-05:00 America/New_York - added documentation of the enable_stdout and enable_stderr methods, added in 2.018 3.008 2024-11-02 16:59:01+00:00 Europe/London - log_pid can now be a comma-delimited list of outputs, which is most likely useful for setting log_pid to "syslog" only - mark "to_file" for removal, probably in Nov 2025 3.007 2023-09-02 20:18:04-04:00 America/New_York - add the is_X methods to Proxy as they were on the root logger (thanks, Charlie Garrison) - in Log::Fmt tests, cope with the slightly different output of JSON::PP versus the XS implementations 3.006 2023-08-11 10:58:09-04:00 America/New_York - fix a bug in Log::Fmt where an event data value that was a reference to a reference to an array was logged as its 0th element, not a flogged array reference 3.005 2023-06-08 20:41:02-04:00 America/New_York - add parse_event_string_as_hash, which loses duplicate k/v pairs but makes life a little easier 3.004 2023-06-05 21:26:03-04:00 America/New_York - optimization to parsing of quoted strings (thanks, Rob Mueller) 3.003 2023-06-05 08:10:52-04:00 America/New_York - Log::Fmt will now flog ref-refs, meaning you can easily log JSON as log event values 3.002 2022-12-06 09:49:34-05:00 America/New_York - restore v5.20 compatibility by turning on "postderef" feature explicitly 3.001 2022-12-01 11:55:43-05:00 America/New_York - no changes, just stable 3.000 2022-11-03 21:29:21-04:00 America/New_York (TRIAL RELEASE) - Log::Dispatchouli now requires v5.20, for pair slices - structured event logging with ->log_event -- read the docs, and Log::Fmt 2.023 2021-06-18 21:52:17-04:00 America/New_York - update author contact info - add perl-support section 2.022 2020-08-24 13:50:15-04:00 America/New_York - don't duplicate pid in syslog! 2.021 2020-08-12 11:48:57-04:00 America/New_York - add another experimental means to replace how Syslog output is set up 2.020 2020-02-06 13:45:44-05:00 America/New_York (TRIAL RELEASE) - add stdio_dispatcher_class, so you can subclass the Screen dispatcher for stderr and stdio; this is experimental! 2.019 2019-07-27 16:13:30-04:00 America/New_York - fix an initialization ordering bug for loggers using stdio 2.018 2019-07-26 18:36:56-04:00 America/New_York - add enable_stdout and enable_stderr to, uh, enable stdout and enable stderr (after initial construction) 2.017 2019-03-12 21:10:26-04:00 America/New_York - syslog_socket can now be supplied to replace the native socket for Sys::Syslog (thanks, Jon Stuart!) 2.016 2018-02-21 12:47:46-05:00 America/New_York - the Proxy logger now respects the same overloading as the root logger - muted works as a constructor argument (thanks, Dan Book) 2.015 2016-10-17 15:42:54-04:00 America/New_York - Log::Dispatchouli subclass can now provide its own proxy_class method to use something other than Log::Dispatchouli::Proxy 2.014 2016-10-14 18:28:36-04:00 America/New_York - non-trial release of v2.013 2.013 2016-07-30 16:34:57-04:00 America/New_York (TRIAL RELEASE) - minor optimizations to callbacks (thanks, Olivier Mengué) 2.012 2014-11-30 08:49:01-05:00 America/New_York avoid a newly-introduced warning on older perls (thanks, Christopher J. Madsen) 2.011 2014-11-29 08:50:45-05:00 America/New_York some optimizations in timestamp and pid logging (thanks, Olivier Mengué) 2.010 2014-07-28 22:24:23-04:00 America/New_York add the file_format option (thanks, Randy Stauner) 2.009 2014-01-11 14:14:11-05:00 America/New_York load the Proxy class earlier, to get it loaded prefork 2.008 2013-09-26 20:39:11 America/New_York fix test for JSON::PP, which doesn't always follow orders about spaces! (thanks, Dagfinn Ilmari Mannsåker!) 2.007 2013-09-25 22:12:22 America/New_York doc fixes and tests (thanks George Hartzell and Randy Stauner) 2.006 2013-04-05 15:02:05 America/New_York put the ->info, ->fatal, ->debug methods on proxies, too (thanks George Hartzell) 2.005 2011-04-07 23:16:40 America/New_York add log_file and log_path options 2.004 2011-01-21 15:52:41 America/New_York BUG FIX: it is okay to replace the default logger, always 2.003 2011-01-21 13:14:43 America/New_York add config_id to allow faking Global equality when testing 2.002 2011-01-14 17:51:16 America/New_York add env_value and env_prefix methods 2.001 2011-01-13 12:45:05 America/New_York greatly expanded tests and documentation for L::D::Global L::D now has "string_flogger" method to provide an alternate flogger 2.000 2010-11-23 18:48:53 America/New_York 1.102350 2010-08-23 08:55:17 America/New_York fix a bug in generating tempdirs for file logging (thanks, Sawyer X) 1.102220 2010-08-10 11:09:30 America/New_York added logger muting (mute, unmute, clear_muted, etc.) new_tester turns off log_pid by default internal simplification of Proxy 1.100712 2010-03-12 21:43:13 America/New_York add the quiet_fatal argument to suppress apparent double-logging to standard output and error streams 1.100711 2010-03-12 18:11:41 America/New_York 1.100710 2010-03-12 09:51:32 America/New_York add the Log::Dispatchouli::Proxy system get_prefix now always returns a scalar (undef, not ()) 1.100691 2010-03-10 17:10:53 America/New_York just like 1.100690, but passes its own tests! 1.100690 2010-03-10 14:24:59 America/New_York remove obsolete "list_name" alias to prefix object-level prefix no longer automatically ends in ": " 1.100681 2010-03-09 23:02:11 America/New_York rerelease with a tarball that isn't totally insane 1.100680 2010-03-09 22:47:23 America/New_York rewrite all log_ methods in terms of ->log ->log now includes the code formerly in the internal ->_log_at add a new per-message prefix system old-style prefix (to be removed) now handle multi-line messages * new prefix system is not yet documented, pending experimentation 1.100670 2010-03-08 19:15:30 America/New_York make env vars in code match env vars in docs 1.100660 2010-03-07 22:00:58 America/New_York add clear_events method loggers made with new_tester log to_self 1.100630 2010-03-04 18:41:13 America/New_York some more docs switch to Dist::Zilla for dist maintenance declare some previously missing prereqs 1.008 2010-02-22 ->fatal now redispatches to ->log_fatal 1.007 2010-02-22 ** THIS BREAKS BACKCOMPAT IN A TINY WAY ** ->debug now means ->log_debug ->is_debug and ->set_debug replace the old ->debug ->log_info is replaced by ->info 1.006 2010-02-21 add is_debug, is_info, is_fatal log_fatal logs as 'error' level change the way the undocumented "prefix" system works 1.005 2010-02-12 make Makefile.PL prereq match actual required versions 1.004 2010-02-10 allow multiple arguments to ->log and friends allow user to disable logging of pid 1.003 2009-01-15 relax a test that was complaining for no good reason