Skip to content

README: the four translated front pages state the 228 projects SHOWCASE.md holds - #3577

Merged
Gathin23 merged 2 commits into
Gathin23:mainfrom
xbsheng:docs/showcase-count-translations
Nov 9, 2026
Merged

Gathin23 merged 2 commits into
Gathin23:mainfrom
xbsheng:docs/showcase-count-translations

Conversation

@xbsheng

@xbsheng xbsheng commented Nov 8, 2026

Copy link
Copy Markdown
Contributor

SHOWCASE.md opens with 228 projects so far., README.md spells the same number ("two hundred and twenty-eight") and README.pt-BR.md spells it in Portuguese. The "Built something on top?" row is on five more translated front pages, and nothing read any of them:

page what it said what the showcase held
README.nl.md "Daar staan al 121 projecten" (digits) 228
README.de.md "wo schon hundertvierundvierzig Projekte leben" 228
README.uk.md "де вже живуть сто шістдесят три проєкти" 228
README.uz.md "ikki yuz oʻn ikkita loyiha" (with the -ta classifier) 228

tests/test_showcase_project_count.py counted the rows and read README.md and README.pt-BR.md only. The other four were unread because their number is written in a shape the two word parsers cannot follow: a German compound, a Ukrainian spelled number, an Uzbek numeral carrying -ta, and — for nl — digits, which the line-splitter did not even hand to a reader (it kept letters only).

Reproduced on 294d3d59 with only this branch's test file added to the tree and nothing else changed:

AssertionError: 121 != 228 : README.nl.md says '121 projecten' and SHOWCASE.md holds 228 rows
AssertionError: unexpectedly None : README.de.md states the project count and none was read
AssertionError: unexpectedly None : README.uk.md states the project count and none was read
AssertionError: unexpectedly None : README.uz.md states the project count and none was read

and with the four sentences written the way the check reads them, at the numbers they carried, each page is named:

AssertionError: 144 != 228 : README.de.md says '144 Projekte' and SHOWCASE.md holds 228 rows
AssertionError: 121 != 228 : README.nl.md says '121 projecten' and SHOWCASE.md holds 228 rows
AssertionError: 163 != 228 : README.uk.md says '163 проєктів' and SHOWCASE.md holds 228 rows
AssertionError: 212 != 228 : README.uz.md says '212 ta loyiha' and SHOWCASE.md holds 228 rows

The fix, +84 −25 in 6 files:

  • The four pages write the count in digits (228), the shape README.tr.md already uses for this row and the one README.nl.md had — deliberately not four more number parsers, because a German compound and an Uzbek classified numeral are not words a table can hold (the same reason README.uz.md's theme count moved to digits in README: the Uzbek front page states the 28 themes the tree holds #3573).
  • tests/test_showcase_project_count.py: digits_number() reads 228 and 228 ta (the classifier between the number and its noun) and refuses a spelled number or one with a separator; the line-splitter now keeps digits, so a number in digits reaches its reader at all; SPELLED_PAGES becomes COUNT_PAGES with the six pages; a floor of six pages so a dropped page cannot quietly stop being judged; two reader tests (digits read, 228 ta read, a spelled row read as nothing).
  • docs/workflows/showcase.md step 2: the count is stated on six front pages, two in words and four in digits, and a translation that states it joins COUNT_PAGES. The step quotes no live number, so it cannot go stale itself.

Nothing in launcher/, examples/, themes/, PROMPT.md, tools/, the Home guard or .github/ is touched.

Checked for duplicates: all 80 open PRs' file lists were read through the REST API. Five touch one of these pages and none within 100 lines of the four rows: #3164 (README.nl.md badge and licence lines, both ends of the file), #3300 (nl:521), #3040 (nl:28,nl:681, de:20, de:260, uk:20, uk:283), #2569 (nl:26,nl:128,nl:253, de:20,de:135), #2545 (nl:26,nl:619, de:20, de:257). Nobody touches tests/test_showcase_project_count.py. git merge-tree --write-tree against my own open #3569, which edits step 1 of the same recipe, answers exit 0.

Tested on: no TV — four front pages and a unit test over the checkout, unit tests only.

If this adds or changes a TV list

  • N/A: no list or tv.json

If this touches the launcher

  • N/A: no launcher file

If this adds or changes a theme

  • N/A

If this adds a theme key (a switch)

  • N/A

If this adds an add-on

  • N/A

Self-check: no POLICY red line touched (no install restriction, no uninstall, no root, no launcher network, no maintainer-only path, no new default for every TV); one topic; CLEANYOURTV_STRICT=1 tools/venv/bin/python -m unittest discover -s tests → Ran 3211 tests, OK (skipped=36) = main's 3209 + 2; tools/venv/bin/python -I tools/gen_tables.py --check exit 0; no shell changed.

…228 projects SHOWCASE.md holds

SHOWCASE.md opens with 228 projects so far and README.md and README.pt-BR.md
say the same. The four translated pages carried the same row and nothing read
it: nl wrote 121 in digits, de spelled hundertvierundvierzig, uk spelled
сто шістдесят три, and uz spelled ikki yuz oʻn ikkita. They now write the
number in digits, the shape a reader can follow in any language.
digits_number() reads "228" and "228 ta" (the Uzbek classifier sits between
the number and its noun), COUNT_PAGES replaces SPELLED_PAGES with the four
pages, a floor keeps the table from shrinking, and digits are now one word to
the reader that splits the line. docs/workflows/showcase.md step 2 names the
six pages and the table.
@github-actions

github-actions Bot commented Nov 8, 2026 •

Copy link
Copy Markdown

maintainer-bot review · suggests merge (p3)

Thanks for tracking down the stale showcase counts on the German, Dutch, Ukrainian and Uzbek front pages, and for the clear table showing each one. Writing the count in digits so the existing test can check every page is a neat fix, and this looks ready to merge as it is.

Checks

This is a suggestion; a maintainer makes the final call. A maintainer can comment /bot review to run it again.

Reviewed by maintainer-bot · runs on 0G Private Computer

@Gathin23

Gathin23 commented Nov 9, 2026

Copy link
Copy Markdown
Owner

Thank you @xbsheng, the Dutch, German, Ukrainian and Uzbek front pages now state the 228 projects SHOWCASE.md holds, in digits, and test_showcase_project_count.py reads all four.

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

Labels

bot-suggests:merge p3 scripts build-and-install, disable, restore, tv.py and the other tools

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants