Skip to content

Releases: itai-delphos/rust-strings

v0.6.2 - UTF-16 Edge Case Fixes + Default Encodings Update

12 Oct 04:26
e35165c

Choose a tag to compare

What's Changed

Bug Fixes

  • Fixed UTF-16 string extraction edge cases: Resolved issues when printable ASCII characters appear adjacent to valid UTF-16 sequences
    • Leading printable character: Now correctly identifies UTF-16 strings that start after a stray ASCII byte
    • Trailing printable character: Properly terminates UTF-16 strings when incomplete pairs are encountered
  • Refactored UTF-16 extractor: Complete rewrite of byte-pair processing logic to handle edge cases atomically

Features

  • Changed default extraction behavior: CLI now extracts both ASCII and UTF-16LE strings by default (previously ASCII only)
    • Use -e ascii to extract only ASCII strings
    • Use -e utf16le or -e utf16be to extract only UTF-16 strings

Build Improvements

  • Added comprehensive multi-platform build script (build.sh)
  • CLI binaries now built for:
    • macOS ARM64 (Apple Silicon)
    • Linux x86_64
    • Linux aarch64

Version

  • Bumped version from 0.6.1 to 0.6.2

Downloads

Python Wheels

Python wheels are available for:

  • Platforms: macOS ARM64, Linux x86_64, Linux aarch64
  • Python versions: 3.8, 3.9, 3.10, 3.11, 3.12

Install via pip:
```bash
pip install rust-strings
```

CLI Binaries

Download the appropriate binary for your platform:

  • `rust-strings-aarch64-apple-darwin` - macOS ARM64 (Apple Silicon)
  • `rust-strings-x86_64-linux` - Linux x86_64
  • `rust-strings-aarch64-linux` - Linux aarch64

Make the binary executable:
```bash
chmod +x rust-strings-*
```

Full Changelog: v0.6.1...v0.6.2

v0.6.1 - UTF-16 String Detection Fix

12 Oct 01:27
f125fba

Choose a tag to compare

Bug Fix

  • Fixed UTF-16 String Detection: Fixed an error in identifying the start of a UTF-16 string when there is a printable character before it. Previously, a string like At\x00e\x00s\x00t\x00\x00\x00 would extract "est" at offset 3 instead of "test" at offset 1.

Python Wheels

This release includes pre-built Python wheels for:

  • Platforms: Linux x86_64 (amd64) and aarch64 (ARM64)
  • Python versions: 3.8, 3.9, 3.10, 3.11, 3.12
  • Compatibility: manylinux 2014

Install via pip:

pip install rust-strings