Skip to content

erdantic Changelog

v0.5.0 (2022-07-29)

  • Removed support for Python 3.6. (Issue #51, PR #56)
  • Added support for modules as inputs to all entrypoints to diagram creation (create, draw, to_dot, CLI). For all modules passed, erdantic will find all supported data model classes in each module. (Issue #23, PR #58) - Added new parameter limit_search_models_to to all entrypoints to allow for limiting which data model classes will be yielded from searching a module.

v0.4.1 (2022-04-08)

  • Fixed error when rendering a data model that has field using typing.Literal. (PR #49)

v0.4.0 (2021-11-06)

  • Added support for showing field documentation from Pydantic models with descriptions set with Field(description=...) in SVG tooltips. This will add an "Attributes" section to the tooltip using Google-style docstring format and lists fields where the description keyword argument is used. (Issue #8, PR #42)

v0.3.0 (2021-10-28)

  • Fixed handling of forward references in field type declarations. Evaluated forward references will be properly identified. Forward references not converted to typing.ForwardRef will throw a StringForwardRefError with instructions for how to resolve. Unevaluated forward references will throw an UnevaluatedForwardRefError with instructions for how to resolve. See new documentation for more details. (Issue #40, PR #41)
  • Changed name of erdantic.errors module to erdantic.exceptions. (PR #41)
  • Added new ErdanticException base class from which other exceptions raised within the erdantic library are subclassed from. Changed several existing ValueError exceptions to new exception classes that subclass both ErdanticException and ValueError. (PR #41)
  • Changed __lt__ method on Model and Edge to return NotImplemented instead of raising an exception to follow typical convention for unsupported input types. (PR #41)

v0.2.1 (2021-02-16)

  • Fixed runtime error when rendering a data model that had a field containing typing.Any. (Issue #25, PR #26)

v0.2.0 (2021-02-14)

  • Added option to specify models as terminal nodes. This allows you to truncate large diagrams and split them up into smaller ones. (PR #24)

v0.1.2 (2021-02-10)

  • Fixed bug where Pydantic fields were missing generics in their type annotations. (PR #19)
  • Added tests against static rendered DOT output. Change adapter tests to use parameterized fixtures. (PR #21)

v0.1.1 (2021-02-10)

  • Fixed rendered example image in the package description on PyPI. (PR #18)

v0.1.0 (2021-02-10)

Initial release! 🎉