# Migrating to v0.49 The v0.49 release is the **global naming-standards sweep**, consolidating the naming conventions that lock the v1.0 Tier-1 contract. The release audits the repo against PEP 8, scikit-learn, NumPy, Google Python Style Guide, and Scientific Python SPEC 7; finds the package already 95–99% consistent; closes the small remaining gaps; and ratifies the conventions in [`ADR 0004`](../adr/0004-naming-conventions.md). The SPEC 7 `rng` parameter convention is documented here as the v1.0 contract and adopted at v0.50.0. If you're jumping from v0.47 (or earlier) and have not migrated through v0.48, read `migration/v0.48.md` first. ## What's BREAKING at v0.49 Five Tier-1 renames for naming consistency (pre-v1.0; SemVer-minor per the v0.34.0 BREAKING-minor precedent). Single-consumer lockstep bump in ``prompt-injection-detection-submission``; no deprecation aliases. ### 1. `build_manifest` → `make_manifest` **Before:** ```text from eval_toolkit import build_manifest manifest = build_manifest(...) ``` **After:** ```text from eval_toolkit import make_manifest manifest = make_manifest(...) ``` ### 2. Other Tier-1 renames in the v0.49 sweep See [`CHANGELOG.md`](../../../CHANGELOG.md) for the full list of v0.49 renames — **five Tier-1 renames** (one of which is the `_scorecard`→`scorecards` module promotion) plus two dedups. Pattern is mechanical: `git grep` the old name; replace at all call sites; bump dep pin. ### 3. `scorecards.py` module promotion The previously-internal `_scorecard` module is promoted to public `scorecards` (no underscore). The module re-exports `Scorecard`, `scorecard()`, and `MetricSpec`-aware helpers per ADR 0002 (scorecard as primary metric surface). **Before:** ```text from eval_toolkit._scorecard import scorecard, Scorecard ``` **After:** ```text from eval_toolkit import scorecard, Scorecard # OR from eval_toolkit.scorecards import scorecard, Scorecard ``` ## What's Added at v0.49 - [`ADR 0004`](../adr/0004-naming-conventions.md): the canonical naming conventions ratified for v1.0. Read this before introducing new public symbols. ## Notes - v0.49 ships in parallel with the v0.50 SPEC 7 `rng=` adoption work; the `_rng.py` scaffold lands in v0.49 but is not yet wired into every function signature. See `migration/v0.50.md` for the per-function signature rename. - The naming sweep was discovered to be already 95–99% complete via the industry-research pass; the v0.49 commit closes the remaining gaps rather than introducing new conventions.