KEMBAR78
Releases · ruby/bigdecimal · GitHub
Skip to content

Releases: ruby/bigdecimal

v3.3.1

09 Oct 16:40
2d932f4

Choose a tag to compare

What's Changed

  • Fix modulo/remainder of negative zero by @tompng in #441
  • Unify all precision validation to be consistent with BigDecimal#add by @tompng in #442
  • Bump version to 3.3.1 by @tompng in #443

Full Changelog: v3.3.0...v3.3.1

v3.3.0

07 Oct 12:30
0aa97bb

Choose a tag to compare

What's Changed

  • Allow calling Rational#to_d without arguments by @fsateler in #421
  • Fix test_no_memory_leak failure by @tompng in #424
  • Change BigMath.sin and cos to always calculate in relative precision. by @tompng in #422
  • Faster exp calculation by @tompng in #399
  • Rename assert_relative_precision to assert_converge_in_precision by @tompng in #425
  • Add support for tangent function by @rhannequin in #231
  • Make bigdecimal.rb work in JRuby by @tompng in #420
  • BigMath methods common interface: coerce x, validate prec, check nan error by @tompng in #415
  • Round result of sqrt and BigMath methods by @tompng in #427
  • Update example calculation result in BigMath document by @tompng in #428
  • BigMath.log(0,n)==-Infinity just like Math.log(0) by @tompng in #430
  • Fix divmod and modulo by infinity to match Float#divmod and Float#modulo by @tompng in #429
  • Bump step-security/harden-runner from 2.13.0 to 2.13.1 by @dependabot[bot] in #431
  • Make internal BigMath method a private method by @tompng in #432
  • Improve performance of x**y when y is a huge value by @tompng in #438
  • Fix precision of x.power(y, prec) when the result is nearly infinity by @tompng in #439
  • Bump version to 3.3.0 by @tompng in #437

New Contributors

Full Changelog: v3.2.3...v3.3.0

v3.2.3

03 Sep 12:28
dd7738c

Choose a tag to compare

What's Changed

  • Fix sign of bigdecimal**bigint by @tompng in #341
  • Fix BigMath.atan precision safe margin by @tompng in #320
  • Fix typo in BigDecimal#scale comment by @timcraft in #348
  • Allow BigDecimal accept Float without precision by @mrzasa in #314
  • Fix edgecase segfault of BigDecimal#remainder by @tompng in #349
  • Fix precision of BigMath.sin(x,prec) and BigMath.cos(x,prec) for large x by @tompng in #346
  • Fix wrong converge check in VpSqrt by @tompng in #353
  • Bump step-security/harden-runner from 2.12.0 to 2.12.1 by @dependabot[bot] in #356
  • Ensure BigMath.sin and BigMath.cos to be within -1..1 by @tompng in #317
  • Remove BigDecimal_divremain(which has a bug) and use BigDecimal_DoDivmod instead by @tompng in #351
  • Bump step-security/harden-runner from 2.12.1 to 2.12.2 by @dependabot[bot] in #359
  • Remove back pointer from Real to VALUE by @tompng in #344
  • Update docs for #to_d core extensions by @dduugg in #360
  • Fix compiling issue (when BIGDECIMAL_DEBUG is 1) by @tompng in #363
  • Use a correct term: engineering notation -> scientific notation by @mame in #365
  • Fix to_f underflow check when DECDIG is uint16_t by @tompng in #364
  • Fix VpNumOfChars calculation for the longest case by @tompng in #366
  • Fix a bug that exponent overflow is ignored in add, sub, mult and div operation by @tompng in #367
  • Fix dump/load bigdecimal with few or large precs by @tompng in #362
  • Refactor AddExponent overflow/underflow check by @tompng in #368
  • Strict BigDecimal("0.1e#{exponent}") exponent overflow/underflow check by @tompng in #369
  • Add DECDIG=16bit CI workflow by @tompng in #370
  • Fix wrong multiplying BASE_FIG in precision calculation by @tompng in #372
  • Remove debug print by @tompng in #375
  • Remove unused #define macros by @tompng in #376
  • VpDivd bugfix by @tompng in #374
  • Fix VpDivd to fully use quotient array by @tompng in #377
  • Add RB_GC_GUARD to test-only methods by @tompng in #378
  • Use minimum necessary division precision in BigDecimal_DoDivmod by @tompng in #371
  • Remove dead code and ineffective optimization path form VpDivd by @tompng in #379
  • Implement exp, log, power and ** in ruby by @tompng in #347
  • Remove unused "# define" macros by @tompng in #382
  • Bump step-security/harden-runner from 2.12.2 to 2.13.0 by @dependabot[bot] in #383
  • VpFormatSt O(n^2) to O(n) by @tompng in #384
  • Ignore ndigits passed to BigDecimal(string, ndigits) by @tompng in #385
  • Better error message for negative**intinite and zero-converge case fix by @tompng in #386
  • Refactor truncate floor and ceil duplicated part by @tompng in #387
  • Fix exp log power to raise "Computation results in Infinity/NaN" in EXCEPTION_INFINITY/EXCEPTION_NaN mode by @tompng in #389
  • Reduce guard obj by @tompng in #390
  • Remove ENTER and GUARD_OBJ macro by @tompng in #391
  • Coerce to bigdecimal refactor by @tompng in #392
  • Coerce rational with the given prec in exp, log and power calculation by @tompng in #393
  • Unify coerce prec calculation by @tompng in #394
  • Use bool instead of Qtrue/Qfalse for normal c boolish value by @tompng in #395
  • Fix adjusting x to 0.3..3 in log calculation by @tompng in #397
  • missing.h cleanup by @tompng in #396
  • Hide internal method of BigMath into BigDecimal::Internal by @tompng in #400
  • Remove gc_compaction test by @tompng in #401
  • Bump actions/checkout from 4 to 5 by @dependabot[bot] in #402
  • Fix VpMult result size calculation by @tompng in #403
  • Fix GetAddSubPrec calculation by @tompng in #406
  • Fix PrecLimit not restored on exception by @tompng in #405
  • Fix div,modulo,remainder and divmod precision when prec limit is specified by @tompng in #408
  • Fix x.fix and x.frac affected by prec limit, Stop -x and x.abs round with prec limit by @tompng in #409
  • Don't use ZeroWrapLimited. Use unlimited version instead. by @tompng in #410
  • Fix x / y precision when prec limit is huge by @tompng in #412
  • Calculate exp, log, pow with the given prec even if prec limit is set by @tompng in #411
  • Simplify to_i logic by @tompng in #413
  • Add BigMath::E and BigMath::PI precision test by @tompng in #414
  • Rewrite BigDecimal#sqrt in ruby with improved Newton's method by @tompng in #381
  • Update bigdecimal version used in benchmark from 3.0.0 to 3.1.1 by @tompng in #416
  • Implement BigDecimal#_decimal_shift for internal use by @tompng in #324
  • In JRuby, don't add sqrt, exp, log, power implemented in ruby by @tompng in #417
  • Add JRuby minimum ci by @tompng in #418
  • Bump version to 3.2.3 by @tompng in #419

