|
| 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.0] - 2026-02-17 |
| 9 | + |
| 10 | +### Added |
| 11 | +- Text translation via DeepL's next-generation LLM (`deepl translate`) |
| 12 | +- Document translation for PDF, DOCX, PPTX, XLSX, HTML, SRT, XLIFF, and images with formatting preservation |
| 13 | +- Structured file translation for JSON and YAML i18n locale files (keys, nesting, comments preserved) |
| 14 | +- Writing enhancement with grammar, style, and tone suggestions (`deepl write`) via the DeepL Write API |
| 15 | +- Real-time speech translation via WebSocket streaming (`deepl voice`) with automatic reconnection |
| 16 | +- Watch mode for real-time file monitoring with auto-translation (`deepl watch`) |
| 17 | +- Batch directory translation with parallel processing, glob filtering, and concurrency control |
| 18 | +- Glossary management with full v3 API support including multilingual glossaries (`deepl glossary`) |
| 19 | +- Language detection (`deepl detect`) |
| 20 | +- Git hooks for pre-commit, pre-push, commit-msg, and post-commit translation workflows (`deepl hooks`) |
| 21 | +- Interactive setup wizard (`deepl init`) |
| 22 | +- Admin API for key management and organization usage analytics (`deepl admin`) |
| 23 | +- Shell completion for bash, zsh, and fish (`deepl completion`) |
| 24 | +- SQLite-based translation cache with LRU eviction and configurable TTL |
| 25 | +- Custom translation instructions (`--custom-instruction`) and style rules (`--style-id`) |
| 26 | +- XDG Base Directory Specification support with legacy path migration |
| 27 | +- JSON output format (`--format json`) across all commands for CI/CD scripting |
| 28 | +- Table output format (`--format table`) for structured comparison views |
| 29 | +- Semantic exit codes (0–9) for CI/CD integration and scripted error handling |
| 30 | +- HTTP/HTTPS proxy support via standard environment variables |
| 31 | +- Automatic retry with exponential backoff and `Retry-After` header support |
| 32 | +- Dry-run mode (`--dry-run`) for previewing destructive and batch operations |
| 33 | +- Cost transparency with `--show-billed-characters` flag |
| 34 | +- Multi-target translation to multiple languages in a single command |
| 35 | +- Context-aware translation (`--context`) for disambiguation |
| 36 | +- Model type selection (`--model-type`) for quality vs. latency trade-offs |
| 37 | +- Advanced XML/HTML tag handling with splitting, non-splitting, and ignore tags |
| 38 | + |
| 39 | +### Security |
| 40 | +- HTTPS enforcement for all API communication (localhost exempted for testing) |
| 41 | +- Symlink rejection on all file-reading paths to prevent directory traversal |
| 42 | +- API key masking in logs, config output, and error messages |
| 43 | +- Config file permissions restricted to owner read/write (0o600) |
| 44 | +- Path traversal defense for batch output patterns |
| 45 | +- Atomic writes for translated output and config files to prevent corruption |
| 46 | + |
| 47 | +### Changed |
| 48 | +- Requires Node.js >= 20 |
0 commit comments