diff options
author | mrkn <mrkn@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-12-24 06:22:41 +0000 |
---|---|---|
committer | mrkn <mrkn@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-12-24 06:22:41 +0000 |
commit | ea68278fe39f0b7f7dba6a34ae8bf6d4acb94fb5 (patch) | |
tree | b98d64b1688142e413f2b7fc2e01be7136adcf57 | |
parent | 9f68d0f59196f356b9c20f23a5299c3d32559eae (diff) | |
download | ruby-ea68278fe39f0b7f7dba6a34ae8bf6d4acb94fb5.tar.gz |
bigdecimal: version 1.3.4
Import bigdecimal version 1.3.4. The full commit log is here:
https://github.com/ruby/bigdecimal/compare/v1.3.3...v1.3.4
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ext/bigdecimal/bigdecimal.c | 14 | ||||
-rw-r--r-- | ext/bigdecimal/bigdecimal.gemspec | 2 | ||||
-rw-r--r-- | test/bigdecimal/test_bigdecimal.rb | 14 |
3 files changed, 11 insertions, 19 deletions
diff --git a/ext/bigdecimal/bigdecimal.c b/ext/bigdecimal/bigdecimal.c index fcc29a0865..cdd00388d4 100644 --- a/ext/bigdecimal/bigdecimal.c +++ b/ext/bigdecimal/bigdecimal.c @@ -2602,7 +2602,7 @@ static Real *BigDecimal_new(int argc, VALUE *argv); static VALUE BigDecimal_s_new(int argc, VALUE *argv, VALUE self) { - rb_warning("BigDecimal.new is deprecated"); + rb_warning("BigDecimal.new is deprecated; use Kernel.BigDecimal method instead."); return rb_call_super(argc, argv); } @@ -2645,15 +2645,7 @@ BigDecimal_initialize_copy(VALUE self, VALUE other) static VALUE BigDecimal_clone(VALUE self) { - rb_warning("BigDecimal#clone is deprecated."); - return rb_call_super(0, NULL); -} - -static VALUE -BigDecimal_dup(VALUE self) -{ - rb_warning("BigDecimal#dup is deprecated."); - return rb_call_super(0, NULL); + return self; } static Real * @@ -3449,7 +3441,7 @@ Init_bigdecimal(void) rb_define_method(rb_cBigDecimal, "remainder", BigDecimal_remainder, 1); rb_define_method(rb_cBigDecimal, "divmod", BigDecimal_divmod, 1); rb_define_method(rb_cBigDecimal, "clone", BigDecimal_clone, 0); - rb_define_method(rb_cBigDecimal, "dup", BigDecimal_dup, 0); + rb_define_method(rb_cBigDecimal, "dup", BigDecimal_clone, 0); rb_define_method(rb_cBigDecimal, "to_f", BigDecimal_to_f, 0); rb_define_method(rb_cBigDecimal, "abs", BigDecimal_abs, 0); rb_define_method(rb_cBigDecimal, "sqrt", BigDecimal_sqrt, 1); diff --git a/ext/bigdecimal/bigdecimal.gemspec b/ext/bigdecimal/bigdecimal.gemspec index c1f7da493b..c8c90870ea 100644 --- a/ext/bigdecimal/bigdecimal.gemspec +++ b/ext/bigdecimal/bigdecimal.gemspec @@ -1,6 +1,6 @@ # coding: utf-8 -bigdecimal_version = '1.3.3' +bigdecimal_version = '1.3.4' Gem::Specification.new do |s| s.name = "bigdecimal" diff --git a/test/bigdecimal/test_bigdecimal.rb b/test/bigdecimal/test_bigdecimal.rb index 6d0430dfc7..595783c63d 100644 --- a/test/bigdecimal/test_bigdecimal.rb +++ b/test/bigdecimal/test_bigdecimal.rb @@ -2,8 +2,6 @@ require_relative "testbase" require 'bigdecimal/math' -require 'thread' - class TestBigDecimal < Test::Unit::TestCase include TestBigDecimalBase @@ -1777,25 +1775,27 @@ class TestBigDecimal < Test::Unit::TestCase end def test_clone - assert_warning(/BigDecimal#clone is deprecated/) do - BigDecimal(0).clone + assert_warning(/^$/) do + x = BigDecimal(0) + assert_same(x, x.clone) end end def test_dup - assert_warning(/BigDecimal#dup is deprecated/) do + assert_warning(/^$/) do [1, -1, 2**100, -2**100].each do |i| x = BigDecimal(i) - assert_equal(x, x.dup) + assert_same(x, x.dup) end end end def test_dup_subclass - assert_warning(/BigDecimal#dup is deprecated/) do + assert_warning(/BigDecimal\.new is deprecated/) do c = Class.new(BigDecimal) x = c.new(1) y = x.dup + assert_same(x, y) assert_equal(1, y) assert_kind_of(c, y) end |