Есть ли что-то похожее на Pylint, которое будет смотреть на скрипт Python (или запустить его) и определить, какую версию Python требуется для каждой строки (или функции)?Инструмент для определения того, какая минимальная версия Python требуется?
Например, теоретический расход:
$ magic_tool <EOF
with something:
pass
EOF
1: 'with' statement requires Python 2.6 or greater
$ magic_tool <EOF
class Something:
@classmethod
def blah(cls):
pass
EOF
2: classmethod requires Python 2.2 or greater
$ magic_tool <EOF
print """Test
"""
EOF
1: Triple-quote requires Python 1.5 of later
ли такое возможно? Я предполагаю, что самым простым способом было бы иметь все версии Python на диске, запустить сценарий с каждым и посмотреть, какие ошибки возникают.
+1 Это отличный вопрос. В последнее время я искал что-то подобное. – Zifre
Это, безусловно, возможно. Однако, скорее всего, он еще не реализован. – lothar
Отличный вопрос. Запуск большого проекта в последовательной версии Python не был бы очень окончательным, если бы у вас не было, скажем, модульных тестов, которые волшебным образом обеспечивали покрытие на 100% кода, поэтому было бы неплохо иметь такой инструмент. –