Repository navigation
Conversation
….2's warnings Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…docs for stale prose User docs, autodoc docstrings and messages, the pipeline stages' Consumes/Produces/Reads lines and ParseState's ownership map, the notes in tests/v2/cases.py, docs/design/ and the AGENTS.md files and vocab README, each read against the 3.0 tree. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
H9's Precedence modifier clause in 3.0 terms (a caller's other title reading), decisions/H9's pointers to the entries that hold its claims, and vocabulary-model's phase 3 line in the shipped tense. H9's budget record re-recorded, 778 -> 784 words: the clause reads no new signal. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Step 0 of the release checklist for 3.0.0: the stale-prose sweep. Each site the checklist names was read against the 3.0 tree, with every doubtful claim run. It changes no behavior: only docs, docstrings, message strings, comments and case notes.
What changed, by site
docs/migrate.rst
Graf Lambsdorff,Sta. Maria/Delos Reyes,María del Carmen,طارق عبد العزيز,Ortega y Gasset VI, the bracketed clauses(PhD, MBA)/(JP),Dumas père,Pr/Profesor,KC/MSW, U+2063, the given namesMaj/Gen/Pharaoh/SaintwithBrig Gen,Silva, Junior Carlos, and the case repair ofST,DELAandMACHADO. Each 1.4 reading was measured against the 1.4.0 wheel.config.surnamesimport and the unwarned read of aLexiconset field.README.rst
Lexiconconfiguration, render in written order and the language packs.Lexiconfield read.python -m doctest README.rstand PyPI'sreadme_rendererare both clean.docs/usage.rst, concepts.rst, modules.rst, index.rst
Lexiconfields (after_given_titles,suffix_acronyms_ambiguous,given_name_abbreviations, emptyingtitles) became the 3.0 calls (words(...),readings_of(...)).last_listbecamefamilyinSTABLE_TAGS.docs/customize.rst, locales.rst
ES_ARis mentioned besideES's given-name list and in the composition paragraph.render()'s description covers the views and the default layout in read order.--strict.rules_patchusers are listed in full.Autodoc docstrings and messages (
_types.py,_locale.py,locales/__init__.py,locales/ja.py)AmbiguityKinddocs no longer cite internalLexicon.title_phrasesandconjunctions_ambiguous, or "planned for 2.x".surname1's folded-middle example was wrong against rules/R11 (the first-surname views) and is fixed.Localenames itslanguages.jaImportError quotes'nameparser[ja]'for zsh.mypy --strict). The one not run issegmenter=locales.ja_segmenter(): namedivider-python isn't installed in this checkout.Pipeline stage headers (
_assemble,_assign,_classify,_post_rules,_script_segment) and ParseState's ownership map_classifyover-claimedgiven_namesand missedtitle_case_name_words._assignreads the title-phrase sets for H9 (the title phrase).post_ruleswrites S1's set-apart roles and R11's first-surname tag.tests/v2/cases.py notes
rules.md#R3's "a conjunction never initials" is unqualified:Juan de yhas baseyand initialsJ.#461 (connective initials), H9'sjustice, Set apart a bracketed clause of credentials, generations or titles (#792, #771) #1067's bracketed clauses (rules/S13's twin examples, rules/S1), R6's rendering and ShouldDoe, John MAreadMAas a credential, as 1.4.0 did, or at least report the fork? #531. Each was rewritten from a live run, checked against the 2.8.2 wheel where a past reading is named.docs/design/
Doe, John Vreport that the V might be a middle initial? #877 and Should a bracketed generation end there? "W. Russell (Jr.) Withers" reads family "Russell", suffix "Jr. Withers" #792 are decided, and Should common British post-nominals (KC,FREng,DL,FRS,PC…) be in the vocabulary, soJane Doe KCkeeps familyDoe? #965's leftovers moved to Should a credential written in its own mixed case (FREng,CEng) end a name as the credential?Jane Doe CEng FIETreads family 'CEng' #1053.Not standing:line for the v1 title list.Graf, a particle since ShouldOtto Graf Lambsdorffread familyGraf Lambsdorff, asManfred Freiherr von Richthofenreads familyFreiherr von Richthofen? #709, toHerzog.remove(w, kind="given")and a caller's other title reading. Its budget record was re-recorded, 778 → 784 words; the clause reads no new signal (axis 12).add().AGENTS.md files and nameparser/vocab/README.md
honorificsview in the snapshot list;GENERATION_WORDSand the rest);_typesimporting_parserat call time;ADDED_INfields;Parserno longer called "(future)";_INITIALno longer said to be public.St ClairandSan Martínwith their capital?JOHN ST CLAIRrepairs toJohn st Clair#1069.:mod:link.default = falseexample was wrong (pèrehas been on by default since Locale packs forAlexandre Dumas filsandJiří Dienstbier ml.: generational words that collide outside their language #684) and is now csml. The phase-3 lines are in the past tense.Checks
uv run pytestpasses on 3.11 and 3.15: 37,268 passed, 29 skipped, 5 xfailed. The-n0 -m serialpass also passes (54).uv run mypyanduv run ruff checkare clean.sphinx-build -b doctestgives 647 tests with 0 failures, and-b htmlgives no warnings.uv.lockpins namedivider-python 0.4.2, the latest on PyPI.Found, left for a decision
SMITH VD V, JOHNreads asSMITH V, JOHNdoes. The tree gives familySMITH VD, suffixV(reported) against familySMITH V. The change was bisected to Ask one predicate for every roman-numeral rule (#752, phase 2f) #886 (phase 2f). Nothing caught it because the example sits in prose rather than in a fence. It needs an issue and adeviates:marker, or a decision that the new reading is right..pyistub is "a 3.0 candidate" in 3-0-reevaluations and differential-ledger. vocab/README's reserved names (bare_only,leading_only,trailing_only,separators) are "for phase 4", matchingbuild.py'sRESERVED. Each needs retargeting, and the README's names change with the code.remove(suffix_acronyms={'ma'})offers.add('ma', kind='given', same_as='ma'). That runs, but it rewrites the Filipino reading'ssame_as='maría'.Lexicon(surnames={'kim'}, titles={'dr'})offerslexicon.add(...)on a variable the caller never bound (_lexicon._refusal's prefix).family_base,as_dict,Lexicon.defaultandLexicon.emptyhave no docstring, so autodoc leaves them out. This predates 3.0.:mod:nameparser.locales.ja`` points at a module that isn't autodoc'd.two_family_nameson.:ref:.tests/v2/cases.pywere swept by script for the forms staleness takes. A note stale in some other way could remain.Not in scope here, as planned: the moved-names report, release notes (including the 3.0 entry's "under development" line),
CITATION.cff, the version, the tag and the pickle check.🤖 Generated with Claude Code