Changelog History
Page 1
-
v0.9.0 Changes
March 03, 2019β Add
unic-ucd-name_aliases
: Unicode Name Alias character properties.
π Changed
unic-cli
: Fallback to Name Alias for characters without Name value.
π Fixed
ucd-ident
: Use correct data table forPatternWhitespace
property. [GH-254]
Misc
π Use external git submodules for source data.
Migrate to Rust 2018 Edition.
-
v0.8.0 Changes
January 02, 2019β Added
unic-ucd-block
: List of all Unicode Blocks and the property assigning a block to each character.unic-ucd-hangul
: Unicode Hangul Syllable detection and Composition/Decomposition algorithms.
π Changed
unic-ucd-name
: Complete implementation for Unicode Name Property, with addition of Hangul and CJK Han names, as defined by The Unicode Standard.
Misc
π This is the last release of the project before migration to Rust 2018 Edition.
Special thanks for Yan Li (@eyeplum) for implementing most of the features in this release.
-
v0.7.0 Changes
February 07, 2018β Added
UNIC Applications
UNIC Applications are binary creates hosting in the same repository as
unic
super-crate, under theapps/
directory. These creates are not internal parts of theunic
library, but tools designed and developed for the general β audience, also serving as a test bed for the UNIC API. We are starting with CLI π applications, and possibly expanding it to GUI and WEB applications, as well.unic-cli
The new UNIC CLI application provides command-line tools for working with Unicode characters and strings. In this release, first versions ofunic-echo
andunic-inspector
commands are implemented.
π New Components
Character Property:
unic-ucd-common
: Common character properties (alphabetic, alphanumeric, control, numeric, and white_space).unic-ucd-ident
: Unicode Identifier character properties.unic-ucd-segment
: Unicode Segmentation character properties.unic-emoji-char
: Unicode Emoji character properties.
String Algorithm:
unic-segment
: Implementation of Unicode Text Segmentation algorithms (Grapheme Cluster and Word boundaries).
Misc
π This release was delayed for a couple of cycles, because of the problems with β running tests in a workspace with a mix of std and no-std creates. The issue is resolved as of
1.22.0
.Enable
no_std
for many of the existing components.β¬οΈ Bumped Minimum Rust Version needed to
1.22.0
.β‘οΈ Lots of small fixes for data types and internal structure updates.
-
v0.6.0 Changes
September 22, 2017π New components and modules
Abstractions for working with characters
- [
unic-char-range
] Range and iterator types for characters, plus achars!()
macro. (Used aschars!('a'..'e')
,chars!('a'..='e')
, orchars!(..)
.) - π [
unic-char-property
] New component based on the module previously inunic-utils
, with new support for binary character properties.
Extending Unicode Character Database properties
- [
unic-ucd-name
] New minimal implementation of Unicode character names (Name
property). - [
unic-ucd-case
] New basic implementation of Unicode character case properties. - [
unic-ucd-bidi
] AddBidi_Mirrored
andBidi_Control
properties.
β¬οΈ Dropped components and modules
- Drop
unic-utils
'siter_all_chars()
in favor ofunic-char-range
types and macros.
β‘οΈ Other updates
- π± All tables are now generated by the Rust pipeline! π
- π The Rust table generation has been cleaned up to a very nice level of polish! β¨
- [
unic-utils
] Restructure tables into a dedicated type, rather than a mix of traits and "blessed" std types.
- [
-
v0.5.0 Changes
August 06, 2017β Added
unic-ucd-category
: Support General_Category Unicode (UCD) character property, implemented asenum GeneralCategory
.unic-ucd-nomal
: Support Decomposition_Type Unicode (UCD) character property, implemented asenum DecompositionType
.
π Changed
unic-ucd-normal
: Update Canonical_Combining_Class implementation to tuple struct and add update API accordingly.unic-ucd-age
: Update Age property implementation to not cause API breakage on new Unicode versions.unic-utils
: Rename fromunic-ucd-utils
, to contain all data-less utility functionalities. [GH-50]Expand character property API in implementations, in the process of defining trait-based contracts for all (UCD and other) character properties. [GH-66] [GH-34]
π¦ Reorganize code structure to make room for dev packages, like new
unic-gen
crateβwhich is going to replace the Python implementation for data table generation.β
unic-ucd
: Expand cross-component and conformance tests. [GH-18] [GH-43]
β Removed
-
v0.4.0 Changes
June 23, 2017Create
UnicodeVersion
type and use in all components forUNICODE_VERSION
, and allow conversion to/fromAge
character property.Split IDNA Mapping data into
unic-idna-mapping
and leave the process algorithms inunic-idna
.π [ucd] Create common pattern for UCD character properties: For property called
Prop
, static functionProp::of(ch: char)
to get value for a character, andch.<prop>()
using the helper trait calledCharProp
. Also, move all property value helpers intoimpl Prop
as methods.[idna] Use standard
binary_search_by()
.π Pass in
bench_it
feature to components supporting it. (Onlyunic-bidi
at the moment.) -
v0.3.0 Changes
June 22, 2017β Added
unic-ucd-age
component.
-
v0.2.0 Changes
June 21, 2017π Changed
- π Update UCD and IDNA data to Unicode 10.0.0, as released on 2017-06-20.
-
v0.1.2 Changes
June 20, 2017β Added
π A bunch of missing documentations.
A script to publish all crates, in order of dependency.
-
v0.1.1 Changes
June 20, 2017π Initial release with UCD, Bidi, IDNA, and Normalization components.