aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #15421 from gchan/time_with_zone_precisionMatthew Draper2014-06-053-1/+36
|\ | | | | | | Fixed `ActiveSupport::TimeWithZone#-` so precision is not unnecessarily lost
| * Fixed `ActiveSupport::TimeWithZone#-` so precision is not unnecessarily lostGordon Chan2014-05-303-1/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When working with objects with a nanosecond component, the `-` method may unnecessarily cause loss of precision. `ActiveSupport::TimeWithZone#-` should return the same result as if we were using `Time#-`: Time.now.end_of_day - Time.now.beginning_of_day #=> 86399.999999999 Before: Time.zone.now.end_of_day.nsec #=> 999999999 Time.zone.now.end_of_day - Time.zone.now.beginning_of_day #=> 86400.0 After: Time.zone.now.end_of_day - Time.zone.now.beginning_of_day #=> 86399.999999999
* | Correct result, previously showing wrong resultAkshay Vishnoi2014-06-041-1/+1
| |
* | Merge pull request #15447 from akshay-vishnoi/test-casesRafael Mendonça França2014-06-031-0/+8
|\ \ | | | | | | Test `except!` in other cases too
| * | Test `except!` in other cases tooAkshay Vishnoi2014-05-311-0/+8
| | |
* | | drastically reduce object allocationsAaron Patterson2014-06-021-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | before this change, we were allocating AS::SafeBuffer objects that were being interpolated in to a string, so the safe buffer object was being thrown away. This change only allocates a string (vs a string *and* a safebuffer) and interpolates the string. On my test application, this reduced the AS::SafeBuffer objects from 1527k per request to about 500 per request.
* | | reduce AS::SafeBuffer allocationsAaron Patterson2014-06-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | html_escape_interpolated_argument is only used in mutation methods: https://github.com/rails/rails/blob/c07d09559ec171e1904b55c7ad7e8c7d586ca51b/activesupport/lib/active_support/core_ext/string/output_safety.rb#L174 https://github.com/rails/rails/blob/c07d09559ec171e1904b55c7ad7e8c7d586ca51b/activesupport/lib/active_support/core_ext/string/output_safety.rb#L179 The return value doesn't need to be converted to an AS::SafeBuffer since we know that the current object is an AS::SafeBuffer and will be mutated, and the return value from html_escape_interpolated_argument will be thrown away
* | | concat is a hotspot (via AV#append=), so just directly define the methodsAaron Patterson2014-06-021-4/+6
| | |
* | | Merge pull request #15379 from xuanxu/rational_precisionRafael Mendonça França2014-06-023-5/+16
|\ \ \ | | | | | | | | Fix AS::NumberHelper results with rationals
| * | | Fix AS::NumberHelper results with rationalsJuanjo Bazán2014-05-313-5/+16
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | :precision was incorrectly being applied to Rationals before: ActiveSupport::NumberHelper.number_to_rounded Rational(10, 3), precision: 2 => "3.3" after: ActiveSupport::NumberHelper.number_to_rounded Rational(10, 3), precision: 2 => "3.33"
* | | Merge pull request #15464 from tgxworld/improve_notifications_logicMatthew Draper2014-06-032-8/+18
|\ \ \ | | | | | | | | Improvements to ActiveSupport::Notifications.
| * | | Avoid looping through subscribers when unsubscribing with a subscriber object.Guo Xiang Tan2014-06-011-5/+10
| | | |
| * | | Update documentation to reflect unsubscription with name.Guo Xiang Tan2014-06-012-4/+9
| | | |
* | | | Feature requests should be made on the mailing list, not submitted toZachary Scott2014-06-011-1/+6
|/ / / | | | | | | | | | the issue tracker. See also #15455 [ci skip]
* / / [ci skip] Correct output of Hash#symbolize_keysAkshay Vishnoi2014-05-311-2/+2
|/ /
* | Tiny formatting fix in AS change log [ci skip]Robin Dupret2014-05-311-4/+4
| |
* | [ci skip] Correct documentation of HashWithIndifferentAccess#dupAkshay Vishnoi2014-05-311-2/+2
| |
* | HashWithIndifferentAccess#dup doc [ci skip]James Blanding2014-05-301-1/+8
| | | | | | | | | | The phrase "exact copy" in the existing docmentation is somewhat misleading.
* | Merge pull request #15313 from ↵Rafael Mendonça França2014-05-301-0/+8
|\ \ | | | | | | | | | | | | andreychernih/time-with-zone-string-conversion-speed-up Speed-up TimeWithZone to String conversion
| * | Speed-up TimeWithZone to String conversionAndrey Chernih2014-05-271-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've noticed that `String(model.created_at)` is performing poorly in comparision with other fields. The source of the problem is a way `Kernel#String` works: it first tries to call `to_str` (which causes `NoMethodError` in `method_missing`) and then calls `to_s`. Performance tests: tz = Time.zone.now Benchmark.ips do |x| x.report { String(tz) } end Without this code: Calculating ------------------------------------- 572 i/100ms ------------------------------------------------- 10177.7 (±18.2%) i/s - 48620 in 5.000325s With this code: Calculating ------------------------------------- 1518 i/100ms ------------------------------------------------- 138984.2 (±10.1%) i/s - 677028 in 4.974897s
* | | :scissors: removed deprecated `Numeric#ago` and friendsGodfrey Chan2014-05-303-62/+15
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | Replacements: 5.ago => 5.seconds.ago 5.until => 5.seconds.until 5.since => 5.seconds.since 5.from_now => 5.seconds.from_now The removed tests does not affect coverage – we have equivalent test cases in the tests for `AS::Duration`. See #12389 for the history and rationale behind this.
* | Merge pull request #12080 from ShayDavidson/fix_datetime_partial_datesMatthew Draper2014-05-283-1/+31
|\ \ | | | | | | | | | Added partial days support to `DateTime`'s `advance` method.
| * | Fixed changelogShay Davidson2013-09-021-4/+12
| | |
| * | Added partial days support to `DateTime`'s `advance` method.Shay Davidson2013-08-303-5/+25
| | | | | | | | | | | | | | | You can now add partial days (e.g. 2.5.days) to `DateTime` with the advance method. This was acheived by mimicing the `advance` implementation in `Time`.
* | | Require active_support at the railtiesRafael Mendonça França2014-05-272-0/+2
| | | | | | | | | | | | Railties need to be used without having to require any dependecy first.
* | | Remove `require 'active_support'` from individual modulesdeeeki2014-05-273-4/+0
| | | | | | | | | | | | | | | Let users require `active_support` before loading any ActiveSupport modules http://guides.rubyonrails.org/active_support_core_extensions.html
* | | Merge pull request #15316 from akshay-vishnoi/test-casesYves Senn2014-05-261-7/+8
|\ \ \ | |_|/ |/| | | | | Fix test cases for inflector.rb
| * | Fix test cases for inflector.rbAkshay Vishnoi2014-05-251-7/+8
|/ / | | | | | | | | | | `yield` was missing in #with_dup, due to which 57 assertions were not running in real, and all tests were passing by default. Error was introduced in commit - 31ceb5e.
* | Merge pull request #15305 from tgxworld/remove_unnecessary_requireGuillermo Iguaran2014-05-241-2/+0
|\ \ | | | | | | Remove unnecessary require of Minitest.
| * | Remove unnecessary require of Minitest.Guo Xiang Tan2014-05-241-2/+0
| | | | | | | | | | | | Minitest has already been required when calling Minitest.autorun.
* | | Merge pull request #15278 from akshay-vishnoi/doc_changesAndrew White2014-05-241-4/+5
|\ \ \ | | | | | | | | [ci skip] Improve doc for ModuleConstMissing.guess_for_anonymous
| * | | [ci skip] Improve doc for ModuleConstMissing.guess_for_anonymousAkshay Vishnoi2014-05-241-4/+5
| | | |
* | | | Merge pull request #15276 from kuldeepaggarwal/fix-array-toRafael Mendonça França2014-05-232-1/+5
|\ \ \ \ | | | | | | | | | | Array#to now accept negative position also.
| * | | | revert 96525d63Kuldeep Aggarwal2014-05-232-1/+5
| |/ / / | | | | | | | | | | | | `Array#to` is working for negative position
* | | | Merge pull request #15275 from kuldeepaggarwal/add-testRafael Mendonça França2014-05-232-0/+4
|\ \ \ \ | | | | | | | | | | add test cases for negative position in Array#from
| * | | | add test cases for negative position in Array#fromKuldeep Aggarwal2014-05-232-0/+4
| | |/ / | |/| |
* | | | [ci skip] Remove Duration#=== when we drop support for 2.0.0-p353Akshay Vishnoi2014-05-231-2/+1
| |/ / |/| |
* | | Remove warning remeving the method before redefiningRafael Mendonça França2014-05-231-0/+1
|/ / | | | | | | | | | | | | We need to test if the same method defined more than once only register one subscriber for it. We can safelly remove because the method body is the same and Subscriber use method_added hook for register the subscriber.
* | Merge pull request #10887 from sakuro/deep_transform_keys_in_nested_arraysRafael Mendonça França2014-05-203-16/+67
|\ \ | | | | | | | | | | | | | | | | | | Hash#deep_*_keys(!) recurse into nested arrays. Conflicts: activesupport/CHANGELOG.md
| * | Hash#deep_*_keys(!) recurse into nested arrays.OZAWA Sakuro2013-06-083-16/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following methods now recursively transform nested arrays, too. * Hash#deep_transform_keys * Hash#deep_transform_keys! * Hash#deep_stringify_keys * Hash#deep_stringify_keys! * Hash#deep_symbolize_keys * Hash#deep_symbolize_keys!
* | | Fix confusing exception in ActiveSupport delegationVladimir Yarotsky2014-05-203-26/+20
| | |
* | | Collected TimeZone's class methods togetherprintercu2014-05-171-70/+69
| | | | | | | | | | | | Just moved class methods up in file and moved `def self.` methods into `class << self`.
* | | Merge pull request #15037 from ↵Rafael Mendonça França2014-05-163-7/+34
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | roccoblues/fix_duplicate_activesupport_subscribers Fixed duplicate subscribers in ActiveSupport::Subscriber Conflicts: activesupport/CHANGELOG.md
| * | | Fixed duplicate subscribers in ActiveSupport::SubscriberDennis Schoen2014-05-093-7/+34
| | | | | | | | | | | | | | | | | | | | ActiveSupport::Subscriber no longer creates multiple subscribers when you redefine a method.
* | | | formatting pass through CHANGELOGS. [ci skip]Yves Senn2014-05-161-1/+1
| | | |
* | | | remove deprecation warningeileencodes2014-05-132-6/+4
| | | | | | | | | | | | | | | | | | | | This deprecation was released in 4.1.0 and can be removed for 4.2.0, deprecation message / handling is no longer necessary.
* | | | Merge pull request #15072 from mjtko/fix/issue-15064Rafael Mendonça França2014-05-133-1/+14
|\ \ \ \ | | | | | | | | | | [Fixes #15064] Calling number_to_delimited on a ActiveSupport::SafeBuffer results in mangled output
| * | | | Require active_support/core_ext/string/output_safety and use html_safe ↵Mark J. Titorenko2014-05-121-1/+2
| | | | | | | | | | | | | | | | | | | | rather than use non-public SafeBuffer API.
| * | | | Use block parameter rather than `$1` during `gsub!` so ↵Mark J. Titorenko2014-05-123-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ActiveSupport::SafeBuffer` values aren't mangled. Fixes #15064
* | | | | Merge pull request #15073 from ifyouseewendy/masterRafael Mendonça França2014-05-131-5/+32
|\ \ \ \ \ | | | | | | | | | | | | Update and add tests in array_ext_test.rb