4 puan yazan GN⁺ 2025-08-08 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Immich geliştirme sürecinde edinilen lanetli bilgi listesini paylaşıyorum
  • Farklı yazılım ve altyapı ortamlarında karşılaşılan beklenmedik sorunlar derlenmiş
  • EXIF meta verileri, YAML boşluk işleme, PostgreSQL gibi araç ve dile özgü sorunlardan bahsediliyor
  • Bazı sorunlar doğrudan güvenlik, platform uyumluluğu ve açık kaynak bağımlılığı ile bağlantılı
  • Geliştiriciler için dikkat edilmesi gereken gerçek örnekler ve kök nedenler öne çıkarılıyor

Genel Bakış

Immich geliştirme ekibi, proje sürecinde bir daha yaşamak istemedikleri lanetli bilgileri paylaşıyor. Bu, gerçek bir hizmet geliştirme ve işletme sırasında farklı araçlarda, dillerde ve platformlarda doğrudan karşılaşılan beklenmedik tuzaklar ve sorunları listeler.

Lanetli Bilgi Listesi

  • 4 Haziran 2025

    • Zitadel'deki Actions lanetli bir işlev.
    • Zitadel'in sağladığı özel betikleme özelliği JS motoru tabanlı olsa da, regex adlandırılmış yakalama gruplarını desteklemediği için sınırlı kaldığını gösterir.
  • 30 Mayıs 2025

    • Microsoft Entra PKCE'yi destekler ancak bunu OpenID discovery belgesinde belirtmez.
    • Bunun sonucunda mevcut özellik istemci tarafından algılanmaz.
  • 5 Mayıs 2025

    • Görselleri tanımlayan EXIF meta verilerindeki boyut bilgisi, gerçek görselle farklı olabilir.
    • Bu fark kırpma ve yeniden boyutlandırma işlemlerinde hataya neden olur.
  • 1 Nisan 2025

    • YAML boşluk işleme çoğunlukla öngörülenin aksine çalışır.
    • Biçimlendirmeye hassastır ve içerik yanlış yorumlanabilir.
  • 20 Eylül 2024

    • Windows gizli dosyalar "w" bayrağı ile açılamaz.
    • SMB'nin "hide dot files" seçeneğiyle birleşince dosya gezinimi ve işleme karışıklığı artar.
  • 7 Ağustos 2024

    • Bash betiğinde carriage return (CRLF) sorunu yaşanabilir.
    • Git checkout sırasında otomatik olarak LF'nin CRLF'ye dönüştürülmesi betik çalıştırmada hata yaratır.
  • 7 Ağustos 2024

    • Cloudflare Workers içinde fetch, https belirtilse bile varsayılan olarak http kullanır.
    • Bu, yeniden yönlendirme döngüsü gibi ağ problemlerine neden olabilir.
  • 21 Temmuz 2024

    • Mobil GPS paylaşımı, uygulamanın konum izni yokken görüntülerdeki GPS bilgisini sessizce kaldırır.
    • Konum tabanlı servis doğruluğu ve gizlilik üzerinde etkisi vardır.
  • 3 Temmuz 2024

    • PostgreSQL'deki NOTIFY yalnızca transaction içinde çalışır.
    • socket.ionun postgres-adapter'ıyla birlikte kullanıldığında her 5 saniyede bir WAL kaydı oluşarak yük artar.
  • 3 Temmuz 2024

    • npm script çalıştırıldığında her seferinde npm registry'ye HTTP isteği gönderilir.
    • Bu yüzden sağlık kontrolünü script ile yapmak verimsizdir.
  • 28 Haziran 2024

    • JavaScript topluluğundaki bazı kullanıcılar, "geriye dönük uyumluluk" gerekçesiyle yaklaşık 50 paket bağımlılığı zorunlu olarak eklemiştir.
    • Bu paketlerin tamamını tek bir kullanıcı yönetmektedir.
  • 25 Haziran 2024

    • bcrypt uygulamaları yalnızca stringin ilk 72 baytını kullanır.
    • Geri kalan karakterler yoksayılır, bu da uzun parolaların anlamsız hale gelmesine yol açar.
  • 31 Ocak 2024

    • JavaScript Date nesnesi yılı ve günü 1'den, ayı 0'dan başlatır.
    • Kolayca kafa karıştırıcı bir yapıdır.
  • 9 Ocak 2024

    • Node.js v20.8 öncesinde, --experimental-vm-modules seçeneğini kullanan CommonJS projesinde ES modülünün CommonJS modülünü tekrar çağırması halinde
      • segfault (segmentasyon hatası) ile Node.js çökmesi oluşurdu.
  • 28 Aralık 2023

    • PostgreSQL parametre sınırı 65.535'tir.
    • Büyük hacimli toplu ekleme işlemlerinde performans sınırına neden olur.
  • 26 Haziran 2023

    • Bazı web API'leri yalnızca Secure Contexts içinde kullanılabilir.
    • Örneğin Clipboard API gibi API'ler yalnızca HTTPS veya localhost ortamında çalışır.
  • 23 Şubat 2023

    • TypeORM'un remove uygulaması, giriş değerini doğrudan etkiler.
    • Orijinal nesnenin id özelliğini bile siler.

Sonuç

Bu tür lanetli bilgiler, gerçek hizmet geliştirme ve işletme ortamlarında sık karşılaşılan tuzaklardır. Geliştiriciler her araç, programlama dili ve ortamda gizli kısıtları ve sorunları önceden tespit ederek etkin problem çözümü ve stabil bir hizmet geliştirme sürecine katkı sağlar.

Henüz yorum yok.

Henüz yorum yok.