Le 11/07/2014 16:36, Dicebot a écrit :
Round of a formal review before proceeding to voting. Subject for Phobos
inclusion : http://wiki.dlang.org/Review/std.logger authored by Robert
Schadek.

Code:
     https://github.com/D-Programming-Language/phobos/pull/1500
Documentation:
http://burner.github.io/phobos/phobos-prerelease/std_logger_core.html
http://burner.github.io/phobos/phobos-prerelease/std_logger_stdiologger.html

http://burner.github.io/phobos/phobos-prerelease/std_logger_filelogger.html
http://burner.github.io/phobos/phobos-prerelease/std_logger_multilogger.html

http://burner.github.io/phobos/phobos-prerelease/std_logger_nulllogger.html
http://burner.github.io/phobos/phobos-prerelease/std_logger_templatelogger.html

DUB package:
     http://code.dlang.org/packages/logger

Previous discussion thread:
http://forum.dlang.org/post/[email protected]


======================================================================

Summary of changes since last discussion (by Robert):


* logger is now a package of multiple files
* a lot more documentation
* log and logf now behave as their write and writef counterparts
* for logging with an explicit LogLevel call logl loglf
* for logging with an explicit condition call logc logcf
* for logging with an explicit LogLevel and explicit condition call
loglc loglcf
* the log function with an explicit LogLevel like info, warning, ... can
be extended into c, f or cf and therefore require a condition and/or are
printf functions
* unittest have been updated
* dub package for easy testing

======================================================================

This is one of long sanding Phobos candidates Robert has put some great
effort into. As far as I know it is already used in several D projects
and it is a good moment to make it official.

Review goals, as usual : verify that API is robust enough to build more
complicated logging systems on top of it, verify Phobos style
compatibility, check if provided documentation is complete and friendly
enough.

Base for review process is defined by http://wiki.dlang.org/Review/Process

In the documentation you tell about informations added by the module (filename, linenumber,...) but you don't put sample of the resulting output. IMO it's important to provide a standard format of the output then D's IDE would be able to parse it to create links to the code or colorize it,...

Does the output contain a message counter? This help to distinguish message duplicates, on some console when prints are fast we don't see lines added if their are all the same.

Is it too late for an integration in std.expirimental with dmd 2.66?

Reply via email to