Skip to content

v4.2.0: Pandoc Document Import Support

Choose a tag to compare

@stovak stovak released this 15 Nov 00:40
· 182 commits to main since this release
ce05cff

SwiftCompartido v4.2.0

This release adds support for importing Microsoft Word (DOCX), OpenDocument (ODT), and Rich Text Format (RTF) documents via Pandoc integration.

🎉 New Features

Pandoc Document Import

  • ✅ DOCX Support: Import Microsoft Word documents (.docx)
  • ✅ ODT Support: Import OpenDocument Text files (.odt)
  • ✅ RTF Support: Import Rich Text Format files (.rtf)
  • ✅ Automatic Format Detection: File format detected by extension
  • ✅ Markdown Conversion: Documents converted via Pandoc to Markdown
  • ✅ Seamless Integration: Works with GuionParsedElementCollection

Example Usage

// Import a DOCX file
let screenplay = try await GuionParsedElementCollection(file: "script.docx")

// Also works with ODT and RTF
let odtScript = try await GuionParsedElementCollection(file: "script.odt")
let rtfScript = try await GuionParsedElementCollection(file: "script.rtf")

CI Improvements

  • ✅ Apple Silicon Only: All CI workflows now run exclusively on macOS-26 (arm64)
  • ✅ Pandoc in CI: Pandoc installed via Homebrew in test workflows
  • ✅ Improved Fixture Handling: Proper Bundle resource resolution for all test fixtures

🐛 Bug Fixes

  • Fixed test fixture paths to use Bundle.module instead of hardcoded paths
  • Fixed Pandoc test expectations to account for markdown parsing behavior
  • Added explicit path to test target in Package.swift for proper resource bundling

📚 Documentation

  • Updated CLAUDE.md with Apple Silicon-only build requirements
  • Added comprehensive Pandoc documentation in Docs/
  • Documented fixture requirements and test coverage

⚠️ Breaking Changes

None - this is a feature addition release.

✅ Test Coverage

All 453 tests passing (437 original + 16 new Pandoc tests)

  • iOS Tests: ✅ PASSED
  • macOS Tests: ✅ PASSED
  • Code Quality: ✅ PASSED

📦 Platform Support

  • iOS 26.0+ (Apple Silicon)
  • macOS 26.0+ (Apple Silicon)

🔗 Resources