NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #2782 most downloaded on Packagist
CakePHP Search plugin using PRG pattern
Last release 4 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
Callback::process() : deprecate null returns from user callbacks. The documented contract is that callbacks return bool to drive isSearch() ; missing…
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).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
One column per quarter.
Update deprecation warning version in SearchTrait by @LordSimal in #369
strictMode config for misconfigured SearchComponent by @dereuromark in #371
RuntimeException with clear messages identifying the controller, action, and what went wrongfalse preserves existing behavior for AppController use casesFull Changelog: 7.7.2...7.8.0
Add option to autoload the search helper. by @ADmad in #367
Full Changelog: 7.7.1...7.7.2
Update searchManager() access by @ADmad in #366
Full Changelog: 7.7.0...7.7.1
Fix deprecation error on CakePHP 5.3 by @ADmad in #359
Full Changelog: 7.6.1...7.7.0
Use Form::execute() instead of Form::validate(). by @ADmad in #355
Full Changelog: 7.6.0...7.6.1
Add formClass option to the SearchComponent. by @ADmad in #354
Full Changelog: 7.5.0...7.6.0
Allow global Search component configuration using Configure key 'Search.component' by @dereuromark in #353
'Search.component' by @dereuromark in #353Full Changelog: 7.4.0...7.5.0
Fixed deprecation warning in CakePHP 5.2 by @bakewizard in #350
If you extended Search component, make sure to adjust the signature of startup() to:
public function startup(EventInterface $event): voidFull Changelog: 7.3.0...7.4.0
Add empty checking via callable for more dynamic use cases. by @dereuromark in #348
Full Changelog: 7.2.0...7.3.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →