Typeful hierarchical structured logging using di, mtl and df1.
This is meta-package bringing in together things from the
Di module for more documentation.
See the BSD3 LICENSE file to learn about the legal terms and conditions for this library.
DiTdoesn’t log exceptions automatically any more. This is because otherwise catching and re-throwing exceptions in downstream code, by default, ends up logging the same exception more than once.
throwfunction behaving as the previous
MonadThrowinstance was introduced.
- BREAKING CHANGE: Exceptions are now logged at the throw site by
default now when possible, with level
Warning. See the changelog for
COMPILER ASSISTED BREAKING CHANGE: We don’t export
- BREAKING CHANGE: Most of what used to be in this library lives now in
di-core. This library is now intended to be an entry point to the various
di-*libraries. Consider this first release of the new ecosystem a preview release: The API is likely to stay stable, but extensive testing, formalization and tooling is due.
Di String [String] Stringnow.
Made compatible with GHC 8.4.
Dinow takes a new type argument
BREAKING CHANGE: Remove
Leveland all related functions in favour of a new
Dito be implemented by the user.
BREAKING CHANGE: Require
Monoidinstance for the
BREAKING CHANGE: Removed
BREAKING CHANGE: Drop
mkDiTextFileHandlein favour of
mkDiStringStderr. The rationale is that we are already paying the costs of many
showcalls, and users of this library are quite likely to use
Strings anyway (since they, too, are likely using
showresults). We will bring back
mkDiTextStderrwhen we can make it performant.
BREAKING CHANGE: Rename the
contramsg, flipping the order of their arguments so that the function comes first (like in
BREAKING CHANGE: The
pushfunction now takes the
Divalue as second argument.
Fix ISO8601 formatting of second fractions.
Stricter ordering of async messages.
Added a lot of documentation.
- Initial version.