A documentação do Python 3.14 afirma que o
from __future__ import annotations
A diretiva será considerada obsoleta com o lançamento da versão 3.14 e deverá ser removida em alguma data futura.
Vai demorar um pouco (não antes de 2029), mas gostaria de saber se é possível escrever arquivos Python que sejam à prova do futuro.
Não posso fazer algo como:
import sys
if (3, 7) <= sys.version_info() < (3, 14):
from __future__ import annotations
como from __future__ import
s deve ocorrer no início de um arquivo.
Como tive a necessidade de dar suporte a algumas das minhas bibliotecas, bem além da data de fim de vida de versões específicas do Python, prevejo que isso será um problema. Provavelmente posso remover essas diretivas durante o processo de construção, mas isso me forçaria a criar rodas não universais, complicando o processo de construção.
Existe uma maneira simples de inserir/usar essa diretiva em arquivos Python de uma forma que seja à prova do futuro?
Basta usá-lo:
Se você quiser removê-lo, certamente haverá ferramentas que podem ajudá-lo (por exemplo, Ruff ).