-# this is seperate to allow us to use python 2.5 syntax without\r
+# this is separate to allow us to use python 2.5 syntax without\r
# the dependency checker breaking on earlier versions.\r
\r
import sys\r
import subprocess\r
+import os\r
\r
def fail(*message):\r
print >>sys.stderr, "\n".join(message)\r
check_twisted()\r
check_zope()\r
check_win32()\r
+ i+=check_autobahn()\r
i+=check_json()\r
i+=check_java()\r
i+=check_hg()\r
- \r
+\r
print "0 errors, %d warnings." % i\r
\r
if i == 0:\r
fail("qwebirc requires zope interface.",\r
"this should normally come with twisted, but can be downloaded",\r
"from pypi: http://pypi.python.org/pypi/zope.interface")\r
- \r
+\r
def check_twisted():\r
try:\r
import twisted\r
"http://pypi.python.org/pypi/simplejson/")\r
return 1\r
return 0\r
- \r
+\r
+def check_autobahn():\r
+ try:\r
+ import autobahn, autobahn.websocket\r
+ x = autobahn.version.split(".")\r
+ if len(x) != 3:\r
+ raise ImportError("Unknown version: %s", autobahn.vesrion)\r
+ if (int(x[1]) < 8) or (int(x[1]) == 8 and int(x[2]) < 14):\r
+ raise ImportError()\r
+ return 0\r
+ except ImportError:\r
+ warn("autobahn 0.8.14 (minimum) not installed; websocket support will be disabled.",\r
+ "consider installing autobahn from:",\r
+ "http://autobahn.ws/python/getstarted/")\r
+ return 1\r
+\r
if __name__ == "__main__":\r
import dependencies\r
dependencies.check_dependencies()\r