andW Image Control - Changelog ==================================== v0.5.0 - 2025-01-11 --------------------- MAJOR MILESTONE: * WordPress Plugin Directory review compliance completed with comprehensive code quality improvements * All Blocker, Critical, and Major issues resolved from comprehensive security and performance audit * Complete internationalization (i18n) support implemented across all user-facing components * Performance optimizations implemented for production environments CRITICAL FIXES: * Fixed JavaScript localization timing issues that caused errors in recommended values feature * Resolved wp_localize_script timing problems in admin_footer context * Fixed autoload optimization to run only once using migration flag instead of every page load * Eliminated unnecessary database operations during plugin initialization SECURITY ENHANCEMENTS: * Enhanced security measures including proper nonce handling and permission checks * Complete output escaping compliance with WordPress.Security.EscapeOutput standards * All MIME type labels now properly internationalized using WordPress translation functions * PNG to JPEG conversion titles now use translatable sprintf format PERFORMANCE IMPROVEMENTS: * Optimized autoload settings to prevent unnecessary database write operations * Added migration flag system (andw_autoload_migration_done) to prevent redundant processes * Improved uninstall.php to properly clean up all plugin data including migration flags * Reduced memory footprint through proper autoload management INTERNATIONALIZATION (i18n): * Complete internationalization support with all user-facing strings properly translatable * JavaScript notification messages now use wp_localize_script for translation support * Plugin recommendation links (Regenerate Thumbnails, Force Regenerate Thumbnails) now translatable * All MIME type display labels converted to translation-ready format CLEANUP & MAINTENANCE: * Removed wp_cache_flush() from uninstall process to prevent site-wide cache disruption * All WPCS compliance issues resolved following WordPress best practices * Code follows WordPress Plugin Directory submission guidelines * Enhanced documentation and inline code comments for maintainability v0.3.0 - 2024-12-19 ------------------ CRITICAL FIXES: * Fixed WordPress.DB.DirectDatabaseQuery violations in uninstall.php - replaced direct SQL with WordPress API * Enhanced AJAX security with upload_files permission checks for media operations * Implemented complete nonce verification and permission check system MAJOR IMPROVEMENTS: * Improved CSS/JS versioning with filemtime-based cache control for better performance * Autoload optimization for non-critical options to reduce database load * PHP 8.1 requirement enforcement with runtime version check and admin notices * WordPress.org review compliance completed with zero WPCS errors SECURITY ENHANCEMENTS: * WordPress.Security.EscapeOutput compliance strengthened across all output functions * Complete audit and implementation of proper escaping, sanitization, and validation * Enhanced permission checks for all administrative operations * Eliminated all direct database queries in favor of WordPress API DEVELOPMENT: * Comprehensive code review and quality improvements * WordPress Coding Standards (WPCS) full compliance achieved * Plugin Check tool compliance verified * Preparation completed for WordPress.org Plugin Directory submission v0.2.0 - 2025-09-30 ------------------ CRITICAL SECURITY FIXES: * Fixed libxml_disable_entity_loader() deprecation in PHP 8+ and LIBXML_NOENT DoS vulnerability in SVG processing * Migrated from DOMDocument to WordPress standard wp_kses() based secure SVG sanitization * Enhanced WordPress security standards compliance (input validation, output escaping, nonce verification) MAJOR BUG FIXES: * Resolved AndwImageSizes class singleton pattern to prevent hook duplicate registration * Fixed media modal thumbnail display issues caused by CSS position:relative conflicts * Fixed thumbnail crop checkbox save functionality that wasn't persisting correctly * Removed usage of non-existent remove_settings_field() function CODE QUALITY IMPROVEMENTS: * Implemented proper singleton pattern for AndwImageSizes class * Enhanced error handling and input validation throughout codebase * Improved CSS specificity and removed conflicting styles * Added comprehensive nonce verification for security DOCUMENTATION: * Updated readme.txt for WordPress.org Plugin Directory compliance * Added comprehensive README.md with usage instructions * Created CHANGELOG.txt and DEVELOPER.md for development workflow * Enhanced inline code documentation v0.01 - 2025-09-29 ------------------ INITIAL RELEASE: * JPEG quality customization by image size * PNG to JPEG automatic conversion with quality control * 8 custom image sizes (360px, 480px, 600px, 720px, 960px, 1200px, 1440px, 1920px) * Enhanced media library UI with MIME type labels * Secure SVG upload support with sanitization * WordPress Settings API integration * Media settings integration in WordPress admin FEATURES: * Custom image size registration and management * Thumbnail crop checkbox functionality * Media UI enhancements with JavaScript * SVG file security sanitization * PNG converter with quality settings * JPEG quality control per image size