【发布时间】:2021-02-19 01:35:46
【问题描述】:
截至今天,flutter 的稳定通道上不提供 null 安全性。
但是我想写一个空安全的包。
如果我希望不选择 null 安全的人使用所述包,我是否需要维护该包的 2 个版本?一个具有零安全性,一个没有?如果是这样,是否有自动将 null 安全代码转换为旧的非 null 安全的工具?
【问题讨论】:
截至今天,flutter 的稳定通道上不提供 null 安全性。
但是我想写一个空安全的包。
如果我希望不选择 null 安全的人使用所述包,我是否需要维护该包的 2 个版本?一个具有零安全性,一个没有?如果是这样,是否有自动将 null 安全代码转换为旧的非 null 安全的工具?
【问题讨论】:
现在建议您将其提交给 pub,其中 pubspec 至少需要 2.12.0-259.9.beta。 pub 求解器会注意到它对于任何非空安全飞镖来说都是遥不可及的,并忽略它。 (pub outdated 仍然报告它。)https://dart.dev/null-safety/migration-guide#version 的更多详细信息。
是的,在 Flutter stable 包含 2.12 之前,您必须发布两个不同的版本(希望在不同的主编号下)(实际上,它可能已经......不,它是 dart stable 2.10)。
【讨论】:
dart migrate 命令,但是如果你编写一个 new 包,则没有从空安全迁移的命令到非零安全。所以我想我必须反其道而行之,这真是太可惜了..