🐘 PHP & Symfony Digest

Denní přehled PHP, Symfony a ekosystému · pátek 17. července 2026
Mám dostatek dat pro sestavení digestu.

TL;DR

Symfony UX 3.3.0 vydáno symfony

Dne 15. července 2026 byla vydána verze Symfony UX 3.3.0. Největší novinkou je podpora Symfony Reprise přímo v StimulusBundle – Reprise je nový asset systém postavený na Vite/Rsbuild a stává se plnohodnotnou alternativou vedle AssetMapper a Webpack Encore. Balíček @symfony/stimulus-bridge přestal být výchozí závislostí npm (byl svázán výhradně s Webpack Encore), díky čemuž je setup čistší pro projekty využívající moderní bundlery. Opravena byla i detekce direktivy stimulusFetch: 'lazy' v preserved-comment formátu (/*! stimulusFetch: 'lazy' */), která způsobovala problémy s lazy-loadovanými TypeScript kontrolery.

Do komponenty Toolkit přibyly dvě nové Shadcn komponenty: Sonner (toast notifikace pro přechodnou zpětnou vazbu) a Combobox (kombinace textového inputu se searchovatelným filtrovatelným výběrem). Příkaz ux:install doznal zlepšení v podobě case-insensitive vyhledávání receptů a lepších chybových hlášení s návrhy podobných názvů. Nový ComponentDocParser nyní čte dokumentační komentáře @prop a @block přímo z Twig šablon včetně výchozích hodnot z {% props %} tagu, a ComponentDocChecker provádí jejich linting. Opraveny byly také chyby v LiveComponent (500 na malformovaném hydration payloadu, nullable collection properties) a v Autocomplete (LIKE ESCAPE pro PostgreSQL).

A Week of Symfony #1019 + maintenance releases symfony release

Týden 6.–12. července 2026 přinesl 48 sloučených pull requestů (31 kód, 17 dokumentace) od 22 přispěvatelů – celkem 5 573 přidaných a 2 979 smazaných řádků. Mezi konkrétní zlepšení patří: lepší DX AssetMapper v debug módu (ignorování zkompilovaných assetů), možnost zakázat redirect po odhlášení v Security komponentě, a podpora asociativních CSV hlaviček pro mapování a řazení sloupců při serializaci. Ve větvi 6.4 byl opraven jitter ve Scheduleru způsobující zmeškané runy a opraveno chování Console při použití output sections.

