Describe the bug
Not running on python 3.6.10
To Reproduce
$ pyinfra server.domain.tld exec -- echo "hello world"
Traceback (most recent call last):
File "/Users/lsanmartin/Library/Python/3.6/bin/pyinfra", line 5, in
from pyinfra_cli.__main__ import execute_pyinfra
File "/Users/lsanmartin/Library/Python/3.6/lib/python/site-packages/pyinfra_cli/__init__.py", line 5, in
monkey.patch_all() # noqa
File "/Users/lsanmartin/Library/Python/3.6/lib/python/site-packages/gevent/monkey.py", line 1152, in patch_all
patch_contextvars()
File "/Users/lsanmartin/Library/Python/3.6/lib/python/site-packages/gevent/monkey.py", line 183, in ignores
return func(args, *kwargs)
File "/Users/lsanmartin/Library/Python/3.6/lib/python/site-packages/gevent/monkey.py", line 546, in patch_contextvars
_patch_module('contextvars')
File "/Users/lsanmartin/Library/Python/3.6/lib/python/site-packages/gevent/monkey.py", line 408, in _patch_module
_call_hooks=_call_hooks)
File "/Users/lsanmartin/Library/Python/3.6/lib/python/site-packages/gevent/monkey.py", line 354, in patch_module
raise AttributeError('%r does not have __implements__' % source_module)
AttributeError:
Expected behavior
echo hello world
Meta
pyinfra --support.-vv and --debug.@pathcl it looks like you're running into this gevent issue. Gevent has now bumped to v20, so I've removed the max version in https://github.com/Fizzadar/pyinfra/commit/43bd8eb603c0db17680eb699a51ae88b03b9448c. Upgrading gevent and using the pyinfra master branch should fix this.
Going to release v0.14.5 later today which will include this.
@Fizzadar its working on gevent 20.5.2 . Do you plan to use tox? or travis? so in that case we could have multiple python releases being tested
@pathcl Travis _should_ be running! I need to investigate as it's stopped working correctly.
And that's travis fixed (migrated to .com)!