Skip to content

feat(recipes): backfill honest version blocks for 8 npm/pipx tools#62

Merged
noahhyden merged 1 commit into
mainfrom
feat/recipe-version-backfill
Jul 20, 2026
Merged

feat(recipes): backfill honest version blocks for 8 npm/pipx tools#62
noahhyden merged 1 commit into
mainfrom
feat/recipe-version-backfill

Conversation

@noahhyden

Copy link
Copy Markdown
Owner

Adds version: blocks (check_updates support) to 8 tools whose GitHub releases/latest tag was individually verified to parse cleanly to a real release of the same product.

Recipe Source Latest tag
ansible ansible/ansible v2.21.2
azure-cli Azure/azure-cli azure-cli-2.88.0
buku jarun/buku v5.1
commitlint conventional-changelog/commitlint v21.2.1
doctoc thlorenz/doctoc v2.5.0
netlify netlify/cli v26.2.0
pa11y pa11y/pa11y 9.1.1
parcel parcel-bundler/parcel v2.16.4

Version blocks: 431 → 439. Sources added as gh: shorthand in scripts/recipe_data.py, regenerated via gen_recipes.py --rewrite. ansible uses a version_current: "ansible --version | head -1" override so the label-based extractor reads ansible's core version, not the python version = line.

Deliberately NOT versioned (would produce dishonest/dead update checks)

  • No published releases/latest (tags only): localtunnel, magic-wormhole, awscli, glab — the {github:} shorthand's API call returns nothing.
  • Wrong monorepo package: vercel (@vercel/passport), wrangler (@cloudflare/workflows-shared).
  • False positives: yarn (berry 4.x vs classic 1.22 that brew/npm install), json-server (prerelease-only).
  • ~57 brew/system tools stay un-versioned by policy: installed version tracks Homebrew, not upstream tags.

Verification

  • uv run --script lint_recipes.py → All 520 recipes valid
  • Full suite → 3620 passed, 511 skipped

🤖 Generated with Claude Code

Add version: blocks (check_updates support) to 8 tools whose GitHub
releases/latest tag is verified to parse cleanly to a real release of the
same product: ansible, azure-cli, buku, commitlint, doctoc, netlify, pa11y,
parcel. Version blocks: 431 -> 439.

Sources added as gh: shorthand in scripts/recipe_data.py and regenerated via
gen_recipes.py --rewrite. ansible carries a `version_current: "ansible
--version | head -1"` override so the label-based extractor reads ansible's
core version rather than the "python version =" line further down its output.

Deliberately NOT versioned (would produce dishonest/dead update checks):
- localtunnel, magic-wormhole, awscli, glab — no published releases/latest
  (tags only), so the {github:} shorthand's API call returns nothing.
- vercel, wrangler — monorepos whose releases/latest is an unrelated package.
- yarn — berry 4.x tag vs the classic 1.22 that brew/npm install (false
  positives).
- json-server — prerelease-only latest.
The ~57 brew/system tools stay un-versioned by policy: installed version
tracks Homebrew, not upstream tags, so a {github:} latest would over-claim.

Recipes lint clean (520 valid); full suite 3620 passed, 511 skipped.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@noahhyden
noahhyden merged commit ab1834c into main Jul 20, 2026
5 checks passed
@noahhyden
noahhyden deleted the feat/recipe-version-backfill branch July 20, 2026 09:40
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.

1 participant