aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support
Commit message (Collapse)AuthorAgeFilesLines
* Adding Hash#compact and Hash#compact! methodstinogomes2014-01-092-0/+21
| | | | | | | | | | | * Adding Hash#compact and Hash#compact! methods * Using Ruby 1.9 syntax on documentation * Updating guides for `Hash#compact` and `Hash#compact!` methods * Updating CHANGELOG for ActiveSupport * Removing unecessary protected method and lambda for `Hash#compact` implementations * Performing `Hash#compact` implementation - https://gist.github.com/tinogomes/8332883 * fixing order position * Fixing typo
* Revert "Speedup String#to"Yves Senn2014-01-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2ef1fb2c455ca53a0c1e1768f50824926ce28bd3. As described in PR #13627 this commit broke functionality when passing a negative Fixnum to the `String#to` method: ```ruby assert_equal "hell", s.to(-2) ``` Before the revert, this failed with: ``` 1) Failure: StringAccessTest#test_#to_with_negative_Fixnum,_position_is_counted_from_the_end [test/core_ext/string_ext_test.rb:275]: Expected: "hell" Actual: nil ``` This revert is to keep the functionality on `master` working. If there is another way to get the performance benefit and keep the documented functionality we can add that. /cc @amatsuda @carlosantoniodasilva
* Add 'e' var on rescue DalliError, in order to log itArthur Neves2014-01-061-2/+2
|
* Merge pull request #10634 from teleological/time_advance_gregorianAndrew White2014-01-051-4/+6
|\ | | | | Maintain proleptic gregorian in Time#advance
| * Maintain proleptic gregorian in Time#advanceRiley Lynch2013-05-151-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Time#advance uses Time#to_date and Date#advance to calculate a new date. The Date object returned by Time#to_date is constructed with the assumption that the Time object represents a proleptic gregorian date, but it is configured to observe the default julian calendar reform date (2299161j) for purposes of calculating month, date and year: Time.new(1582, 10, 4).to_date.to_s # => "1582-09-24" Time.new(1582, 10, 4).to_date.gregorian.to_s # => "1582-10-04" This patch ensures that when the intermediate Date object is advanced to yield a new Date object, that the Time object for return is contructed with a proleptic gregorian month, date and year.
* | Raise if MemCacheStore doenst receive a Dalli objArthur Neves2014-01-031-0/+3
| | | | | | | | | | | | :mem_cache_store should receive a list of hosts or a dalli client, otherwise raise it. Also adding a changelog.
* | mem_cache_store requires dalli, so only accept dalli/clientArthur Neves2014-01-031-6/+1
| | | | | | | | | | | | | | :mem_cache_store require dalli, rescue Dalli exceptions, and follow Dalli API. Memcached gem, for instance, doesnt work anymore, as the API are different. As we already require one client, we should make sure that client works, and not accept others, and if someone wants to use another memcache client they can write their own store adapter.
* | Don't lazy load the tzinfo libraryAndrew White2014-01-011-19/+2
| | | | | | | | | | | | | | | | | | Lazy loading the tzinfo library doesn't really buy us anything because the gem is installed as a dependency via the gemspec and if a developer is using Active Support outside of Rails then they can cherry pick which files to load anyway. Fixes #13553
* | Avoid raising a NameError on FreeBSD using DateRobin Dupret2014-01-011-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | The Date object has a xmlschema method starting with Ruby 1.9 so we were assuming that we could safely remove this method and redefine it later but the call to remove_method throws a NameError on FreeBSD so we should rely on remove_possible_method instead. This call is actually needed to avoid warnings when running the test suite. Fixes #11723
* | blank? and present? commit to return singletons [Xavier Noria & Pavel Pravosud]Xavier Noria2013-12-281-18/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The contract of blank? and present? was in principle to return Object, as we generally do, the test suite and description was consistent with that, but some examples had comments like "# => true". This cannot be unclear, we either fix the examples, or update the contract. Since users may be already assuming singletons due to the examples and the fact that they were returned before 30ba7ee, the safest option seems to be to revise the contract and the implementation of String#blank? The motivation for 30ba7ee was to improve the performance of the predicate, the refactor based on === is on par regarding speed. With this commit we start documenting return types using YARD conventions. We plan to document return types gradually.
* | Extracted blank matcher regexp to constantPaul Nikitochkin2013-12-281-1/+3
| |
* | Update to Unicode 6.3.0Norman Clarke2013-12-272-1/+1
| | | | | | | | | | | | 6.3.0 was released on September 30, 2013. http://unicode-inc.blogspot.com.ar/2013/09/announcing-unicode-standard-version-63.html
* | Use String#scrub when available to tidy bytesNorman Clarke2013-12-261-35/+35
| |
* | Merge pull request #13436 from robin850/patch-11Guillermo Iguaran2013-12-211-1/+1
|\ \ | | | | | | Add missing changelog entries and fix few typos
| * | Fix few typos in the documentation [ci skip]Robin Dupret2013-12-211-1/+1
| | |
* | | Fix typo [ci skip]Carlos Antonio da Silva2013-12-211-1/+1
|/ /
* | Fix AS::NumberHelper results with large precisionsKenta Murata & Akira Matsuda2013-12-201-7/+37
| | | | | | | | | | | | | | | | | | before: ActiveSupport::NumberHelper.number_to_rounded '3.14159', precision: 50 => "3.14158999999999988261834005243144929409027099609375" after: ActiveSupport::NumberHelper.number_to_rounded '3.14159', precision: 50 => "3.14159000000000000000000000000000000000000000000000"
* | Make sure multiline string is not accepted by the regexpRafael Mendonça França2013-12-191-1/+1
| |
* | Revert "revises the release notes about message verifiers [ci skip]"Xavier Noria2013-12-191-1/+1
| | | | | | | | This reverts commit 293a1a68992ba3e3e80f9f0f685e866ff79bf11a.
* | revises the release notes about message verifiers [ci skip]Xavier Noria2013-12-191-1/+1
| | | | | | | | Example code does not run yet with beta1.
* | Merge branch 'master' of github.com:lifo/docrailsVijay Dev2013-12-204-10/+10
|\ \
| * | fixed typo mistake time_formats.rb -> date_formats.rb [ci skip]Kuldeep Aggarwal2013-12-101-1/+1
| | |
| * | Typos. return -> returns. [ci skip]Lauro Caetano2013-12-034-10/+10
| | |
* | | Merge pull request #13406 from hincupetru/masterRafael Mendonça França2013-12-191-1/+1
|\ \ \ | | | | | | | | Fixed configurable.rb regular expression name check
| * | | Fixed configurable.rb regular expression name checkHincu Petru2013-12-191-1/+1
| | | |
* | | | Prevent creation of instance methods when `instance_reader = false`, Grammar ↵Akshay Vishnoi2013-12-191-8/+9
|/ / / | | | | | | | | | checks, Conditional statements combined
* | | Merge pull request #13400 from nishant-cyro/docsGuillermo Iguaran2013-12-181-1/+1
|\ \ \ | | | | | | | | fix typos and grammar mistake [ci skip]
| * | | fix typos and grammar mistake [ci skip]nishant-cyro2013-12-191-1/+1
| | | |
* | | | Get ready to release 4.1.0.beta1David Heinemeier Hansson2013-12-171-1/+1
| | | |
* | | | Merge pull request #13346 from chancancode/release_notes_etcYves Senn2013-12-171-1/+1
|\ \ \ \ | | | | | | | | | | Release notes fixes [ci skip]
| * | | | Some assorted fixes for the 4.1 release notes:Godfrey Chan2013-12-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added release notes for secrets.yml and mentioned it in the highlights * Added release notes for Mailer previews and mentioned it in the highlights * Added release notes for Module#concerning * Removed mention for AV extraction from the highlights * Rearranged the major features to put highlighted features first * Various improvements and typo fixes [ci skip]
* | | | | Merge pull request #13341 from carlosantoniodasilva/ca-i18nCarlos Antonio da Silva2013-12-171-4/+10
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | Default I18n.enforce_available_locales to true We will default this option to true from now on to ensure users properly handle their list of available locales whenever necessary. This option was added as a security measure and thus Rails will follow it defaulting to secure option. Also improve the handling of I18n config options in its railtie, taking the new enforce_available_locales option into account, by setting it as the last one in the process. This ensures no other configuration will trigger a deprecation warning due to that setting.
| * | | | Default I18n.enforce_available_locales to trueCarlos Antonio da Silva2013-12-171-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We will default this option to true from now on to ensure users properly handle their list of available locales whenever necessary. This option was added as a security measure and thus Rails will follow it defaulting to secure option. Also improve the handling of I18n config options in its railtie, taking the new enforce_available_locales option into account, by setting it as the last one in the process. This ensures no other configuration will trigger a deprecation warning due to that setting.
* | | | | concern doesn't include the module automaticallyRafael Mendonça França2013-12-171-1/+0
|/ / / / | | | | | | | | | | | | [ci skip]
* | | | Introduce Module#concerningJeremy Kemper2013-12-172-0/+137
| | | | | | | | | | | | | | | | | | | | | | | | A natural, low-ceremony way to separate responsibilities within a class. Imported from https://github.com/37signals/concerning#readme
* | | | Merge pull request #13321 from mezis/fix-safebuffer-interpolation-masterJeremy Kemper2013-12-161-7/+12
|\ \ \ \ | | | | | | | | | | Fixes interpolation on SafeBuffer
| * | | | Fixes interpolation on SafeBufferJulien Letessier2013-12-141-7/+12
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Interpolation was untested and did not work with hash arguments. Adds - support for interpolation with hash argument - tests for the above - tests for safe/unsafe interpolation
* | | | Merge pull request #13307 from akshay-vishnoi/typoRafael Mendonça França2013-12-151-2/+2
|\ \ \ \ | |/ / / |/| | | Spelling and Grammar check [ci skip]
| * | | Spelling and Grammar check [ci skip]Akshay Vishnoi2013-12-161-2/+2
| | | |
* | | | Perf: save ~9% of object allocations on heavy requests.Jeremy Kemper2013-12-121-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The per-thread registry is keyed on the class name, and each request for the class name returns a new string. This is in the hot path for a lot of Active Record behavior, so we easily accumulate thousands of repeated strings. To fix, we simply cache the key when the class is first extended with the module. TODO: Eliminate this module. The per-thread instance concept is common, but this technique confuses and obfuscates.
* | | | Merge pull request #13229 from vipulnsward/fix-10635-testsRafael Mendonça França2013-12-121-2/+3
|\ \ \ \ | | | | | | | | | | Fix test-error introduced by #10635.
| * | | | PR #10635 introduces rescue from ArgumentError thrown by ↵Vipul A M2013-12-121-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `Base64.strict_decode64`. This broke natural order of things for `StaleSessionCheck#stale_session_check!` which tried auto_loading a class based on `ArgumentError` message , and later retrying the `Marshal#load` of class, successfully allowing auto_loading. This PR tries to fix this behavior by forwarding `ArgumentError` 's not raised by `Base64.strict_decode64` , as is, ahead to `StaleSessionCheck#stale_session_check!`
* | | | | Copy-edit the parent commitRafael Mendonça França2013-12-121-6/+8
| | | | |
* | | | | Merge pull request #13268 from aayushkhandelwal11/masterRafael Mendonça França2013-12-121-22/+16
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | Moving the common code of increment and decrement of cache file store in...
| * | | | Moving the common code of increment and decrement of cache file store into ↵Aayush khandelwal2013-12-121-22/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | seprate function Removing the double checking for the value of id simplifying code for checking conditional code for key Removing the default values for parameters removing reduntant code and asiigning value of id in local variable removing wrongly added line break[ci ckip] reverting code
* | | | | Merge pull request #13287 from aayushkhandelwal11/typo_rectifiedYves Senn2013-12-111-3/+3
|\ \ \ \ \ | | | | | | | | | | | | typos rectified lifecycle => life cycle
| * | | | | typos rectified lifecycle => life cycleAayush khandelwal2013-12-121-3/+3
| |/ / / /
* | | | | JSON: speed up date/time encodingJeremy Kemper2013-12-111-24/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Comparing dates & times with other objects using #== is slow. Internally, it hits #<=> which calls #to_datetime on objects that don't respond to it, so we incur the cost of raising an exception with a possibly-deep backtrace. Cost of #jsonify on a Time object: Calculating ------------------------------------- old 3644 i/100ms new 12652 i/100ms ------------------------------------------------- old 43373.8 (±3.5%) i/s - 218640 in 5.047017s new 173437.6 (±5.2%) i/s - 872988 in 5.047747s
* | | | | Merge pull request #13284 from aayushkhandelwal11/typos_correctedGodfrey Chan2013-12-111-1/+1
|\ \ \ \ \ | | | | | | | | | | | | s/everytime/every time/
| * | | | | typos rectified [ci skip]Aayush khandelwal2013-12-121-1/+1
| |/ / / /