All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Updated build dependencies.
- Possible rendering error with multi-byte UTF-8 characters.
- New
viewport
element for offsetting the render origin of child content (e.g., to implement scrolling) - New
canvas
andcanvas_cell
elements for drawing arbitrary shapes (see snake example). - Support for rendering multi-line content (with automatic line
wrapping) given to the
label
element. - Support for styling tree node content.
- Support for styling panel title content (thanks to @iboard) and configuring panel's padding.
- Support for passing colors and text attributes directly as atoms, so the integer constants no longer need to be looked up.
- Improved documentation of element hierarchy restrictions (thanks to @trescenzi)
- Possible crash in the termbox NIFs when polling for events (updates ex_termbox to 1.0.0).
- Errors in panel box calculation with certain layouts.
- Documentation of element attributes is now generated based on element specs.
- Applications based on the Elm Architecture.
- App behaviour
- Runtime
- Runtime Supervisor
- Components & Subscriptions
- New examples
- Views support labels as direct children.
- Removed the experimental component support in favor of the new TEA-based apps.
- Element attributes are now validated based on the element's spec. Some attributes are optional, while others are required. It's not allowed to pass attributes that are not defined in the spec.
- The View DSL was extracted to
Ratatouille.View
. Imports likeimport Ratatouille.Renderer.View
should be updated toimport Ratatouille.View
.