chaperone
chaperone copied to clipboard
chaperone python3.2 issues :(
hi,
benn trying to install chaperone with python3.2 (debian7), it clearly fails :( error logs:
no previously-included directories found matching 'documentation/_build'
Installing collected packages: chaperone, docopt, PyYAML, voluptuous, aiocron, setproctitle, croniter, trollius, python-dateutil, six
Running setup.py install for chaperone
File "/usr/local/lib/python3.2/dist-packages/chaperone/cutil/servers.py", line 46
self.server = yield from self._create_server()
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cutil/syslog_handlers.py", line 130
(transport, protocol) = yield from connect
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cutil/notify.py", line 49
yield from self.run()
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cproc/commands.py", line 45
result = yield from self.do_exec(opts, protocol.owner.controller)
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cproc/subproc.py", line 24
data = yield from stream.readline()
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cproc/process_manager.py", line 182
yield from asyncio.sleep(0.1)
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cproc/pt/forking.py", line 11
result = yield from self.timed_wait(self.process_timeout, self._exit_timeout)
^
SyntaxError: invalid syntax
File "/usr/local/lib/python3.2/dist-packages/chaperone/cproc/pt/cron.py", line 74
yield from super().start()
^
SyntaxError: invalid syntax
this seems to be related to chaned appeared in python3.3: https://docs.python.org/3/whatsnew/3.3.html
by any chance, is there any way to make chaperone compatible with python3.2 ?
thanks anyway for this awesome piece of work :)
Unfortunately, the whole architecture of Chaperone does rely upon Python's new yield from statement as well as the asyncio module, which was not introduced until Python 3.4. So, 3.4 is really a minimum version. It was a tough decision actually, however, supporting older versions of Python would have introduced more dependencies (such as eventlet or Twisted) and that would have added to the requirement footprint.
I do have plans in the background to create a pure C++ version of Chaperone, but there is no time schedule for that yet. More and more people are starting to use it though, so it will bubble up on the priority list.
A pure GO version will be great :D