aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #19814 from y-yagi/array_inquiryRafael Mendonça França2015-04-191-0/+2
|\ | | | | add missing require for ArrayInquirer
| * add missing require for ArrayInquireryuuji.yaginuma2015-04-191-0/+2
| |
* | Merge pull request #19799 from yui-knk/fix/wrap_doc2Arthur Nogueira Neves2015-04-191-3/+4
|\ \ | |/ |/| [ci skip] Fix docs and guide about 'Array.wrap'
| * [ci skip] Fix docs and guide about 'Array.wrap'yui-knk2015-04-191-3/+4
| |
* | [ci skip] Replace `list` with `array`yui-knk2015-04-181-1/+1
|/
* Fix typos and improve the documentationJon Atack2015-04-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a squash of the following commits, from first to last: - Fix minor, random things I’ve come across lately that individually did not seem worth making a PR for, so I saved them for one commit. One common error is using “it’s” (which is an abbreviation of “it is”) when the possessive “its” should be used for indicating possession. - Changes include the name of a test, so remove the `[skip ci]` (thanks @senny). - Line wrap the changes at 80 chars and add one more doc fix. - Add a missing line wrap in the Contributing to Ruby on Rails Guide. - Line wrap the `TIP` section in the Contributing to Ruby on Rails Guide as well. Rendering the guide locally with `bundle exec rake guides:generate` did not show any change in on-screen formatting after adding the line wrap. The HTML generated is (extra line added to illustrate where the line wrap takes place): <div class="info"><p>Please squash your commits into a single commit when appropriate. This simplifies future cherry picks and also keeps the git log clean.</p></div> - Squash commits.
* Use #prepend rather than using 2 aliasesYuki Nishijima2015-04-142-42/+36
|
* Merge pull request #19753 from jonatack/use-ruby-2-2-2Guillermo Iguaran2015-04-131-1/+1
|\ | | | | Upgrade to Ruby 2.2.2
| * Upgrade to Ruby 2.2.2Jon Atack2015-04-141-1/+1
| | | | | | | | and fix the grammar in the ruby_version_check.rb user message.
* | Merge branch 'master' of github.com:rails/docrailsVijay Dev2015-04-141-1/+1
|\ \
| * | [ci skip] Remove unnecessary `>`yui-knk2015-03-311-1/+1
| | |
* | | Speedup String#squishojab2015-04-121-2/+1
| | |
* | | Allow AS::Cache::FileStore#clear without cache directoryKohei Suzuki2015-04-092-0/+7
| | | | | | | | | | | | | | | | | | Currently `Rails.cache.clear` raises Errno::ENOENT if it's run just after cloning a new Rails project. It should succeed without removing files or directories.
* | | Avoid to define an initializer after the load_config_initializersRafael Mendonça França2015-04-072-7/+8
| | | | | | | | | | | | | | | This make the config/initializers run before the railties are loaded what can break some configurations.
* | | Merge pull request #19029 from iainbeeston/skipping-undefined-callbacksRafael Mendonça França2015-04-063-12/+43
|\ \ \ | | | | | | | | Raise ArgumentError if an unrecognised callback is skipped
| * | | Raise ArgumentError if an unrecognised callback is skippedIain Beeston2015-04-033-12/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, if you skip a callback that hasn't been defined, activesupport callbacks silently does nothing. However, it's easy to mistype the name of a callback and mistakenly think that it's being skipped, when it is not. This problem even exists in the current test suite. CallbacksTest::SkipCallbacksTest#test_skip_person attempts to skip callbacks that were never set up. This PR changes `skip_callback` to raise an `ArgumentError` if the specified callback cannot be found.
* | | | Merge pull request #19448 from tgxworld/fix_activesupport_callbacks_clash_on_runRafael Mendonça França2015-04-061-12/+4
|\ \ \ \ | | | | | | | | | | Fix AS::Callbacks raising an error when `:run` callback is defined.
| * | | | Revert "Reduce allocations when running AR callbacks."Guo Xiang Tan2015-03-221-12/+4
| | | | | | | | | | | | | | | | | | | | This reverts commit 796cab45561fce268aa74e6587cdb9cae3bb243e.
* | | | | Merge pull request #19625 from strzibny/fix-test-rails-git-layoutMatthew Draper2015-04-031-2/+2
|\ \ \ \ \ | |_|/ / / |/| | | | Do not depend on Rails git repository layout in ActiveSupport tests
| * | | | Do not depend on Rails git repository layout in ActiveSupport testsJosef Stribny2015-04-021-2/+2
| | | | |
* | | | | Freeze static arguments for gsubbrainopia2015-04-025-6/+6
| | | | |
* | | | | Prefer string patterns for gsubbrainopia2015-04-025-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/ruby/ruby/pull/579 - there is a new optimization since ruby 2.2 Previously regexp patterns were faster (since a string was converted to regexp underneath anyway). But now string patterns are faster and better reflect the purpose. Benchmark.ips do |bm| bm.report('regexp') { 'this is ::a random string'.gsub(/::/, '/') } bm.report('string') { 'this is ::a random string'.gsub('::', '/') } bm.compare! end # string: 753724.4 i/s # regexp: 501443.1 i/s - 1.50x slower
* | | | | Only coerce time when comparing if necessaryAaron Jensen2015-03-311-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In dev, ActiveSupport::FileUpdateChecker#max_mtime triggers many time comparisons. Time#to_time is quite a bit slower than not doing it, so we should avoid it if possible.
* | | | | [ci skip] Replace `query methods` with `a predicate`yui-knk2015-03-311-1/+1
| |_|_|/ |/| | |
* | | | Fix doc: set_callback also accepts an array of if:claudiob2015-03-311-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Active Record calls `set_callback` inside `after_commit`, [these lines of code](https://github.com/rails/rails/blob/master/activerecord/lib/active_record/transactions.rb#L276) pass an **array** of methods as the `:if` condition: ```ruby options[:if] = Array(options[:if]) options[:if] << "transaction_include_any_action?(#{fire_on})" ``` That made me realize that anyone could pass an **array** of `:if` and `:unless` conditions to `set_callback`, since Active Support transforms these conditions into an array anyways in [these lines of code](https://github.com/rails/rails/blob/master/activesupport/lib/active_support/callbacks.rb#L365): ```ruby @if = Array(options[:if]) @unless = Array(options[:unless]) ``` Long story short, this commit updates the documentation of the `set_callback` method to explain that arrays are also accepted. It also replaces +false+ and +true+ with false and true, since any _falsey_ or _truthy_ value will work. [ci skip]
* | | | Require the extensions to tests pass in isolationRafael Mendonça França2015-03-301-0/+1
| | | |
* | | | Revert "Remove Array#inquiry"Rafael Mendonça França2015-03-304-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 9420de59f5b7f5ceac77e28e6c326ec145f71f80. Reason: Turns out we want to keep this method.
* | | | Remove circular requireRafael Mendonça França2015-03-272-4/+0
| | | |
* | | | Remove Array#inquiryRafael Mendonça França2015-03-274-27/+1
| | | | | | | | | | | | | | | | | | | | We are promoting too much a feature that will not be widler used. So for now lets keep just the ArrayInquirer constructor.
* | | | Merge pull request #18939 from georgeclaghorn/variant-inquiryRafael Mendonça França2015-03-276-0/+110
|\ \ \ \ | | | | | | | | | | | | | | | Provide friendlier access to request variants
| * | | | Add ActiveSupport::ArrayInquirer and Array#inquiryGeorge Claghorn2015-03-246-0/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wrapping an array in an `ArrayInquirer` gives a friendlier way to check its string-like contents. For example, `request.variant` returns an `ArrayInquirer` object. To check a request's variants, you can call: request.variant.phone? request.variant.any?(:phone, :tablet) ...instead of: request.variant.include?(:phone) request.variant.any? { |v| v.in?([:phone, :tablet]) } `Array#inquiry` is a shortcut for wrapping the receiving array in an `ArrayInquirer`: pets = [:cat, :dog] pets.cat? # => true pets.ferret? # => false pets.any?(:cat, :ferret} # => true
* | | | | Missing require 'active_support/deprecation'Akira Matsuda2015-03-273-0/+5
| |_|_|/ |/| | |
* | | | Merge branch 'master' of github.com:rails/docrailsVijay Dev2015-03-261-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: guides/source/4_0_release_notes.md
| * | | | [ci skip] Add space after erb block.yui-knk2015-03-121-1/+1
| | | | |
* | | | | Update ActiveSupport::Subscriber docsScott Walkinshaw2015-03-241-7/+2
| |/ / / |/| | | | | | | For consistency purposes with the changes done in https://github.com/rails/rails/pull/12285
* | | | Fix incorrect description for `assert_nothing_raised`.Guo Xiang Tan2015-03-241-1/+1
| | | |
* | | | Merge pull request #19485 from tgxworld/small_doc_fixRafael Mendonça França2015-03-241-1/+1
|\ \ \ \ | | | | | | | | | | Small doc fix. [CI SKIP]
| * | | | Small doc fix. [CI SKIP]Guo Xiang Tan2015-03-241-1/+1
| | | | |
* | | | | Make sure Array#to_sentence always returns a StringDavid Cornu2015-03-232-1/+7
|/ / / /
* | | | Remove alias for `i_suck_and_my_tests_are_order_dependent`.Guo Xiang Tan2015-03-242-13/+0
| | | |
* | | | Add documentation for Duration#to_i for clarificationnerdinand2015-03-231-0/+24
| | | |
* | | | Remove reference to Numeric#from_now, as it is no longer supportednerdinand2015-03-232-30/+0
| | | |
* | | | Deprecate alias_method_chain in favour of Module#prependKir Shatrov2015-03-226-106/+148
| |_|/ |/| | | | | …as discussed #19413
* | | Mark some constants as nodoc and remove unneeded namespaceRafael Mendonça França2015-03-202-12/+10
| | |
* | | Merge pull request #19413 from kirs/replace-alias_method_chainRafael Mendonça França2015-03-203-22/+24
|\ \ \ | | | | | | | | Replace occurences of alias_method_chain with their Module#prepend counterpart
| * | | Use Module#prepend instead of alias_method_chainKir Shatrov2015-03-203-22/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks @fbernier for suggestion! <3 At this moment we can use Module#prepend in all all cases except of Range because of the bug [1] in MRI 2.2 [1] https://bugs.ruby-lang.org/issues/10847
* | | | Test files should be named *_test.rb to be executed via rake taskAkira Matsuda2015-03-201-0/+0
|/ / /
* | | Merge pull request #19296 from Wildebeest/fix-race-ttlRafael Mendonça França2015-03-172-10/+22
|\ \ \ | | | | | | | | Skip the `:race_condition_ttl` branch if the option is 0 or nil.
| * | | Skip the `:race_condition_ttl` branch if the option is 0 or nil. This fixes ↵Matt Wilde2015-03-112-10/+22
| | | | | | | | | | | | | | | | an issue with the redis cache, where this code will sometimes throw an error out of SETEX when passing 0 as the `expires_at`.
* | | | add `DateTime.now` to list of `TimeHelpers#travel_to` stubbing [ci skip]yuuji.yaginuma2015-03-121-9/+11
|/ / /