CHANGELOG.md
# Changelog
## 1.12.3 – 2023-08-23
- Fix map_type dump typespec (#204)
- Add SLE which is the new currency in Sierra Leone (#203)
- Bugfix: {Currency.Type.dump/1} missing ISO string support (#201)
## 1.12.2 – 2023-01-19
- Better error messages for `Money.add` and `Monet.subtract` (#191)
## 1.12.1 – 2022-11-23
This release rolls back the breaking change in Money.parse .
Support exponential notation feature will be added in the next major release.
### 🐛Bug Fixes
- Remove support exponential notation for Money.parse (#192) (#198)
## 1.12.0 – 2022-11-18
### 🚀Enhancements
- Fix PEN currency symbol (#191)
- Migrate from travis ci to github actions (#193)
- Support exponential notation for Money.parse (#192)
- Add readme section about using Decimal (#194)
- Bump dependencies (#186)(#187)(#196)
## 1.11.0 – 2022-08-15
### 🚀Enhancements
- Suggest using varchar instead of char on postgres (#178)
- Fix symbol_space with negative values (#180)
- Fix to_string to use the minus_sign_first option (#181)
- Adds support for strip_insignificant_fractional_unit option to to_string (#183)
- Fix Canadian and Singaporean Dollar symbols (#185)
## 1.10.0 – 2022-04-10
### 🚀Enhancements
- Allow rounding Money values with Decimal (#177)
- Parse with Decimal if present (#176)
- Display minus sign before the currency symbol (fixes #154) (#173)
## 1.9.0
### 🚀Enhancements
- Add Bolivar Soberano (#155)
- Improve Money.to_decimal to respect decimal places (#157)
- Add :code option for to_string rendering (#161)
- Allow Phoenix HTML 2.0 or 3.0 (#168)
- Support multiplying money by a decimal (#167)
- Use the rounding algorithm set in Decimal's context (#166)
### 🐛Bug Fixes
- Fix bug when using Money.to_decimal with amount 0 (#158)
## 1.8.0
### 🚀Enhancements
- Improves error message when Money.parse! fails
- Add Money.cmp/2 function
- Add decimal@v2.0.0 to optional list in mix.exs
### 🐛Bug Fixes
- Fix: avoic float rounding in Money.to_string
- Fix some type specs (did not include valid types)
- Fix Elixir 1.11.0 complain about variable usage
- Fix duplicate doc for Money.Currency.get/1
## 1.7.0
### 🚀Enhancements
- Add Elixir 1.9 and 1.10 to CI [#97]
- Support embedded schema for `Money.Ecto.Amount.Type` and `Money.Ecto.Map.Type` ecto types
- Support parsing `%Decimal{}` values in `parse/3` and `parse!/3` functions
- Support `Money.to_decimal/1` to return the value as `%Decimal{}`
- Add currency ISO 4217 numbers support
- `Money.equals?` no longer raises when comparing different currencies
- `Money.parse` and `Money.parse!` now accept any number as argument
## 1.6.1
### 🐛Bug Fixes
- Revert Money.Ecto.Amount.Type casting to integer. This behavior leads to the fact that the structures after casting and loading from the database are different. Details [#116](https://github.com/elixirmoney/money/issues/116)
## 1.6.0
### 🚀Enhancements
- Strip insignificant zeros [#76]
- Check for the new using block for Ecto.Type in Ecto 3.2 [#112]
- Fix delimeter typo [#113]
- Money.Ecto.Amount.Type now casting to integer [#114]
## 1.5.1
### 🐛Bug Fixes
- Fix Money.Ecto.Type casting
## 1.5.0
### 🚀Enhancements
- Allow adding custom currencies [#108]
- Configure custom_currencies at runtime rather than compile time [#111]
- Add Philippine Piso sign [#104]
- Add support to cast from atom-keyed maps [#110]
- Fix readme typos in usage subtract and divide typos [#109]
- Add dializer and fix warnings
### 🐛Bug Fixes
- Fix typos with Money.Ecto.Map.Type docs [#105]
## 1.4.0
Now hex is supported by an open organization and we are happy for new contributors and maintainers.
### 🚀Enhancements
- Add support multiple currencies with map(JSON) type [#101]
- Add support multiple currencies with PostgreSQL composite type [#96]
- Add new Ecto Type for Currency [#87]
- Add credo and fix styles [#103]
- Formatting codebase [#102]
- Move repo to OSS organization and fix repo links after transfer [#99]
- Add Elixir 1.8.1 to CI [#97]
### ⛔️Deprecations
- Deprecate `Money.Ecto.Type`, use `Money.Ecto.Amount.Type` module instead
### 🐛Bug Fixes
- Fix dividing negative one [#95]
- Fix cast in `Money.Ecto.Amount.Type` from money with currency other than a default [#100]
## 1.3.2
- Add Guaraní sign for PYG [#94]
- Add new Belarusian ruble [#92]
## 1.3.1
- Support ecto 3.0 [#91]
## 1.3.0
- Support elixir 1.6 and 1.7 versions [#90]
- Correct symbol for DKK [#86]
- Update supported elixir versions to 1.3 [#75]
- Fix deprecation warning for elixir 1.5 [#74]
- Add some more symbols for currencies [#71]
- Add some more symbols for currencies [#71]
- Fix official RUB symbol [#70]
- Adding a HexDoc link to the readme for faster linking to the docs [#68]
- Allow casting a Map of ecto's embeds_many [#66]
## 1.2.2
- Fixing Mexican and Colombian pesos names [#63]
- Add support currency exponents [#60]
- Add ability to retrieve all currencies
## 1.2.1
- Add Money.abs/1
- Add Money.neg/1
- Fix issues with Money.divide/2 and negative values [#57]
- Changes for clean compile on Elixir 1.4.1
- Changed sigil functions to macros for compile time expansion [#59]
## 1.2.0
- Add formatting option to hide fractional units [#47]
- Allow underscores in sigil [#48]
### 1.1.3
- Fix parsing amounts without a leading digit [#46]
### 1.1.2
- Bug fix: to_string with negative [#42]
### 1.1.1
- No changes
## 1.1.0
- Add formatting options [#36]
- Update parse to handle negative values [#39]
- Add support for Money.cast/1 for existing Money struct [#33]
- Add support for Money sigil ~M [#32]
- Add optional support for Phoenix.HTML.Safe [#29]
## 1.0.0
Initial release