斎藤と申します。

だいぶ昔の話になりますが(気付くのが遅くて申し訳ありません)、
1.8.0リリース直後、BigDecimalに以下のような変更が入っています。

@@ -1298,7 +1336,7 @@ Init_bigdecimal(void)
     rb_define_const(rb_cBigDecimal,
"SIGN_NEGATIVE_INFINITE",INT2FIX(VP_SIGN_NEGATIVE_INFINITE));

     /* instance methods */
-    rb_define_method(rb_cBigDecimal, "prec", BigDecimal_prec, 0);
+    rb_define_method(rb_cBigDecimal, "precs", BigDecimal_prec, 0);
     rb_define_method(rb_cBigDecimal, "add", BigDecimal_add2, 2);
     rb_define_method(rb_cBigDecimal, "sub", BigDecimal_sub2, 2);
     rb_define_method(rb_cBigDecimal, "mult", BigDecimal_mult2, 2);

安定版リリース後ですから、こういった互換性に問題の出る変更は
避けるべきではないでしょうか。

--
斎藤ただし