Skip to content

Add de, the particle of Sri Lankan surnames, to si.toml (strict-gap batch D) - #1033

Merged
derek73 merged 5 commits into
masterfrom
feat/si-de
Nov 3, 2026
Merged

derek73 merged 5 commits into
masterfrom
feat/si-de

Conversation

@derek73

@derek73 derek73 commented Nov 3, 2026 •

Copy link
Copy Markdown
Owner

What

Strict-gap batch D, decided on 2026-11-03: si.toml takes de, the particle of Sri Lankan surnames of Portuguese origin (de Silva, de Mel, de Alwis). It is the file's first Latin-script word. The entry copies es.toml's (may_be_given = false).

Measured

  • Strict losses (tools/differential/config_diff.py gaps on master f48c88a). Strict si broke 334 of the language's 340 broken records on de (Sampath Damika De Silva). The 340 fall to 6 on this change alone.
  • Default and plain choices. The compiled default is unchanged. Over a grid of 12 Sri Lankan names under the three orders (each comma shape; cased, upper and lower spellings; a title and a credential beside them), the default and plain si move no cell.
  • Strict si. Strict si, and strict si + en, move 28 cells each, every one onto the default's reading. The reviewed table of words strict ungates does not move.
  • Committed corpora. The snapshot matches. Reading.languages of de gains si under the default and every other plain choice (the release log, usage.rst, _types.py and two tests list it); plain si names si alone, no role moving.

decisions/vocabulary-model gains the batch's entry. The RFC's list of files with no Latin-script vocabulary notes si's change.

Review round

An independent review found no defect. It reproduced 340 → 6, found the default and plain si reading alike in both trees over 59,321 local names, and read all 330 Sri Lankan ORCID names holding de: every one is Sinhalese, so ta.toml is owed nothing. Fixed after it:

  • The decisions entry and this body give this batch's own figure.
  • They say plain si names si alone among de's files.
  • The entry gains a recompute recipe.
  • The RFC's count is dated (26 files on 2026-10-31, 25 since si.toml took de) and its clause about strict si corrected.

This batch's entry points to batch A's entry (#1030): merge #1030 first.

Checks

  • uv run pytest -q: 35,787 passed. uv run mypy, uv run ruff check.
  • sphinx-build -b doctest and -W -b html; snapshot.py.
  • Not run: -n0 -m serial and Python 3.15.

Merge note: #1031 (fil) and #1032 (ca) edit the same list of files for de. Whichever merges later takes every entry and rebuilds nameparser/config/_index.py.

🤖 Generated with Claude Code

…atch D)

Sri Lankan names write de before a surname in Latin letters (de Silva,
de Mel); strict si broke 334 of its 340 broken records on it. No default
or plain-choice parse moves.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@derek73 derek73 added this to the 3.0 milestone Nov 3, 2026
@derek73 derek73 added the vocabulary Per-word vocabulary model and language packs label Nov 3, 2026
@derek73 derek73 self-assigned this Nov 3, 2026
derek73 and others added 4 commits November 3, 2026 12:01
…ed, recompute, the RFC's dated count

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
#	docs/release_log.rst
#	docs/usage.rst
#	nameparser/_types.py
#	nameparser/config/_index.py
#	tests/v2/pipeline/test_assemble.py
#	tests/v2/test_parser.py
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
#	docs/release_log.rst
#	docs/usage.rst
#	nameparser/_types.py
#	nameparser/config/_index.py
#	tests/v2/pipeline/test_assemble.py
#	tests/v2/test_parser.py
@derek73
derek73 merged commit 0275dd5 into master Nov 3, 2026
11 checks passed
@derek73
derek73 deleted the feat/si-de branch November 3, 2026 21:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vocabulary Per-word vocabulary model and language packs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant