Skip to content

Install the TTS extra the model test needs - #108

Merged
sw005320 merged 1 commit into
masterfrom
ci/model-test-needs-tts-extra
Oct 5, 2026
Merged

sw005320 merged 1 commit into
masterfrom
ci/model-test-needs-tts-extra

Conversation

@sw005320

@sw005320 sw005320 commented Oct 5, 2026

Copy link
Copy Markdown
Collaborator

The weekly Model test failed 116 of 146 models after 5h15m. Every failure is a missing package, and every one of them is in espnet's [tts] extra:

 88  ImportError: `pyworld` is not available
 60  RuntimeError: jaconv is not installed: pip install espnet[tts]
 60  RuntimeError: g2p_en is not installed: pip install espnet[tts]
 44  ModuleNotFoundError: No module named 'pyworld'
 20  ModuleNotFoundError: No module named 'pypinyin'

Since espnet's dependency split, a bare install carries the inference dependencies only, and this workflow installs a bare espnet from git. The TTS models it then loads need pyworld, pypinyin, espnet-g2p-en and jaconv, which are exactly what [tts] adds.

The extra goes into the requirement itself:

espnet-version: ["espnet[tts] @ git+https://github.com/espnet/espnet.git"]

rather than a second pip install "espnet[tts]", which would fetch espnet from PyPI over the git checkout the matrix just asked for. Checked that the string parses as a PEP 508 requirement carrying both the extra and the URL.

This removes the cause of all 116 failures; whether every model then loads is what the next run will say, and that run is five hours, so it is not something this PR can show. Worth a workflow_dispatch after merge rather than waiting for Monday.

The unit-test workflow installs the same way but is green: it does not build TTS models.

🤖 Generated with Claude Code

The weekly run has been failing 116 of 146 models, every one of them on a
package from espnet's [tts] extra: pyworld, g2p_en, jaconv, pypinyin. Since
the dependency split a bare espnet install carries inference dependencies
only, and this workflow installs a bare espnet.

The extra goes in the requirement rather than a second pip line, because
'pip install espnet[tts]' afterwards would fetch espnet from PyPI over the
git checkout the matrix asked for.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@mergify

mergify Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

This pull request does not currently match the merge queue conditions, so it cannot be queued from here. The box comes back if it matches again.

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 63.91%. Comparing base (605c530) to head (1469438).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #108   +/-   ##
=======================================
  Coverage   63.91%   63.91%           
=======================================
  Files           5        5           
  Lines        1258     1258           
=======================================
  Hits          804      804           
  Misses        454      454           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@coderabbitai

coderabbitai Bot commented Oct 5, 2026

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: espnet/espnet_model_zoo/.coderabbit.yaml
  • Review profile: QUIET
  • Plan: Advanced
  • Run ID: 3d39d77c-3ff5-4eb8-ac59-c40a881ee698
📥 Commits

Reviewing files that changed from the base of the PR and between 605c530 and 1469438.

📒 Files selected for processing (1)
  • .github/workflows/model_test.yaml

Included review availability: This review used your included allowance. Your plan provides up to 2 included reviews per hour; 1 remain after this review.


📝 Walkthrough

Walkthrough

The model test workflow now installs the ESPnet Git package with the tts extra through its matrix requirement. Comments explain why the extra is included and why it is not installed in a separate step.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~5 minutes

Change: Bug fix

Merge Risk: ⚪ Minimal · up to 14694

This CI-only change enables dependencies for the existing TTS model tests and does not alter production behavior. No actionable merge-blocking risk is established; a model-test run can confirm the intended coverage.

Security Architecture Review

Security architecture risk: 🔵 Low · up to 14694

The change is confined to model-test CI and adds dependencies required by existing TTS tests. Triggers and credential handling are unchanged, and no token compromise is established. Effective job permissions and credential exposure remain unverified.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — A compromised newly installed dependency could execute within the model-test job during installation or use. Repository writes, secret theft, or broader authenticated access are not established: those outcomes depend on credential availability and authority that remain unknown.

Security Findings and Attack Paths

  • observed — The supplied security assessment retains no findings and defers the token-exposure candidate. Its unresolved proof gap is the effective GITHUB_TOKEN permissions and whether installed code can access that token; this is uncertainty, not a verified compromise.

Hardening Proposals

  • proposed — Make the workflow’s minimum required token permissions explicit and confirm credential availability to installation and test subprocesses. This would bound the expanded dependency trust surface; it is hardening and evidence gathering, not remediation of a verified PR-introduced finding.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely states the main change: adding the TTS extra required by the model-test workflow.
Description check ✅ Passed The description explains the missing TTS dependencies, the Git-based requirement change, and the need for a follow-up model-test run.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@sw005320
sw005320 merged commit c5d46cc into master Oct 5, 2026
6 checks passed
@sw005320
sw005320 deleted the ci/model-test-needs-tts-extra branch October 5, 2026 12:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants