Skip to content

Releases: VoidStarKat/widestring-rs

0.4.0

18 Aug 06:38
Compare
Choose a tag to compare

Added

  • New U32String, U32Str, U32CString, and U32CStr types for dealing with UTF-32 FFI. These
    new types are roughly equivalent to the existing UTF-16 types.
  • WideChar is a type alias to u16 on Windows but u32 on non-Windows platforms.
  • The generic types UString, UStr, UCString and UCStr are used to implement the string
    types.

Changed

  • Breaking Change Existing wide string types have been renamed to U16String, U16Str,
    U16CString, and U16CStr (previously WideString, WideStr, etc.). Some function have
    also been renamed to reflect this change (wide_str to u16_str, etc.).
  • Breaking Change WideString, WideStr, WideCString, and WideCStr are now type aliases
    that vary between platforms. On Windows, these are aliases to the U16 types and are equivalent
    to the previous version, but on non-Windows platforms these alias the new U32 types instead.
    See crate documentation for more details.

0.3.0

17 Mar 22:59
Compare
Choose a tag to compare

Added

  • Additional unchecked functions on WideCString.
  • All types now implement Default.
  • WideString::shrink_to_fit
  • WideString::into_boxed_wide_str and Box<WideStr>::into_wide_string.
  • WideCString::into_boxed_wide_c_str and Box<WideCStr>::into_wide_c_string.
  • From and Default implementations for boxed WideStr and boxed WideCStr.

Changed

  • Renamed WideCString::from_vec to replace WideCString::new. To create empty string, use
    WideCString::default() now.
  • WideCString now implements Drop, which sets the string to an empty string to prevent invalid
    unsafe code from working correctly when it should otherwise break. Also see Drop implementation
    of CString.
  • Writing changelog manually.
  • Upgraded winapi dev dependency.
  • Now requires at least Rust 1.17+ to compile (previously, was Rust 1.8).

0.2.2

09 Sep 00:10
Compare
Choose a tag to compare

Fixed

  • Make WideCString::into_raw correctly forget the original self.

0.2.1

12 Aug 01:53
Compare
Choose a tag to compare

Added

  • into_raw/from_raw on WideCString. Closes #2.

0.2.0

03 Feb 03:27
Compare
Choose a tag to compare

Added

  • Default trait to wide strings.
  • Traits for conversion of strings to Cow.

Changed

  • Methods & traits to bring to parity with Rust 1.9 string APIs.

v0.1.0

09 Feb 08:23
Compare
Choose a tag to compare

Initial release