Skip to content

Releases: AdamWhiteHat/BigDecimal

ExtendedNumerics.BigDecimal.3002.0.0

12 Dec 09:54

Choose a tag to compare

Changelog

(Since last tagged release)

  • Issue #81: Use BigDecimalNumberFormatInfo everywhere to ensure successful round-tripping.

  • Issue #84: Rounding issue

    • Replaced the inconsistent Round method overload that accepted a System.MidpointRounding enum as a parameter. It now accepts a ExtendedNumerics.RoundingStrategy enum instead. The ExtendedNumerics.RoundingStrategy enum has only two values: AwayFromZero and ToEven.
    • Added a new static member to the BigDecimal class: BigDecimal.DefaultRoundingStrategy. The Round methods that don't take a RoundingStrategy parameter, simply call the ones that do, passing in the static DefaultRoundingStrategy member as the rounding strategy parameter. The default value of BigDecimal.DefaultRoundingStrategy is RoundingStrategy.ToEven.

Nonfunctional changes:
Added several cref and langword tags to the XML comments.

Full Changelog: ExtendedNumerics.BigDecimal.3001.0.1.201...ExtendedNumerics.BigDecimal.3002.0.0


NOTE: This release may not be the latest stable version of the code available.
Grab the latest stable build by visiting our NuGet page.
Typically, a release will be published to GitHub only after a major version bump (breaking change), and (naturally) we try to issue breaking changes as infrequently as possible, so go to NuGet.org to grab the latest version .

The .nupkg file below (which is just a renamed zip file) contains built DLLs for the following .NET targets:
.NET 4.5
.NET 4.6
.NET 4.72
.NET 4.8
.NET 5.0
.NET 6.0
.NET 7.0
.NET 8.0
.NET Standard 2.0
.NET Standard 2.1
.NET CORE APP 3.1

ExtendedNumerics.BigDecimal.3001.0.1.201

21 Jul 00:10

Choose a tag to compare

Issues fixed

Changelog since last tagged release

Issue #61: Floor off by 1 for negative values

Issue #66: Conversion from decimal truncates to 12 decimal places in certain cases.

Issue #69: BigDecimal.Exp giving incorrect results for moderately sized inputs (> 50)

Issue #78: BigDecimal.Round(value, precision) now exhibits common/standard/normal rounding behavior when the precision argument is zero or greater (instead of truncating). The behavior for negative precision values is unchanged (mimics Excel's ROUNDDOWN function).
For the old behavior, use: BigDecimal.Truncate(value, precision) instead. This method is functionally identical to Excel's ROUNDDOWN function.

Issue #79: ToString(IFormatProvider provider) overload now respects NumberFormatInfo.NumberDecimalDigits

Nonfunctional changes:
Several spelling corrections in code and comments, updated XML comments to be more accurate and informative. Updated Credits/Contributions/Attributions in the xml comments for the BigDecimal class, at the top of the code file (BigDecimal.cs).

Added an official BigDecimal logo and NuGet package icon.


NOTE: This release may not be the latest stable version of the code available.
Grab the latest stable build by visiting our NuGet page.
Typically, a release will be published to GitHub only after a major version bump (breaking change), and (naturally) we try to issue breaking changes as infrequently as possible, so go to NuGet.org to grab the latest version .

The .nupkg file below (which is just a renamed zip file) contains built DLLs for the following .NET targets:
.NET 4.5
.NET 4.6
.NET 4.72
.NET 4.8
.NET 5.0
.NET 6.0
.NET 7.0
.NET 8.0
.NET Standard 2.0
.NET Standard 2.1
.NET CORE APP 3.1

ExtendedNumerics.BigDecimal.3000.0.0.280

06 Oct 19:30

Choose a tag to compare

NOTE: This version contains a breaking change from prior versions.
The default BigDecimal.Precision value for the library has been changed from 5000 to 100. This should provide a much more reasonable default value for the vast majority of the users. 5000 digits of precision by default was a poor choice, is likely more precision than anyone needs, and likely resulted in immediate performance issues.


NOTE: This release may not be the latest stable version of the code available.
Grab the latest stable build by visiting our NuGet page.
Typically, a release will be published to GitHub only after a major version bump (breaking change), and (naturally) we try to issue breaking changes as infrequently as possible, so go to NuGet.org to grab the latest version .

The .nupkg file below (which is just a renamed zip file) contains built DLLs for the following .NET targets:
.NET 4.5
.NET 4.6
.NET 4.72
.NET 4.8
.NET 5.0
.NET 6.0
.NET 7.0
.NET 8.0
.NET Standard 2.0
.NET Standard 2.1
.NET CORE APP 3.1