New Contributors

Full Changelog: v3.2.2...v3.2.3

v3.2.2

04 Jun 14:41

Choose a tag to compare

What's Changed

  • Make precision calculation in bigdecimal.div(value, 0) gc-compaction safe by @tompng in #339

Full Changelog: v3.2.1...v3.2.2

v3.2.1

31 May 05:34

Choose a tag to compare

What's Changed

  • Enabled trusted publisher for rubygems.org by @hsbt in #333
  • Fix division precision limit by @tompng in #335

Full Changelog: v3.2.0...v3.2.1

v3.2.0

29 May 15:37
b5611d7

Choose a tag to compare

What's Changed

  • Fix spec NoMethodError message for .allocator on truffle Ruby by @mrzasa in #313
  • Remove outdated BigMath.atan document that refers to convergence by @tompng in #318
  • Add a precision assertion to BigMath test by @tompng in #316
  • Use Ractor#value as Ractor#take is removed by @ko1 in #327
  • Indent multiline call-seq comment by @tompng in #311
  • Integrate BigDecimal_div and BigDecimal_div2 by @tompng in #329
  • Fix division rounding by @tompng in #330

New Contributors

Full Changelog: v3.1.9...v3.2.0

v3.1.8

07 May 04:58
ae3915b

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v3.1.7...v3.1.8

v3.1.7

14 Mar 07:27
cbb5369

Choose a tag to compare

What's Changed

  • Use macos-arm-oss and latest versions for test and benchmark CI by @hsbt in #285
  • Support Ruby 3.4's new error message format by @mame in #286
  • Rename rake spec with rake test in documentation by @rhannequin in #287

New Contributors

Full Changelog: v3.1.6...v3.1.7

v3.1.6

18 Jan 06:54
080f9b2

Choose a tag to compare

What's Changed

  • Correctly computing loop iterations in BigDecimal#sqrt by @z2-2z in #280
  • Workaround for test-bundled-gems at ruby/ruby repo by @hsbt in #283
  • Add LICENSE file to gem files by @oleksii-leonov in #282
  • Refine test code related unsupported Ruby version by @hsbt in #284

New Contributors

Full Changelog: v3.1.5...v3.1.6

v3.1.5

18 Jan 06:53
4f4510b

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v3.1.4...v3.1.5