From a2b904421e5155c65cfa11869ada7aa76afb39c9 Mon Sep 17 00:00:00 2001 From: Derek Gulbranson Date: Wed, 29 Jul 2026 19:16:07 -0700 Subject: [PATCH] Watch namedivider-python with Dependabot; note the lock-vs-float gap at release pyproject's [ja] extra floats >=0.4 so fresh installs always resolve the newest namedivider release, while CI's ja-extra job installs from uv.lock -- frozen at whatever was locked last. Nothing moved the lock, so CI would keep proving an old version against adapter code whose guards (DividedName field access, the measured 0.9 confidence floor, the sub-2-char raise) are calibrated to it. A monthly Dependabot uv-lock bump, scoped to just this dependency, runs the ja-extra job against each new release when it appears instead of when a user hits it. The release checklist gains the matching step: merge open Dependabot lock PRs before releasing, so a release never ships proven against an older namedivider than the one its users will install that day. Co-Authored-By: Claude Fable 5 --- .github/dependabot.yml | 11 +++++++++++ AGENTS.md | 3 +++ 2 files changed, 14 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 8ac6b8c4..277f5bf3 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,3 +4,14 @@ updates: directory: "/" schedule: interval: "monthly" + # nameparser has no runtime dependencies; this watches the one optional-extra + # dependency, namedivider-python (the [ja] segmenter). pyproject floats >=0.4 so + # fresh installs always get the newest release, but CI's ja-extra job installs + # from uv.lock — without these bumps, CI keeps proving an old version while + # users install a newer one. + - package-ecosystem: "uv" + directory: "/" + schedule: + interval: "monthly" + allow: + - dependency-name: "namedivider-python" diff --git a/AGENTS.md b/AGENTS.md index 29633d59..790d70d9 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -49,6 +49,9 @@ uv run sphinx-build -b html docs dist/docs # 0. Review docs/ for anything stale — especially usage.rst (examples, API surface) # and any .rst files that reference config constants or HumanName kwargs # Also review AGENTS.md for stale commands, architecture notes, or gotchas +# And check for open Dependabot PRs on uv.lock (namedivider-python) and merge them +# first — pyproject floats >=0.4 so fresh installs get the newest namedivider, but +# CI's ja-extra job installs from uv.lock and only tests what the lock pins # 1. Bump VERSION in nameparser/_version.py (and the `version:` field in CITATION.cff to match) # For a pre-release, set PRE_RELEASE = 'rc1' (etc.) — __version__ joins it without a dot ('2.0.0rc1'); '' means final # 2. Stamp "Unreleased" → "X.Y.Z - Month DD, YYYY" in docs/release_log.rst