🐘 PHP & Symfony Digest

Denní přehled PHP, Symfony a ekosystému · neděle 5. července 2026

TL;DR

PHP 8.5.8 a 8.4.23 – bezpečnostní vydání release php

Dne 2. července 2026 vyšla dvojice bugfix/security vydání PHP 8.5.8 a 8.4.23. Souběžně byly aktualizovány i starší podporované větve 8.2.32 a 8.3.32. Všechny čtyři verze řeší dvě veřejné zranitelnosti CVE-2026-12184 a CVE-2026-14355 plus jednu interní opravu bundlovanou upstream.

Mezi konkrétní opravy patří obcházení ochrany adresářů v Phar, replay problém v OPcache inheritance cache a heap corruption v openssl_encrypt při použití AES-WRAP-PAD (týká se větve 8.4). Nejvíce záplat dostalo rozšíření GD – double free chyby, NaN hodnoty filtrů a přetečení souřadnic u elips a afinních transformací.

Připomeňme, že PHP 8.5 je aktuální stabilní řada s pipe operátorem |>, novým URI rozšířením (RFC 3986 / WHATWG), syntaxí clone() a atributem #[\NoDiscard]; bugfixy a bezpečnostní opravy dostává do 31. 12. 2027.

A Week of Symfony #1016 a novinky v Symfony 8.1 symfony

Týdenní přehled #1016 (15.–21. června 2026) shrnuje 50 sloučených pull requestů (41 kód, 9 dokumentace), 26 uzavřených issue a 24 přispěvatelů. Byla dokončena série článků „New in Symfony 8.1" a pokračuje seriál „New in Twig 4.0" s díly o vylepšení sandboxu a expression parserech. Symfony Book byl aktualizován pro verzi 8.1 ve více jazykových mutacích.

Ve větvi Symfony 8.1 bylo ContainerAwareInterface přejmenováno na ContainerProviderInterface, přibyla vylepšení komponenty ObjectMapper a opravy Messengeru pro abstraktní třídy a Redis. V 8.2 se objevilo bezpečnostní zpřísnění YAML block parseru (omezení na ASCII gramatiku), konfigurovatelný time drift u OidcTokenHandler a kovariantní template podpora v TypeInfo.

Odstartoval také nový seriál Symfony AI pod heslem „One API to Rule Them All". Z akcí se konal Symfony/PHP Meetup Barcelona (25. 6.) a Web Summer Camp 2026 v chorvatské Opatiji (2.–4. července).

Symfony UX 3.2.0 a 2.36.1 – bezpečnostní opravy release symfony

V rámci téhož týdne byly vydány verze Symfony UX 3.2.0 a 2.36.1, které řeší dva bezpečnostní problémy. Uživatelům balíčků Symfony UX (Turbo, Stimulus, LiveComponent a další) se doporučuje aktualizovat na tyto verze, aby měli opravy k dispozici v obou aktivních řadách.

Vydání do dvou paralelních větví (2.x i 3.x) odpovídá běžné praxi Symfony, kdy jsou bezpečnostní záplaty backportovány i do starší udržované řady. Podrobnosti o konkrétních zranitelnostech zveřejňuje projekt v security advisories na GitHubu.

Doctrine ORM 2 – konec životnosti posunut na únor 2027 doctrine

Na setkání Doctrine Core týmu v Paříži v říjnu 2025 padlo rozhodnutí odložit End of Life větve ORM 2. Původně plánovaný konec (únor 2026) byl posunut minimálně na únor 2027. Důvodem je pomalá adopce ORM 3 – podle instalačních čísel z Packagistu tvoří jen zhruba 25–30 % oproti ORM 2.

Od března 2026 se ale rozsah změn ve větvi 2.x výrazně zúží: budou přijímány pouze změny kvůli kompatibilitě s novými verzemi PHP, nikoli nové funkce. Tým zároveň usnadnil přechod – část deprecací z verze 3.0 (například partial objects) byla stažena zpět a upgrade path pro další byl vylepšen.

Doctrine ORM 3.4.0 – Native Lazy Objects a Property Hooks release doctrine

Doctrine ORM 3.4.0 (vydáno 28. června 2025) přineslo podporu Native Lazy Objects – nativních líných objektů z PHP 8.4 – jako moderní náhradu za proxy generované knihovnou. To zjednodušuje lazy loading entit a snižuje závislost na vygenerovaném kódu proxy tříd.

Novinkou je také podpora Property Hooks z PHP 8.4, díky čemuž lze mapovat entity s virtuálními/hooked vlastnostmi. Údržba řady 3.x pokračuje – aktuální verze ORM je 3.6.7 (vydáno 25. května 2026), zatímco DBAL běží v řadě 4.x. Obě knihovny dostávají pravidelné patch releasy během roku 2026.

Ekosystém nástrojů: PHPStan 2.1.x a PHPUnit 13 tooling

PHPStan vydal mezi 15. a 17. dubnem 2026 tři patch verze 2.1.48, 2.1.49 a 2.1.50 ve třech po sobě jdoucích dnech. Opravovaly regrese v řadě 2.1 – zúžování typů u velkých union typů, práci s promoted vlastnostmi a typování scope u enum case. Řada 2.1.x zároveň dolaďuje podporu Property Hooks z PHP 8.4 navazující na start na Level 10 z listopadu 2024.

Z testovacích nástrojů byl v únoru 2026 vydán PHPUnit 13 s metadaty přes PHP 8 atributy, přísnějšími expectations a izolací testů jako výchozím chováním. Na straně balíčkovacího nástroje se v ekosystému stabilizuje Composer 2.8.x a integrace composer audit do CI/CD pipeline se stala běžným standardem.