aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib
Commit message (Collapse)AuthorAgeFilesLines
* Preload to_datetime before freezing a TimeWithZone instanceAdam Rice2017-02-221-1/+2
|
* Merge pull request #27941 from ↵Kasper Timm Hansen2017-02-201-2/+2
|\ | | | | | | | | y-yagi/prevent_multiple_values_being_set_to_run_via Prevent multiple values being set to `run_via`
| * Prevent multiple values being set to `run_via`yuuji.yaginuma2017-02-181-2/+2
| | | | | | | | | | When executing the test via rake, since `rake` is set for `run_via`, `ruby` should not be set. Related 2cb6c27310452da11b93d729c3b760ce988106e1
* | Revert "Merge pull request #27925 from robin850/hwia-removal"Kasper Timm Hansen2017-02-201-17/+1
| | | | | | | | | | | | | | | | | | Pointed out by @matthewd that the HWIA subclass changes the AS scoped class and top-level HWIA hierarchies out from under existing classes. This reverts commit 71da39097b67114329be6d8db7fe6911124531af, reversing changes made to 41c33bd4b2ec3f4a482e6030b6fda15091d81e4a.
* | Merge pull request #27863 from robin850/api-improvementsMatthew Draper2017-02-212-0/+4
|\ \ | | | | | | Some improvements to the API site's sidebar
| * | Avoid documenting private or external classesRobin Dupret2017-02-072-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are a lot of monkey patches inside the code base but there's no need to document external constants so let's remove them from the documentation Also, since there are monkey patches for some test cases classes, there were sometimes both documented and sneaked under the wrong section in the sidebar. Finally, for future references, the `active_support/vendor` folder has been originally ignored in https://git.io/vDqfA but no longer exists. [ci skip]
* | | Deprecate the top-level `HashWithIndifferentAccess` contantRobin Dupret2017-02-191-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | This constant was kept for the sake of backward compatibility; it is still available under `ActiveSupport::HashWithIndifferentAccess`. Furthermore, since Ruby 2.5 (https://bugs.ruby-lang.org/issues/11547) won't support top level constant lookup, people would have to update their code anyway.
* | | Fix doc in Multibyte::Chars [ci skip]kenta-s2017-02-171-4/+5
| | |
* | | Remove redundant namespaces from sample code of `deprecated_method_warning` ↵kenta-s2017-02-151-3/+3
| | | | | | | | | | | | [ci skip]
* | | Not ants were harmed! 🐜Mario Uher2017-02-141-1/+1
| | |
* | | Fix the return of `deprecate_methods` in doc [ci skip]kenta-s2017-02-141-1/+1
| | |
* | | Remove unused requireRyuta Kamizono2017-02-121-1/+0
| | | | | | | | | | | | | | | | | | These files are not using `strip_heredoc`. Closes #27976
* | | Also not needed on this file, call to `mattr_accessor` got removed in ↵Edouard CHIN2017-02-121-1/+0
| | | | | | | | | | | | https://github.com/rails/rails/commit/9e98f3f7e61dfce0a48948c8d296400af8bfaf21#diff-1ecd313ff0ab827af30014553cf8918dL76
* | | deprecate `halt_callback_chains_on_return_false` instead of ↵yuuji.yaginuma2017-02-082-15/+6
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | `halt_and_display_warning_on_return_false` `halt_and_display_warning_on_return_false` is not a public API and application is using `halt_callback_chains_on_return_false`. https://github.com/rails/rails/blob/5-0-stable/railties/lib/rails/generators/rails/app/templates/config/initializers/new_framework_defaults.rb.tt#L29 https://github.com/rails/rails/blob/5-0-stable/activesupport/lib/active_support.rb#L86..L88 Therefore, deprecate messages should be issued for `halt_callback_chains_on_return_false` instead of `halt_and_display_warning_on_return_false`.
* | Remove unused code now that the deprecated file was removedRafael Mendonça França2017-02-071-2/+1
| |
* | Deprecate halt_and_display_warning_on_return_falseRafael Mendonça França2017-02-071-5/+12
| |
* | Remove deprecated behavior that halts callbacks when the return is falseRafael Mendonça França2017-02-071-24/+0
| |
* | Document that string in if and unless option of callbacks are deprecatedRafael Mendonça França2017-02-071-4/+4
| |
* | Improve the exception message to direct people to all the possible valuesRafael Mendonça França2017-02-071-1/+2
| |
* | Merge pull request #27608 from ↵Rafael França2017-02-071-6/+20
|\ \ | | | | | | | | | | | | kamipo/remove_deprecated_passing_string_to_define_callback Remove deprecated passing string to define callback
| * | Deprecate passing string to `:if` and `:unless` conditional options on ↵Ryuta Kamizono2017-02-041-0/+16
| | | | | | | | | | | | `set_callback` and `skip_callback`
| * | Remove deprecated passing string to define callbackRyuta Kamizono2017-02-041-6/+4
| | | | | | | | | | | | And raise `ArgumentError` when passing string to define callback.
* | | Docs: Correction: Module::DelegationErrorJared Beck2017-02-031-7/+9
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the delegation target is nil and the allow_nil option is not in use, a Module::DelegationError is raised. class C delegate :a, to: :b def b nil end end C.new.a # => Module::DelegationError: C#a delegated to b.a, but b is nil [ci skip]
* | Remove redundant right parentheses in number_helper [ci skip]kenta-s2017-01-311-1/+1
| |
* | Raise in the initialize not in the executeRafael Mendonça França2017-01-312-10/+10
| |
* | Merge pull request #27824 from kenta-s/raise-an-error-if-no-block-givenRafael França2017-01-312-2/+10
|\ \ | | | | | | Raise an error if FileUpdateChecker#execute is called with no block
| * | Raise an error if FileUpdateChecker#execute is called with no blockkenta-s2017-01-282-2/+10
| | |
* | | Update Unicode Version to 9.0.0Fumiaki MATSUSHIMA2017-01-282-8/+18
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 ```
* | Fix broken sample code for EventedFileUpdateChecker [ci skip]kenta-s2017-01-281-1/+1
|/
* Fix grammar 'an hyphen' -> 'a hyphen' [ci skip]kenta-s2017-01-251-1/+1
|
* Change ActionView ERB Handler from Erubis to ErubiJeremy Evans2017-01-251-2/+3
| | | | | | | | | | | | | | | | | | | | | | | 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-191-16/+15
|
* Adjust `Module.parent_name` to work when frozen; fixes #27637Corey Ward2017-01-171-2/+4
|
* All currently supported rubies already have LoadError#pathAkira Matsuda2017-01-171-12/+0
|
* :golf: else + if = elsifAkira Matsuda2017-01-171-10/+8
|
* Raise ArgumentError if attempting to transliterate anything that is not a stringKevin McPhillips2017-01-161-0/+2
|
* 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
* AS::StringInquirer#respond_to_missing? should fallback to superAkira Matsuda2017-01-151-1/+1
| | | | in case String or any other ancestor class' respond_to_missing? was defined.
* Unused &block parameterAkira Matsuda2017-01-151-1/+1
|
* AS::ArrayInquirer#respond_to_missing? should fallback to superAkira Matsuda2017-01-151-1/+1
| | | | in case Array or any other ancestor class' respond_to_missing? was defined.
* class Foo < Struct.new(:x) creates an extra unneeded anonymous classAkira Matsuda2017-01-131-2/+2
| | | | 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.
* Merge pull request #27610 from Envek/fix_and_speed_up_duration_parsingAndrew White2017-01-123-15/+26
|\ | | | | Fix inconsistent parsing of Durations with both months and years
| * Fix inconsistent results when parsing large durations and constructing ↵Andrey Novikov2017-01-093-15/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Make time travel work with subclasses of Time/Date/DatetimeJonas Nicklas2017-01-101-5/+5
|/ | | | | 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.