0.5.23: * Added MPFR method GMP::F.can_round? (mpfr_can_round), not tested. * MPFR const_ functions now accept an optional rounding mode and precision. * Added GMP method GMP::RandState.rrandomb (mpz_rrandomb) * Added GMP constant GMP_NUMB_MAX * Added GMP method GMP::Z.gcdext. * GMP::Z.gcd and GMP::Z.gcdext are now heavily tested via GMP's tests. * Added MPFR methods GMP::F.sin[h]_cos[h] (mpfr_sin[h]_cos[h]), not tested. * Added MPFR methods GMP::F.atan2, .agm, and .hypot, not tested. * Seriously improved RDoc/YARD documentation. I didn't know rubygems.org auto-yardocs my stuff! * Added GMP method GMP::Z#submul! (mpz_submul) with tests. * Added GMP method GMP::Z#divisible? (mpz_divisible[_ui]_p) with tests. * Preliminary testing with REE on Linux... probably supported next release. * Unit test results: 109 tests, 16144 assertions, 0 failures, 0 errors * Unit test results: 109 tests, 16131 assertions, 0 failures, 0 errors (MPFR 2.4.2) * Unit test results: 90 tests, 4866 assertions, 0 failures, 0 errors (w/o MPFR) 0.5.3: * Now supporting GMP 5.0.1 (I now test with GMP 4.3.2 and 5.0.1). * Now supporting MPFR 3.0.0 (I now test with MPFR 2.4.2 and 3.0.0). * Now supporting Ruby 1.9.2. A few changes had to be made. * Now supporting 64-bit (mostly Linux right now). * Added MPFR method GMP::F.zero? (mpfr_zero_p) with tests. * Added MPFR method GMP::F.regular? (mpfr_regular_p) with tests (MPFR 3.0.0 only). * Added MPFR methods GMP::F.rec_sqrt (mpfr_rec_sqrt) and GMP::F.cbrt (mpfr_rec_cbrt), both heavily tested. * Added MPFR method GMP::F.digamma (mpfr_digamma), not tested. * Added GMP::F.prec= (mpf_set_prec) and GMP::F.prec_raw= (mpf_set_prec_raw), neither tested yet. * Added a dramatic amount of content to the manual. 26 pages. * Unit test results: 98 tests, 11974 assertions, 0 failures, 0 errors * Unit test results: 98 tests, 11961 assertions, 0 failures, 0 errors (MPFR 2.4.2) * Unit test results: 79 tests, 742 assertions, 0 failures, 0 errors (w/o MPFR) 0.4.19: * Added FIX2NUM macro to help support x86_64. * Fixed bug in MPRF functions; they were not using specified rounding modes. * Added ** (pow) to GMP::F (when not using MPFR) * Fixed add'l bug in MPFR functions, when specifying a rounding mode. * Fixed memory bug when specifying an invalid precision, or base range. * Fixed GMP::Z#pow (note that GMP::Z.pow has always worked.) * Added many tests from MPFR's tsqrt.c. This actually exposed a lot of bugs in the gem. * Added GMP::Z.size (mpz_size). Not tested yet. * Added GMP::Z.addmul! (mpz_addmul) with tests. * Unit test results: 90 tests, 1500 assertions, 0 failures, 0 errors * Unit test results: 79 tests, 742 assertions, 0 failures, 0 errors (w/o MPFR) 0.4.7: * Added 6 MPFR trig methods, plus eint, li2, gamma, lngamma, zeta, erf, erfc, j0, j1, jn, y0, y1, and yn. * Completely fixed the rounding constants. They are now objects, sporting name, mode, and ieee754 reader methods. * Added 4 MPFR "constants". Their values can change based on precision and rounding mode. const_log2, const_pi, const_euler, const_catalan. * Added GMP::Z.eql? and GMP::Z.hash to allow GMP::Z objects to be proper keys in a hash * "Completed" documentation of GMP::Z. * Started documentation of GMP::Q. * Tests now for GMP::Q.to_s. * Unit test results: 84 tests, 1378 assertions, 0 failures, 0 errors * Unit test results: 74 tests, 719 assertions, 0 failures, 0 errors (w/o MPFR) 0.4.3: * Support for MPFR on Windows introduced. gmp-x86-mswin32 gem should be used. * Removed compilation warnings when using MPFR * Added constants GMP::GMP_CC, GMP::GMP_CFLAGS, and GMP::GMP_BITS_PER_LIMB. * Added constant GMP::MPFR_VERSION. * Added MPFR rounding constants. These will be changed soon though. * Added MPFR tests adapted straight from the MPFR library, just tsqrt so far. * Added 3x MPFR functions: sec(), csc(), cot(). * Added function existence tests * Unit test results: 78 tests, 1025 assertions, 0 failures, 0 errors * Unit test results: 72 tests, 593 assertions, 0 failures, 0 errors (w/o MPFR) 0.4.1: * Fixed some gem dates * Fixed gmp.so in x86-mswin32 gem * Added urandomm(), documentation, and tests. * Unit test results: 70 tests, 577 assertions, 0 failures, 0 errors 0.4.0: * Support for Windows introduced. gmp-x86-mswin32 gem should be used. * All tests should pass under Windows. * Support for Windows in benchmark started. Still buggy. * Added tests for GMP::Z.gcd. * Added tests for GMP::Z.invert. * Added tests for GMP::RandState (seed, urandomb). * Added documentation for GMP::Z.gcd. * Added documentation for GMP::Z.invert. * Added documentation for GMP::RandState (new, seed, urandomb). * Cleaned up documentation (fixed GMP :: Z spacings). * Added benchmark/gcd * Unit test results: 69 tests, 533 assertions, 0 failures, 0 errors 0.2.11: * Added GMP::Z.gcd. _not_ tested or documented. * Added GMP::Z.invert. _not_ tested or documented. * Added GMP::Z.sizeinbase and size_in_bin. _not_ tested or documented. * benchmark/rsa is complete, assuming gcd and invert function properly. 0.2.10: * Added GMP::Z.%. Tested. Documented. * Beginning benchmark/rsa (it required %). 0.2.9: * benchmark/ finally something. * GMP::time and GMP::cputime introduced. * GMP::RandState.new now supports different algorithms. 0.2.8: * GMP::RandState introduced. urandomb supported. * PDF documentation is extended. 0.2.2: * GMP::Z.jacobi and GPM::Z#jacobi work and are tested. * GMP::Z.legendre works and is tested. * GMP::Z.next_prime is an alias for GMP::Z.nextprime. * GMP::Z.next_prime! is an alias for GMP::Z.nextprime!. * GMP::Z.remove works as it is supposed to. * PDF documentation is extended. 0.2.1: * Got GMP::F(Fixnum) working, (I think it already was). * More and more documentation in PDF. 0.1.9: * Cleaning up more documentation in PDF format. 0.1.8: * Added test: tc_division, in progress. * Unit test results: 56 tests, 361 assertions, 0 failures, 0 errors * Added to_f ==> to_d aliases for GMP::Q and GMP::F. 0.1.7: * Added tests: tc_shifts_last_bits, tc_logical_roots, tc_f_precision, tc_f_arithmetics_coersion, tc_default_prec * Unit test results: 54 tests, 326 assertions, 0 failures, 0 errors * Fixed defect in GMP::F.sub when argument is Bignum * Fixed defect in GMP::F.div when argument is Bignum * Added documentation "manual" in form of a LaTeX-based PDF. Very incomplete * as of yet. 0.1.6.2: * Added optional argument to GMP::Z.to_s. Supply base as either a Fixnum or a Symbol like :hex to get the string in a different base. 0.1.6: * Tested on OS X 10.5.8 with Ruby 1.9.1. It's a go! * Tested on LinuxMint 7 with Ruby 1.8.7. It's a go! Ping me if you have Linux problems. * Added documentation. * Cleaned up source. * Added tests: tc_swap, tc_floor_ceil_truncate, tc_to_i_to_d 0.1.5: * Merged in reorg changes: Files like gmpz.c allow for documenting the C extension methods. * A good portion of the documentation has been written, may not be included yet, but can be generated with rdoc README.rdoc ext/*.c ext/*.h 0.1.4: * Fixed a lot of gemspec problems * Many more tests * Tested on OS X 10.5.8 0.1.1: * Attempting to revitalize through GitHub * no changes to code yet * modernizing files, eg with new ruby standards, towards a gem 1.0: * MPFR support * better string conversion * Debian package alpha9: * more GMP::F code * GMP::Z division alpha8: * various minor changes alpha7: * more GMP::F code alpha6: * basic support for GMP::F * various minor changes