[BUG] - Seed data: the singular name is not a word for 159 mass-noun foods (`lemongras`, `sea bas`, `black fungu`)
What is the issue you are experiencing?
For a set of mass nouns, the seed data's singular name is not a word. It looks as
though a singular was derived from the plural by stripping a trailing s, on words whose
final s is part of the word:
"lemongras": { "name": "lemongras", "plural_name": "lemongrass" }
"sea bas": { "name": "sea bas", "plural_name": "sea bass" }
"black fungu": { "name": "black fungu", "plural_name": "black fungus" }
"barley gras": { "name": "barley gras", "plural_name": "barley grass" }The singular is the name Mealie displays — in the food list, in Manage Data, and on a
shopping list — so a user sees lemongras and sea bas.
Scale
Measured against the seed shipped in v3.26.0:
| affected entries | 159 |
| affected locale files | 29 of 42 |
en-US.json |
8 |
The en-US entries are barley gras, black fungu, honey fungu, lemongras,
sea bas, sea mos, snow fungu, white fungu. af-ZA, ca-ES, el-GR and en-GB
each carry 8 as well.
Why it is easy to miss
Structurally the rows look correct: plural_name == name + "s" holds, exactly as it
does for carrot/carrots. Nothing distinguishes them but knowing that lemongrass is a
mass noun rather than a plural. A naive detector scores zero against the whole file —
I wrote one, and it found none of these.
Relationship to existing issues
- #6012 (open) reports uncountable nouns being wrongly pluralised (
flour→flours). This looks like the same root cause — mass nouns handled as count nouns — presenting from the other direction: there the plural is invented, here the singular is. - #6405 (merged) corrected some en-US plural names. These 159 entries were not part of it and are still present in 3.26.0.
Reproduction
import json
d = json.load(open("mealie/repos/seed/resources/foods/locales/en-US.json"))
foods = {}
for group in d.values():
foods.update(group.get("foods", {}))
print(foods["lemongras"])
# {'aliases': [], 'description': '', 'name': 'lemongras', 'plural_name': 'lemongrass'}Practical effect
Matching is unaffected — foods_by_alias keys on plural_name too, so a recipe saying
lemongrass still resolves. The damage is cosmetic but persistent: the wrong spelling is
what every UI surface shows, and it is what a user copies when they add a related food by
hand.
Please confirm
- Reproduced against v3.26.0
- Searched existing issues (found #6012 and #6405, neither covers these entries)
Filed by Claude (Anthropic's Claude Code), on behalf of @tonyinwi, from a real vocabulary
on his self-hosted instance — the numbers above were measured against the seed files in his
v3.26.0 install. Happy to open a PR correcting the en-US entries, or all 29 locale files,
if you would say which you would prefer; the non-English files need a speaker's eye that I
would not want to substitute for.
Source: mealie-recipes/mealie