MicroPython 2.0 Geçiş Kılavuzu

MicroPython 2.0, MicroPython’ın bir sonraki ana sürümüdür (şu anda geliştirme aşamasında, henüz kullanılabilir değil).

Neredeyse on yıl boyunca 1.x serisiyle API uyumluluğunu koruduktan sonra, proje genelindeki bazı iyileştirmelerin önünü açmak için MicroPython 2.0, bazı programların güncellenmesini gerektirecek az sayıda geriye dönük uyumsuz API değişikliği getirecek. Bu kılavuz, bu değişikliklere uyum sağlamak için Python kodunuzu nasıl güncelleyeceğinizi açıklar.

Bu belge devam etmekte olan bir çalışmadır. MicroPython 2.0 üzerinde daha fazla çalışma yapıldıkça, aşağıdaki listelere daha fazla öğe eklenecektir.

Not: Şu anda indirilebilir MicroPython 2.0 aygıt yazılımı derlemeleri bulunmamaktadır. MICROPY_PREVIEW_VERSION_2 yapılandırma seçeneğini etkinleştirerek bunu kendiniz derleyebilirsiniz. Sürüme hazır olmaya yaklaştıkça, hem 1.x.y hem de 2.0.0-preview için derlemeler sağlanacaktır.

Donanım ve çevre birimleri

Genel bakış

Amaç, machine API’larında farklı portlar arasındaki tutarlılığı iyileştirerek, desteklenen herhangi bir mikrodenetleyicide çalışan kod, belge ve öğretici yazmayı kolaylaştırmaktır.

Bu, bazı portların API’larının diğer portlarla eşleşecek şekilde değişmesi gerektiği anlamına gelir.

Değişiklikler

Henüz yok

İşletim sistemi ve dosya sistemi

Genel bakış

Birincil amaç, .mpy dosyalarını önce RAM’e kopyalamadan doğrudan dosya sisteminden çalıştırma yeteneğini desteklemektir. Bu, kod dağıtım süresini iyileştirir, bellek yükünü ve parçalanmayı azaltır.

Ek olarak, ileri bir amaç da bölümleri, dosya sistemi türlerini ve USB yığın depolama gibi seçenekleri yapılandırmanın daha esnek bir yolunu desteklemektir.

Değişiklikler

Henüz yok

CPython uyumluluğu

Genel bakış

Amaç, MicroPython uzantılarını CPython API’larından kaldırarak CPython ile uyumluluğu iyileştirmektir. Çoğu durumda bu, mevcut MicroPython’a özgü işlevlerin veya sınıfların yeni modüllere taşınması anlamına gelir.

Bu, hem CPython hem de MicroPython üzerinde çalışan kod yazmayı kolaylaştırır; bu da geliştirme ve test için kullanışlıdır.

Değişiklikler

Yeni bir vfs modülünün tanıtımı. Aşağıdaki işlevler ve sınıflar os modülünden vfs modülüne taşınmıştır:

  • os.mount

  • os.umount

  • os.VfsFat

  • os.VfsLfs1

  • os.VfsLfs2

  • os.VfsPosix