-
Notifications
You must be signed in to change notification settings - Fork 14
Changelog
This page will not be updated anymore.
From version 7.0.0 and onward, please refer to Releases.
2021/12/03 4634edd009b2674eafea039376c739f3887d14c1
- Merged improved Currency.Round to improve rounding when allocating monetary quantities
2018/08/19 e5482bec892f33c2b262b6c7ba0238b82cce985f
- Implement amendment 168:
- Change name of
PHP - Deprecate
VEFadn introduceVES - Implement amendment 169 (a bit too early):
- Introduce
UYW
2017/12/31 c3adbc07311830cbd3d1deb4afb2e0907e14167d
-
Breaking change:
.Allocate()methods have moved from NMoneys namespace to the NMoneys.Allocations namespace as part of a general effort to improve the architecture of the library - Apply Amendment 164:
- Make
STDobsolete - Create
STNobsolete - Change
PHPname
- Make
- Apply Amendment 165:
- Make
MROobsolete - Create
MRUobsolete
- Make
- Expose extension method
CurrencyIsoCode.Equals(public static bool Equals(CurrencyIsoCode)to efficiently compare two currency codes - Reconcile a lot of currencies with newly supported information in System.Globalization:
ALL,ANG,AOA,AWG,BIF,BMD,BSD,CUC,CVE,DJF,FJD,FKP,GHS,GIP,GMD,GNF,GYD,KMF,KPW,LRD,MGA,MRO,MUR,MWK,MZN,NAD,PGK,SDB,SCR,SDG,SHP,SLL,SSP,STD,SRD,SZL,TOP,TZS,UGX,VUV,WST,XPF - Re-implement
NMoneys.Toolsto make detecting future changes of the information of a currency easier and more effective
2017/07/19 f40dbc4354a5e1ded08aeec1b887f278e7a8ab9d
- Retrofit amendment 158:
- Make
USSobsolete
- Make
2017/07/18 9c56e298d9edf6cd3e8cb7703a5f1299a55947f0
- Finish application of Amendment 161:
- Make
BYRobsolete
- Make
2017/06/20 f522fbe4a62ce38b02825a48e81ebe9c30e8fab4
- Upgrade serialization packages to take a dependency on the serialization framework
- Target-dependent dependencies:
- for core projects, minimum library version that supports netcore
- for classic netframework projects, minimum working library version
- Remove
Nullable*Converterfrom Json_Net and Raven_DB. From now on, a{Canonical|Default}Convertershould be able to handle nullable serialization/deserialization - Use new
Decimal128type for the serialization of Amount in Mongo_DB instead of the risky conversion from floating point
2017/06/14 dc87a744c5896fa48c0cad6caf255338e96fe1a0
-
Add operations to make change:
.CountWaysToMakeChange().MakeChange().MakeOptimalChange()
-
Amendment 163:
- change name for
AZN,KMF,GNFandLAK - change currency short form for
UYI
- change name for
2017/04/21 2e4984696a40cc501b57c33d2aa2ccc96b09674f
- Include netstandard1.3 libraries for NMoneys and NMoneys.Exchange
-
Breaking change: methods that previously threw
InvalidEnumArgumentExceptionnow throwArgumentExceptionto align both runtimes - Migrate tests and tooling to NUnit 3.6.1
- Update NuGet and PSake
Netstandard library supports all features that were available in the "classic" .NET framework version minus:
- Custom serialization
-
ICloneableis not implemented
2016/07/20 bd6988d536732426e884a74b81a486a29ff75f44
- Decorate public pure methods with
[Pure] - Migrate tests and tooling to NUnit 3
- Update NuGet
2016/07/18 868bd2284a75783f7d2d09a29c46a9dcde5ca703
- Solve issue with wrong type when binary serializing
Moneyinstances
2016/07/11 73619199cf35cf1e47f7b2612caaef9cd85294ff
- Apply ISO4217 amendment 161: Add
BYN - Reconcile currencies
AZN,ETB,BAM,BTN,BZD,JMD,TTD,ZAR,XDR,ARS,BOB,CLP,COP,CRC,CUP,HNL,NIO,PAB,PEN,PYGwith globalization information - Reconcile currencies
UYU,VEF,PHP,CDF,XAF,HTG,HRK,IDR,GEL,KZT,LAK,MKD,MNT,BND,MYR,MMK,NOK,AFN,BRL,MDL,RUB,RWF,LKR,ALL,SEK,KES,ERN,BWP,UZS,XDRwith globalization information
2016/06/22 014503f54462d24340ff0f94895ff1971775c806
- Add
Currency.Code.Parse(str, default)
2016/03/15 426afd82e6e172e49c5792b981366a594e339738
- Apply ISO4217 amendment 162: change name of
MWK,PENandVEF
2015/08/27 a00a80dfc5187603889e6bc6c6ba691baaa3df14
- Include custom MongoDB serialization/de-serialization via custom serializers:
CanonicalMoneySerializerandDefaultMoneySerializer - include missing .dll to build the package locally when no Microsoft Help SDK is installed
- Update version of NuGet
2015/07/15 87b25393b97f3784d4b123c7e3bdeb117f7ccf5f
- Apply ISO4217 amendment 160: change name of
HRKandRON - refactor build process to be share common with CI/CD server
- Update version of NuGet
- Update version of psake
- Update version of NUnit
2015/04/21 8118e4b2f3c959c530a4ad12400fc32cebc9db16
- Migrate all project to .NET 4.0
- change group separator to
SEKaccording to http://sv.wikipedia.org/wiki/Tusentalsavgränsare - fix issue #30 by using
ConcurrentDictionaryfor internal caches - fix issue #31
2015/01/08 efb48aa545830396d682f13a7dd9e81598b73ed9
- Apply ISO4217 amendment 159: deprecate
LTLand changeCVE - support for currencies without symbols
- fix issue #28 by overloading
Money.Parse()
2014/08/06 @revision 296
- Breaking change of NuGet package
NMoneys.Serialization.Json_NETas it is now a source code package with no binary dependency on Json.NET - Add source code package to support custom serialization for ServiceStack.Text
- Add source code package to support custom serialization for RavenDB
2014/06/19 @revision 283
- Update symbol and native name for
BYR - Update symbol for
BGN - Update native name for
CZK - Update version of NuGet
- Update version of psake
- Improve build scripts
- Add facility to strongly name
NMoneys.dllin order to upload to bin repository
2014/04/15 @revision 273
- Exposed fast equality comparer for
CurrencyIsoCodevia Currency.Code
2014/03/14 @revision 268
- Apply ISO4217 amendment 155: increase significative decimals for
CLF - Update currencies based on newest OS/framework information:
AFN,BOB,CDF,CLF,HTG,IRR,KES,MDL,MMK,PHP,SOSUZS,XAF - fixed NUnit report to support UTF-8
- Upgraded version of NuGet
2014/01/21 @revision 262
- Integral multiplication
.Times()and.Multiply()added to Money
2014/01/06 @revision 259
- Changed native name:
CLF - Apply ISO4217 amendment 156: deprecate
LVL - Upgraded version of NuGet
2013/04/06 @revision 250
- Added
.Ceiling()to Money - Removed faulty
ZMVand replaced for correctZMW, let's hope not a lot of people persisted information with the non-existing currency - Changed representation:
ALL,BWP,COP,DOP,ERN,ETB,GTQ,IRR,KGS,LTL,MNT,NIO,RUB,RWF,SEK,TJS,UYU,XCD - Changed currency symbol:
AMD,GEL,INR,KZT,NGN,PYG,TJS,TRY,VEF,XCD - Changed native name:
BGN,CZK,ERN,IRR,KZT,TJS
2013/03/17 @revision 247
- Released 2.1.1.0 of NMoney.Exchange, including issue 21
- Upgraded version of NuGet
2013/01/01 @revision 241
- Applied rest of changes from ISO4217 amendment 154:
ZMKis deprecated, andZMVhas been added - Changed number of decimals for
UGXas per ISO website - Changed misspelled denominations of
XBCandXBD - Added .chm documentation to NMoneys, NMoneys.Exchange and NMoneys.Serialization.Json_NET
- Upgraded dependency of NMoneys.Serialization.Json_NET to latest Json.NET
- Upgraded version of NuGet
- Build migrated to psake instead of MSBuild
2012/08/02 @revision 215
- NMoneys version bump due to client profile targeting and some breaking changes
- NMoneys.Exchange version bump due to client profile targeting
-
breaking change: deprecated
CurrencyConverter,CurrencyCodeConverterandMoneyConverterthat used the old undeprecated, but well on its way out,System.Web.Script.Serialization.JavasScriptConverter - custom JSON serialiation can be performed using the
DataContractJsonSerializerand customized withDataContractSurrogate - removed System.Web dependency
- added project NMoneys.Serialization.Json_NET which follows a parallel distribution method (different binaries and packages) to support custom JSON serialization using the popular "Json.NET" library
2012/06/25 @revision 176
- version bump due to some breaking changes
-
breaking change:
Allocatorsnamespace is nowAllocations -
breaking change:
Money.Allocate(int)returns anAllocationinstance, instead ofMoney[] -
breaking change:
IRemainderAllocator.Allocate()signature change. Custom implementations of the interface need to be rewritten :-( -
breaking change: extension method on money instances
.Currency()renamed to.GetCurrency() - Added
Money.Allocate(RatioCollection)to allow pro-rated allocations. Again, many thanks to Berryl Hesh for his contribution. - Surfaced
EvenAllocatorto perform strictly fair allocations - Added
ProRatedAllocatorto perform strictly pro-rated allocations - Added
Money.Zero()static factory methods that initialize arrays - Added
Money.Some()static factory methods that initialize arrays - Added
Money.HasSameCurrencyAs()andMoney.AssertSameCurrencyinstance method that operate on collections of moneys
2012/02/13 @revision 146
- Added
Money.Allocate(). Thanks to Berryl Hesh for the contribution - Added
Currency.MinAmount,CurrencyIsoCode.AsCurrency()extension,Money.Currency()andIEnumerable<decimal>.ToMoney()extensions - updated currency definitions as per latest ISO amendment 153: GHS renamed to Ghana Cedi, MZN renamed to Mozambique Metical, RON renamed to New Romanian Leu and TMT renamed to Turkmenistan New Manat
- All currencies have their English name as defined per the ISO. The following currencies have been renamed and their native names updated: ALL, ANG, BAM, BDT, BOV, BRL, BYR, CLF, COU, GBP, GHS, GTQ, HNL, HUF, IDR, ILS, ISK, JPY, KGS, KRW, MKD, MOP, MXV, MZN, NAD, NGN, NIO, NPR, OMR, PAB, PEN, PLN, PYG, RON, RWF, SVC, THB, TJS, TMT, TOP, TTD, UAH, UYI, UZS, VEF, VND, XBA, XDR, ZAR
- All currencies have their
SignificantDecimalDigitsas defined per the ISO. The following currencies have been changed: BIF, BND, BYR, CLF, CLP, DJF, GNF, IDR, IQD, KMF, MYR, PYG, RWF, UYI, UZS, VND, VUV, XAF, XOF, XPF - Updated NuGet to v1.6.21205.9031
2011/09/01 @revision 129
- South Sudanese Pound (SSP) has been added
- changed name of ARW to Aruban Florin
- updated assembly description to match the one in the NuGet package
- Updated NuGet to v1.5.20830.9001
2011/06/30 @revision 123
- Breaking change: all currency code parsing/conversion methods are accessed through
Currency.Code - Updated NuGet to v1.4.20615.182
- Added project NMoneys.Exchange which follows a parallel distribution method (different binaries and packages)
2011/06/02 @revision 85
- Added methods
Currency.ParseCode()andCurrency.TryParseCode()that allow parsingCurrencyIsoCodestrings
2011/05/15 @revision 72
- Included source code for CodeProject article
- Solved Issue 16. Now, currencies can be obtained from case-insensitive three-letter codes
- Added
AlphabeticCode()toCurrencyandCurrencyIsoCodeto reflect terms used by ISO - Updated
Money.Total()tests to exemplify its usage
2011/05/03 @revision 53
- ADB Unit of Account (XUA) has been added
- Updated NuGet to v1.3.20425.372
- Updated NUnit to v2.5.10.11092
2011/03/17 @revision 51
- Performance improvement for unitialized
Moneyinstances - Sucre (XSU) has been added
- checked for CLS compliancy
-
MissconfiguredCurrencyExceptionrenamed toMisconfiguredCurrencyException -
Currency.ObsoleteCurrencyis now an event -
<and>operators implemented forCurrency -
Moneyarithmetic methods implemented as alternative to operators for languages that cannot consume operators - Extensive null parameter checking
- Updated NuGet to v1.1
2011/02/24 @revision 43
- Fix for unexpected behavior of unitialized
Moneyinstances. Now default instances have a defined currency ISO code (XXX)
2011/02/11 @revision 37
- Support for deprecated currencies
- Estonian Kroon (EEK) has been deprecated
-
Currency.Get(),Currency.Get()can receive aRegionInfoas argument - Added support for HTML/XML entities (such as &eur;)
- Updated NuGet to v1.0 RTM.
- NuGet package published.
- Gem published.
- Updated NUnit to 2.5.9.10348
- Changed MSBuild script to ease usage
- Creates more correct NuGet package
- Copies to output release directory
2010/11/20 @revision 24
- Completed Xml documentation for public members
-
Currency.TryGet(),Currency.TryParse()andMoney.TryParse()do not throw any exception anymore - Added USN and USS after merging all information back from the ISO website
- Added NuGet package. It should be available from the public feed
- Added MSBuild script to ease usage
- Run tests and creates reports
- Compiles binaries
- Creates NuGet package
- Copies to output build directory
2010/11/20 @revision 15
- Added
Currency.FindAll() - Added
Money.Parse()andMoney.TryParse() - Implemented
IComparableandIComparabe<>onCurrency - Added Joda-Money features:
- Creation methods:
Money.Zero(),Money.ForMajor(),Money.ForMinor(), andMoney.Total() - Properties
Money.MinorAmount,Money.MajorAmount,Money.HasDecimals
- Creation methods:
- Removed "long" obsolete currency: Guinea-Bissau Franc GWP (624).
2010/10/25 @revision 11
- Baseline version