puppetlabs/puppet · error · Puppet::Error
Use of a Ruby BigDecimal value outside Puppet Float range, g
Error message
Use of a Ruby BigDecimal value outside Puppet Float range, got '#{o}' What it means
Error "Use of a Ruby BigDecimal value outside Puppet Float range, got '#{o}'" thrown in puppetlabs/puppet.
Source
Thrown at lib/puppet/pops/evaluator/runtime3_converter.rb:81
end
def convert_NilClass(o, scope, undef_value)
@inner ? nil : undef_value
end
def convert_Integer(o, scope, undef_value)
return o unless o < MIN_INTEGER || o > MAX_INTEGER
range_end = o > MAX_INTEGER ? 'max' : 'min'
raise Puppet::Error, "Use of a Ruby Integer outside of Puppet Integer #{range_end} range, got '#{'0x%x' % o}'"
end
def convert_BigDecimal(o, scope, undef_value)
# transform to same value float value if possible without any rounding error
f = o.to_f
return f unless f != o
raise Puppet::Error, "Use of a Ruby BigDecimal value outside Puppet Float range, got '#{o}'"
end
def convert_String(o, scope, undef_value)
# Although wasteful, a dup is needed because user code may mutate these strings when applying
# Resources. This does not happen when in server mode since it only uses Resources that are
# in puppet core and those are all safe.
o.frozen? && !Puppet.run_mode.server? ? o.dup : o
end
def convert_Object(o, scope, undef_value)
o
end
def convert_Array(o, scope, undef_value)
ic = @inner_converter
o.map { |x| ic.convert(x, scope, undef_value) }
end
View on GitHub (pinned to e227c27540)
When it happens
Trigger: Thrown at lib/puppet/pops/evaluator/runtime3_converter.rb:81 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of puppetlabs/puppet@e227c27540 (2026-08-21).
Data as JSON: /api/errors/df46f22aa75a3531.
Report an issue: GitHub.