MicroPython 2.0 迁移指南

MicroPython 2.0 是 MicroPython 的下一个主要版本(目前仍在开发中,尚不可用)。

在与 1.x 系列保持了近十年的 API 兼容性之后,为了解除某些项目级改进的阻碍,MicroPython 2.0 将引入少量破坏性的 API 变更,这会要求一些程序进行更新。本指南说明如何更新你的 Python 代码以适应这些变更。

本文档仍在编写中。随着 MicroPython 2.0 的工作进一步推进,下面的列表中将会添加更多条目。

注意: 目前还没有可供下载的 MicroPython 2.0 固件构建。你可以通过启用 MICROPY_PREVIEW_VERSION_2 配置选项来自行构建。随着发布日期临近,将会同时提供 1.x.y2.0.0-preview 两种构建。

硬件与外设

概述

目标是提升 machine API 在不同 port 之间的一致性,使其更易于编写能在任何受支持的微控制器上运行的代码、文档和教程。

这意味着某些 port 的 API 需要进行更改,以与其他 port 保持一致。

变更

暂无

操作系统与文件系统

概述

首要目标是支持直接从文件系统执行 .mpy 文件,而无需先将它们复制到 RAM 中。这缩短了代码部署时间,并减少了内存开销和碎片化。

此外,另一个目标是支持以更灵活的方式配置分区、文件系统类型以及诸如 USB 大容量存储之类的选项。

变更

暂无

CPython 兼容性

概述

目标是通过从 CPython API 中移除 MicroPython 扩展来提升与 CPython 的兼容性。在大多数情况下,这意味着将现有的 MicroPython 专有函数或类移动到新的模块中。

这使得编写在 CPython 和 MicroPython 上都能运行的代码更加容易,对开发和测试都很有帮助。

变更

引入了一个新模块 vfs。以下函数和类已从 os 移动到 vfs

  • os.mount

  • os.umount

  • os.VfsFat

  • os.VfsLfs1

  • os.VfsLfs2

  • os.VfsPosix