deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

Python 3.15, lazy imports ve daha hızlı başlangıçla release candidate aşamasına ulaştı

Python 3.15'in ilk release candidate sürümü; daha hızlı başlangıç için lazy imports, varsayılan encoding olarak UTF-8, yerleşik immutable dict, JIT iyileştirmeleri ve yeni Tachyon profiler ile 1 Ekim'deki final sürüme hazırlanıyor.

Python 3.15, lazy imports ve daha hızlı başlangıçla release candidate aşamasına ulaştı

Python 3.15 ilk release candidate aşamasına ulaştı; değişiklikleri adım adım anlatan bir dev.to yazısına göre final sürümün 1 Ekim 2026'da bekleniyor. Yazarın çizdiği genel tablo evrimsel bir sürüm: çalışmaların büyük kısmı dilin yazılış biçimini değiştirmek yerine performans, araçlar ve uzun süredir var olan sürtünme noktalarını hedefliyor.

Lazy imports başlangıç süresini hedefliyor

En pratik değişiklik lazy imports. Bu davranış sayesinde bazı modüller, başlangıçta önden yüklenmek yerine yalnızca kod bunları gerçekten kullandığında yükleniyor. dev.to özetine göre bu, gerçek işi yapmadan önce çalışma süresinin kayda değer bir bölümünü modül import etmeye harcayan uygulamalar ve komut satırı araçlarına yarar sağlayacak.

Yazar ayrıca açık bir soru da dile getiriyor: lazy imports'un mevcut projelerle uyum sorunlarına yol açıp açmayacağı; beta veya RC'yi test eden geliştiricilerin deneyimlerini paylaşmalarını istiyor.

UTF-8 varsayılan encoding olarak ayarlandı

Python 3.15, UTF-8'i varsayılan encoding yapıyor. dev.to yazısı bunu, encoding kaynaklı hataları azaltmanın bir yolu olarak sunuyor; özellikle de kodun bir makinede sorunsuz çalışıp sistem encoding'i farklı olduğu için başka bir makinede bozulduğu o tanıdık hata senaryosunu. İşletim sistemleri arasında tutarlı davranış, bu tür çapraz platform sürprizlerini daha az yaşatmalı.

Yerleşik immutable dictionary

Dil, frozendict tarzı olarak tanımlanan yerleşik bir immutable mapping kazanıyor. Kullanılan benzetme tuple ile list arasındaki fark: tıpkı bir tuple'ın list'in değiştirilemez alternatifi olması gibi, yeni tip de geliştiricilere üçüncü taraf kütüphanelere başvurmadan, oluşturulduktan sonra değiştirilemeyen dictionary verisi tutmanın standart bir yolunu sunuyor.

JIT kazanımları ve Tachyon profiler

JIT derleyicisi gelişmeye devam ediyor. dev.to özetinde aktarılan ilk benchmark'lar Linux'ta kabaca %8–9'luk kazanımlara, bazı Apple Silicon testlerinde ise daha büyük iyileştirmelere işaret ediyor. Yazar, rakamların büyük ölçüde iş yüküne bağlı olduğu konusunda uyarıyor ve daha geniş çıkarımların ek benchmark'lara bırakılması gerektiğini söylüyor.

Tanılama tarafında ise 3.15, yükü çok düşük tutmaya odaklanan yeni bir sampling profiler olan Tachyon'u getiriyor. Çalışan bir programı çok yüksek frekanslarla örnekleyebiliyor ve dikkat çekici bir şekilde halihazırda çalışmakta olan bir sürece bağlanabiliyor. Bu, performans sorunlarının bir uygulamayı baştan profiler bağlı olarak yeniden başlatmaya gerek kalmadan incelenebilmesi anlamına geliyor.

Terminal iyileştirmeleri ve free-threading durumu

Etkileşimli yorumlayıcı, renkli hata mesajları ve prompt'lar dahil birkaç küçük iyileştirme alırken, sqlite3 komut satırı arayüzü SQL anahtar kelime tamamlama kazanıyor.

Global interpreter lock olmadan derlenen free-threaded Python, opt-in olmaya devam ediyor ve 3.15'te varsayılan değil. Bununla birlikte giderek olgunlaşıyor: dev.to yazısı, C extension geliştiricilerinin bunu desteklemesini kolaylaştıracak iyileştirilmiş ABI desteğine işaret ediyor.

Sürüm halihazırda RC1 aşamasında olduğundan özellik seti büyük ölçüde kilitli sayılıyor; Ekim öncesinde kalan işin hata düzeltmeleri ve son rötuşlar olması bekleniyor.

Neden önemli

Yavaş başlangıç, Python komut satırı araçları hakkında en yaygın şikayetlerden biri; bu yüzden lazy imports, kullanıcıların gündelik hayatta gerçekten hissedeceği bir iyileşme sağlayabilir. UTF-8'in varsayılan olması, pek çok ekibi zor durumda bırakmış yinelenen bir çapraz platform hata kaynağını ortadan kaldırıyor. Çalışan süreçlere bağlanabilen düşük yükprofiler'lı bir profiler — düzeltme: düşük yükprofiler'li değil — düşük ek yüklü bir profiler, uzun süre çalışan servislerdeki performans sorunları enstrümantasyon altında yeniden başlatma olmadan incelenemediğinden gerçek bir operasyonel boşluğu dolduruyor. Tek tek bakıldığında bunlar mütevazı değişiklikler, ama birlikte yıllardır süren sürtünmeyi aşındırıyorlar. RC dönemi ayrıca, bakımcıların lazy imports'un paketlerindeki import zamanı yan etkileriyle kötü etkileşip etkileşmediğini final sürüm yayınlanmadan önce kontrol etmeleri için pratik pencere.

  • #python
  • #performance
  • #release-candidate
  • #programming-languages