Releases: mgeisler/textwrap
textwrap-0.7.0
Version 0.7.0 changes the return type of Wrapper::wrap
from Vec<String>
to Vec<Cow<'a, str>>
. This means that the output lines borrow data from the input string. This is a breaking API change if you relied on the exact return type of Wrapper::wrap
. Callers of the textwrap::fill
convenience function will see no breakage.
The above change and other optimizations makes version 0.7.0 roughly 15-30% faster than version 0.6.0.
The squeeze_whitespace
option has been removed since it was complicating the above optimization. Let us know if this option is important for you so we can provide a work around.
textwrap-0.6.0
Version 0.6.0 adds builder methods to Wrapper
for easy one-line initialization and configuration:
let wrapper = Wrapper::new(60).break_words(false);
It also add a new NoHyphenation
word splitter that will never split words, not even at existing hyphens.
- Fixed #28: Support not squeezing whitespace.
textwrap-0.5.0
Version 0.5.0 has breaking API changes. However, this only affects code using the hyphenation feature. The feature is now optional, so
you will first need to enable the hyphenation
feature as described above. Afterwards, please change your code from
wrapper.corpus = Some(&corpus);
to
wrapper.splitter = Box::new(corpus);
Other changes include optimizations, so version 0.5.0 is roughly 10-15% faster than version 0.4.0.
textwrap-0.4.0
textwrap-0.3.0
Added support for automatic hyphenation.
textwrap-0.2.0
Introduced Wrapper
struct. Added support for wrapping on hyphens.
textwrap-0.1.0
First public release with support for wrapping strings on whitespace.