PackageTrack
Sign in Get early access

friendsofcake/search

CakePHP Search plugin using PRG pattern

7.9.0 2.3M downloads/mo #2957 most downloaded on Packagist FriendsOfCake/search

What this package is like to depend on

Last release 3 months ago

11 May 2026

Release timing varies

gaps range from 2 weeks to 1.1 years

Rarely documented

notes for 10 of 60 stable releases

Nothing withdrawn

no release was ever pulled

11 years old

63 releases · first in 2015

7 releases in the last 12 months

see the full history below

Release timeline

63 releases · Jun 2015 to May 2026
2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 60 of 63
  1. 7.9.0 11 May 2026
    Release notes

    Fixes

    • Processor::process(): prevent extraParams from leaking between filters. A filter that does not declare extraParams no longer sees values requested by another filter earlier in the chain (#374).
    • Like::_setEscaper(): replace brittle substr_compare driver detection with instanceof checks, and stop caching the resolved escaper into the filter config so each query resolves afresh. Custom or sub-classed Sqlserver/Postgres drivers now select the correct escaper (#374).

    Improvements

    • New Mapped filter for applying a default condition without triggering isSearch() — useful when you want a filter to be active by default (e.g. "show only enabled records") but the Reset link should only appear once the user changes the value. Configured via a map (form value → filter condition, with null meaning "no filter") and a default key marking which value is the non-search default. Unmapped non-empty values pass through as the condition (#373).
    • Like filter: new escapers config option lets apps register custom driver-to-escaper mappings without subclassing the filter. Shipped defaults (Sqlserver, Postgres) are merged in via _defaultConfig; entries are evaluated in iteration order with instanceof matching, falling back to Search.Default when nothing matches (#375).
    • Like filter: added a Postgres branch with a new PostgresEscaper class (currently inherits from DefaultEscaper) so driver-specific wildcard rules can diverge in the future without breaking the public API (#374).
    • Callback::process(): deprecate null returns from user callbacks. The documented contract is that callbacks return bool to drive isSearch(); missing return values are still coerced to true but now emit a deprecation pointing at the offending callback by name. Update your callbacks to return an explicit boolean (#374).

    Full Changelog: 7.8.0...7.9.0

    Open source →
  2. 7.8.0 09 Feb 2026
    Release notes

    What's Changed

    New Features

    • Add strictMode config for misconfigured SearchComponent by @dereuromark in #371
      • When enabled, throws RuntimeException with clear messages identifying the controller, action, and what went wrong
      • Default false preserves existing behavior for AppController use cases

    Fixes

    • Update deprecation warning version in SearchTrait by @LordSimal in #369

    Full Changelog: 7.7.2...7.8.0

    Open source →
  3. 7.7.2 16 Nov 2025
    Release notes

    What's Changed

    • Add option to autoload the search helper. by @ADmad in #367
    • Fix check for paging. by @ADmad in #368

    Full Changelog: 7.7.1...7.7.2

    Open source →
  4. 7.7.1 13 Nov 2025
    Release notes

    What's Changed

    Full Changelog: 7.7.0...7.7.1

    Open source →
  5. 7.7.0 12 Nov 2025
    Release notes

    What's Changed

    Full Changelog: 7.6.1...7.7.0

    Open source →
  6. 7.6.1 04 Oct 2025
    Release notes

    What's Changed

    • Use Form::execute() instead of Form::validate(). by @ADmad in #355

    Full Changelog: 7.6.0...7.6.1

    Open source →
  7. 7.6.0 04 Oct 2025
    Release notes

    What's Changed

    • Add formClass option to the SearchComponent. by @ADmad in #354

    Full Changelog: 7.5.0...7.6.0

    Open source →
  8. 7.5.0 30 Jul 2025
    Release notes

    What's Changed

    • Allow global Search component configuration using Configure key 'Search.component' by @dereuromark in #353

    Full Changelog: 7.4.0...7.5.0

    Open source →
  9. 7.4.0 04 May 2025
    Release notes

    What's Changed

    If you extended Search component, make sure to adjust the signature of startup() to:

        public function startup(EventInterface $event): void

    New Contributors

    Full Changelog: 7.3.0...7.4.0

    Open source →
  10. 7.3.0 17 Apr 2025
    Release notes

    What's Changed

    • Add empty checking via callable for more dynamic use cases. by @dereuromark in #348

    Full Changelog: 7.2.0...7.3.0

    Open source →
  11. 7.2.0 04 Apr 2025

    Nothing published for this version

  12. 7.1.0 26 Feb 2024

    Nothing published for this version

  13. 7.0.0 13 Sep 2023

    Nothing published for this version

  14. 6.2.5 12 Mar 2023

    Nothing published for this version

  15. 6.2.4 16 Feb 2022

    Nothing published for this version

  16. 6.2.3 18 Feb 2021

    Nothing published for this version

  17. 6.2.2 21 Dec 2020

    Nothing published for this version

  18. 6.1.1 26 Nov 2020

    Nothing published for this version

  19. 6.1.0 20 Nov 2020

    Nothing published for this version

  20. 6.0.1 03 Nov 2020

    Nothing published for this version

  21. 6.0.0 18 Apr 2020

    Nothing published for this version

  22. 6.0.0-beta2 24 Feb 2020 pre-release

    Nothing published for this version

  23. 6.0.0-beta 22 Dec 2019 pre-release

    Nothing published for this version

  24. 6.0.0-RC 22 Mar 2020 pre-release

    Nothing published for this version

  25. 5.3.2 05 Feb 2020

    Nothing published for this version

  26. 5.3.1 11 Jun 2019

    Nothing published for this version

  27. 5.3.0 17 May 2019

    Nothing published for this version

  28. 5.2.0 13 Mar 2019

    Nothing published for this version

  29. 5.1.1 10 Dec 2018

    Nothing published for this version

  30. 5.1.0 17 Nov 2018

    Nothing published for this version

  31. 5.0.0 12 Nov 2018

    Nothing published for this version

  32. 4.5.1 12 Nov 2018

    Nothing published for this version

  33. 4.5.0 09 Oct 2018

    Nothing published for this version

  34. 4.4.1 13 Aug 2018

    Nothing published for this version

  35. 4.4.0 16 Apr 2018

    Nothing published for this version

  36. 4.3.0 07 Mar 2018

    Nothing published for this version

  37. 4.2.1 22 Jan 2018

    Nothing published for this version

  38. 4.2.0 25 Nov 2017

    Nothing published for this version

  39. 4.1.0 01 Nov 2017

    Nothing published for this version

  40. 4.0.2 06 Oct 2017

    Nothing published for this version

  41. 4.0.1 19 Aug 2017

    Nothing published for this version

  42. 4.0.0 13 Aug 2017

    Nothing published for this version

  43. 3.2.0 04 Aug 2017

    Nothing published for this version

  44. 3.1.0 29 Apr 2017

    Nothing published for this version

  45. 3.0.0 27 Apr 2017

    Nothing published for this version

  46. 2.5.0 26 Apr 2017

    Nothing published for this version

  47. 2.4.0 11 Mar 2017

    Nothing published for this version

  48. 2.3.1 24 Sep 2016

    Nothing published for this version

  49. 2.3.0 22 Sep 2016

    Nothing published for this version

  50. 2.2.0 19 Sep 2016

    Nothing published for this version

  51. 2.1.0 12 Aug 2016

    Nothing published for this version

  52. 2.0.2 06 Jul 2016

    Nothing published for this version

  53. 2.0.1 24 Jun 2016

    Nothing published for this version

  54. 2.0.0 08 Jun 2016

    Nothing published for this version

  55. 1.2.4 17 May 2016

    Nothing published for this version

  56. v1.2.3 11 Apr 2016

    Nothing published for this version

  57. 1.2.2 22 Feb 2016

    Nothing published for this version

  58. 1.2.1 03 Feb 2016

    Nothing published for this version

  59. 1.2.0 23 Dec 2015

    Nothing published for this version

  60. 1.1.0 24 Nov 2015

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive