Skip to content

Should parse("Smith, Jr.") put "Jr." in title rather than suffix? #296

Description

@derek73
>>> parse("Smith, Jr.").title
'Jr.'
>>> parse("Smith, Jr.").suffix
''
>>> parse("Smith, Jr.").family
'Smith'

A one-word-before-comma name routes the lone post-comma piece to title, even when that piece is recognized suffix vocabulary. Any name of this shape does it — parse("Kim, Jr."), and since 2.1 the Korean equivalent parse("김민준, Jr.") inherits it identically.

Provenance, established during the #294 review rounds: this is not a #271 regression — results are identical with both CJK defaults disabled — and it is adjacent to a deliberate 2.0 change, classified in tools/differential/expected_changes.toml as "fix(comma-family): lone post-comma piece routes to suffix/title, not first" (v1 put the lone piece in first). The open question is narrower than that rule: within it, a piece that is unambiguous suffix vocabulary ("Jr.", "PhD") lands in title when suffix seems the natural field.

To decide: (a) is the title routing intended fallout of the 2.0 rule or an ordering bug in the lone-piece branch of _pipeline/_assign.py's FAMILY_COMMA path; (b) if a bug, whether fixing it in a 2.x minor is another release-log-classified fix (the differential rule's fields list already covers title/suffix movement for these shapes). Two-word forms are unaffected — parse("John Smith, Jr.") yields suffix='Jr.' — so the blast radius is the one-word-family shape only.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions