Releases: contour-terminal/libunicode
Releases · contour-terminal/libunicode
v0.6.0
What's Changed
- Fix SIMD scanning on macOS (using std::simd) by @christianparpart in #102
- Fix build on FreeBSD Systems by @herrhotzenplotz in #105
- Use
std::format()
API now, instead of fmtlib by @christianparpart in #104 - Improvement for better SIMD config by @christianparpart in #106
- Update supported Unicode to version 16.0.0 by @christianparpart in #107
New Contributors
- @herrhotzenplotz made their first contribution in #105
Full Changelog: v0.5.0...v0.6.0
v0.5.0
What's Changed
- Fetch dependencies if OS is not supported by @Yaraslaut in #86
- Make usage of SIMD (SSE2) extension optional by @Yaraslaut in #87
- fix catch2 error when using system catch2 on Fedora; add Fedora workflow by @topazus in #88
- Update vcpkg commit hash to fix Windows CI by @christianparpart in #89
- Add benchmark and std::simd by @Yaraslaut in #91
- Add CMakePresets to conveniently build and work with the sources by @christianparpart in #92
- tablegen: Improve performance for names by @christianparpart in #95
- minor build and .clang-format improvements by @christianparpart in #96
- [unicode-query] add
gc
andruns
sub command to introspect grapheme clusters and runs by @christianparpart in #97 - Change width()'s return type from int to unsigned by @christianparpart in #98
- Tiny fix to benchmark plus minor naming changes by @christianparpart in #99
- Update github actions and gitignore by @Yaraslaut in #100
- Adds missing include to convert.h by @christianparpart in #101
Full Changelog: v0.4.0...v0.5.0
libunicode 0.4.0
What's Changed
- Allow passing custom LIBUNICODE_UCD_DIR to cmake by @christianparpart in #69
- Fix error handling of UTF-8 decoding for incomplete UTF-8 sequences by @christianparpart in #71
- Improve naming convention to be more streamlined. by @christianparpart in #72
- Move
scan_result.next
toscan_state.next
by @christianparpart in #73 - Check md5 of downloaded file by @Yaraslaut in #74
- Remove ubuntu 18.04 from github build actions by @Yaraslaut in #76
- Problem: Catch2 is always required by @yrashk in #75
- Update catch2 to v3 by @topazus in #82
- Improved libunicode targets installation by @christianparpart in #83
- Fix ARM64 build on Windows by @christianparpart in #84
- Allow building with older CMake < 3.18 by @christianparpart in #85
New Contributors
- @Yaraslaut made their first contribution in #74
- @yrashk made their first contribution in #75
Full Changelog: v0.3.0...v0.4.0
Release 0.3.0
0.3.0 (2023-03-01)
- Fixes build error on GCC 13.
- Fixes properly stopping at control characters in complex sub-state in scan API.
- Fixes successful processing invalid UTF-8 in scan API.
- Fixes installing missing headers for use of this API as non-embedded library.
- Changes project and include directory from
unicode
tolibunicode
to avoid include path conflict withICU
. - Adds compile time option to either build static or dynamic binaries (
LIBUNICODE_BUILD_STATIC
). - Adds SONAME version to libraries.
Release 0.2.1
- Fixes unicode-query's output for "character width".
- Fixes decoding invalid UTF-8 locking up.
- Fixes stage1 multistage-table sizes, reducing memory footprint a bit.
- Adds SIMD implementation for scan API on ARM64 (NEON).
- unicode-query is now linked statically on UNIX platforms.
Release 0.2.0
- Slightly improve performance of grapheme cluster segmentation.
- Fixes grapheme cluster segmentation of multiple consecutive regional flags.
- Add access to Age property of a codepoint (giving information about at which Unicode version a codepoint was introduced).
- Add access to the assigned name of a codepoint.
- unicode-query: Now also prints name and age properties.
- CMake install target also installs header and library (not just tools).
- Reduce number of dependencies down to fmtlib and (for unit tests) Catch2.
- Enables libunicode to be found via CMake's
find_package()
. - Improved default installation directories on UNIX via GNUInstallDirs helper.
0.1.0 - Initial Release after two and a half years
While version 0.1.0 sounds like a small number, this project is out there since quite some years already
and actively used by Contour Terminal.
The biggest movements lately are major performance improvements in accessing Unicode properties,
fixing bugs as usual, and apart from being a modern C++ Unicode library, we've now also added
a command line tool to query Unicode properties in the hope it'll be useful to you.
This release is also marking a milestone as I'm generally happy about the usefulness, stability, and performance of libunicode and its CLI tool (unicode-query
).