İçeriğe geç

Laravel 5.5’den 5.6’ya Yükseltme

Merhaba arkadaşlar,

Bu yazıda Laravel projelerimizi 5.5 sürümünden 5.6 sürümüne nasıl yükseltebileceğimizi anlatacağım.

Yükseltme işlemine geçmeden önce mevcut kullandığımız paketleri kontrol etmemiz gerekiyor. Kullandığımız paketler eğer 5.6 sürümünü desteklemiyorsa ona göre işlemlerimize yeniden yön vermemiz gerekiyor. Bu durumda birkaç sonuç doğuyor.

  1. Tüm kullandığımız paketler yükseltmeyi destekliyor.
  2. Birkaç küçük paket yükseltmeyi desteklemiyor.
    1. Kendimiz pakete müdahale edip güncelleyebiliriz.
    2. Desteklemeyen paketler çok önemli değilse veya alternatifi varsa o paketleri kullanmaktan vazgeçebiliriz.
  3. Kullandığımız paketler projenin omurgasını oluşturduğu için herhangi küçük bir değişiklik projeyi bozacağından veya önemli işlevlerini yapamaz hale geleceğinden eminiz.

2. maddenin ihtimallerine biraz değinmek istiyorum. A şıkkında olduğu gibi eğer paketlere müdahale edip gerekli güncellemeyi yapabilecek yetkinliğe sahipseniz hiç düşünmeden devam edebilirsiniz. Eğer güncellemeyi yapabilecek yetkinliğe sahip değilseniz çalışmayan paketlere alternatif paketler bulup yükseltme sonrasında projenizdeki kodları güncelleyerek versiyon geçişini tamamlamış olabilirsiniz. Ben eskiden alternatif paket bulup ardından projeye müdahale ediyordum ama son 2 yıldır doğrudan paketin kopyasını alarak üzerinde değişiklik yaparak daha az iş yüküyle versiyon geçişi yapar oldum.

1 ve 3. maddeler yoruma kapalı olduğu için onları geçiyorum. Yükseltme işlemi aşağıdaki adımlardan oluşacak.

  1. composer.json dosyasının içeriği güncellenecek.
  2. Güncelleme ile gelen yeni dosyalar projeye eklenecek.

 

1. Composer Dosyasının İçeriği

5.5 sürümündeki composer.json

5.6 sürümündeki composer.json

2 içerik arasındaki farka baktığımızda require, require-dev ve en sonraki minimum-stability ile prefer-stable kısımlarında değişiklik olduğunu görüyoruz. Benim makaleyi yazdığım şu sıralarda 5.6 sürümü geliştirme aşamasında olduğu için minimum-stability ile prefer-stable satırları görünüyor. Sürüm duyurulduktan sonra bu kısımlar kaldırılacaktır. Bizim odaklanmamız gereken yerler require ve require-dev kısımları. 

İlk olarak require kısmındaki değişikliği yapalım.

yerine

yazıyoruz. 

Arından require-dev kısmındaki değişikliği yapalım.

yerine

yazıyoruz ve 1 satır da ekleme yapıyoruz.

Böylelikle güncel hali aşağıdaki şu şekilde oluyor.

Ben örneği boş bir proje üzerinde yaptığım için başka paketler görmüyorsunuz ama siz kendi projenizi yükseltirken diğer paketlerin güncel versiyonlarını da yazmanız gerekiyor.

2. Eksik Dosyaların Oluşturulması

Laravel 5.6 sürümüyle beraber 2 yeni dosya daha projeye katılmış oldu. Bunlar hashing.php ve logging.php config dosyaları.

Projemizin config/ dizini altında hashing.php dosyası oluşturuyoruz ve aşağıdaki içeriği ekliyoruz.

Ardından yine config/ dizini altında logging.php dosyası oluşturuyoruz ve aşağıdaki içeriği ekliyoruz.

Böylelikle eksik dosyalarımızı da tamamlamış olduk.

Şimdi son işlem olarak güncelleyip sonucu görelim.

Güncelleme sonrasında projenizde etkilenmesi muhtemel tüm fonksiyonları en az 1 kere test etmenizi öneriyorum. Eğer bir tema paketi kullanıyorsanız belki bazı view dosyalarınız artık derlenmiyor olabilir. Belki de yetkilendirme için kullandığınız pakette sorunlar çıkabilir. Olası birçok ihtimal vardır. En iyisi tüm projeyi genel hatlarıyla kontrol etmek.

Güncelleme işlemi bu kadar. Daha gelişmiş haliyle incelemek isterseniz şu linkten Laravel’in kendi dokümanını okuyabilirsiniz.

Faydalı olması dileğiyle..

Kategori:LaravelPHP

3 Yorum

  1. Ömer Ömer

    Middleware/TrustProxies.php dosyasında şu değişiklik yapılmalı yoksa hata çıkıyor.

    protected $headers = [
    Request::HEADER_FORWARDED => ‘FORWARDED’,
    Request::HEADER_X_FORWARDED_FOR => ‘X_FORWARDED_FOR’,
    Request::HEADER_X_FORWARDED_HOST => ‘X_FORWARDED_HOST’,
    Request::HEADER_X_FORWARDED_PORT => ‘X_FORWARDED_PORT’,
    Request::HEADER_X_FORWARDED_PROTO => ‘X_FORWARDED_PROTO’,
    ];

    to

    protected $headers = Request::HEADER_X_FORWARDED_ALL;

  2. murat murat

    Makale için teşekkürler, laravel 5.1 lts den 5.5 lts ye geçiş makalesi de yayınlarsanız çok sevinirim iyi çalışmalar

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

nine + 9 =