Yesterday, I opened a GitHub
moving Rails inflections to an initializer. The idea wasn’t received
understandably, as generating a large initializer with new Rails apps is
pretty unappealing. However, the core members seemed open to the
of alternatives continuing here.
For those of you not in the know, inflections (the defined rules for
singularization/pluralization) in Rails are currently frozen. What this
means is that most pull requests submitted that add, remove, or change
inflections are closed and not merged. The reasoning behind this is to
avoid breaking existing applications that depend on these inflections,
if they are errant. People are advised to fix (yes, fix) these
themselves in their inflections initializer.
In my opinion, with a major 4.0 release coming up, inflections should be
unfrozen and fixed/cleaned up. There is a lot that is bad in this file,
I don’t think fear of breaking existing apps is a good reason to freeze
mistakes. People should read the CHANGELOG when updating. They should
the upgrade guides. It’s not that hard to redefine the inflection you
in that initializer, and the current inflections are based mostly around
exceptions to grammatical rules rather than the rules themselves.
If people want specifics, I’ve written a post about this:
I’m curious as to what others think. I’d like to help make this a better
framework, and I’ve heard a lot of complaints from personal colleagues
about how messy the inflections are.