✨ New Features
- - add LegacyFilterAdapter, LegacyBatchFilterAdapter, LegacyCodeGeneratorAdapter (commit by @studyzy)
- - wire ConversionPipeline into CLI with --use-pipeline flag, add PipelineHost and FilterPipeline integration (commit by @studyzy)
- - win: 支持命令行模式,WinForm exe 带参数时作为 CLI 运行 (commit by @studyzy)
- - 实现 CLI 自定义编码映射功能 (-c/-m 参数) (commit by @studyzy)
🐛 Bug Fixes
- - --list-formats 显示中文格式名称而非类名 (Issue #395) (commit by @studyzy)
- - WinForm.sln 添加缺失的新架构项目引用 (commit by @studyzy)
- - 修复 WinForm 编译警告 (commit by @studyzy)
- - align DI package to 10.0.7, remove unnecessary System.Text.Encoding.CodePages reference (commit by @studyzy)
- - complete CodeType enum mapping, eliminate silent data loss on Unknown/Yong/InnerCode/UserDefinePhrase (commit by @studyzy)
- - 修复 7 个编译警告 (commit by @studyzy)
- - 修复 code review 问题并恢复跳过的测试 (commit by @studyzy)
♻️ Refactors
- - Phase 0 - migrate test framework from NUnit to xUnit (commit by @studyzy)
- - Phase 1 - create ImeWlConverter.Abstractions project (commit by @studyzy)
- - Phase 2 - create ImeWlConverter.Core with extracted services (commit by @studyzy)
- - Phase 3a+3d - Formats infrastructure + Source Generator (commit by @studyzy)
- - Phase 3b+3c - migrate all 50+ IME formats to new architecture (commit by @studyzy)
- - Phase 5 - CLI eliminates runtime reflection, uses explicit registration (commit by @studyzy)
- - Phase 6+7 - async streaming, LLM abstraction, code cleanup (commit by @studyzy)
- - Source Generator 自动生成 Metadata,消除 FormatPlugin/FormatMetadata 重复声明 (commit by @studyzy)
- - remove orphaned code (HttpLlmClient, NumberToChineseConverter, unused interfaces, net46 projects) (commit by @studyzy)
- - centralize Encoding.RegisterProvider to Program.cs entry point, remove 35+ scattered calls (commit by @studyzy)
- - replace custom IProgressReporter with BCL IProgress (commit by @studyzy)
- - eliminate reflection in macOS GUI, use shared FormatRegistrar for explicit format registration (commit by @studyzy)
- - convert CommandLineOptions to sealed record with init-only properties (commit by @studyzy)
- - seal all legacy IME format classes (no subclasses exist) (commit by @studyzy)
- - inline legacy parsing logic for 6 formats (QQPinyinQpyd, JidianMBDict, BaiduPinyinBackup, BaiduBcd, QQPinyinQcel, SelfDefining), removing IME/ delegation (commit by @studyzy)
- - inline legacy parsing logic for 5 formats (BaiduBdict, Win10MsPinyin, Win10MsWubi, ZiGuangUwl, Win10MsSelfStudy) (commit by @studyzy)
- - inline legacy parsing for LingoesLd2, SougouScel, SougouBin; remove ImeWlConverterCore dependency from Formats project (commit by @studyzy)
- - macOS GUI 消除反射,使用新格式系统显式注册 (commit by @studyzy)
- - Whole project (commit by @studyzy)
- - WinForm: 全面现代化重构 - async/await + DI + 进度报告 + 取消支持 (commit by @studyzy)
- - 三端统一底层转换引擎 (commit by @studyzy)
- - Code Review 次要问题修复 (commit by @studyzy)
✅ Tests
- - add unit tests for FilterPipeline and LegacyImporterAdapter CodeType mapping (commit by @studyzy)