Rails'' inflections are messy

davidcelis
Thu, 19 Jul 2012 00:41:32 -0000

Yesterday, I opened a GitHub
Issue<https://github.com/rails/rails/pull/7071> about
moving Rails inflections to an initializer. The idea wasn''t received
well,
understandably, as generating a large initializer with new Rails apps is
pretty unappealing. However, the core members seemed open to the discussion
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, even
if they are errant. People are advised to fix (yes, fix) these inflections
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, and
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 read
the upgrade guides. It''s not that hard to redefine the inflection you
need
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:

http://davidcelis.com/blog/2012/07/18/the-current-state-of-rails-inflections/

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.

--
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Talk" group.
To post to this group, send email to
rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit