Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Apr 23, 2011
  1. Switch from I18n::MissingTranslationData (which is an Exception) to I…

    …18n::MissingTranslation (which is a plain Object) for the default case. Create an I18n::MissingTranslationData exception only if it needs to be raised to the user.
  2. enable I18n.t to use throw as an error handling strategy and use it i…

    …n I18n::Backend::Base.resolve for re-translating symbols
  3. stop using exceptions in the backend, use throw/catch instead. still …

    …needs further investigation as MissingTranslationData still is a subclass of Exception and the I18n.t still simply raises (as currently defined by the API).
Commits on Nov 18, 2010
Commits on Nov 17, 2010
  1. extract i18n-cldr to a separate gem.

    also, remove parsetree and ruby2ruby deps which aren't needed any more.
  2. Surpress warnings in Base#interpolate when too many interpolation arg…

    …uments are passed
    This is a temporary workaround. We should reimplement #interpolate in C to both get rid of the warnings and speed up various things.
    We definitely do not want any warnings here because translators need to be in control of picking up or omitting interpolation arguments in their translations. Example: { :zero => 'No messages', :one => 'One message', :many => '%{count} messages' }
Commits on Nov 6, 2010
  1. Finally remove deprecated interpolation syntax

    The interpolation syntax "{{foo}}" has been deprecated since 0.4.0 (8894ee5) and is no being removed. Please use the (Ruby 1.9 native) interplation syntax "%{foo}" instead.
Commits on Jun 5, 2010
Commits on Mar 13, 2010
  1. fix tests for 1.9.1 and 1.8.7

Commits on Jan 30, 2010
Commits on Jan 25, 2010
Commits on Jan 23, 2010
Commits on Jan 21, 2010
Commits on Jan 17, 2010
  1. add a :resolve option so users can opt out of resolving lambdas and k…

    …eys (necessary for looking up pluralization rules, which needs to go through the API)
Commits on Jan 10, 2010
  1. make merge_translations merge a given value or hash over a previously…

    … set nil value. should probably raise a TypeError instead because the given translation data seems flawed
Commits on Dec 29, 2009
Commits on Dec 12, 2009
  1. during interpolation preserve the string's initial encoding. this is …

    …necessary because values might be integers that will internally be casted to ASCII strings in Ruby 1.9
Commits on Dec 5, 2009
Commits on Nov 21, 2009
Commits on Nov 16, 2009
Commits on Nov 13, 2009
  1. make I18n::Backend::Base a module instead of a class. should make it …

    …easier to overwrite methods in Base from included modules
  2. * extract helper methods from Base backend class to a Helper module f…

    …or clarity
    * move Hash#wind and #unwind to the new Helper module to not pollute the core classes namespaces
    * rename #wind/unwind to #wind_keys/unwind_keys accordingly
    * reorder tests accordingly
Commits on Aug 26, 2009
  1. Allow to use lambdas as interpolation values.

    E.g. I18n.t(:default => 'Hi {{name}}!', :name => lambda { 'David' }) would now return "Hi David!". 
    This is particularly useful when client code (such as ActiveRecord Validations) provides a couple of possible interpolation values without knowing which of them will be actually used by translators. Expensive lookups of such values can now be wrapped into a lambda and passed as interpolation values.
Commits on Aug 22, 2009
  1. remove cruft

Commits on Aug 1, 2009
  1. fix escape sequence for old interpolation variables. always raised a …

    …MissingInterpolationArgument exception even for escaped \{{foo}} variables. (Thanks to thedarkone for pointing this out!)
Something went wrong with that request. Please try again.