Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Tool to determine what lowest version of Python required?

Is there something similar to Pylint, that will look at a Python script (or run it), and determine which version of Python each line (or function) requires?

For example, theoretical usage:

$ 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 

Is such a thing possible? I suppose the simplest way would be to have all Python versions on disc, run the script with each one and see what errors occur..

like image 379
dbr Avatar asked Apr 29 '09 22:04

dbr


1 Answers

Inspired by this excellent question, I recently put together a script that tries to do this. You can find it on github at pyqver.

It's reasonably complete but there are some aspects that are not yet handled (as mentioned in the README file). Feel free to fork and improve it!

like image 62
Greg Hewgill Avatar answered Sep 28 '22 01:09

Greg Hewgill