0.028   2019-05-06 (PERLANCAR)

	- Use Data::Dumper's Useqq=1 to avoid Data::Dumper bug in not
	  showing \034.

0.027   2019-04-13 (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 (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 (PERLANCAR)

	- No functional changes.

	- [doc] Mention Debug::Print.

	- [doc] Also mention speed relative to Log::Contextual.

0.024   2018-12-20 (PERLANCAR)

	- No functional changes.

	- [doc] Mention that Log::ger is ~100x faster than Log::Dispatch.

0.023   2017-08-03 (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

0.022   2017-08-03 (PERLANCAR)

	- [Bugfix] Fix stupid copy-paste mistake [RT#122687].

	- [doc] Fix copy-paste mistake [RT#122689].

0.021   2017-08-02 (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 (PERLANCAR)

	- [ux] Enable $Data::Dmp::OPT_REMOVE_PRAGMAS.

0.019   2017-07-14 (PERLANCAR)

	- [Bugfix] Forgot to create preconstructed default null-loggers for
	  object target.

0.018   2017-07-14 (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 (PERLANCAR)

        - No functional changes.

        - [doc] Update some benchmark numbers.

0.016   2017-07-13 (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

0.015   2017-07-12 (PERLANCAR)

	- [Bugfix] Used the wrong key to get per-object hooks.

0.014   2017-07-11 (PERLANCAR)

	- Pass 'formatters' and 'layouter' arguments to
	  before_install_routines hook.

0.013   2017-07-11 (PERLANCAR)

	- Allow multiple formatters.

0.012   2017-07-02 (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 (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 (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 (PERLANCAR)

        - Remove Log::ger::Filter and 'create_filter' phase because they are

        - Add Layout.

        - Add formatter: None.

0.008   2017-06-26 (PERLANCAR)

	- Util: Add string_level().

0.007   2017-06-25 (PERLANCAR)

	- Add custom level test.

	- Add output: Array.

0.006   2017-06-24 (PERLANCAR)

	- [Bugfix] Use the correct package when initializing object.

0.005   2017-06-23 (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 (PERLANCAR)

	- [Bugfix] Log::ger::Output didn't have VERSION.

0.003   2017-06-21 (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

	- 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 (PERLANCAR)

        - [Incompatible change] Reorganize internals & fix a couple of doc

        - Add outputs: Null, String (mainly for testing).

        - Formatter: format undef as '<undef>' like in Log::Any.

        - Screen output: Add hooks for
          Progress::Any::Output::TermProgressBarColor, like in

        - Add some tests.

0.001   2017-06-19 (PERLANCAR)

        - First release.