Typeful hierarchical structured logging without monad towers.


LTS Haskell 22.26:1.0.4
Stackage Nightly 2024-06-20:1.0.4
Latest on Hackage:1.0.4

See all snapshots di-core appears in

BSD-3-Clause licensed by Renzo Carbonara
Maintained by renλren.zone
This version can be pinned in stack with:di-core-1.0.4@sha256:82d555c45564ef9252dd38a157030a0f10d8f9519b274bef6b16f90208eaebdf,987

Module documentation for 1.0.4

Used by 1 package in lts-15.3(full list with versions):


Typeful hierarchical structured logging without monad towers.

If you like monad towers, though, check out di-monad.

Also, for a logging library, this one doesn’t do any rendering of log messages. Please refer to di-handle and di-df1 for that.

Build Status

See the BSD3 LICENSE file to learn about the legal terms and conditions for this library.


Version 1.0.4

  • Improve exception handling when worker stops.

  • Added LoggingWorkerNotRunning.

  • Fixed path rendering when logging exceptions.

Version 1.0.3

  • Fix handling of async exceptions even more (now with tests).

  • The exceptions dependency is gone.

  • Added ExceptionInLoggingWorker.

  • Documentation improvements.

Version 1.0.2

  • The MonadMask superclass of throw' is gone.

  • Fix handling of async exceptions.

  • Add dependency on safe-exceptions.

Version 1.0.1

  • Added throw', throw and onException.

Version 1.0

  • This library contains most of what was in di-0.3. 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.