Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Fail corpus validation when no Wave sources are discovered

已关闭 适合新手
#810 0 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
82/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
python
领域
testing, tooling

调研方向

从 tools/check_wave_corpus.py 开始,运行提供的 Python 复现代码,该代码会对 corpus_files 和 resolve_wavec 进行 patch。跟踪空的 maintained-corpus 和 --run-std-examples 路径。完成的标准是两个空选择都能在不启动编译器的情况下明确失败,而非空且通过的选择返回零。

由索引模型根据 Issue 内容生成。

描述

bug good first issue needs testing

Problem

The corpus gate returns success when source discovery yields no files. An incomplete checkout or moved/deleted source tree can therefore produce a green validation run that checked nothing.

Starting points: tools/check_wave_corpus.py.

Reproduction

Executed on Linux amd64 with Python 3.14.7. The affected files at local ade878134519b0f957ca28a23c6f9cd98e43dff3 are byte-identical to canonical master 286dad9c8fcb0616f7c719c72cbf453a7d9925fd.

python3 -B - <<'PYREPRO'
import sys
from pathlib import Path
from unittest.mock import patch
from tools import check_wave_corpus as c
with patch.object(c, 'corpus_files', return_value=[]), \
     patch.object(c, 'resolve_wavec', return_value=Path(sys.executable)):
    print('exit:', c.main([]))
PYREPRO

Observed: Corpus result: 0 passed, 0 failed and exit: 0. This isolates discovery; no compiler process is started.

Scope

Easy: reject an empty maintained corpus. When --run-std-examples is requested, also reject an empty std-example selection. This adds failure behavior beyond the general test-coverage tracking in #354.

Completion criteria

  • An empty corpus returns nonzero with a clear diagnostic.
  • Requested example execution cannot pass with zero selected examples.
  • A nonempty passing selection still returns zero, and an empty selection launches no compiler.
主要语言
Rust
星标
56
派生
21
平均合并
4 小时 11 分钟
30 天内合并 PR
48

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

wavefnd/Wave 的其他 Issue

查看 wavefnd/Wave 的全部 Issue

相似的 Issue

更多 Rust Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。