1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
|
## 0.13.0
* Fix RuboCop issues (thanks @utkarsh2102).
* Change minimum required ruby version to 2.4 (thanks @utkarsh2102).
## 0.12.3
* Remove git dependency (thanks @utkarsh2102).
## 0.12.2
* Fix `DateTime#to_s` (thanks @nbeyer).
## 0.12.1
* Reduce the number of files that ship in the artifact (thanks @tas50).
## 0.12.0
* Fix `Months#to_seconds` from November (thanks @walterbrebels).
## 0.11.0
* Add support for unary minus operator (thanks @walterbrebels).
## 0.10.1
* Fix `TimeInterval` size for non UTC timezones. (#41)
## 0.10.0
* Fix `TimeInterval` with `<duration>/<end>` patterns and leap years.
* Fix decimal fractions on date atoms. **WARNING** some duration patterns are
no longer valid.
## 0.9.1
* Fix `Duration#to_pattern` for negative durations based on a `Numeric` (thanks @figwit).
## 0.9.0
This version is **not compatible** with previous versions. Atoms and Durations
changed their interface when treating base dates so it is only applied when
computing the Atom length (e.g. `#to_seconds`). As a consequence, it is no
longer possible to do operations like `DateTime + Duration`.
* Add time intervals (thanks @Angelmmiguel).
* Remove `Duration#to_i`.
* Change `Duration#to_seconds` to accept a base `DateTime`.
* Remove duration dependency on a base date on the instance level.
* Change `Years#to_seconds` and `Months#to_seconds` to accept a base `DateTime`.
* Remove atom dependency on a base date on the instance level.
* Add `Atomic` mixin.
* Remove `Atom` abstract class.
* Allow `ISO8601::Duration` to perform operations with `Numeric` (thanks @Angelmmiguel).
## 0.8.7
* Make `Atom` comparable with the same kind (thanks @glassbead0).
* Fix #18 document interfaces to core date/time classes.
## 0.8.6
* Fix #26 operations with Date, DateTime and Time with Duration (e.g. `ISO8601::DateTime.new('2012-07-07T20:20:20Z') - ISO8601::Duration.new('PT10M')`).
* Fix #25 accept time components with timezone and only hour component (e.g. `ISO8601::Time.new('T10+01:00')`).
* Fix Docker image for testing and inspecting.
## 0.8.5
* Fix `DateTime#hash`
* Fix `DateTime#second` and `Time#second` precision. Now it's rounded to the
first decimal.
## 0.8.4
* Remove unwanted log.
## 0.8.3
* Fix partial time patterns with timezone: `PThh:mmZ`, `PThhZ`.
## 0.8.2
* Fix time components using comma (,) as a decimal separator.
## 0.8.1
* Fix durations using comma (,) as a decimal separator.
## 0.8.0
* `DateTime` has hash identity by value.
* `Time` has hash identity by value.
* `Date` has hash identity by value.
* `Duration` has hash identity by value.
* `Atom` has hash identity by value.
* `Atom#value` returns either an integer or a float.
* `Atom#to_s` returns a valid ISO8601 subpattern.
## 0.7.0
* Add decimal fractions for any component in a duration.
* Add a catch all `ISO8601::Errors::StandardError`.
* Add support for comma (`,`) as a separator for duration decimal fractions.
## 0.6.0
* Add `#hash` to `Duration`, `Date`, `Time` and `DateTime`.
## 0.5.2
* Fix `DateTime` when handling empty strings.
## 0.5.1
* Fix durations with sign.
## 0.5.0
* Drop support for Ruby 1.8.7.
* Add support for Rubinius 2.
* `ISO8601::DateTime#century` no longer exists. Truncated representations were
removed in ISO 8601:2004.
* `ISO8601::DateTime#zone` delegates to core `DateTime#zone`.
* `ISO8601::DateTime#timezone` no longer exists. Now it delegates to
`DateTime#zone`.
* A date can have sign: `-1000-01-01`, `+2014-05-06T10:11:12Z`.
* A date time can be converted to an array of atoms with `#to_a`.
* Ordinal dates supported.
* A date component is represented by `ISO8601::Date`.
* Week date pattern (YYYY-Wdww, YYYY-Www-D).
|