# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## Note
The abbreviation `fhb::` stands for `fowlhouse_bay::` and is used here for better readability.

## [Unreleased]

This section states unreleased but planned features to the project.

## [0.2.3] - 2020-04-17
### Changed
- added tokei badges for loc and lo-comments

### Added
- the user can now type the following chars over stdin (keyboard) `äöüßÄÖÜ`
- unit tests for the window renderer in particular the message parsing logic

### Fixed
- messages containing `char`s `!=` 1 `byte` were not displayed correctly. if the available window cols is 20 and the message contained e.g. 10 `ö`s then the renderer thought the line was full, this was the reason why `äöüßÄÖÜ` were not allowed to be typed over the keyboard, nevertheless the bug was not prevented, because the application using `Term` can send `char`s `> 1 byte` over the `StandardInputChannel`.

## [0.2.2] - 2020-04-16
### Changed
- changed license badge to not using explicit version
- added documentation field to Cargo.toml

## [0.2.1] - 2020-04-16
### Fixed
- messages sent over the StandardInputChannel were not displayed on the windows assigned to this source

### Changed
- README.md added 'Usage' and 'Example' section
- gettings started example in the docs

## [0.2.0] - 2020-04-16
### Added
- fhb::Term, a tui client for generating windows on the terminal, struct
- fhb::error, module for `Term` instance related error types
- fhb::error::TermError, error returned by `Term` instances
- fhb::window, module for window related source code
- fhb::window::Window, a struct describing a window on the tui
- fhb::window::Config, a struct describing the window properties
- fhb::window::Source, an enum describing the window message source
- fhb::window::Style, an enum describing the window style (Light, Heavy, DoubleLine)
- fhb::window::error, module for `Window` instance related error types
- fhb::window::error::WindowError, error returned by `Window` instances
- feat(Term): create new `Term` instance
- feat(Term): create new window
- feat(Term): delete window by name
- feat(Term): join on `Term` instance until shutdown complete
- feat(Term): `Term` provides `std::sync::mpsc::Sender<String>` to the user for sending messages to the `StandardInputChannel`
- feat(window::Source): the user can move a `std::sync::mpsc::Receiver<String>` to the window through this enum, while creating a new window

## [0.1.0] - 2020-03-25
### Added
- default rust library template
- travis-ci configuration file
- config file for pre-commit hook, for https://www.conventionalcommits.org