Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

2.1.1: `test_popen_io[gevent-sys.executable]` fails

Aberta
#279 0 comentários 1 reação 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
testing

Direção de pesquisa

Comece executando test_popen_io[gevent-sys.executable] no OpenIndiana e inspecionando testing/test_basics.py em torno de test_popen_io e run_check. Rastreie o caminho init_popen_io mostrado na falha para determinar por que o subprocesso não é concluído. Está concluído quando o teste termina dentro do tempo limite e suas asserções de E/S de bytes passam.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

I see this failure while testing execnet 2.1.1 on OpenIndiana:

_____________________ test_popen_io[gevent-sys.executable] _____________________

checker = Checker(python='$(BUILD_DIR)/.tox/py39/bin/python', path=PosixPath('/tmp/pytest-of-marcel/pytest-181/test_popen_io_gevent_sys_execu0'), idx=1)
execmodel = <ExecModel 'gevent'>

    def test_popen_io(checker: Checker, execmodel: ExecModel) -> None:
>       out = checker.run_check(
            inspect.getsource(gateway_base)
            + f"""
    io = init_popen_io(get_execmodel({execmodel.backend!r}))
    io.write(b"hello")
    s = io.read(1)
    assert s == b"x"
    """,
            input="x",
        )

testing/test_basics.py:188:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
testing/test_basics.py:165: in run_check
    return subprocess.run(
/usr/lib/python3.9/subprocess.py:507: in run
    stdout, stderr = process.communicate(input, timeout=timeout)
/usr/lib/python3.9/subprocess.py:1134: in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
/usr/lib/python3.9/subprocess.py:1995: in _communicate
    ready = selector.select(timeout)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <selectors.PollSelector object at 0x7fffa7e1c9a0>, timeout = None

    def select(self, timeout=None):
        # This is shared between poll() and epoll().
        # epoll() has a different signature and handling of timeout parameter.
        if timeout is None:
            timeout = None
        elif timeout <= 0:
            timeout = 0
        else:
            # poll() has a resolution of 1 millisecond, round away from
            # zero to wait *at least* timeout seconds.
            timeout = math.ceil(timeout * 1e3)
        ready = []
        try:
>           fd_event_list = self._selector.poll(timeout)
E           Failed: Timeout >20.0s

/usr/lib/python3.9/selectors.py:416: Failed
Linguagem predominante
Python
Estrelas
103
Forks
49
Métricas de merge de PRs
Nenhum PR com merge em 30d

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de pytest-dev/execnet

Todas as issues de pytest-dev/execnet

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.