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.
-- Breaking change: init()
now returns Result<Caprice>
-- Println
handles newlines correctly
- Added Themes
- Added new synchronous execution methods
Caprice::get()
andCaprice::send()
. - Added new
echo_synchronous
example.
- Fixed
Caprice
thread not blocking correctly on command.
This is a patch release that addresses concurrency and latency issues.
- Add
Continue
variant forCapriceCommand
. At least one command must be sent toCaprice
when a keyword is received, otherwise theCaprice
thread will block. - Removed
CapriceError::IO
. - Validate keywords. Caprice keywords are now validated against the "^[_a-zA-Z][A-Za-z_0-9]*$" regex.
Caprice::set_keywords()
will now receive aVec
of keywords by value.
- Added support for proceeding arguments. (@berdon)
- Various bug fixes around scanner/buffer divergence (@berdon)
- Fix print command not moving cursor to new line
- Fix slow printing of keywords using the
/list
command
- Fix bug when leaving alternate screen.
- Fixed an extra empty line in terminal after a token is entered by the user
- Spelling errors
- Change list command to '/list' from '#list' to bypass AZERTY keyboard bug
- Caprice now uses its own CapriceError and not Anyhow::Result
- set_keywords function returns self and should be chained at initialization
- Scrolling behavior in windows terminals
Initial Release