ec5492f | Anthony Dmitriyev | 07 January 2019, 23:25:46 UTC | Update version to 6.13.2 | 07 January 2019, 23:25:46 UTC |
6da5812 | Gregor MacDougall | 07 January 2019, 23:19:47 UTC | Prevent Divide By Zero in Money#allocate (#841) This leads to an error when attempting to allocate a zero value, and the zero value is the first argument in parts. Example: ``` [1] pry(main)> Money.new(100, "USD").allocate([1, 1, 0]) => [#<Money fractional:50 currency:USD>, #<Money fractional:50 currency:USD>, #<Money fractional:0 currency:USD>] [2] pry(main)> Money.new(100, "USD").allocate([0, 1, 1]) ZeroDivisionError: divided by 0 [3] pry(main)> Money.new(100, "USD").allocate([1, 1, 0.0]) => [#<Money fractional:50 currency:USD>, #<Money fractional:50 currency:USD>, #<Money fractional:0 currency:USD>] [4] pry(main)> Money.new(100, "USD").allocate([0.0, 1, 1]) FloatDomainError: NaN ``` | 07 January 2019, 23:19:47 UTC |
0ac7cf4 | Anthony Dmitriyev | 07 January 2019, 23:17:10 UTC | Allow for :symbol lookup in LocaleBackened::I18n (#843) | 07 January 2019, 23:17:10 UTC |
da1559d | Orien Madgwick | 07 January 2019, 22:34:18 UTC | Fix bundler and i18n version dependencies (#842) * Remove version constraint on Bundler gem * Ensure Bundler is installed on CI agents * Ensure Bundler version 1.17.3 is installed For compatibility with legacy Ruby releases * Pin i18n to v1.2 on Ruby 2.0, 2.1 and 2.2 * Loosen constraints on i18n gem * Loosen constraints on Bundler version We can remove this once we've stopped supporting legacy versions of Ruby. | 07 January 2019, 22:34:18 UTC |
d904e71 | Tiago Casanova | 18 December 2018, 23:40:39 UTC | Fix Peruvian Sol symbol (#838) | 18 December 2018, 23:40:39 UTC |
9504501 | Andrew Havens | 26 November 2018, 23:48:32 UTC | Add documentation for rounding (#834) * Add documentation for rounding mode. Based on comments from #707 * Clarify the role of `infinite_precision` and how the `round` method works. | 26 November 2018, 23:48:32 UTC |
e1431f8 | Anthony Dmitriyev | 13 November 2018, 22:45:26 UTC | Merge pull request #832 from antstorm/disallow-non-finite-amounts Disallow initializing Money with non-finite amounts | 13 November 2018, 22:45:26 UTC |
8f5ccc1 | Leo Arnold | 13 November 2018, 22:43:38 UTC | Offer replacements for currency position deprecations (#833) | 13 November 2018, 22:43:38 UTC |
b82492c | Anthony Dmitriyev | 08 November 2018, 23:54:21 UTC | Convert the fractional value of a Money object to BigDecimal when initializing | 08 November 2018, 23:54:21 UTC |
5626e4c | Anthony Dmitriyev | 08 November 2018, 23:09:04 UTC | Disallow initializing Money with non-finite amounts | 08 November 2018, 23:09:04 UTC |
8e4ddaf | Anthony Dmitriyev | 27 October 2018, 22:12:15 UTC | Update version to 6.13.1 | 27 October 2018, 22:12:15 UTC |
c565acf | Anthony Dmitriyev | 09 October 2018, 19:57:00 UTC | Merge pull request #819 from antstorm/per-currency-localization Add explicit "per currency" localisation | 09 October 2018, 19:57:00 UTC |
2289e6d | Filipe Goncalves | 09 October 2018, 19:54:12 UTC | Deprecate bolívar fuerte (VEF) and add bolívar soberano (VES) (#823) * fixed specs * remove VEF from currency_non_iso | 09 October 2018, 19:54:12 UTC |
00bda38 | Anthony Dmitriyev | 08 October 2018, 22:43:35 UTC | Deprecate old `format` rules (#822) | 08 October 2018, 22:43:35 UTC |
55836cb | Anthony Dmitriyev | 08 October 2018, 22:11:58 UTC | Add missing RDoc for :drop_trailing_zeros option (#821) | 08 October 2018, 22:11:58 UTC |
f586713 | Anthony Dmitriyev | 07 October 2018, 23:21:57 UTC | Clarify use_i18n deprecation | 07 October 2018, 23:21:57 UTC |
99b22fc | Anthony Dmitriyev | 07 October 2018, 23:21:09 UTC | Add :currency locale_backend for explicit per-currency localization | 07 October 2018, 23:21:09 UTC |
42922dd | Anthony Dmitriyev | 01 October 2018, 22:28:37 UTC | Update version to 6.13.0 | 01 October 2018, 22:28:37 UTC |
bd6af74 | Anthony Dmitriyev | 28 September 2018, 22:02:44 UTC | Fix incorrect behaviour of #find_by_currency_iso when given empty input (#814) | 28 September 2018, 22:02:44 UTC |
6c8fd67 | Peeyush Singla | 23 September 2018, 11:26:49 UTC | Refactor to_s method (#802) | 23 September 2018, 11:26:49 UTC |
17e0148 | Ken Salomon | 22 September 2018, 22:55:34 UTC | Add Bitcoin Cash (#782) * Add Bitcoin Cash Adding in Bitcoin cash to this gem to be useful for anyone using the gem and wishing to have all of the same advantages as any other currency. * Update AUTHORS * Update currency_non_iso.json * added more test coverage | 22 September 2018, 22:55:34 UTC |
a0cbe2f | Rolandas Barysas | 13 September 2018, 22:26:55 UTC | Remove Gemnasium badge (#808) | 13 September 2018, 22:26:55 UTC |
a347387 | Artur Beljajev | 13 September 2018, 22:25:50 UTC | Improve README (#807) Closes #805 | 13 September 2018, 22:25:50 UTC |
391c93e | Alexander Popov | 29 August 2018, 21:12:33 UTC | Relax versions-lock of `i18n` and `rspec` dependencies (#803) I see no reason for locking at patch version and non-semver. | 29 August 2018, 21:12:33 UTC |
069dd07 | Martín Peveri | 17 August 2018, 21:57:45 UTC | Check if a Currency is iso or not #728 (#791) | 17 August 2018, 21:57:45 UTC |
4568cd7 | mtmail | 17 August 2018, 21:53:34 UTC | Lithuania and Latvia use Euro since 2015 (#799) | 17 August 2018, 21:53:34 UTC |
9da686c | Anthony Dmitriyev | 16 August 2018, 07:52:46 UTC | Deprecate old formatting rules in favour of format: (#798) | 16 August 2018, 07:52:46 UTC |
c202aca | Anthony Dmitriyev | 14 August 2018, 22:53:19 UTC | Add jruby-9.2 to .travis.yml (#796) | 14 August 2018, 22:53:19 UTC |
a51304a | Anthony Dmitriyev | 14 August 2018, 22:38:24 UTC | Mention locale_backend in the README (#795) | 14 August 2018, 22:38:24 UTC |
9a37b06 | Anthony Dmitriyev | 13 August 2018, 23:11:26 UTC | Merge pull request #792 from antstorm/locale-backend Add locale_backend abstraction for translation lookups | 13 August 2018, 23:11:26 UTC |
02a04c0 | Stanisław Pitucha | 13 August 2018, 23:07:12 UTC | Add gem metadata (#794) Add metadata to display as direct links on the rubygems page for this library | 13 August 2018, 23:07:12 UTC |
d28304e | Simon Koolstra | 12 August 2018, 18:57:42 UTC | Support i18n 1.1 (#793) | 12 August 2018, 18:57:42 UTC |
374c737 | Anthony Dmitriyev | 12 August 2018, 15:05:55 UTC | Deprecate use_i18n flag | 12 August 2018, 15:05:55 UTC |
59e62a6 | Anthony Dmitriyev | 12 August 2018, 14:28:00 UTC | Allow for nil locale_backend | 12 August 2018, 14:28:00 UTC |
69cd2db | Anthony Dmitriyev | 12 August 2018, 13:44:19 UTC | Add locale_backend abstraction for translation lookups | 12 August 2018, 13:44:19 UTC |
2b35143 | Alexander Popov | 09 August 2018, 08:35:48 UTC | Improve I18n troubleshooting copy in the README (#788) | 09 August 2018, 08:35:48 UTC |
275fab0 | Anthony Dmitriyev | 04 August 2018, 00:18:33 UTC | Lazy stringify currency keys (#787) | 04 August 2018, 00:18:33 UTC |
8802d64 | Anthony Dmitriyev | 31 July 2018, 08:32:22 UTC | Add ruby 2.6.0 to TravisCI testing (#784) | 31 July 2018, 08:32:22 UTC |
80f1242 | Anthony Dmitriyev | 18 July 2018, 19:34:26 UTC | Merge pull request #783 from antstorm/remove-dup-in-formatter Add :format option for Formatter | 18 July 2018, 19:34:26 UTC |
a59f2bd | Anthony Dmitriyev | 10 July 2018, 22:08:54 UTC | Add :format option to the Formatter | 12 July 2018, 22:35:04 UTC |
de843c9 | Anthony Dmitriyev | 10 July 2018, 22:08:40 UTC | Small refactor of Formatter | 12 July 2018, 22:35:04 UTC |
1eb7292 | Anthony Dmitriyev | 12 July 2018, 22:32:22 UTC | Update version to 6.12.0 | 12 July 2018, 22:32:22 UTC |
8484c49 | Anthony Dmitriyev | 07 July 2018, 20:49:02 UTC | Remove memoization for #empty/#zero (#781) Memoization of #empty can cause issues because of default_currency and default_bank which are used when initializing a Money object. In case one of these will get changed after #empty got memoized — the memoized version will no longer reflect the latest state. | 07 July 2018, 20:49:02 UTC |
b3886bd | Anthony Dmitriyev | 27 June 2018, 22:47:47 UTC | Merge pull request #780 from antstorm/fix-round Respect rounding mode when infinite_precision is false | 27 June 2018, 22:47:47 UTC |
646208f | Anthony Dmitriyev | 27 June 2018, 08:51:57 UTC | Preserve assigned bank when rounding | 27 June 2018, 08:51:57 UTC |
5445be2 | Anthony Dmitriyev | 27 June 2018, 08:33:11 UTC | Always round the fractional part when calling #round We used to just return self when infinite_precision was disabled, but since we store the fractional part as a BigDecimal this might accumulate error and return unexpected results. This commit ensures we always round as it is expected to loose precision when rounding. | 27 June 2018, 08:49:12 UTC |
1a75227 | Rolandas Barysas | 12 June 2018, 19:47:57 UTC | Wrap all amount parts when html option is used (#777) * Wrap all amount parts when html option is used When using formatter's `html: true` option, all amount's string parts will be wrapped in html elements (symbol, whole part, decimal mark, decimal part and, if `with_currency` is true, currency). Also deprecated html_wrap_symbol option, since it will be always wrapped with `html: true` option. * Fix html option docs error * Fix docs typo * Preserve and deprecate old html formatter option | 12 June 2018, 19:47:57 UTC |
c06f85c | Anthony Dmitriyev | 11 June 2018, 07:39:30 UTC | Merge pull request #776 from antstorm/deprecate-currency-as-string Deprecate currency_as_string | 11 June 2018, 07:39:30 UTC |
26959bf | Anthony Dmitriyev | 10 June 2018, 20:09:30 UTC | Deprecate #currency_as_string and #currency_as_string= | 10 June 2018, 20:09:30 UTC |
6563f3f | Anthony Dmitriyev | 10 June 2018, 20:07:00 UTC | Add #with_currency for swapping the currency | 10 June 2018, 20:08:57 UTC |
2d6ccc1 | Anthony Dmitriyev | 19 May 2018, 23:22:14 UTC | Rewrite allocate/split (#772) This commit introduces a more effective and uniform solution to the #allocate and #split methods. These are now synonyms accepting either array for allocations or a number for even splits. The solution does not differ between the two approaches. It also adds a couple of tests to make sure it works as expected, since there were some inconsistencies with the former solution. | 19 May 2018, 23:22:14 UTC |
1f1c8c7 | Anthony Dmitriyev | 09 May 2018, 21:49:10 UTC | Update version to 6.11.3 | 09 May 2018, 21:49:10 UTC |
88e1d97 | Anthony Dmitriyev | 09 May 2018, 21:38:42 UTC | Respect i18n for #to_s (#771) There have been a couple of problems with using `currency.decimal_mark` when calling `to_s`. Primarily the inconsistency with how money-rails validates input, relying on i18n for determining acceptable decimal mark. This commit restores the behaviour similar to the original. | 09 May 2018, 21:38:42 UTC |
3d6e74a | Anthony Dmitriyev | 03 May 2018, 23:01:44 UTC | Update to 6.11.2 | 03 May 2018, 23:01:44 UTC |
f9482a1 | Anthony Dmitriyev | 03 May 2018, 22:59:00 UTC | Ignore formatting defaults for to_s (#768) | 03 May 2018, 22:59:00 UTC |
5a4be95 | Anthony Dmitriyev | 01 May 2018, 07:42:02 UTC | Update CHANGELOG | 01 May 2018, 07:42:02 UTC |
b163655 | Anthony Dmitriyev | 30 April 2018, 20:47:21 UTC | Update version to 6.11.1 | 30 April 2018, 20:47:21 UTC |
987573b | Koen Rouwhorst | 28 April 2018, 09:36:12 UTC | Fix issue with summing non-default/USD currency 'Money' objects (#767) * Added failing spec for summing non-USD money instances. * Fixed sum issue. | 28 April 2018, 09:36:11 UTC |
7ab48b9 | Anthony Dmitriyev | 26 April 2018, 22:13:14 UTC | Fix formatting links in the README (#766) | 26 April 2018, 22:13:14 UTC |
8c71341 | Anthony Dmitriyev | 24 April 2018, 19:54:50 UTC | Switch to new ruby hash syntax (#763) | 24 April 2018, 19:54:50 UTC |
cca9cad | Anthony Dmitriyev | 14 April 2018, 11:04:25 UTC | Add link to money-collection to the README | 14 April 2018, 11:04:34 UTC |
f260b9d | Anthony Dmitriyev | 14 April 2018, 10:49:08 UTC | Merge pull request #760 from antstorm/change-to-s-implementation Use Formatter for #to_s | 14 April 2018, 10:49:08 UTC |
b2942eb | Anthony Dmitriyev | 08 April 2018, 15:27:02 UTC | Update version to 6.11.0 | 08 April 2018, 15:27:02 UTC |
e96e1f0 | Anthony Dmitriyev | 04 April 2018, 22:04:37 UTC | Simplify #to_s by using the Formatter This allows for a cleanup of the #to_s code which duplicates a good part of the logic inside Formatter | 04 April 2018, 22:04:37 UTC |
3b99dee | Anthony Dmitriyev | 04 April 2018, 21:12:25 UTC | Display decimal part when decimal_places is 0, but infinite_precision is on This change will make sure that infinite_precision isn't swallowed for currencies with subunit_to_unit of 1. If you need to hide it use :no_cents or :no_cents_if_whole. | 04 April 2018, 21:12:25 UTC |
bb011b7 | Laurent Arnoud | 04 April 2018, 20:20:27 UTC | Update travis rubies to use last versions when possible (#759) * Update travis rubies use last versions when possible * Fix patch level rubies on travis | 04 April 2018, 20:20:27 UTC |
433cb76 | Laurent Arnoud | 03 April 2018, 23:20:25 UTC | README: more info about AR ExchangeRate model (#758) | 03 April 2018, 23:20:25 UTC |
e8992e3 | Stefan Wrobel | 18 March 2018, 21:44:42 UTC | Support i18n 1.0 (#756) | 18 March 2018, 21:44:42 UTC |
db467e0 | Kevin Attfield | 17 March 2018, 18:08:29 UTC | Allow splits with sums greater than 1 (#752) Requiring that the sum of splits be less than or equal to one seems like an arbitrary requirement. Removing it opens the door to new client uses. | 17 March 2018, 18:08:29 UTC |
26dd4f9 | Anthony Dmitriyev | 15 March 2018, 21:46:43 UTC | update AUTHORS | 15 March 2018, 21:46:43 UTC |
2626647 | Ivan Shamatov | 15 March 2018, 21:41:44 UTC | Adding inheritance for currencies (#754) * Adding inheritance for currencies * fix inherit method annotation | 15 March 2018, 21:41:44 UTC |
56a2d0f | Tim Krins | 15 March 2018, 21:39:07 UTC | Custom round precision when using `infinite_precision` (#755) * Add optional precision to round * Add test for optional rounding precision | 15 March 2018, 21:39:07 UTC |
10333f5 | Anthony Dmitriyev | 17 February 2018, 20:42:26 UTC | Merge pull request #751 from antstorm/refactor-formatter Refactor formatter | 17 February 2018, 20:42:26 UTC |
7d491c5 | Anthony Dmitriyev | 15 February 2018, 00:04:06 UTC | Fix MGA formatting specs to correct values With a subunit_to_unit of 5 the following should be true: 1 ariary = 5 francs 1 franc = 0.2 ariary 6 francs = 1.2 ariary 1.5 franc = 0.3 ariary | 15 February 2018, 00:23:08 UTC |
802617d | Anthony Dmitriyev | 14 February 2018, 23:58:40 UTC | Refactor the formatting logic The main difference is avoiding constant string <-> numeric formatting - numeric result is rounded then split into whole and decimal parts, which are then formatted individually. | 15 February 2018, 00:23:08 UTC |
6cebd98 | Anthony Dmitriyev | 12 February 2018, 22:11:09 UTC | Move free text logic into a method | 15 February 2018, 00:21:25 UTC |
d01bcf0 | Anthony Dmitriyev | 15 February 2018, 00:09:15 UTC | Merge pull request #748 from antstorm/fix-asian-number-formatting Fix for south asian number formatting | 15 February 2018, 00:09:15 UTC |
798b082 | Anthony Dmitriyev | 08 February 2018, 23:54:27 UTC | Use String#rjust for subunit padding (#750) | 08 February 2018, 23:54:27 UTC |
7186b0b | Anthony Dmitriyev | 08 February 2018, 22:51:46 UTC | Alias Currency#exponent with decimal_places (#749) Because it is exactly the same thing | 08 February 2018, 22:51:46 UTC |
5dba0de | Anthony Dmitriyev | 07 February 2018, 22:13:40 UTC | Temporary fix for INDIAN_BAR south asian formatting | 07 February 2018, 22:13:40 UTC |
449b643 | Anthony Dmitriyev | 07 February 2018, 22:11:40 UTC | Support whole numbers in south asian formatting regexp | 07 February 2018, 22:11:40 UTC |
184094f | Anthony Dmitriyev | 04 February 2018, 20:39:43 UTC | Merge pull request #739 from antstorm/extract-formatting Extract formatting into a separate module | 04 February 2018, 20:39:43 UTC |
b5e2a42 | Nicolay Hvidsten | 27 January 2018, 15:32:26 UTC | Added new symbol for bitcoin denomination (#744) The new symbeol adheres to the UTF 10.0 standard, pointing to U+20BF | 27 January 2018, 15:32:26 UTC |
6510825 | Nathan Griffith | 27 January 2018, 15:24:41 UTC | Fix case of coerced zero numeric subtraction (#745) * Add failing spec for 0 - Money * Fix 0 - Money case * One more test to cover addition case (was passing before) | 27 January 2018, 15:24:41 UTC |
0a157b6 | Vladislav Korotkov | 18 January 2018, 22:33:00 UTC | Pass bank to initializer in arithmetic methods (#743) Ensures that results of arithmetic operations have the same bank an input arguments | 18 January 2018, 22:33:00 UTC |
513ef11 | Anthony Dmitriyev | 05 September 2017, 08:26:39 UTC | Extract Formatting Rules | 08 January 2018, 21:12:28 UTC |
2286f4f | Anthony Dmitriyev | 04 September 2017, 21:05:00 UTC | Use instance of a Formatter instead of including it into Money | 07 January 2018, 19:57:09 UTC |
14711a5 | Anthony Dmitriyev | 04 September 2017, 20:53:27 UTC | Use #decimal_mark from currency in Money#to_s | 07 January 2018, 19:57:09 UTC |
a8d67f2 | Anthony Dmitriyev | 04 September 2017, 20:47:08 UTC | Move out-of-scope Formatter methods back into scope | 07 January 2018, 19:57:09 UTC |
3a7600d | Anthony Dmitriyev | 04 September 2017, 20:27:10 UTC | Rename Formatting module to Formatter | 07 January 2018, 19:57:09 UTC |
2626d76 | Anthony Dmitriyev | 03 January 2018, 09:52:48 UTC | Merge pull request #738 from antstorm/ruby-2-5-0 Ruby 2.5.0 | 03 January 2018, 09:52:48 UTC |
311d90a | Anthony Dmitriyev | 03 January 2018, 08:15:52 UTC | Update older rubies to their latest revisions | 03 January 2018, 08:15:52 UTC |
1991c67 | Anthony Dmitriyev | 03 January 2018, 08:14:48 UTC | Add ruby 2.5.0 as testing target for Travis | 03 January 2018, 08:14:48 UTC |
4d5883e | Anthony Dmitriyev | 01 January 2018, 15:38:13 UTC | Update yard dependency to 0.9.11 (#737) Fixes a vulnerability in older yard versions | 01 January 2018, 15:38:13 UTC |
01b14a4 | Kevin Sołtysiak | 23 December 2017, 13:38:08 UTC | Remove deprecation warnings (#735) | 23 December 2017, 13:38:08 UTC |
7523ad9 | Anthony Dmitriyev | 15 December 2017, 23:13:18 UTC | Update version to 6.10.1 | 15 December 2017, 23:13:18 UTC |
bbf748a | Fred Liang | 15 December 2017, 23:07:58 UTC | Fix a construction bug (#733) Steps to reproduce the bug: 1. start a new ruby console 2. require 'money'; Money.zero(:usd); Money.zero You will see the error | 15 December 2017, 23:07:58 UTC |
40ece66 | Anthony Dmitriyev | 04 November 2017, 18:28:05 UTC | Update version to 6.10.0 | 04 November 2017, 18:28:05 UTC |
3017883 | Gonzalo Rodríguez-Baltanás Díaz | 17 October 2017, 23:49:59 UTC | Adds support for i18n version 0.9 (#730) | 17 October 2017, 23:49:59 UTC |
bbd5d98 | Alex Dunae | 12 September 2017, 08:41:53 UTC | Don't round when verifying allocation splits (#726) There’s no reason to perform coercion here since since the result isn’t saved and Money#amounts_from_splits doesn’t perform coercion either. See #725 | 12 September 2017, 08:41:53 UTC |