Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Test skipped on Linux

オープン
#503 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
30/100
issue の種類
バグ
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
python
領域
testing-qa

調査の方向性

ipykernel/tests/test_kernel.py と test_complete 関数から始め、次に Linux で失敗を再現します。traceback の IPython/core/completer.py のパスと、Jedi のパラメーター説明フォーマットを通して補完リクエストを追跡します。テストをスキップする必要がなくなり、ValueError なしで補完応答を受け取れば完了です。

索引モデルが issue の本文から書いたものです。

説明

The test_complete function was failing on Travis in master with:

    def test_complete():

        with kernel() as kc:

            execute(u'a = 1', kc=kc)

            wait_for_idle(kc)

            cell = 'import IPython\nb = a.'

            kc.complete(cell)

>           reply = kc.get_shell_msg(block=True, timeout=TIMEOUT)

ipykernel/tests/test_kernel.py:265: 

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

../../../virtualenv/python3.6.7/lib/python3.6/site-packages/jupyter_client/client.py:78: in get_shell_msg

    return self.shell_channel.get_msg(*args, **kwargs)

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <jupyter_client.blocking.channels.ZMQSocketChannel object at 0x7f3c1ededb70>

block = True, timeout = 15000

    def get_msg(self, block=True, timeout=None):

        """ Gets a message if there is one that is ready. """

        if block:

            if timeout is not None:

                timeout *= 1000  # seconds to ms

            ready = self.socket.poll(timeout)

        else:

            ready = self.socket.poll(timeout=0)

    

        if ready:

            return self._recv()

        else:

>           raise Empty

E           queue.Empty

../../../virtualenv/python3.6.7/lib/python3.6/site-packages/jupyter_client/blocking/channels.py:57: Empty
----------------------------- Captured stdout call -----------------------------

[IPKernelApp] ERROR | Exception in message handler:

Traceback (most recent call last):

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/ipykernel/kernelbase.py", line 268, in dispatch_shell

    yield gen.maybe_future(handler(stream, idents, msg))

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/tornado/gen.py", line 735, in run

    value = future.result()

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/tornado/gen.py", line 209, in wrapper

    yielded = next(result)

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/ipykernel/kernelbase.py", line 583, in complete_request

    matches = yield gen.maybe_future(self.do_complete(code, cursor_pos))

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/ipykernel/ipkernel.py", line 354, in do_complete

    return self._experimental_do_complete(code, cursor_pos)

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/ipykernel/ipkernel.py", line 379, in _experimental_do_complete

    completions = list(_rectify_completions(code, raw_completions))

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 484, in rectify_completions

    completions = list(completions)

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 1820, in completions

    for c in self._completions(text, offset, _timeout=self.jedi_compute_type_timeout/1000):

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 1877, in _completions

    signature = _make_signature(jm)

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 991, in _make_signature

    return '(%s)'% ', '.join([f for f in (_formatparamchildren(p) for signature in completion.get_signatures()

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 991, in <listcomp>

    return '(%s)'% ', '.join([f for f in (_formatparamchildren(p) for signature in completion.get_signatures()

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 992, in <genexpr>

    for p in signature.defined_names()) if f])

  File "/home/travis/virtualenv/python3.6.7/lib/python3.6/site-packages/IPython/core/completer.py", line 969, in _formatparamchildren

    'Expected "param ...", found %r".' % description)

ValueError: Jedi function parameter description have change format.Expected "param ...", found 'def __sizeof__'".

We are skipping the test on Linux in #500 because we couldn't find a way to fix the test.

主要言語
Python
スター
734
フォーク
411
平均マージ
1日 2時間
マージ済み PR(30日)
9

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

ipython/ipykernel のほかの issue

ipython/ipykernel の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。