Do větve 8.2 míří zajímavé novinky: Cron constraint pro validaci cron výrazů, single-use signed URLs, vizuální indikátor dumpovaných proměnných v profileru a podpora non-string parametrů v constraints. Ve frontě čekají PR pro messenger:show příkaz (pro inspekci čekajících zpráv), invokabilní Validator pro kompatibilitu s pipe operátorem (#64844) a možnost zakázat RejectRedeliveredMessageMiddleware. Maintenance verze 6.4.42, 7.4.14, 8.0.14 a 8.1.1 byly vydány 2. července s opravami v Cache, Serializer, Finder, Validator a SecurityBundle.

PHP 8.4.24 RC1, 8.5.9 RC1 a 8.6.0 Alpha 2 php release

Dne 17. července 2026 byly současně uvolněny Release Candidates PHP 8.4.24 RC1 a PHP 8.5.9 RC1. Obě RC záplatují JIT bugy a bezpečnostní chyby – konkrétně přetečení celých čísel v base64 encoding a funkci getimagesize(). Finální verze 8.4.24 a 8.5.9 jsou očekávány 30. července 2026. PHP 8.5 zůstává aktuální stabilní větví a přinesla jako vlajkové funkce syntaxi pipe operátoru (|>) a nové URI rozšíření.

Paralelně postupuje vývoj PHP 8.6.0: Alpha 2 je dostupná ke stažení a přináší novou funkci clamp() (omezení hodnoty na rozsah min–max) a výkonnostní vylepšení. Alpha 3 je naplánována na 30. července 2026, finální release se očekává ke konci roku 2026. Aktivní je také diskuse k RFC o aktualizaci release cycle (wiki.php.net/rfc/release_cycle_update) a probíhá revize PHP licence (php.internals).

PHPStan 2.2.5 a phpstan-phpunit 2.0.18 tooling release

PHPStan 2.2.5 bylo vydáno 5. července 2026. Jde o bug-fix release ve stabilní větvi 2.2.x, který opravuje analýzu statických typů. Téměř současně (4. července) vyšlo phpstan-phpunit 2.0.18 – rozšíření pro správnou typovou analýzu PHPUnit testů, které navazuje na phpstan/phpstan ^2.2.3. Balíček phpstan-phpunit přidává return typy jako intersection types pro metody createMock(), getMockForAbstractClass() a podporu pro PHPUnit assertion metody. Zajímavostí je, že samotná php.net infrastruktura záhy bumplila phpstan z 2.2.2 na 2.2.5 skrze Dependabot.

Celé PHPStan 2.x je zaměřeno na hlubší inferenci generik, přesnější analýzu podmínek a snížení false positives při práci s komplexními frameworkovými abstrakcemi jako Doctrine nebo Symfony. Verze 2.2.x navazuje na základy položené v 2.0 (vydána koncem 2024) a je doporučenou větví pro projekty na PHP 8.1+. Changelog je dostupný na GitHubu ve větvi 2.2.x.

Doctrine ORM – EOL větve 2 a stav adopce verze 3 doctrine

Doctrine ORM 3 a DBAL 4 byly vydány v únoru 2024, přesto adopce ORM 3 ke konci roku 2025 dosahovala pouze 25–30 % instalací ORM 2 podle dat Packagist. Z tohoto důvodu tým Doctrine přepracoval původní EOL plán pro ORM 2 (plánovaný na únor 2026) a vydal upřesněný harmonogram zveřejněný v říjnu 2025. Aktuálně nejnovější stabilní verze ORM 3 je 3.6.7 vydaná 25. května 2026. Větev ORM 2 (aktuálně 2.20.x) je nadále udržována zejména bezpečnostními záplatami pro uživatele, kteří migrace ještě nestihli provést.

ORM 3 přináší zásadní architektonické změny: odstranění odkazů na magické __toString při generování SQL, striktní typování v DBAL 4, přímou podporu PHP 8.1 enumů jako sloupce, a nový EntityRepository API. Pro projekty plánující migraci je klíčový také DoctrineBundle, který paralelně udržuje větve kompatibilní s oběma generacemi ORM. Aktuální GitHub releases obou repozitářů jsou na adresách doctrine/orm a doctrine/dbal.

Laravel 13.19.0 – HTTP QUERY metoda a nové helpery release

Laravel 13.19.0 vyšel 7. července 2026 a přinesl podporu HTTP metody QUERY napříč HTTP klientem i testovacími helpery. Konkrétně přibyla metoda Http::query() pro odesílání QUERY requestů, a testovací helpery query() a queryJson(). Nová kolekční metoda reduceInto() zjednodušuje skládání kolekcí do výsledkového objektu, counted() helper byl přidán na Str a Stringable, a hromadný dispatch do SQS nyní využívá SendMessageBatch API pro výrazně nižší latenci při posílání více zpráv najednou.

Databázová vrstva se obohatila o dvě větší novinky: MariaDB se přidala k PostgreSQL jako databáze s nativní podporou tvorby vektorových indexů přímo ze schema builderu (Laravel migrations), což otevírá dveře pro AI/ML aplikace. Dále byla přidána podpora PostgreSQL transaction poolerů (PgBouncer a kompatibilní nástroje) na úrovni frameworku bez nutnosti workaroundů. Laravel 13 je aktuálně podporovaná větev s bezpečnostní podporou do 17. března 2028.