aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/CHANGELOG.md
Commit message (Collapse)AuthorAgeFilesLines
* AS::Duration changelog polishJeremy Daer2016-04-291-15/+13
| | | | | | | | Use the updated changelog from the first merge: 7254517 References #22806, #24762. [ci skip]
* Change 1.week to create 1 week durations instead of 7 days durations.Andrey Novikov2016-04-281-0/+22
| | | | This is just to remove astonishment from getting `3600 seconds` from typing `1.hour`.
* Prep Rails 5 beta 4eileencodes2016-04-271-0/+2
|
* Revert "Change 1.week to create 1 week durations instead of 7 days durations."Jeremy Daer2016-04-271-20/+0
| | | | | | Regression: adding minutes/hours to a time would change its time zone This reverts commit 1bf9fe75a6473cb7501cae544cab772713e68cef.
* Do not cache ActiveSupport::TimeZone#utc_offsetAlexey Shein2016-04-251-0/+6
| | | | | | | | | | | | | | | This can be an issue when TZInfo::TimeZone#current_period is refreshed due to timezone period transition, but it's not reflected in ActiveSupport::TimeZone object. For example, on Sun, 26 Oct 2014 22:00 UTC, Moscow changed its TZ from MSK +04:00 to MSK +03:00 (-1 hour). If ActiveSupport::TimeZone['Moscow'] happens to be initialized just before the timezone transition, it will cache its stale utc_offset even after the timezone transition. This commit removes cache and fixes this issue. Signed-off-by: Jeremy Daer <jeremydaer@gmail.com>
* Follow up of ↵Vipul A M2016-04-241-1/+1
| | | | | | https://github.com/rails/rails/commit/c9c5788a527b70d7f983e2b4b47e3afd863d9f48 [ci skip]
* Make getlocal and getutc always return instances of TimeAndrew White2016-04-231-0/+12
| | | | | | | | | | | | | | | Previously these methods could return either a DateTime or a Time depending on how the ActiveSupport::TimeWithZone instance had been constructed. Changing to always return an instance of Time eliminates a possible stack level too deep error in to_time where it was wrapping a DateTime instance. As a consequence of this the internal time value is now always an instance of Time in the UTC timezone, whether that's as the UTC time directly or a representation of the local time in the timezone. There should be no consequences of this internal change and if there are it's a bug due to leaky abstractions.
* Add DateTime#subsecAndrew White2016-04-231-0/+4
| | | | | Mirrors the Time#subsec method by returning the fraction of the second as a Rational.
* Add additional aliases for DateTime#utcAndrew White2016-04-231-0/+5
|
* Add CHANGELOG entry for #24700Andrew White2016-04-231-0/+5
|
* Add Time#sec_fractionAndrew White2016-04-231-0/+4
| | | | | Mirrors the DateTime#sec_fraction method by returning the fraction of the second as a Rational.
* Add compatibility for Ruby 2.4 `to_time` changesAndrew White2016-04-231-0/+20
| | | | | | | | | | | | | | | In Ruby 2.4 the `to_time` method for both `DateTime` and `Time` will preserve the timezone of the receiver when converting to an instance of `Time`. Since Rails 5.0 will support Ruby 2.2, 2.3 and later we need to introduce a compatibility layer so that apps that upgrade do not break. New apps will have a config initializer file that defaults to match the new Ruby 2.4 behavior going forward. For information about the changes to Ruby see: https://bugs.ruby-lang.org/issues/12189 https://bugs.ruby-lang.org/issues/12271 Fixes #24617.
* Merge pull request #20625 from Envek/add_country_zones_methodJeremy Daer2016-04-191-0/+11
|\ | | | | | | Add ActiveSupport::TimeZone.country_zones helper
| * Add ActiveSupport::TimeZone.country_zones helperAndrey Novikov2016-04-191-0/+7
|/ | | | | | That helper will return time zones for any country that tzdata knows about. So it will be much simpler for non-US people to list own country time zones in HTML selects or anywhere.
* Ruby 2.4 Array#sum: ficauses -> cases changelog typo [ci skip]Jeremy Daer2016-04-191-1/+1
|
* Ruby 2.4: compat with new Array#sumJeremy Daer2016-04-181-0/+23
| | | | | | | | | | | | | | | | | | | | | Ruby 2.4 introduces `Array#sum`, but it only supports numeric elements, breaking our `Enumerable#sum` which supports arbitrary `Object#+`. To fix, override `Array#sum` with our compatible implementation. Native Ruby 2.4: %w[ a b ].sum # => TypeError: String can't be coerced into Fixnum With `Enumerable#sum` shim: %w[ a b ].sum # => 'ab' We tried shimming the fast path and falling back to the compatible path if it fails, but that ends up slower even in simple causes due to the cost of exception handling. Our only choice is to override the native `Array#sum` with our `Enumerable#sum`.
* `ActiveSupport::Duration` supports ISO8601 formatting and parsing.Arnau Siches, Andrey Novikov2016-04-181-0/+16
| | | | | | | | | | | | | | ```ruby ActiveSupport::Duration.parse('P3Y6M4DT12H30M5S') (3.years + 3.days).iso8601 ``` Inspired by Arnau Siches' [ISO8601 gem](https://github.com/arnau/ISO8601/) and rewritten by Andrey Novikov with suggestions from Andrew White. Test data from the ISO8601 gem redistributed under MIT license. (Will be used to support the PostgreSQL interval data type.)
* Merge pull request #24577 from mechanicles/fix-fetch-cache-missJeremy Daer2016-04-181-0/+8
|\ | | | | | | Fix forced cache miss for fetch when called without a block.
| * Fix forced cache miss for fetch.Santosh Wadghule2016-04-181-0/+7
|/ | | | | | - Raised an argument error if no block is passed to #fetch with 'force: true' option is set. - Added tests for the same.
* Merge pull request #22806 from Envek/solid_durationsJeremy Daer2016-04-171-0/+20
|\ | | | | | | | | | | | | Introduce weeks and hours periods to Duration. Change 1.week to create a 1 week duration instead of 7 days and 1.hour to create a 1 hour duration instead of 3600 seconds.
| * Change 1.week to create 1 week durations instead of 7 days durations.Andrey Novikov2016-04-181-0/+22
|/ | | | This is just to remove astonishment from getting `3600 seconds` from typing `1.hour`.
* Fix behavior of JSON encoding for Exceptionnamusyaka2016-04-091-0/+4
|
* Merge pull request #24401 from pan/number-to-phoneRafael Mendonça França2016-04-051-0/+7
|\ | | | | | | `number_to_phone` formats number with regexp
| * `number_to_phone` formats number with regexpPan GaoYong2016-04-021-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | By default, this method formats US number. This commit extends its functionality to format number for other countries with a custom regular expression. number_to_phone(18812345678, pattern: /(\d{3})(\d{4})(\d{4})/) # => 188-1234-5678 The output phone number is divided into three groups, so the regexp should also match three groups of numbers.
* | Match `String#to_time`'s behaviour to rubySiim Liiser2016-04-041-0/+11
| | | | | | | | | | | | | | | | Previously `String#to_time` returned the midnight of the current date in some cases where there was no relavant information in the string. Now the method returns `nil` instead in those cases. Fixes #22958.
* | Call super instead of returning nil for DateTime#<=>Andrew White2016-04-031-0/+9
|/ | | | | | | | The native DateTime#<=> implementation can be used to compare instances with numeric values being considered as astronomical julian day numbers so we should call that instead of returning nil. Fixes #24228.
* Fix method String#upcase_firstbogdanvlviv2016-03-311-1/+1
|
* Merge pull request #23895 from glaucocustodio/add_upcase_first_methodRafael Mendonça França2016-03-301-0/+4
|\ | | | | | | Add upcase_first method
| * Add upcase_first methodGlauco Custódio2016-02-251-0/+4
| |
* | Fix typo in Action Pack changelog [ci skip]Prathamesh Sonpatki2016-03-251-1/+1
| |
* | guides, sync 5.0 release notes with changelogsYves Senn2016-03-221-2/+2
| | | | | | | | | | | | | | | | [ci skip] Sync AV, AR, AJ, AS, AM changelogs with our 5.0 release notes draft. This is a follow up to c94045d and contains changes made since the release of beta1.
* | Prevent `Marshal.load` from looping infinitelyOlek Janiszewski2016-03-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Fix a bug in `Marshal.load` that caused it to loop indefinitely when trying to autoload a constant that resolved to a different name. This could occur when marshalling an ActiveRecord 4.0 object (e.g. into memcached) and then trying to unmarshal it with Rails 4.2. The marshalled payload contains a reference to `ActiveRecord::ConnectionAdapters::Mysql2Adapter::Column`, which in Rails 4.2 resolves to `ActiveRecord::ConnectionAdapters::AbstractMysqlAdapter::Column`.
* | Fix CHANGELOG spacing [ci skip]Jeremy Daer2016-03-021-2/+2
| |
* | Merge pull request #23936 from yui-knk/local_constants_to_be_publicRafael Mendonça França2016-03-011-0/+4
|\ \ | | | | | | | | | Deprecate `Module.local_constants`
| * | Deprecate `Module.local_constants`yui-knk2016-03-011-0/+4
| |/ | | | | | | | | After Ruby 1.9, we can easily get the constants that have been defined locally by `Module.constants(false)`.
* / Publish AS::Executor and AS::Reloader APIsMatthew Draper2016-03-021-0/+7
|/ | | | | | These should allow external code to run blocks of user code to do "work", at a similar unit size to a web request, without needing to get intimate with ActionDipatch.
* Preparing for 5.0.0.beta3 releaseeileencodes2016-02-241-0/+2
| | | | Adds changelog headers for beta3 release
* add deprecation warning to assert_nothing_raised and changelog entryTara Scherner de la Fuente2016-02-221-1/+10
|
* Make benchmark('something', silence: true) actually workDavid Heinemeier Hansson2016-02-201-0/+4
|
* Add `#on_weekday?` method to `Date`, `Time`, and `DateTime`.Vipul A M2016-02-151-0/+8
|
* include activerecord and activesupport CHANGELOG entriesBrian Christian2016-02-101-0/+4
|
* Fix regression in `Hash#dig` for HashWithIndifferentAccess.Jon Moss2016-02-011-0/+3
|
* Add some Action Cable CHANGELOG entriesRafael Mendonça França2016-02-011-3/+0
| | | | | | And improve changelongs. [ci skip]
* Preparing for Rails 5.0.0.beta2Sean Griffin2016-02-011-0/+5
|
* [ci skip] Properly indent code in markdownclaudiob2016-02-011-29/+29
| | | | [ci skip]
* Change number_to_currency behavior for checking negativityPrathamesh Sonpatki2016-01-291-0/+15
| | | | | | | | | | | - Instead of using `to_f.phase`, just use `to_f.negative`?. - This change works same for all cases except when number is "-0.0". -0.0.to_f.negative? => false -0.0.to_f.phase? => pi - So -0.0 will be treated as positive from now onwards. - So this change reverts changes from https://github.com/rails/rails/pull/6512. - But it should be acceptable as we could not find any currency which supports negative zeros.
* docs, formatting pass over changelogs. [ci skip]Yves Senn2016-01-131-3/+5
|
* Match HashWithIndifferentAccess#default's behaviour with Hash#defaultDavid Cornu2016-01-071-0/+4
|
* move CHANGELOG entry to the appropriate position [ci skip]yuuji.yaginuma2016-01-031-3/+2
| | | | | petabyte and exabyte numeric conversion has been added after the 5.0.0.beta1 release. ref: 85048e90ab6ff6963919a9d10493b3910cd67b68
* New changelog entries are added to the top.Rafael Mendonça França2016-01-011-6/+6
| | | | [ci skip]