aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #27797 from y-yagi/correctly_check_error_messageArthur Nogueira Neves2017-01-302-2/+4
|\ | | | | correctly check error message
| * correctly check error messageyuuji.yaginuma2017-01-252-2/+4
| | | | | | | | | | | | | | `assert_raise` does not check error message. However, in some tests, it seems like expecting error message checking with `assert_raise`. Instead of specifying an error message in `assert_raise`, modify to use another assert to check the error message.
* | Merge pull request #27822 from mtsmfm/bump-unicode-versionJeremy Daer2017-01-305-10/+38
|\ \ | | | | | | Update Unicode Version to 9.0.0
| * | Update Unicode Version to 9.0.0Fumiaki MATSUSHIMA2017-01-285-10/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9.0.0 was released on June 21, 2016 http://blog.unicode.org/2016/06/announcing-unicode-standard-version-90.html http://www.unicode.org/versions/Unicode9.0.0/ There are some changes about grapheme cluster in Unicode 9.0.0: http://unicode.org/reports/tr29/#Grapheme_Cluster_Boundary_Rules ------------ I noticed that `unpack_graphemes` returns [Other] when the argument is Other ÷ Prepend (it must be [Other, Prepend]). But in [Unicode 8.0.0's Prepend has no characters](http://www.unicode.org/reports/tr29/tr29-27.html#Prepend) so we don't have to backport following patch: ```diff should_break = + if pos == eoc + true ```
* | | Ruby constant look-up no longer falls back to top-level since 2.5Akira Matsuda2017-01-301-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This behavior used to warn until 2.4, and raises since 2.5. The test here was intentinally named not to start with "test_" and so it used not to be executed because this never passes, but now is should pass in trunk. https://bugs.ruby-lang.org/issues/11547 https://github.com/ruby/ruby/commit/44a2576f798b07139adde2d279e48fdbe71a0148 closes #19897
* | | Missing require 'active_support/core_ext/hash/keys'Akira Matsuda2017-01-291-0/+1
|/ / | | | | | | | | | | Without this, the test causes a "method redefined" warning because * first it loads I18n and defines Hash#deep_symbolize_keys inside I18n's lib/i18n/core_ext/hash.rb * then it loads AS/core_ext/hash/keys.rb afterwards
* | Fix broken sample code for EventedFileUpdateChecker [ci skip]kenta-s2017-01-281-1/+1
| |
* | Uninterned Symbol can be duped since ruby 2.4.1Akira Matsuda2017-01-261-1/+4
| | | | | | | | | | | | https://github.com/ruby/ruby/commit/11e6bd5ac2a2eebfa589bd6db8c9c4daa337733e Leaving the 2.4.0 conditional for now, in order never to forget backporting r57407 to 2.4.1
* | Fix grammar 'an hyphen' -> 'a hyphen' [ci skip]kenta-s2017-01-251-1/+1
| |
* | This seems to be working on JRuby 9KAkira Matsuda2017-01-251-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | % ruby -ve "p 'ほげ'.encode(Encoding::UTF_8_MAC)" jruby 1.7.26 (1.9.3p551) 2016-08-26 69763b8 on Java HotSpot(TM) 64-Bit Server VM 1.8.0_45-b14 +jit [darwin-x86_64] "\u307B\u3052" % ruby -ve "p 'ほげ'.encode(Encoding::UTF_8_MAC)" jruby 9.1.7.0 (2.3.1) 2017-01-11 68056ae Java HotSpot(TM) 64-Bit Server VM 25.45-b02 on 1.8.0_45-b14 +jit [darwin-x86_64] "\u307B\u3051\u3099" % ruby -ve "p 'ほげ'.encode(Encoding::UTF_8_MAC)" ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin14] "\u307B\u3051\u3099"
* | Merge pull request #27798 from yui-knk/give_message_to_test_duplicableRichard Schneeman2017-01-251-1/+1
|\ \ | | | | | | Give a message to `#test_duplicable` assertion
| * | Give a message to `#test_duplicable` assertionyui-knk2017-01-251-1/+1
| | | | | | | | | | | | | | | Giving a message helps us to know what happened when we look at Travis CI.
* | | Change ActionView ERB Handler from Erubis to ErubiJeremy Evans2017-01-252-2/+13
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Erubi offers the following advantages for Rails: * Works with ruby's --enable-frozen-string-literal option * Has 88% smaller memory footprint * Does no freedom patching (Erubis adds a method to Kernel) * Has simpler internals (1 file, <150 lines of code) * Has an open development model (Erubis doesn't have a public source control repository or bug tracker) * Is not dead (Erubis hasn't been updated since 2011) Erubi is a simplified fork of Erubis that contains just the parts that are generally needed (which includes the parts that Rails uses). The only intentional difference in behavior is that it does not include support for <%=== tags for debug output. That could be added to the ActionView ERB handler if it is desired. The Erubis template handler remains in a deprecated state so that code that accesses it directly does not break. It can be removed after Rails 5.1.
* / Fix sample code for `expand_cache_key` usage [ci skip]kenta-s2017-01-241-2/+2
|/
* Add module name to BacktraceCleaner usage example [ci skip]kenta-s2017-01-221-1/+1
|
* add missing comment out [ci skip]bogdanvlviv2017-01-201-1/+1
|
* add missing comment out [ci skip]yuuji.yaginuma2017-01-201-7/+7
|
* Allocation free Integer#to_sJean Boussier2017-01-192-16/+19
|
* Unused class for testing since 93559da4826546d07014f8cfa399b64b4a143127Akira Matsuda2017-01-181-16/+0
|
* rm rm_f that is not in useAkira Matsuda2017-01-181-5/+0
|
* Adjust `Module.parent_name` to work when frozen; fixes #27637Corey Ward2017-01-173-32/+41
|
* Use appropriate assertion based on expectationCorey Ward2017-01-171-2/+7
| | | | | | | This resolves a stern Minitest “warning” about an upcoming behavior change in MiniTest 6 that will result in the test failing. https://github.com/seattlerb/minitest/issues/666
* Don't pollute Object with rubinius_skip and jruby_skipAkira Matsuda2017-01-171-10/+10
| | | | we call them only in the tests
* All currently supported rubies already have LoadError#pathAkira Matsuda2017-01-171-12/+0
|
* :golf: else + if = elsifAkira Matsuda2017-01-171-10/+8
|
* CHANGELOG: Raise ArgumentError when calling transliterate on anything other ↵Kevin McPhillips2017-01-161-0/+5
| | | | than a string
* Raise ArgumentError if attempting to transliterate anything that is not a stringKevin McPhillips2017-01-162-0/+20
|
* Should do nothing hereAkira Matsuda2017-01-161-1/+1
|
* Revert "Merge pull request #27686 from koic/friendly_bigdecimal_inspect"Kasper Timm Hansen2017-01-151-7/+0
| | | | | | | | | | | | | The exact inspect output of a BigDecimal is out of scope for what we're trying to communicate about `dup` and `duplicable?` here. Adding two examples distracts is disctracting, so keep the docs from before since our minimal version is Ruby 2.2.2. [ Koichi ITO, Jon Moss, Kasper Timm Hansen ] This reverts commit 2163874dedaf83e67599c2930c2686caa165fbad, reversing changes made to 46fdbc5290335ed38fa9fe2b6b0ef8abe4eccb1b.
* Several representation of BigDecimal has changed in Ruby 2.4.0+ [ci skip]Koichi ITO2017-01-151-0/+7
| | | | cf. https://github.com/ruby/bigdecimal/pull/42
* It would be safer not to totally undef core classes' respond_to_missing?Akira Matsuda2017-01-152-2/+12
| | | | instead, rewrite them to no-op
* AS::StringInquirer#respond_to_missing? should fallback to superAkira Matsuda2017-01-153-3/+19
| | | | in case String or any other ancestor class' respond_to_missing? was defined.
* This test wasn't actually an effective regression testAkira Matsuda2017-01-151-4/+5
|
* Unused &block parameterAkira Matsuda2017-01-151-1/+1
|
* AS::ArrayInquirer#respond_to_missing? should fallback to superAkira Matsuda2017-01-153-1/+20
| | | | in case Array or any other ancestor class' respond_to_missing? was defined.
* Constant look-up would no longer fall back to top-level constant since ruby 2.5Akira Matsuda2017-01-131-2/+2
| | | | | See: https://github.com/ruby/ruby/commit/44a2576f798b07139adde2d279e48fdbe71a0148 https://github.com/ruby/ruby/commit/9df88e9cae57aa421230f14500e88f33f127414f
* class Foo < Struct.new(:x) creates an extra unneeded anonymous classAkira Matsuda2017-01-133-4/+4
| | | | because Struct.new returns a Class, we just can give it a name and use it directly without inheriting from it
* Add duration constructors for use in Numeric extensionsAndrew White2017-01-123-34/+76
| | | | | The Numeric extensions like 1.day, 1.month, etc. shouldn't know how the internals of ActiveSupport::Duration works.
* Add additional tests for #27610Andrew White2017-01-121-1/+38
| | | | | | | Since 1.month no longer equals 30.days add some tests to ensure that addition maintains the same day in the month or is the last day in the month if the month has less days than the current day. Also add a test for the behaviour of 12.months == 1.year.
* Reduce string objects by using \ instead of + or << for concatenating stringsAkira Matsuda2017-01-121-1/+1
| | | | (I personally prefer writing one string in one line no matter how long it is, though)
* Merge pull request #27610 from Envek/fix_and_speed_up_duration_parsingAndrew White2017-01-126-20/+57
|\ | | | | Fix inconsistent parsing of Durations with both months and years
| * Fix inconsistent results when parsing large durations and constructing ↵Andrey Novikov2017-01-096-20/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | durations from code ActiveSupport::Duration.parse('P3Y') == 3.years # It should be true Duration parsing made independent from any moment of time: Fixed length in seconds is assigned to each duration part during parsing. Changed duration of months and years in seconds to more accurate and logical: 1. The value of 365.2425 days in Gregorian year is more accurate as it accounts for every 400th non-leap year. 2. Month's length is bound to year's duration, which makes sensible comparisons like `12.months == 1.year` to be `true` and nonsensical ones like `30.days == 1.month` to be `false`. Calculations on times and dates with durations shouldn't be affected as duration's numeric value isn't used in calculations, only parts are used. Methods on `Numeric` like `2.days` now use these predefined durations to avoid duplicating of duration constants through the codebase and eliminate creation of intermediate durations.
* | Use Encoding::UTF_8 constant for default_{internal,external} in the testsAkira Matsuda2017-01-111-2/+2
| |
* | Make time travel work with subclasses of Time/Date/DatetimeJonas Nicklas2017-01-102-5/+24
|/ | | | | Closes #27614 Previously when calling `now` on a subclass of e.g. `Time` it would return an instance of `Time` instead of returning an instance of the subclass. This way, we always return the correct class.
* Merge pull request #27392 from y-yagi/use_same_class_on_compactSean Griffin2017-01-062-0/+14
|\ | | | | ensure `#compact` of HWIDA to return HWIDA
| * ensure `#compact` of HWIDA to return HWIDAyuuji.yaginuma2017-01-062-0/+14
| | | | | | | | | | | | | | | | `Hash#compact` of Ruby native returns new hash. Therefore, in order to return HWIDA as in the past version, need to define own `#compact` to HWIDA. Related: #26868
* | `self.` is not needed when calling its own instance methodAkira Matsuda2017-01-055-6/+6
| | | | | | | | Actually, private methods cannot be called with `self.`, so it's not just redundant, it's a bad habit in Ruby
* | Fix style guide violationsRafael Mendonça França2017-01-052-2/+2
| |
* | Make sure we generate keys that can be used with the cipherRafael Mendonça França2017-01-041-4/+4
| | | | | | | | | | | | | | | | | | We use aes-256-cbc cipher by default and it only accepts keys with 32 bytes at max. Closes #27576. [ci skip]
* | Merge pull request #26480 from tbrisker/fix-26461Rafael França2017-01-041-2/+7
|\ \ | |/ |/| Clarify that mattr_* creates public methods