Permalink
Browse files

Add CHANGELOG entry for inflection removal

  • Loading branch information...
1 parent c300dca commit 0423d9c6c57ffac7f0368460277f370b35c86d64 @pixeltrix pixeltrix committed Jul 30, 2013
Showing with 4 additions and 0 deletions.
  1. +4 −0 activesupport/CHANGELOG.md
@@ -1,3 +1,7 @@
+* Remove 'cow' => 'kine' irregular inflection from default inflections.
+
+ *Andrew White*
+
* Add `DateTime#to_s(:iso8601)` and `Date#to_s(:iso8601)` for consistency.
*Andrew White*

4 comments on commit 0423d9c

@dhh
Member
dhh commented on 0423d9c Aug 13, 2013

Andrew, what's the story behind this removal? The inflection list is sacred unless there's an exceedingly good reason to mess with it.

@pixeltrix
Member

The cow to kine pluralization is archaic English - it's not used in modern English and it has caught people out, e.g:
http://stackoverflow.com/questions/12488705/incorrect-pluralizing-of-model-in-rails

So I went back to the original Trac report to see the justification for adding it:
http://web.archive.org/web/20090314050915/http://dev.rubyonrails.org/ticket/4929

My reading of that is that it was added as a test case for when an irregular pluralization begins with a different letter than the singular form - the cow => kine one being the only example anyone could find in English. So I've left the test cases in place but just taken it out from the default list of pluralizations. Now seemed like a good time since we've just shipped 4.0 and 4.1 will be a while yet.

Ordinarily, I'd agree with the sacred nature of the inflection list but this seemed to be a fix we could make with minimal impact.

@dhh
Member
dhh commented on 0423d9c Aug 16, 2013
@pixeltrix
Member

The number of times someone is going to get snagged by this is exceptionally low. And if they do, it's a very easy fix

Actually it's not that easy - it's added as an irregular so you need to clear all of the plurals and singulars and then add in all the default inflections minus cow -> kine.

Whilst the idea of having some eccentricities is appealing, I think the cattle breeding web application market is a crucial area for Rails to expand into so I'm in favour of keeping it. 😄

Please sign in to comment.