Thavarshan Filterable Versions Save

🔍 Enhance Laravel queries with adaptable, customisable filters and intelligent caching to improve both performance and functionality.

1.1.2

2 weeks ago

Changed

  • Modified the buildCacheKey method to sort and normalise filterables before generating the cache key. This change reduces the number of unique keys and helps mitigate cache pollution issues. (See PR #18) Caching has now been changed to be disabled by default. This change provides more control over when caching is used, helping to prevent unnecessary cache pollution.

Fixed

  • Fixed cache pollution issues caused by the generation of too many unique keys. This was achieved by limiting the number of unique filter combinations that can be cached. (See issue #17 and PR #18)

1.1.1

1 month ago

Added

  • Compatibility support for newer PHP versions: Updated brick/math requirement from PHP ^8.0 to ^8.1 to embrace the latest PHP features and improvements.

Changed

  • Updated brick/math from 0.11.0 to 0.12.1: Includes performance optimizations and bug fixes to enhance mathematical operations.
  • Updated laravel/framework from v10.48.5 to v10.48.10: Rolled in new minor features and improvements to the Laravel framework that benefit the stability and security of applications using filterable.
  • Updated symfony/console from v6.4.6 to v6.4.7: Enhanced compatibility with other Symfony components, improving integration and usage within Symfony-based projects.
  • Updated development dependencies:
    • phpunit/phpunit from ^9.0 to ^10.1 for advanced unit testing capabilities.
    • vimeo/psalm from 5.0.0 to 5.16.0 for improved static analysis and code quality checks.

Fixed

  • Security patches and minor bugs: All updated dependencies include patches for known vulnerabilities and fixes for various minor bugs, enhancing the security and reliability of the filterable package.

1.1.0

1 month ago

Added

  • Logging Support in Filter Class: Introduced comprehensive logging capabilities to enhance debugging and operational monitoring within the Filter class. This update allows developers to trace the application of filters more effectively and can be critical for both development and production debugging scenarios. #12
    • Dynamic Logging Controls: Added methods enableLogging() and disableLogging() to toggle logging functionality at runtime, allowing better control over performance and log verbosity depending on the environment.
    • Integration with Psr\Log\LoggerInterface: Ensured flexibility in logging implementations by integrating with the standard PSR-3 logger interface. Developers can now inject any compatible logging library that adheres to this standard, facilitating customized logging strategies.
    • Conditional Log Statements: Added conditional logging throughout the filter application process to provide granular insights into key actions and decisions. This feature is designed to help in pinpointing issues and understanding filter behavior under various conditions.
    • Unit Tests for Logging: Extended the test suite to include tests verifying that logging behaves as expected under different configurations, ensuring that the new functionality is robust and reliable.

Changed

  • Deprecated instance method setUseCache() in favor of static method enableCaching() for improved consistency and clarity. This change aligns with the existing static property useCache and enhances the discoverability of caching-related functionality. #12

Fixed

  • Minor bug fixes and performance optimizations to enhance stability and efficiency.

1.0.6

1 month ago

Changed

  • Refactor useCache instance property to static
  • Refactor setUseCache instance method to enableCaching static method for use in service provider classes

1.0.5

1 month ago

Changed

  • Implement filter scope for Eloquent Models to use with Filterable trait

1.0.4

1 month ago

Fixed

  • Fix "Fatal Error: Type of App\Filters\EventFilter::$filters Must Be Array" (#8)

1.0.3

1 month ago

Fixed

  • Fix for Argument Acceptance in make:filter Command (#6)

1.0.2

1 month ago

Fixed

  • Fix Service Provider Namespace in composer.json (#5)

1.0.1

1 month ago

Fixed

  • Fix nesbot/carbon dependency version issue (#3)

1.0.0

1 month ago

Initial release.