Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Release Log

Version 0.6.0 * - 2025-08-27


Important Notes:

  • Removed

    impl Handler{
        fn new(){...}
        fn create(name){...}
    }
  • Removed

    Logger::reset_level()

Both of the above APIs are redundant. So removing them now, before v1.0.0 is released, is best.

  • Added a new method to HandlerTrait - set_test_mode(). This will require updating of any custom handlers.

Great News

Initial release of the online instructional guide: The FLogging Guide.


Added new methods to LoggerBuilder:

  • remove_file()
    • Use to remove a log file before adding a file handler. This is a way of resetting the log file prior to each test run.
  • add_pconsole_handler() and add_pconsole_handler_with()
    • Use to add a production version of the console handler. This handler is different, in that log entries set to LeveL::INFO, will have their msg printed to stdout without any formatting, whilst all other Levels will be printed to stderr using the set formatter.
  • set_fn_name()
    • Set the current function/method name. Only required when using the method form of operation instead of the macro form.

Added new method to Logger - pconsole_logger(). Added new associative function to Logger - remove_file().

To facilitate the pconcole_handlers, a new enum ConsoleType has been added.

Extensive work done on improving both unit and integration tests.

Version 0.5.0 * - 2025-08-03

Details (click to see)

Important Note:

Only applicable for those who have previously created their own custom formatter - FormatType::Custom(String) changed to FormatType::Custom.


Now generally, there were some improvements to the API documentation.

Version 0.4.1 * - 2025-07-29

Details (click to see)
  • Major improvements to the API documentation.
  • Increased test coverage to 100%, and included the Coverage Report.

Version 0.4.0 * - 2025-07-27

Details (click to see)

This is the initial release.

The reason for not being (0.1.0), is the way I track the internal development of projects not yet published. However, now that this one is published, the versioning will progress as expected, in accordance with Semantic Versioning.