Releases: notglossy/CloudFront-Cache-Invalidator
Release list
v1.2.0 - Comprehensive Testing & Quality Assurance Release
This release focuses on comprehensive test coverage, quality assurance improvements, and PHP 8.4 compatibility. The plugin now has an extensive test suite covering unit tests, integration tests, and AWS SDK mocking.
-
Comprehensive Unit Tests: Added extensive unit tests covering encryption, validation, path sanitization, and credential resolution
-
Integration Tests: New integration tests for hook registration, post updates, term updates, and settings validation
-
AWS SDK Mocking: Implemented AWS SDK mocking for CloudFront invalidation tests, enabling reliable testing without external API calls
-
GitHub Actions CI/CD: Automated testing pipeline with code quality checks
-
PHPCS Configuration: Added WordPress Coding Standards configuration with automated linting and formatting
-
PHP 8.4 Support: Added PHP 8.4 to the CI testing matrix
-
Minimum PHP 8.1: Confirmed PHP 8.1 is the minimum required version
-
Nonce Verification Timing (#3): Fixed nonce verification timing issue to prevent race conditions
-
Path Validation (#6): Added comprehensive path validation and sanitization for CloudFront API requests
-
Updated documentation for PHP 8.1+ minimum requirement
-
Added CLAUDE.md for development guidance
-
composer phpcs - Check code against WordPress Coding Standards
-
composer phpcbf - Auto-fix coding standards issues
-
Extensive test suite for safer refactoring and feature development
v1.1.0
Security Hardening Release
This release addresses security recommendations from a comprehensive audit and significantly improves credential handling.
Security Improvements
- Encrypted Credential Storage: AWS access keys and secret keys are now encrypted using AES-256-CBC before being stored in the database
- Environment Variable Support: Credentials can now be set via
CLOUDFRONT_AWS_ACCESS_KEYandCLOUDFRONT_AWS_SECRET_KEYenvironment variables or wp-config.php constants - No Credential Exposure in HTML: Credentials are no longer output in hidden form fields - existing credentials show as masked placeholders
- HTTPS Enforcement: Settings page displays a warning on HTTP connections and blocks credential submission over insecure connections
- Explicit Capability Check: Added defense-in-depth capability check at the start of the settings page
- Configurable Logging: Replaced
error_log()calls with WordPress action hooks (notglossy_cloudfront_invalidation_sentandnotglossy_cloudfront_invalidation_error) for flexible logging
Migration
Existing plaintext credentials will be automatically migrated to encrypted storage on first load.
Development
- Added PHPCS configuration for WordPress coding standards
- Added composer scripts:
composer phpcsandcomposer phpcbf
Full Changelog: v1.0.1...v1.1.0
v1.0.1
What's Changed
- Security Updates by @notglossy in #1
New Contributors
- @notglossy made their first contribution in #1
Full Changelog: v1.0.0...v1.0.1