#4510·core

Pluralization is broken

Author: ShahriarKhCreated Apr 12, 2024Updated Jan 15, 2026
LabelsType: EnhancementPriority: LowStatus: On Hold

Package version

6.2.2

Describe the bug

When I want to create new models or controllers (and probably other things), the name formatter behaves wrongly in some cases. For example, try:

bash
node ace make:model cookies

This creates cooky.ts!

This happens for many other words, including made-up words.

I investigated a bit, and seems like the problem comes from pluralize library which is used under the hood by poppinss/utils. Pluralize was last updated in 2019, and has many open pull requests.

So, 3 possible solutions come to my mind:

  1. replace pluralize or fork it to fix this bugs and avoid conversion of made-up words
  2. add a flag for all make:* commands to prevent this auto fix.
  3. instead of changing the word automatically, add an extra step in cli to ask users if they want their new controller/model/... name to be changed or not... something like:

Do you want to change "CookiesCOntroLLer" to "cooky"? (Y/n)

Reproduction repo

No response