aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support
Commit message (Collapse)AuthorAgeFilesLines
* Fix regression in `Hash#dig` for HashWithIndifferentAccess.Jon Moss2016-02-011-3/+7
|
* Preparing for Rails 5.0.0.beta2Sean Griffin2016-02-011-1/+1
|
* After completing a load, give other threads a chance tooMatthew Draper2016-02-022-15/+29
| | | | | | | | | While we know no user code is running, we should do as much loading as we can. That way, all the threads will then be able to resume running user code together. Otherwise, only the last arriving thread would get to do its load, and would then return to userspace, leaving the others still blocked.
* While new sharers are blocked, an existing sharer remains re-entrantMatthew Draper2016-02-021-1/+1
|
* Block new share attempts if there's an exclusive waiterMatthew Draper2016-02-021-8/+12
|
* Fix broken number_to_currency testsPrathamesh Sonpatki2016-01-291-0/+2
|
* Change number_to_currency behavior for checking negativityPrathamesh Sonpatki2016-01-291-5/+1
| | | | | | | | | | | - Instead of using `to_f.phase`, just use `to_f.negative`?. - This change works same for all cases except when number is "-0.0". -0.0.to_f.negative? => false -0.0.to_f.phase? => pi - So -0.0 will be treated as positive from now onwards. - So this change reverts changes from https://github.com/rails/rails/pull/6512. - But it should be acceptable as we could not find any currency which supports negative zeros.
* :arrow_left: indentationAkira Matsuda2016-01-281-2/+2
| | | | [ci-skip]
* Merge branch '5-0-beta-sec'Aaron Patterson2016-01-253-3/+10
|\ | | | | | | | | | | | | | | | | | | | | * 5-0-beta-sec: bumping version fix version update task to deal with .beta1.1 Eliminate instance level writers for class accessors allow :file to be outside rails root, but anything else must be inside the rails view directory Don't short-circuit reject_if proc stop caching mime types globally use secure string comparisons for basic auth username / password
| * bumping versionAaron Patterson2016-01-251-1/+1
| |
| * Eliminate instance level writers for class accessorsAaron Patterson2016-01-221-2/+2
| | | | | | | | | | | | | | | | | | Instance level writers can have an impact on how the Active Model / Record objects are saved. Specifically, they can be used to bypass validations. This is a problem if mass assignment protection is disabled and specific attributes are passed to the constructor. CVE-2016-0753
| * use secure string comparisons for basic auth username / passwordAaron Patterson2016-01-221-0/+7
| | | | | | | | | | | | this will avoid timing attacks against applications that use basic auth. CVE-2015-7576
* | Fix nodoc to internal class error document some of themVipul A M2016-01-253-0/+5
| | | | | | | | | | | | | | [ci skip] Fixes #20808 [Vipul A M & Julio Lopez]
* | Document scoping issue with Time.use_zoneAndrew White2016-01-231-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Time.use_zone method will only affect ActiveSupport::TimeWithZone instances created inside of the block passed to Time.use_zone. This could be confusing when fetching a model and then reading the attribute before the block and it not changing afterwards because Active Record caches the conversion from the database value. Since changing the behavior of Active Record to recreate the value on every attribute read is an expensive operation the best we can do is to document the issue. Fixes #23195. [ci skip]
* | Merge pull request #22278 from poporul/masterGodfrey Chan2016-01-151-3/+9
|\ \ | | | | | | Allow to store .keep file in cache directory
| * | Allow to store .keep file in cache directoryAlexey Pokhozhaev2015-11-131-3/+9
| | |
* | | Update deprecation_horizon to 5.1 from 5.0 [ci skip]Ryuta Kamizono2016-01-141-3/+3
| | |
* | | Extract line filtering to Railties.Kasper Timm Hansen2016-01-092-64/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The line filter parsing added to ActiveSupport::TestCase is only half the story to enable line filtering. The other half, of adding the patterns to the options, is done in the Minitest plugin that Railties has. Thus it makes more sense to have the filter in Railties with the other half and all the line filtering tests. Move the filter and extend Active Support in an initializer, so that when users or `rails/all.rb` require `rails/test_unit/railtie` we can still filter by line.
* | | Match HashWithIndifferentAccess#default's behaviour with Hash#defaultDavid Cornu2016-01-071-6/+18
| | |
* | | Remove unused instance variableschneems2016-01-061-1/+0
| | |
* | | [close #22917] Don't output to `STDOUT` twiceschneems2016-01-061-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When `rails console` or `rails server` are used along with a logger set to output to `STDOUT` then the contents will show up twice. This happens because the logger is extended with `ActiveSupportLogger.broadcast` with a destination of STDOUT even if it is already outputting to `STDOUT`. Previously PR #22592 attempted to fix this issue, but it ended up causing NoMethodErrors. A better approach than relying on adding a method and flow control is to inspect the log destination directly. For this `ActiveSupport::Logger.logger_outputs_to?` was introduced ```ruby logger = Logger.new(STDOUT) ActiveSupport::Logger.logger_outputs_to?(logger, STDOUT) # => true ``` To accomplish this we must look inside of an instance variable of standard lib's Logger `@logdev`. There is a related Ruby proposal to expose this method in a standard way: https://bugs.ruby-lang.org/issues/11955
* | | Revert "Add Logger option to disable message broadcasts"schneems2016-01-052-13/+4
| | | | | | | | | | | | This reverts related commits due to #22917.
* | | Merge pull request #22856 from ↵Rafael França2016-01-011-0/+1
|\ \ \ | | | | | | | | | | | | | | | | rthbound/adds-exception-object-to-instrumenter-payload Adds exception object to instrumenter's payload
| * | | Adds exception object to instrumenter's payloadRyan T. Hosford2015-12-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Adds new key/value pair to payload when an exception is raised e.g. `:exception_object=> #<RuntimeError: FAIL>` - Updates relevant test - Adds CHANGELOG entry
* | | | Merge pull request #12877 from aroben/extended-graphemesRafael França2015-12-311-13/+38
|\ \ \ \ | |/ / / |/| | | Support extended grapheme clusters and UAX 29
| * | | Support extended grapheme clusters and UAX 29Adam Roben2013-11-131-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://www.unicode.org/reports/tr29/tr29-21.html is the version of UAX 29 that corresponds to Unicode 6.2.0. Unicode.unpack_graphemes now implements all the rules listed there, including the ones for extended grapheme clusters. I added a new optional test, test/multibyte_grapheme_break_conformance.rb, that is heavily based on test/multibyte_normalization_conformance.rb, which runs the Unicode test suite.
| * | | Refactor Unicode.unpack_graphemes slightlyAdam Roben2013-11-131-13/+23
| | | | | | | | | | | | | | | | This will make it easier to add the rest of the rules listed in UAX 29.
* | | | Fix - to_s(:db) on Numeric rangeAkshay Vishnoi2015-12-291-1/+5
| | | |
* | | | Merge pull request #22822 from maclover7/fix-22805Richard Schneeman2015-12-281-0/+1
|\ \ \ \ | | | | | | | | | | Add a missing require to ActiveSupport::NumericWithFormat
| * | | | Add a missing require to ActiveSupport::NumericWithFormatJon Moss2015-12-281-0/+1
| | | | |
* | | | | Removed extra "the" in the documentation of `broadcast_message` [ci skip]Prathamesh Sonpatki2015-12-281-1/+1
| | | | |
* | | | | Merge pull request #22771 from nwjsmith/document-broadcast-messagesEileen M. Uchitelle2015-12-271-1/+9
|\ \ \ \ \ | | | | | | | | | | | | Document `Logger#broadcast_messages` option
| * | | | | Document `Logger#broadcast_messages` optionNate Smith2015-12-231-1/+9
| |/ / / /
* | | | | Merge pull request #22759 from akshay-vishnoi/human-size-helperEileen M. Uchitelle2015-12-274-1/+7
|\ \ \ \ \ | | | | | | | | | | | | Add support for Petabyte and Exabyte in number to human size
| * | | | | Add support for Petabyte and Exabyte in number to human sizeAkshay Vishnoi2015-12-224-1/+7
| |/ / / /
* | | | | fix typo on commentsPaulo Ancheta2015-12-231-1/+1
| | | | |
* | | | | Merge pull request #20507 from rabbitt/bugfix/logger-threadsafetyRafael França2015-12-232-2/+36
|\ \ \ \ \ | | | | | | | | | | | | Fixes LoggerSilence#silence threadsafety
| * | | | | Fixes LoggerSilence#silence threadsafetyCarl P. Corliss2015-12-232-2/+36
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - uses instance defined level if no custom local log level defined - Keeps track of local log level per [ thread + object-instance ] - prevents memory leakage by removing local level hash key/value on #silence method exit - avoids the use of Thread local variables
* / / / / Add caveat to number_to_currency docs [ci skip]Derek Prior2015-12-231-0/+8
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've worked on a few applications that have gone through the internationalization process and had issues because they were using `number_to_currency`. The minute a user is allowed to change their locale, they can change the price displayed on a page from 10 US dollars to 10 Mexican Pesos, which is far from the same amount of money. Unlike other helpers that rely on i18n, `number_to_currency` does not produce equivalent results when the locale is changed. As I've explained this to a few groups of developers now, I thought it might make for a good caveat in the docs.
* | | | Use CGI.escapeHTML for html escapeTakashi Kokubun2015-12-211-4/+2
| | | |
* | | | Merge pull request #22581 from hirocaster/fix-expect-sample-codeYves Senn2015-12-211-4/+5
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | [ci skip] Change output timming of sample code
| * | | | Change output timming of sample codehirocaster2015-12-141-2/+2
| | | | | | | | | | | | | | | | | | | | - Expect returns "new value 1" but, retuns nil, because output at thread is not finished. Move val_1 output to finished thread.
* | | | | Fix documentation for mattr_accessor methodsJan Habermann2015-12-201-6/+6
| | | | |
* | | | | Add a commend about deprecation of ActiveSupport::OrderedHashRafael Mendonça França2015-12-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is in the code to provides backward compatibility for people that have this class serialized as YAML in some storage. Closes #22681
* | | | | Deprecation warning now targets at 5.1Akira Matsuda2015-12-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Also, added a test case to make sure that the default deprecation horizon is always bigger than the current Rails version.
* | | | | Merge pull request #22479 from RobinClowers/fix-cache-notification-orderKasper Timm Hansen2015-12-191-8/+8
|\ \ \ \ \ | |_|_|_|/ |/| | | | Fix cache fetch miss notification order
| * | | | Fix cache fetch miss notification orderRobin Clowers2015-12-021-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes https://github.com/rails/rails/issues/22477. When I improved the caching instrumentation in edd33c08d98723ae9bb89cf7f019277117ed6414, I inadvertently changed the order of AS notifications when there is a cache miss.
* | | | | Change `alpha` to `beta1` to prep for release of Rails 5eileencodes2015-12-181-1/+1
| | | | | | | | | | | | | | | | | | | | :tada: :beers:
* | | | | [ci skip] Revert most of ff851017Kasper Timm Hansen2015-12-181-2/+2
| | | | | | | | | | | | | | | We went back to `Thread.current[]` in 33e11e59.
* | | | | Revert "Use Thread.current.thread_variable_set/get insetad of the direct ↵David Heinemeier Hansson2015-12-181-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | accessors" This reverts commit 301f43820562c6a70dffe30f4227ff0751f47d4f per @matthewd on https://github.com/rails/rails/pull/22630/files#r47997074