aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/subscriber.rb
Commit message (Collapse)AuthorAgeFilesLines
* Added 'detach_from' to 'ActiveSupport::Subscriber' to detach a subscriber ↵sushant2019-04-041-6/+55
| | | | from a namespace.
* Rename event variableAlberto Almagro2018-10-211-4/+4
| | | | | | | | | Improve variable naming by renaming from `e` to `event`. The arguments to rename this are: * The naming `e` is usually a convention used for exceptions. * No other method in this class uses the naming `e`. All other methods are using `event`.
* Add `Style/RedundantFreeze` to remove redudant `.freeze`Yasuo Honda2018-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | | Since Rails 6.0 will support Ruby 2.4.1 or higher `# frozen_string_literal: true` magic comment is enough to make string object frozen. This magic comment is enabled by `Style/FrozenStringLiteralComment` cop. * Exclude these files not to auto correct false positive `Regexp#freeze` - 'actionpack/lib/action_dispatch/journey/router/utils.rb' - 'activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rb' It has been fixed by https://github.com/rubocop-hq/rubocop/pull/6333 Once the newer version of RuboCop released and available at Code Climate these exclude entries should be removed. * Replace `String#freeze` with `String#-@` manually if explicit frozen string objects are required - 'actionpack/test/controller/test_case_test.rb' - 'activemodel/test/cases/type/string_test.rb' - 'activesupport/lib/active_support/core_ext/string/strip.rb' - 'activesupport/test/core_ext/string_ext_test.rb' - 'railties/test/generators/actions_test.rb'
* Fix Rubocop offensebogdanvlviv2018-07-261-1/+1
| | | | | | | | | | ``` Offenses: activesupport/lib/active_support/subscriber.rb:91:17: C: Layout/SpaceAroundOperators: Operator = should be surrounded by a single space. event = event_stack.pop ```
* Add cpu_time, idle_time, and allocations to EventEileen Uchitelle2018-07-261-4/+3
| | | | | | | | | | | | | | * Use process clock instead of Time.now This fixes any issues with the system clock changing and also eliminates 2 object allocations per event. * Add start! and finish! methods to the event object so we can record more information * Adds cpu time, idle time, and allocation count for a particular event. Co-authored-by: Aaron Patterson <aaron.patterson@gmail.com>
* Rails 6 requires Ruby 2.3+Jeremy Daer2018-02-171-14/+9
|
* [Active Support] require_relative => requireAkira Matsuda2017-10-211-2/+2
| | | | This basically reverts 8da30ad6be34339124ba4cb4e36aea260dda12bc
* [Active Support] `rubocop -a --only Layout/EmptyLineAfterMagicComment`Koichi ITO2017-07-111-0/+1
|
* Use frozen-string-literal in ActiveSupportKir Shatrov2017-07-091-0/+1
|
* [Active Support] require => require_relativeAkira Matsuda2017-07-011-2/+2
|
* Privatize unneededly protected methods in Active SupportAkira Matsuda2016-12-241-1/+3
|
* Describe what we are protectingAkira Matsuda2016-12-231-0/+2
|
* Missing require 'active_support/notifications'Akira Matsuda2016-11-301-0/+1
|
* Add more rubocop rules about whitespacesRafael Mendonça França2016-10-291-1/+1
|
* applies remaining conventions across the projectXavier Noria2016-08-061-1/+0
|
* applies new string literal convention in activesupport/libXavier Noria2016-08-061-2/+2
| | | | | The current code base is not uniform. After some discussion, we have chosen to go with double quotes by default.
* Merge pull request #19902 from khundawg/dm-active-support-subsciber-docRichard Schneeman2015-04-251-2/+2
|\ | | | | [ci skip] Update ActiveSupport::Subscriber documentation
| * [ci skip] Update ActiveSupport::Subscriber documentationDAVID MOORE2015-04-251-2/+2
| |
* | Update ActiveSupport::Subscriber docsScott Walkinshaw2015-03-241-7/+2
|/ | | For consistency purposes with the changes done in https://github.com/rails/rails/pull/12285
* Reduce object allocations in ActiveSupport::Subscribereileencodes2015-02-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Freezing the string literal reduces the number of objects allocated during integration test runs. AllocationTracer before: ``` [["/rack/lib/rack/utils.rb", 499, :T_STRING], [50939, 2737, 78553, 0, 13, 1783920]] [["/rails/activesupport/lib/active_support/subscriber.rb", 99, :T_STRING], [44959, 0, 42633, 0, 2, 1670800]] [["/rack/lib/rack/utils.rb", 662, :T_STRING], [32979, 0, 31263, 0, 1, 1226009]] [["/rack/lib/rack/body_proxy.rb", 34, :T_ARRAY], [29988, 0, 28438, 0, 1, 1114320]] [["/rails/activesupport/lib/active_support/callbacks.rb", 165, :T_DATA], [29968, 0, 28422, 0, 2, 3675936]] ``` AllocationTracer after: ``` [["/rack/lib/rack/utils.rb", 499, :T_STRING], [50983, 4080, 67269, 0, 12, 1815600]] [["/rack/lib/rack/utils.rb", 662, :T_STRING], [33001, 0, 28420, 0, 2, 1230809]] [["/rack/lib/rack/body_proxy.rb", 34, :T_ARRAY], [29990, 0, 25812, 0, 1, 1118000]] [["/rails/activesupport/lib/active_support/subscriber.rb", 99, :T_STRING], [29986, 0, 25803, 0, 1, 1117840]] [["/rails/activesupport/lib/active_support/notifications/instrumenter.rb", 52, :T_HASH], [29984, 28, 26133, 0, 11, 4953280]]
* Merge pull request #15037 from ↵Rafael Mendonça França2014-05-161-1/+10
|\ | | | | | | | | | | | | | | | | roccoblues/fix_duplicate_activesupport_subscribers Fixed duplicate subscribers in ActiveSupport::Subscriber Conflicts: activesupport/CHANGELOG.md
| * Fixed duplicate subscribers in ActiveSupport::SubscriberDennis Schoen2014-05-091-1/+10
|/ | | | | ActiveSupport::Subscriber no longer creates multiple subscribers when you redefine a method.
* Stop using method missing for singleton delegation.Aaron Patterson2013-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | This saved about 46 array allocations per request on an extremely simple application. The delegation happened in the notification subsystem which is a hotspot, so this should result in even more savings with larger apps. Squashed commit of the following: commit 41eef0d1479526f7de25fd4391d98e61c126d9f5 Author: Aaron Patterson <aaron.patterson@gmail.com> Date: Wed Nov 6 16:32:31 2013 -0800 speed up notifications commit 586b4a18656f66fb2c518fb8e8fee66a016e8ae6 Author: Aaron Patterson <aaron.patterson@gmail.com> Date: Wed Nov 6 16:31:05 2013 -0800 speed up runtime registry methods commit b67d074cb4314df9a88438f785868cef77e583d7 Author: Aaron Patterson <aaron.patterson@gmail.com> Date: Wed Nov 6 16:28:12 2013 -0800 change method name and make it public
* Allow attaching to AS::Notifications namespace up frontDaniel Schierbeck2013-09-201-2/+25
| | | | | | | | Before, you were required to attach *after* adding the methods to the class, since the attachment process needed the methods to be present. With this change, any new method will also be attached to the configured namespace.
* Created a registry based on the +PerThreadRegistry+ module forwangjohn2013-04-221-2/+20
| | | | subscriber queues. Helps limit the number of thread locals.
* Copy-edits in the ActiveSupport::Subscriber documentation.Rafael Mendonça França2013-04-161-6/+5
| | | | | | Thank you @fxn :green_heart::yellow_heart::heart::purple_heart::blue_heart: [ci skip]
* Extract a base class from ActiveSupport::LogSubscriberDaniel Schierbeck2013-04-161-0/+76
Adds a ActiveSupport::Subscriber base class that LogSubscriber inherits from. By inheriting from Subscriber, other kinds of subscribers can take advantage of the event attachment system.