Pyinfra: not running on 3.6.10 / os x sierra

Created on 10 Jun 2020  路  4Comments  路  Source: Fizzadar/pyinfra

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: does not have __implements__

Expected behavior
echo hello world

Meta

  • Include output of pyinfra --support.
    amsmac011:kaas lsanmartin$ pyinfra --support
    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: does not have __implements__
  • How was pyinfra installed (source/pip)?
    pip
  • Include pyinfra-debug.log (if one was created)
  • Consider including output with -vv and --debug.
Bug

All 4 comments

@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)!

Was this page helpful?
0 / 5 - 0 ratings