All Versions
Latest Version
Avg Release Cycle
62 days
Latest Release
1559 days ago

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 for PatternWhitespace property. [GH-254]


    • πŸ‘‰ 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.


    • πŸš€ 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 the apps/ directory. These creates are not internal parts of the unic 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 of unic-echo and unic-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).


    πŸš€ 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 a chars!() macro. (Used as chars!('a'..'e'), chars!('a'..='e'), or chars!(..).)
    • πŸ‘ [unic-char-property] New component based on the module previously in unic-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] Add Bidi_Mirrored and Bidi_Control properties.

    ⬇️ Dropped components and modules

    • Drop unic-utils's iter_all_chars() in favor of unic-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 as enum GeneralCategory.

    • unic-ucd-nomal: Support Decomposition_Type Unicode (UCD) character property, implemented as enum 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 from unic-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

    • ⬇️ Drop data-dependent integration tests from packaging, allowing all tests pass for downloaded packages. [GH-34]

    • ⬇️ Drop dependency on rustc_test in favor of default integration test harness. [GH-76]

  • v0.4.0 Changes

    June 23, 2017

    Create UnicodeVersion type and use in all components for UNICODE_VERSION, and allow conversion to/from Age character property.

    Split IDNA Mapping data into unic-idna-mapping and leave the process algorithms in unic-idna.

    🚚 [ucd] Create common pattern for UCD character properties: For property called Prop, static function Prop::of(ch: char) to get value for a character, and ch.<prop>() using the helper trait called CharProp. Also, move all property value helpers into impl Prop as methods.

    [idna] Use standard binary_search_by().

    πŸ‘ Pass in bench_it feature to components supporting it. (Only unic-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.