github studyzy/imewlconverter v3.4.1

4 hours ago

✨ 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)

🔧 Chores

  • - phase9: 确认测试项目已完全迁移到新架构,清理空壳文件 (commit by @studyzy)
  • - 清理历史遗留代码和过期文档 (commit by @studyzy)

Don't miss a new imewlconverter release

NewReleases is sending notifications on new releases.