package grace

  1. Overview
  2. Docs
A fancy diagnostics library that allows your compilers to exit with grace

Install

dune-project
 Dependency

Authors

Maintainers

Sources

grace-0.4.1.tbz
sha256=d49754224206de44855590848b3a5a6cc1d5c46cf99a4e5810ca3041d436a28e
sha512=2984b5a6284bf8bbd05419cf850c15c34bc19c19f0c8928b83cc1be1c0bfc84aafef6d992e7435c2f48ba361a6f3aab679abd02f0e6472361c8cec7d497bc405

doc/CHANGELOG.html

0.4.1 (2026-08-05)

  • fix(renderer): adjust margin for messages near end of line (#97)
  • fix(renderer): remove extra space in trailing labels (#98)
  • fix(renderer): error recovery on invalid UTF-8 strings (#99)

0.4.0 (2026-07-22)

  • feat(renderer): add boxing to trailing labels (#92)
  • fix(renderer): print unicode and ansi-styled snippets as correct lengths (#88)
  • feat(renderer): add boxing to multi-line labels (#88)
  • feat(json_conv): use Yojson.Basic.t (#87)
  • feat(json_conv): add Grace_json_conv for conversion to Yojson (#84)
  • fix(core): dont catch Sys_error in Source.length if the fail doesn't exist (#81)
  • feat(renderer): support configurable contextual lines (#74)

0.3.0 (2025-02-13)

  • feat(renderer): add breaks in large diagnostics (#63)
  • feat(renderer): check for tty when rendering (#60)
  • fix(renderer): off-by-one in lines_of_labels (#65)
  • fix(renderer): create 0-sized segment on empty label range (#64)
  • fix(renderer): renderer multi-line labels when message is empty (#53)
  • fix(renderer): fix errors that occur with special zero-width segments (#41)
  • fix(renderer): use Format.pp_infinity in Message.to_string for OCaml >5.2 (#40)
  • refactor!: removes base/core dependency (#58)

BREAKING CHANGE

  • Many base/core interfaces from Grace have been replaced with custom ones.
  • Source.reader has been removed. Use Source.Reader.t instead.

0.2.0 (2024-05-28)

  • fix(renderer): remove uncessary underlines when printing a unique 'multi-line Top marker' (#31)
  • fix(renderer): replace unicode chars with ASCII in Config.ascii (#27)
  • feat(renderer): add NO_COLOR and TERM support to Config (#8)
  • feat(core,renderer): add support for error codes (#30)
  • feat(renderer): add support for UTF8 encoding 🚀 (#25)
  • feat(renderer): re-introduce support for compact diagnostic rendering (#28)
  • refactor(renderer)!: move grace.renderer library to grace.ansi_renderer (#29)

BREAKING CHANGE

  • Grace_rendering has been removed. Use Grace_ansi_renderer instead.

0.1.0 (2024-01-03)

Initial release 🎉