Hi, we've been asked if Autobahn runs under Jython. Since there is an upcoming Jython version that supports 2.7 Python API, I thought I'd give it a try.
To my astonishment, I was able to get Autobahn working with minor efforts ... Tested: Twisted 12.3 under Jython from sources (together with zope.interface 4.05 and setuptools from sources) after applying the following patches. Stock AutobahnPython 0.6 from source. 1) Missing __builtin__.buffer The following is a workaround due to http://bugs.jython.org/issue1521 Include # workaround for Jython, see: http://bugs.jython.org/issue1521 import __builtin__ if not hasattr(__builtin__, 'buffer'): def _buffer(object, offset = None, size = None): if offset is None: offset = 0 if size is None: size = len(object) return object[offset:offset+size] __builtin__.buffer = _buffer at the beginning of "twisted/python/compat.py". 2) Weird platform ident Jython identifies itself as "Java" .. I was testing on Windows. twisted/python/runtime.py Line 36 #'java': 'java', 'java': 'win32', This is necessary on Windows since otherwise Posix API is assumed. Of course above is just a quick hack. C:\Users\oberstet>jython Jython 2.7b1 (default:ac42d59644e9, Feb 9 2013, 15:24:52) [Java HotSpot(TM) 64-Bit Server VM (Oracle Corporation)] on java1.7.0 Type "help", "copyright", "credits" or "license" for more information. >>> import sys, os >>> sys.platform 'java1.7.0' >>> os.name 'java' IMHO, os.name should return the real underlying OS on Jython, not "java" .. what do you think? === Where should those issue be adressed? Should Twisted include workarounds or should I lobby at Jython to "do the right" thing? Cheers, Tobias Mit freundlichen Grüßen, Tobias Oberstein Geschäftsführer +49(0)9131 940 3574 +49(0)176 23 752 055 tobias.oberst...@tavendo.de<mailto:tobias.oberst...@tavendo.de> Skype: toberstein<skype:toberstein?call> Twitter: @oberstet<https://twitter.com/oberstet> Xing: Tobias Oberstein<https://www.xing.com/profile/Tobias_Oberstein> [cid:image003.png@01CE1BF7.08C826D0] Tavendo GmbH · Am Weihersbach 13 · 91074 Herzogenaurach · Deutschland Office / Postanschrift : Waldstrasse 18 · 91054 Erlangen · Deutschland +49(+)700 GO TAVENDO · +49(0)700 46 828 36 36 · www.tavendo.de<http://www.tavendo.de/> Amtsgericht Fürth · HRB 10365 · USt-Id.Nr DE246462916 · Geschäftsführer Tobias Oberstein
<<inline: image003.png>>
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python