为什么 __future__.annotations (PEP 563) 没有反向移植到 python3.6?

Why is __future__.annotations (PEP 563) not backported to python3.6?

有谁知道为什么在撰写本文时 PEP 563 没有反向移植到 python36?是否有任何计划或什至可能?

我问是因为我可以将它用于 zfit 的代码库,它目前支持 py36 到 py38,而且我不能在不使用字符串的情况下使用前向引用,这有点烦人。特别是考虑到它在 py37 及以上版本中可用。

__future__ 功能在 Python 的特定文档版本中提供,未向后移植。在许多情况下,使它们完全可用会给 Python 解析器带来重大变化,这些变化对于向后移植来说并非微不足道。 annotations is documented to have been added in 3.7.0b1,因此在 Python 的早期版本中永远不会存在。如果您想使用该功能,您需要限制对 3.7+ 的支持,或者为 3.6.x.

制作一个单独维护的版本