tag:github.com,2008:https://github.com/php-flasher/php-flasher/releasesRelease notes from php-flasher2026-03-07T19:15:58Ztag:github.com,2008:Repository/317664140/v2.5.02026-03-07T19:24:00Zv2.5.0<h2><a href="https://github.com/php-flasher/php-flasher/compare/v2.4.0...v2.5.0">v2.5.0</a> - 2026-03-07</h2>
<h3>Added</h3>
<ul>
<li>feature [Laravel] Improve Laravel Octane support by resetting FallbackSession static storage between requests to prevent notification leakage</li>
<li>feature [Symfony] Add FrankenPHP/Swoole/RoadRunner support with WorkerListener that implements ResetInterface and is tagged with kernel.reset</li>
<li>feature [Symfony] Add reset() method to FallbackSession for long-running process support</li>
<li>feature [Flasher] Add Hotwire/Turbo Drive support with turbo:before-cache event listener to clean up notifications before page caching</li>
<li>feature [Flasher] Add event dispatching system for all notification adapters and themes with Livewire integration:
<ul>
<li>[Toastr] Dispatch events: <code>flasher:toastr:click</code>, <code>flasher:toastr:close</code>, <code>flasher:toastr:show</code>, <code>flasher:toastr:hidden</code></li>
<li>[Noty] Dispatch events: <code>flasher:noty:click</code>, <code>flasher:noty:close</code>, <code>flasher:noty:show</code>, <code>flasher:noty:hover</code></li>
<li>[Notyf] Dispatch events: <code>flasher:notyf:click</code>, <code>flasher:notyf:dismiss</code></li>
<li>[Themes] Dispatch events: <code>flasher:theme:click</code> (generic) and <code>flasher:theme:{name}:click</code> (specific)</li>
<li>[Laravel] Add LivewireListener classes for all adapters and themes to enable Livewire event handling</li>
</ul>
</li>
<li>feature [Flasher] Add 16 notification themes: Amazon, Amber, Jade, Crystal, and more</li>
<li>feature [DX] Add <code>@method</code> annotations to FlasherInterface and NotificationFactoryInterface for better IDE autocompletion</li>
<li>feature [DX] Add Type::all() and Type::isValid() helper methods with PHPStan type narrowing</li>
<li>feature [DX] Add <code>@throws</code> annotations to FlasherContainer methods for better exception documentation</li>
<li>feature [DX] Add FlasherContainer::setContainer() method as convenient alias for testing</li>
<li>feature [DX] Add PHPStan type alias <code>NotificationType</code> for valid notification types</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>fix [SweetAlert] Fix SweetAlertBuilder::question() bug where options parameter was being ignored</li>
<li>fix [Flasher] Fix potential runtime error in Envelope::toArray() when no PresentableStampInterface stamps exist</li>
<li>fix [Flasher] Use more specific \Random\RandomException in IdStamp instead of broad \Exception</li>
<li>fix [Flasher] Update Livewire navigation cleanup to use correct .fl-wrapper selector instead of unused .fl-no-cache class</li>
<li>fix [Flasher] Fix FilterCriteria uninitialized property error when constructed with empty array</li>
<li>fix [Flasher] Fix null comparison issues in PriorityCriteria, HopsCriteria, and DelayCriteria that relied on PHP's implicit null-to-0 coercion</li>
<li>fix [Flasher] Add type validation for callable factory return values in NotificationFactoryLocator with descriptive error messages</li>
<li>fix [Flasher] Add error handling for invalid regex patterns in ResponseExtension::isPathExcluded()</li>
<li>fix [Flasher] Fix ContentSecurityPolicyHandler parsing of CSP headers with trailing semicolons creating empty directive keys</li>
<li>fix [Flasher] Add reset() method to ContentSecurityPolicyHandler to fix CSP state leak in long-running processes (Octane, FrankenPHP)</li>
<li>fix [Flasher] Fix FilterEvent::setFilter() type inconsistency - now accepts FilterInterface instead of concrete Filter class</li>
<li>fix [Flasher] Remove redundant callable check in FlasherContainer::getContainer()</li>
<li>fix [Flasher] Fix NotificationStorageMethods::resolveResourceName() return type from ?string to string (never returns null)</li>
<li>fix [Flasher] Fix parameter name inconsistency in NotificationBuilderInterface::options() - changed $merge to $append to match implementation</li>
<li>fix [Flasher] Add type validation for callable presenter return values in ResponseManager with descriptive error messages</li>
<li>fix [Flasher] Fix FlasherPlugin::normalizePlugins() losing scripts/styles when both top-level and plugin-level configs are provided - replaced array union operator with array_merge</li>
<li>fix [Flasher] Simplify FlasherPlugin::normalizeFlashBag() by replacing redundant array union with direct array_merge</li>
<li>fix [Flasher] Fix array_merge() syntax in InstallCommand by removing unnecessary empty array</li>
<li>fix [Flasher] Add return type validation in FilterCriteria::apply() with proper exception handling</li>
</ul>
<h3>Changed</h3>
<ul>
<li>refactor [Flasher] Reduce theme configuration duplication by generating themes programmatically</li>
<li>refactor [Flasher] Standardize exception message format in PresetNotFoundException to use brackets like other exceptions</li>
<li>refactor [Flasher] Standardize exception message wording in CriteriaNotRegisteredException to use "not found" instead of "is not found"</li>
<li>refactor [SweetAlert] Replace @phpstan-ignore-line suppressions with proper <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/var/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/var">@var</a> annotations</li>
</ul>yoeunestag:github.com,2008:Repository/317664140/v2.3.02025-12-09T10:28:22Zv2.3.0<p>Full Changelog: <a class="commit-link" href="https://github.com/php-flasher/php-flasher/compare/v2.2.0...v2.3.0"><tt>v2.2.0...v2.3.0</tt></a></p>yoeunestag:github.com,2008:Repository/317664140/v2.2.02025-11-10T14:20:21ZUpdates Flasher to v2.2.0<p>Updates the flasher dependencies in composer.json files and package.json files to version 2.2.0.</p>
<p>Updates the Flasher version constant in the Prime Flasher class.</p>yoeunestag:github.com,2008:Repository/317664140/v2.1.52025-02-21T17:55:10ZMerge pull request #216 from php-flasher/v2.1.5<p>prepare for v2.1.5</p>yoeunestag:github.com,2008:Repository/317664140/v2.1.42025-02-18T13:06:36Zv2.1.4<p>Merge pull request <a class="issue-link js-issue-link" href="https://github.com/php-flasher/php-flasher/pull/215">#215</a> from php-flasher/v2.1.4</p>
<p>chore: bump flasher dependency to v2.1.4</p>yoeunestag:github.com,2008:Repository/317664140/v2.1.32025-01-25T13:40:29Zv2.1.3<ul>
<li>bug <a href="https://github.com/php-flasher/php-flasher/issues/208" data-hovercard-type="issue" data-hovercard-url="/php-flasher/php-flasher/issues/208/hovercard">#208</a> [Flasher] Add GitHub workflow for automatic publishing of assets to NPM. See <a href="https://github.com/php-flasher/php-flasher/pull/211" data-hovercard-type="pull_request" data-hovercard-url="/php-flasher/php-flasher/pull/211/hovercard">PR #211</a> by <a href="https://github.com/ToshY">ToshY</a></li>
</ul>
<p>Full Changelog: <a class="commit-link" href="https://github.com/php-flasher/php-flasher/compare/v2.1.2...v2.1.3"><tt>v2.1.2...v2.1.3</tt></a></p>yoeunestag:github.com,2008:Repository/317664140/v2.1.22025-01-18T10:34:10Zv2.1.2: Merge pull request #210 from php-flasher/upgrade-dependencies<p>upgrade dependencies</p>yoeunestag:github.com,2008:Repository/317664140/v2.1.12024-10-20T14:15:23Zv2.1.1<ul>
<li>feature [Laravel] Add <code>excluded_paths</code> option. See <a href="https://github.com/php-flasher/php-flasher/pull/203" data-hovercard-type="pull_request" data-hovercard-url="/php-flasher/php-flasher/pull/203/hovercard">PR #203</a> by <a href="https://github.com/yoeunes">yoeunes</a></li>
</ul>
<p>Full Changelog: <a class="commit-link" href="https://github.com/php-flasher/php-flasher/compare/v2.1.0...v2.1.1"><tt>v2.1.0...v2.1.1</tt></a></p>yoeunestag:github.com,2008:Repository/317664140/v2.1.02024-10-19T15:58:17Zv2.1.0<ul>
<li>feature [Flasher] Update laravel and symfony configuration documentation . See <a href="https://github.com/php-flasher/php-flasher/pull/201" data-hovercard-type="pull_request" data-hovercard-url="/php-flasher/php-flasher/pull/201/hovercard">PR #201</a> by <a href="https://github.com/yoeunes">yoeunes</a></li>
<li>feature [Flasher] Improve Type Safety and IDE Support with Enhanced PHPDoc Annotations and Stricter PHPStan Validations. See <a href="https://github.com/php-flasher/php-flasher/pull/200" data-hovercard-type="pull_request" data-hovercard-url="/php-flasher/php-flasher/pull/200/hovercard">PR #200</a> by <a href="https://github.com/yoeunes">yoeunes</a></li>
<li>feature [Symfony] Improve configuration descriptions and add examples. See <a href="https://github.com/php-flasher/php-flasher/pull/199" data-hovercard-type="pull_request" data-hovercard-url="/php-flasher/php-flasher/pull/199/hovercard">PR #199</a> by <a href="https://github.com/yoeunes">yoeunes</a></li>
<li>feature [Symfony] Add Symfony Profiler integration for PHPFlasher. See <a href="https://github.com/php-flasher/php-flasher/pull/198" data-hovercard-type="pull_request" data-hovercard-url="/php-flasher/php-flasher/pull/198/hovercard">PR #198</a> by <a href="https://github.com/yoeunes">yoeunes</a></li>
</ul>
<p>Full Changelog: <a class="commit-link" href="https://github.com/php-flasher/php-flasher/compare/v2.0.4...v2.1.0"><tt>v2.0.4...v2.1.0</tt></a></p>yoeunestag:github.com,2008:Repository/317664140/v2.0.42024-09-22T14:32:58Zv2.0.4<p>chore: update CHANGELOG</p>yoeunes