You've already forked wc-licensed-product-client
Implement /update-check endpoint aligned with remote OpenAPI spec: - Add checkForUpdates() method to LicenseClientInterface - Add UpdateInfo DTO for update check responses - Add ProductNotFoundException for product_not_found error - Update local openapi.json to v0.4.0 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2.8 KiB
2.8 KiB
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]
[0.2.1] - 2026-01-27
Added
checkForUpdates()method for checking plugin updatesUpdateInfoDTO for update check responsesProductNotFoundExceptionforproduct_not_founderror handling/update-checkendpoint support aligned with remote OpenAPI spec (v0.4.0)
Changed
- Updated local
openapi.jsonto match remote specification (now v0.4.0) - Added "Plugin Updates" tag to OpenAPI specification
[0.2.0] - 2026-01-26
Added
- SSRF protection with URL validation and private IP range blocking
allowInsecureHttpconstructor parameter for development environments- Input validation in all DTO
fromArray()methods - DateTime exception handling in DTOs
- Recursive key sorting in
ResponseSignaturefor nested objects
Changed
- Key derivation now uses RFC 5869 compliant
hash_hkdf()instead of custom HMAC - Exception messages sanitized to prevent information disclosure
- Header normalization treats empty values as null
Fixed
- JSON encoding error handling in
ResponseSignature::buildSignaturePayload() - Header normalization null risk in
SecureLicenseClient
Security
- Comprehensive security audit performed
- SSRF vulnerability mitigated
- Information disclosure in error messages fixed
- Improved cryptographic key derivation
[0.1.0] - 2026-01-22
Added
- Object-oriented client library (
LicenseClient,LicenseClientInterface) - DTO classes for API responses (
LicenseInfo,LicenseStatus,ActivationResult) LicenseStateenum for license status values- Comprehensive exception hierarchy for error handling
- PSR-3 logging support (optional)
- PSR-6 caching support (optional)
- PSR dependencies (
psr/log,psr/cache,psr/http-client) - PHPUnit test suite with 32 tests covering DTOs, exceptions, and client
SecureLicenseClientwith response signature verification (HMAC-SHA256)ResponseSignatureclass for signing and verifying API responsesStringEncoderfor basic string obfuscation in source codeIntegrityCheckerfor verifying source file integritySignatureExceptionandIntegrityExceptionfor security errors- Server implementation documentation (
docs/server-implementation.md) - Security test suite (34 additional tests)
Changed
- Updated README with usage examples
[0.0.1] - 2026-01-22
Added
- Initial composer project setup
- Package configuration with PSR-4 autoloading
- Symfony HttpClient dependency (^7.0)
- Project documentation (README.md, CHANGELOG.md)
- OpenAPI specification reference in tmp/openapi.json