Skip to content

Latest commit

 

History

History
43 lines (35 loc) · 1.57 KB

File metadata and controls

43 lines (35 loc) · 1.57 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • Initial release of mysql2postgres converter
  • High-performance MySQL to PostgreSQL conversion
  • Support for stdout and file output modes
  • Comprehensive data type mappings
  • Function conversions (NOW, CURDATE, IFNULL, etc.)
  • MySQL-specific syntax handling (backticks, ENGINE, etc.)
  • Auto-increment to SERIAL conversion
  • Parallel processing for large files
  • Optional PostgreSQL validation
  • Comprehensive test suite
  • Modular code architecture

Features

  • Data Types: Complete mapping of MySQL to PostgreSQL types
  • Functions: Automatic conversion of MySQL functions
  • Performance: Multi-threaded processing with optimized I/O
  • Validation: Optional syntax checking with psql
  • Output Modes: File output or streaming to stdout
  • Error Handling: Graceful handling of malformed SQL
  • UTF-8 Support: Full Unicode character support
  • Memory Efficient: Constant memory usage regardless of file size

Technical Details

  • Written in Rust for maximum performance and safety
  • Uses regex patterns for efficient text processing
  • Implements batch processing for optimal throughput
  • Supports configurable chunk sizes for tuning
  • Includes comprehensive unit and integration tests
  • Modular architecture for maintainability

[0.1.0] - 2025-01-XX

Initial release with core functionality.