RubyMoney/money · error · Money::LocaleBackend::NotSupported

I18n not found

Error message

I18n not found

What it means

Error "I18n not found" thrown in RubyMoney/money.

Source

Thrown at lib/money/locale_backend/i18n.rb:16

# frozen_string_literal: true

require "money/locale_backend/base"

class Money
  module LocaleBackend
    class I18n < Base
      KEY_MAP = {
        thousands_separator: :delimiter,
        decimal_mark: :separator,
        symbol: :unit,
        format: :format,
      }.freeze

      def initialize
        raise NotSupported, "I18n not found" unless defined?(::I18n)

        super
      end

      def lookup(key, _)
        i18n_key = KEY_MAP[key]

        ::I18n.t i18n_key, scope: "number.currency.format", raise: true
      rescue ::I18n::MissingTranslationData
        ::I18n.t i18n_key, scope: "number.format", default: nil
      end
    end
  end
end

View on GitHub (pinned to 26e2829c34)

When it happens

Trigger: Thrown at lib/money/locale_backend/i18n.rb:16 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of RubyMoney/money@26e2829c34 (2026-08-23). Data as JSON: /api/errors/d68d1e36bd7ad46a. Report an issue: GitHub.