Panduan Migrasi MicroPython 2.0

MicroPython 2.0 adalah rilis utama MicroPython berikutnya (saat ini sedang dalam pengembangan, belum tersedia).

Setelah mempertahankan kompatibilitas API selama hampir satu dekade dengan seri 1.x, untuk membuka blokir beberapa peningkatan di seluruh proyek, MicroPython 2.0 akan memperkenalkan sejumlah kecil perubahan API yang merusak yang akan mengharuskan beberapa program diperbarui. Panduan ini menjelaskan cara memperbarui kode Python Anda untuk mengakomodasi perubahan ini.

Dokumen ini sedang dalam proses pengerjaan. Seiring dengan semakin banyaknya pekerjaan yang dilakukan pada MicroPython 2.0, lebih banyak item akan ditambahkan ke daftar di bawah ini.

Catatan: Saat ini tidak ada build firmware MicroPython 2.0 yang tersedia untuk diunduh. Anda dapat membangunnya sendiri dengan mengaktifkan opsi konfigurasi MICROPY_PREVIEW_VERSION_2. Seiring mendekatnya kesiapan rilis, build akan disediakan untuk 1.x.y dan 2.0.0-preview.

Hardware dan periferal

Ikhtisar

Tujuannya adalah untuk meningkatkan konsistensi dalam API machine di berbagai port, sehingga lebih mudah untuk menulis kode, dokumentasi, dan tutorial yang berfungsi pada mikrokontroler yang didukung.

Ini berarti beberapa API port perlu berubah agar sesuai dengan port lainnya.

Perubahan

Belum ada

OS & sistem file

Ikhtisar

Tujuan utamanya adalah untuk mendukung kemampuan mengeksekusi .mpy files langsung dari sistem file tanpa terlebih dahulu menyalinnya ke RAM. Ini meningkatkan waktu deployment kode dan mengurangi overhead memori serta fragmentasi.

Selain itu, tujuan lanjutan adalah untuk mendukung cara yang lebih fleksibel dalam mengonfigurasi partisi, jenis sistem file, dan opsi seperti USB mass storage.

Perubahan

Belum ada

Kompatibilitas CPython

Ikhtisar

Tujuannya adalah untuk meningkatkan kompatibilitas dengan CPython dengan menghapus ekstensi MicroPython dari API CPython. Dalam kebanyakan kasus, ini berarti memindahkan fungsi atau kelas spesifik MicroPython yang sudah ada ke modul baru.

Ini memudahkan penulisan kode yang berfungsi di CPython maupun MicroPython, yang berguna untuk pengembangan dan pengujian.

Perubahan

Pengenalan modul baru vfs. Fungsi dan kelas berikut telah dipindahkan dari os ke vfs:

  • os.mount

  • os.umount

  • os.VfsFat

  • os.VfsLfs1

  • os.VfsLfs2

  • os.VfsPosix