Skip to content

v2.5.0

Choose a tag to compare

@Tom5521 Tom5521 released this 05 May 22:28
· 49 commits to main since this release

Release v2.5.0

This release brings significant improvements in documentation, build system optimizations, and a new optional CLI wrapper for better tool management.

✨ New Features

  • Optional Unified CLI: Introduced gotext-tools as a convenience wrapper for all tools (msgofmt, msgomerge, xgotext), while maintaining standalone binaries.
  • Auto-generated Documentation:
    • New docs command generates Markdown & man pages for all tools.
    • Added doc-tree for complete documentation hierarchy.
  • Enhanced Build System:
    • Smarter Go file detection (now checks any .go file).
    • New cli-docs recipe for automated CLI docs generation.

🛠 Improvements

  • Memory Efficiency: Replaced map[T]bool with zero-memory map[T]struct{} for tracking.
  • Error Handling: More consistent logging and error propagation.
  • Terminal Output:
    • Standardized formatting across all tools.
    • Improved --verbose flag support.
  • Simplified Build: Removed support for rare architectures/OSes to reduce complexity.

📚 Documentation

  • Updated README: Clarified installation and new wrapper usage.
  • Tool Documentation: All commands now have consistent help output with examples.
  • Internal Docs: Better code comments and package explanations.

⚙️ Installation Options

Choose either:

  1. Standalone Tools (traditional)
git clone https://github.com/Tom5521/gotext-tools
cd gotext-tools
just go-install xgotext
just go-install msgomerge
just go-install msgofmt
# etc...
  1. Optional Wrapper (recommended for CLI)
git clone https://github.com/Tom5521/gotext-tools
cd gotext-tools
just go-install gotext-tools
gotext-tools [tool] [args]... [flags]...

Full Changelog: v2.4.1...v2.5.0


Note: The new wrapper is completely optional - all tools remain available as standalone binaries.