0.031 2020-03-04 Released-By: PERLANCAR; Urgency: medium - Allow each routine to have its own init args; this allows e.g. creating multiple sets of logger subroutines that log to different categories, as implemented in Log::ger::Plugin::Multisets. - Silence 'Redundant argument in sprintf' warning. - [doc] Tweak to make module name and version clearer [GH #2]. 0.030 2020-02-18 Released-By: PERLANCAR; Urgency: low - No functional changes. - [doc] Tweak Synopsis, at least show how to set level & pick multiple outputs. 0.029 2020-02-18 Released-By: PERLANCAR; Urgency: low - No functional changes. - [dist] Mark default formatter block using # BEGIN_BLOCK .. # END_BLOCK so it can be extracted by Dist::Zilla plugin [InsertBlock::FromModule]. 0.028 2019-05-06 Released-By: PERLANCAR - Use Data::Dumper's Useqq=1 to show unprintable characters. 0.027 2019-04-13 Released-By: PERLANCAR - Fix startup overhead regression by avoiding to load Sub::Name & name routines if we don't have any outputs. 0.026 2019-04-12 Released-By: PERLANCAR - UPDATE 2019-04-13: This version has startup overhead regression. You might want to update to 0.027. - Name the generated routines with Sub::Name if available. - Remove declaration of unneeded variable $Caller_Depth_Offset. 0.025 2018-12-20 Released-By: PERLANCAR - No functional changes. - [doc] Mention Debug::Print. - [doc] Also mention speed relative to Log::Contextual. 0.024 2018-12-20 Released-By: PERLANCAR - No functional changes. - [doc] Mention that Log::ger is ~100x faster than Log::Dispatch. 0.023 2017-08-03 Released-By: PERLANCAR - [Internal] Change the numeric values of level, to accomodate more room for custom levels. - Defer set default null routines so other module can customize levels. 0.022 2017-08-03 Released-By: PERLANCAR - [Bugfix] Fix stupid copy-paste mistake [RT#122687]. - [doc] Fix copy-paste mistake [RT#122689]. 0.021 2017-08-02 Released-By: PERLANCAR - [Bugfix] Output, Layout: set() now properly replaces hooks from previous output/layout plugin (need to remove from all phases). - Add output for testing: ArrayML. 0.020 2017-07-30 Released-By: PERLANCAR - [ux] Enable $Data::Dmp::OPT_REMOVE_PRAGMAS. 0.019 2017-07-14 Released-By: PERLANCAR - [Bugfix] Forgot to create preconstructed default null-loggers for object target. 0.018 2017-07-14 Released-By: PERLANCAR - 'use Log::ger::Format "Foo"' now sets for current package instead of globally (but the other plugins like Log::ger::Output or Log::ger::Layout still defaults to setting globally). 0.017 2017-07-13 Released-By: PERLANCAR - No functional changes. - [doc] Update some benchmark numbers. 0.016 2017-07-13 Released-By: PERLANCAR - Reduce startup overhead by splitting some parts of Log::ger to Log::ger::Heavy. When user loads modules that have 'use Log::ger', but never adds any outputs (which is a pretty common case when user just uses a module without setting up any logging), then we can cheat by skipping init_target() and just installs the null, default-named logging routines. So we split the part that does real init_target() to Log::ger::Heavy, similar to how Carp & Carp::Heavy was split. This reduces startup overhead significantly. When user loads Log::ger::Util (e.g. to run set_plugin()) or when some hooks are added, then we load Log::ger::Heavy. 0.015 2017-07-12 Released-By: PERLANCAR - [Bugfix] Used the wrong key to get per-object hooks. 0.014 2017-07-11 Released-By: PERLANCAR - Pass 'formatters' and 'layouter' arguments to before_install_routines hook. 0.013 2017-07-11 Released-By: PERLANCAR - Allow multiple formatters. 0.012 2017-07-02 Released-By: PERLANCAR - [optimize] init_target: Reuse multilevel log routine from hook for log routines of all levels. - [Bugfix] Fix string level passed to layouter when logger is a multilevel logger. 0.011 2017-06-30 Released-By: PERLANCAR - [Incompatible change] In hook argument "routines", change $flags to $type to be more general. The value can be 'log_sub', 'log_method', 'logml_sub', 'logml_method', 'is_sub', 'is_method'. - Support multilevel log statement log($level, ...) by using LGP:MultilevelLog (included in core distribution). - [Internal] Introduce phase 'create_logml_routine'. - [Test] Add test for LG:Format::None. - [Bugfix] reinit_target() didn't find the correct hash key. 0.010 2017-06-28 Released-By: PERLANCAR - [Bugfix] Don't install log methods to package (vice versa, don't install log subroutines to object package). - [doc] Remove mention of filter. 0.009 2017-06-28 Released-By: PERLANCAR - Remove Log::ger::Filter and 'create_filter' phase because they are unused. - Add Layout. - Add formatter: None. 0.008 2017-06-26 Released-By: PERLANCAR - Util: Add string_level(). 0.007 2017-06-25 Released-By: PERLANCAR - Add custom level test. - Add output: Array. 0.006 2017-06-24 Released-By: PERLANCAR - [Bugfix] Use the correct package when initializing object. 0.005 2017-06-23 Released-By: PERLANCAR - [Incompatible change] Another round of internal refactoring and interface changes. New: Log::ger::{Plugin,Format,Filter}. Every plugin (including filter, format, output) can be set on a per-target basis or globally. The term 'hooks' is in again. Add 'create_routine_names' phase. Remove 'after_create_log_routine', 'after_create_log_is_routine'. Move FAQ & internals doc to Log-ger-Manual dist. 0.004 2017-06-21 Released-By: PERLANCAR - [Bugfix] Log::ger::Output didn't have VERSION. 0.003 2017-06-21 Released-By: PERLANCAR - Split Log::ger::Output::Screen to its own dist so this dist can be more minimalist and that module can be tested e.g. with Capture::Tiny etc. - String output: add option append_newline to allow disable appending newline. - import(): No need to turn category 'Foo::Bar' -> 'foo.bar'. - [doc] Update module name Log::ger::LogAny -> Log::ger::Output::LogAny. 0.002 2017-06-21 Released-By: PERLANCAR - [Incompatible change] Reorganize internals & fix a couple of doc typos. - Add outputs: Null, String (mainly for testing). - Formatter: format undef as '' like in Log::Any. - Screen output: Add hooks for Progress::Any::Output::TermProgressBarColor, like in Log::Any::Adapter::Screen. - Add some tests. 0.001 2017-06-19 Released-By: PERLANCAR - First release.