|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), |
| 6 | +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 7 | + |
| 8 | +## [1.0.5] - 2025-01-20 |
| 9 | + |
| 10 | +### Added |
| 11 | +- **Ollama Support**: Added support for local translation using Ollama with DeepSeek-R1 |
| 12 | + - New `--provider` flag to choose between 'gemini' or 'ollama' |
| 13 | + - `--ollama-url` to specify custom Ollama API endpoint |
| 14 | + - `--ollama-model` to use different Ollama models |
| 15 | + - `--list-providers` command to check available providers |
| 16 | + - Optimized prompts and parameters for DeepSeek-R1 format |
| 17 | + - Handles both JSON array and object responses from Ollama |
| 18 | + - No API costs - runs entirely on local hardware |
| 19 | + |
| 20 | +- **Model Context Protocol (MCP)**: Added MCP server for Claude Desktop integration |
| 21 | + - New `translator-gemini-mcp` binary for MCP server |
| 22 | + - Supports both Gemini and Ollama providers via environment variable |
| 23 | + - Enables direct file translation within Claude conversations |
| 24 | + |
| 25 | +### Changed |
| 26 | +- Abstracted translation logic into provider-based architecture |
| 27 | +- Updated CLI to support multiple translation backends |
| 28 | +- Enhanced error handling for different response formats |
| 29 | + |
| 30 | +### Fixed |
| 31 | +- Improved JSON extraction from various LLM response formats |
| 32 | +- Better handling of thinking tags in DeepSeek responses |
| 33 | + |
| 34 | +## [1.0.4] - 2025-01-20 |
| 35 | + |
| 36 | +### Added |
| 37 | +- **Multi-file Processing**: Process multiple files with automatic deduplication |
| 38 | + - Accepts multiple input files and glob patterns |
| 39 | + - Identifies duplicate strings across files |
| 40 | + - Translates each unique string only once |
| 41 | + - Shows deduplication statistics and API call savings |
| 42 | + - Example: 23% savings when processing 4 files with shared strings |
| 43 | + |
| 44 | +### Changed |
| 45 | +- CLI now accepts variadic arguments for multiple files |
| 46 | +- Output pattern supports `{dir}`, `{name}`, and `{lang}` variables |
| 47 | + |
| 48 | +## [1.0.3] - 2025-01-20 |
| 49 | + |
| 50 | +### Fixed |
| 51 | +- Critical bug with JSON keys containing dots (e.g., "auth.login") |
| 52 | +- Implemented proper key escaping using null bytes as separators |
| 53 | +- Fixed issue with society-flow test case |
| 54 | + |
| 55 | +## [1.0.2] - 2025-01-20 |
| 56 | + |
| 57 | +### Fixed |
| 58 | +- npm repository URL warnings |
| 59 | +- Package metadata improvements |
| 60 | + |
| 61 | +## [1.0.1] - 2025-01-20 |
| 62 | + |
| 63 | +### Added |
| 64 | +- GitHub Actions workflow for automated npm publishing |
| 65 | +- Cross-platform cache directory support |
| 66 | + - Windows: `%APPDATA%\translator-gemini\` |
| 67 | + - macOS: `~/Library/Caches/translator-gemini/` |
| 68 | + - Linux: `~/.cache/translator-gemini/` |
| 69 | + |
| 70 | +### Fixed |
| 71 | +- Build issues with postbuild script |
| 72 | +- TypeScript configuration |
| 73 | + |
| 74 | +## [1.0.0] - 2025-01-20 |
| 75 | + |
| 76 | +### Initial Release |
| 77 | +- Fast translation using Google's Gemini 2.0 Flash Lite model |
| 78 | +- Incremental caching system with SHA-256 hashing |
| 79 | +- Batch processing with dynamic sizing |
| 80 | +- Path preservation for complex JSON structures |
| 81 | +- Global npm installation support |
| 82 | +- Comprehensive CLI with multiple options |
| 83 | +- Performance statistics and progress indicators |
0 commit comments