Yükseltme

Sürüm 3.0'a yükseltme

Nette 3.0, metot parametrelerine ve dönüş değerlerine tür bildirimleri ekler. Nette'ten kalıtım alan bir sınıfta (örneğin bir presenter'da veya bileşende) böyle bir metodu ezerseniz, aynı tür bildirimlerini eklemeniz gerekir; aksi halde PHP “Declaration must be compatible” hatası verir.

Nette\Application\IRouter arayüzü değişti. match() metodu artık bir Nette\Application\Request nesnesi yerine bir parametre dizisi döndürür, constructUrl() de böyle bir dizi kabul eder.

Nette artık her sinyalin aynı origin'den (yani aynı alan adı ve alt alan adından) gönderildiğini denetler. Bu same-origin politikası, olası saldırı vektörlerini azaltmaya yardımcı olan kritik bir güvenlik mekanizmasıdır. Başka origin'lere izin vermek isterseniz, işleyici metoduna @crossOrigin anotasyonunu ekleyin:

/**
 * @crossOrigin
 */
public function handleXy(): void
{
}

Aynısı form gönderimleri için de geçerlidir. Başka origin'lerden gönderime izin vermek isterseniz şöyle yapın:

$form = new Nette\Application\UI\Form;
$form->allowCrossOrigin();

Nette\ComponentModel\Component sınıfının constructor'ı yıllardır kullanılmıyordu ve 3.0 sürümünde kaldırıldı. Bu bir BC break'tir: Nette\Application\UI\Presenter'dan kalıtım alan bir bileşende veya presenter'da üst sınıfın constructor'ını çağırıyorsanız, çağrıyı kaldırmanız gerekir.

Sürüm 2.4'e yükseltme

  • Route ve SimpleRouter artık siteye erişilirken kullanılan HTTP/HTTPS şemasının aynısını üretir. Belirli bir protokol gerektiren bir rota, şemayla birlikte tanımlanabilir, örneğin Route('http://domain.cz/<presenter>').
  • render/action metotlarının bool tipindeki parametrelerinde (yani varsayılan değeri true veya false olanlarda) ve kalıcı parametrelerde artık false ile null birbirinden ayrılıyor. Parametre URL'de yoksa değeri artık null (önceden false).
  • Presenter::getReflection() tarafından döndürülen sınıf artık Nette\Reflection\ClassType'ın torunu değil, getReflection()->getMethod() da artık Nette\Reflection\Method'un torunu değil.
  • SECURED bayrağı ve Route::$defaultFlags kullanımdan kaldırıldı.

Sürüm 2.3'e yükseltme

  • rotalar ve presenter adları büyük-küçük harfe duyarlıdır. Presenter adında yanlış harf kullanırsanız Nette sizi uyarır; performans nedeniyle Route maskesi denetlenmez, bu yüzden onu elle doğrulayın.
  • Route::addStyle() ve Route::setStyleProperty() kullanımdan kaldırıldı ve artık E_USER_DEPRECATED tetikliyor.
  • .phtml şablon uzantısı ve eski bağlantı sözdizimi artık desteklenmiyor.
versiyon: 4.x