Docs build succeeds with broken examples: fix 7 failing runblock examples and fail the build on errors
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 39/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- python
- 領域
- documentation, testing
調査の方向性
Start by running sphinx-build -b html docs/source docs/build/html and searching its output for RUNBLOCK-ERROR; the issue names examples in ImageBlobs.py, ImageCore.py, ImageIO.py, ImageFiducials.py, ImageTensor.Tensor, and source/tensor.rst. Read each listed example and its implementation, checking the available mvtbdata image and the documented PyTorch build setup. Done when the listed examples work or are non-executed where needed, and enabling pycon_fail_on_error makes the docs build fail on a runblock error.
索引モデルが issue の本文から書いたものです。
説明
sphinx-pyrunblock executes the .. runblock:: pycon examples in docstrings and .rst pages at build time. When an example raises, it prints a !! [RUNBLOCK-ERROR] <file>:docstring of <object>:<line> block to the terminal, but that is not a Sphinx warning. The build still ends with build succeeded and exit code 0, so broken examples (with their tracebacks in the rendered output) ship unnoticed.
Found on origin/main at 77a3da9c (2026-10-17), both in CI's Docs Publish job (23 error lines) and in a local sphinx-build -b html docs/source docs/build/html in a clean venv (19 lines; Sphinx 9.1.0, sphinx-pyrunblock 1.2.0, OpenCV 5.0.0.93). To find them, grep the build output for RUNBLOCK-ERROR.
Examples to fix
-
Blobs.vc(ImageBlobs.py, example around line 822):blobs.vdoes not exist (AttributeError). Typo or stale attribute name. -
Image.A(ImageCore.py, around line 2140): the example doesimg.A = np.zeros((50,50)), butImageis now immutable and.Ais deprecated (since 2.0.0), so it raises. Rewrite to show creating a newImage. -
Image.array_as(ImageCore.py:2346-2347): callsimg.array_int(...), which no longer exists; usearray_as. -
Image.showwindow(ImageIO.py, around line 498): the signature isshowwindow(self, h, ax, **kwargs)but the example callsshowwindow(h=1)withoutax, then uses an undefinedwindow. Fix the example or the signature. -
Image.fiducial(ImageFiducials.py:115): readstags.png, which is not inmvtbdata;apriltag12.pngis. Use an image that exists (and make sure the dictionary name matches the tags in it). -
ImageTensor.Tensorandsource/tensor.rst(lines 30 and 47): PyTorch is not installed in the docs build (ModuleNotFoundError,ImportError: PyTorch is required). Either addtorch(CPU wheel) to thedocsextra, or turn these into non-executed code blocks. -
Image.draw_point(ImageCore.py:4169): fails on OpenCV 5.0; this is a library bug, tracked in #158, not an example error.
Most of the NameErrors in the logs (img, tensor, fiducials, window, W, rand) are fallout from one of the above failing earlier in the same block.
Stop it regressing
- Turn on sphinx-pyrunblock's
pycon_fail_on_error(added in 1.1.0) once the list above is clean, so a failing example fails the docs build. Until then, consider a CI step that greps the build log forRUNBLOCK-ERRORand prints the count.
This should be resolved before the next release; the Docs Publish job currently publishes these tracebacks.
Related: the 111 ordinary Sphinx warnings in the same build (9 "Block quote ends without a blank line", cross-reference ambiguities, duplicate object descriptions, the SMTB intersphinx 404) are a separate clean-up.
- 主要言語
- Python
- スター
- 224
- フォーク
- 35
- 平均マージ
- 1日 20時間
- マージ済み PR(30日)
- 34
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
petercorke/machinevision-toolbox-python のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 76/100
petercorke/machinevision-toolbox-python#160 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 42/100
petercorke/machinevision-toolbox-python#157 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
petercorke/machinevision-toolbox-python#152 ·
メンテナーはふだん 1 日以内に返信
-
ROSBag: RealSense bags have a 4-byte depth-units trailer that is guessed, not parsed再び着手できるかも このイシューのプルリクエストはマージされずにクローズされました。 オープンbug help wanted
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
petercorke/machinevision-toolbox-python#151 ·
メンテナーはふだん 1 日以内に返信
-
Sources.py: quick wins, split into a package, and API unification対応中かも @zw1915 が 5 日前に担当しました。 オープンhelp wanted tech-debt
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
petercorke/machinevision-toolbox-python#150 ·
メンテナーはふだん 1 日以内に返信
petercorke/machinevision-toolbox-python の issue をすべて見る
似ている issue
-
難易度 1/5 1〜3時間 初心者へのやさしさ 88/100
fossasia/visdom-dev#69 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
BUG: PROD: v1.3.0-beta Onboarding Profile Picture Misaligns When Name Validation Error Appears対応中かも @RitikaSen27 が今日担当しました。 オープンbug good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
AOSSIE-Org/PictoPy#1647 · コメント 2 件 ·
メンテナーはふだん 2 日以内に返信
-
[oblt-aw][autodoc] Update workflow docs for gh-aw v0.92.5 and detector permission scope対応中かも @github-actions が今日担当しました。 オープン
難易度 1/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信