Skip to content

Release v0.8.0

Internationalization - Full i18n Support

This release adds comprehensive internationalization (i18n) support with Chinese and English languages, covering all UI elements, error messages, CLI help text, and command outputs.

Added

Multi-language Support

  • Integrated rust-i18n and sys-locale crates for runtime language detection and translation
  • Added complete translation files (locales/en.yml, locales/zh-CN.yml) with 399 translation keys
  • New ui.language configuration option to set preferred language
  • Environment variable GCOP_UI_LANGUAGE for language override (highest priority)
  • Automatic system locale detection as fallback

Localized CLI Help Text

  • All CLI help text (commands, arguments, descriptions) now supports runtime localization
  • Uses clap derive + runtime override pattern for type-safe i18n help
  • gcop-rs --help displays in the configured language

Localized Error Messages

  • All error messages and suggestions now support localization via localized_message() and localized_suggestion() methods
  • Covers Git errors, API errors, configuration errors, and more

Changed

UI and Command Modules Refactored

  • All hardcoded strings in command modules (alias, commit, config, init, review, stats) replaced with translation keys
  • UI components (colors, prompt, spinner, streaming) updated to use localized text
  • LLM provider messages and Git repository messages localized

OutputFormat Now Implements FromStr Trait

  • Replaced custom from_str method with standard std::str::FromStr implementation
  • Cleaner API: supports "json".parse::<OutputFormat>() pattern

Upgrade

bash
# Homebrew
brew upgrade gcop-rs

# Cargo
cargo install gcop-rs

# pip
pip install --upgrade gcop-rs