Aktualizacja
Przejście z wersji 3.x na 4.0
Minimalna wymagana wersja PHP to 8.0.
Klasa Nette\Utils\Reflection
dostarczała metody do pracy z typami getParameterType()
,
getPropertyType()
i getReturnType()
. Metody te powstały w czasach, gdy PHP nie miało typów union,
intersection ani najnowszych typów disjunctive normal form, z którymi już nie działają i zostały zastąpione przez klasę Type. Od wersji 4.0 te metody zostały usunięte.
Metoda Nette\Utils\Reflection::getParameterDefaultValue()
jest przestarzała, ponieważ natywna
ReflectionParameter::getDefaultValue()
już działa poprawnie.
Zlikwidowana została zmienna Nette\Utils\Html::$xhtml
.
Finder
Finder został przeniesiony do pakietu nette/utils
, oryginalny należy usunąć:
composer remove nette/finder
Na Linuksie nowo zachowuje się w trybie case-sensitive.
W poprzedniej wersji metody exclude()
i filter()
działały inaczej, gdy były wywoływane
przed from()
lub in()
oraz po nich. To już nie obowiązuje, exclude()
i
filter()
działają zawsze tak samo. Wcześniejsza filter()
wywoływana dopiero po została
zastąpiona nową metodą descentFilter()
.
Finder już nie implementuje interfejsu Countable.
Ciąg znaków zaczynający się od ukośnika w Finder::findFiles('/f*')
jest teraz uważany za ścieżkę
absolutną, należy go zastąpić np. Finder::findFiles('./f*')
.
Jeśli katalog, w którym szukasz, nie istnieje, zostanie zgłoszony wyjątek Nette\InvalidStateException
(zamiast
UnexpectedValueException
).