aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/CHANGELOG.md
Commit message (Collapse)AuthorAgeFilesLines
* Properly dump primitive-like AS::SafeBuffer strings as YAMLGodfrey Chan2015-02-111-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `coder.represent_scalar` means something along the lines of "Here is a quoted string, you can just add it to the output", which is not the case here. It only works for simple strings that can appear unquoted in YAML, but causes problems for e.g. primitive-like strings ("1", "true"). `coder.represent_object` on the other hand, means that "This is the Ruby-object representation for this thing suitable for use in YAML dumping", which is what we want here. Before: YAML.load ActiveSupport::SafeBuffer.new("Hello").to_yaml # => "Hello" YAML.load ActiveSupport::SafeBuffer.new("true").to_yaml # => true YAML.load ActiveSupport::SafeBuffer.new("false").to_yaml # => false YAML.load ActiveSupport::SafeBuffer.new("1").to_yaml # => 1 YAML.load ActiveSupport::SafeBuffer.new("1.1").to_yaml # => 1.1 After: YAML.load ActiveSupport::SafeBuffer.new("Hello").to_yaml # => "Hello" YAML.load ActiveSupport::SafeBuffer.new("true").to_yaml # => "true" YAML.load ActiveSupport::SafeBuffer.new("false").to_yaml # => "false" YAML.load ActiveSupport::SafeBuffer.new("1").to_yaml # => "1" YAML.load ActiveSupport::SafeBuffer.new("1.1").to_yaml # => "1.1" If we ever want Ruby to behave more like PHP or JavaScript though, this is an excellent trick to use ;)
* Merge pull request #12067 from jackxxu/keep_precisionRafael Mendonça França2015-02-061-0/+4
|\ | | | | | | | | | | | | | | | | Enable number_to_percentage to keep the number's precision by allowing :precision option value to be nil Conflicts: activesupport/CHANGELOG.md activesupport/lib/active_support/number_helper.rb activesupport/test/number_helper_test.rb
| * Enable number_to_percentage to keep the number's precision by allowing ↵Jack Xu2013-08-281-0/+5
| | | | | | | | | | | | :precision to be nil number_helper.number_to_percentage(1000, precision: nil) # => "1000%"
* | Privatize config_accessor as with attr_accessorAkira Matsuda2015-02-061-0/+4
| |
* | Change AS::Testing::TimeHelpers#travel_to to also stub DateTime.nowYuki Nishijima2015-02-031-0/+5
| |
* | introduce `ActiveSupport::Testing::FileFixtures`.Yves Senn2015-01-281-0/+8
| | | | | | | | | | | | It's a thin layer to provide easy access to sample files throughout test-cases. This adds the directory `test/fixtures/files` to newly generated applications.
* | Merge pull request #18709 from ianks/atomic-writeYves Senn2015-01-281-0/+4
| | | | | | | | Return value of yielded block in File.atomic_write
* | Fix assignment for frozen value in HWIAAditya Kapoor2015-01-171-0/+7
| |
* | Add missing time zone definitions for Russian FederationAndrey Novikov2015-01-131-0/+5
| | | | | | | | Also sync Russian Federation time zones with `zone.tab` file from tzdata version 2014j.
* | formatting pass over CHANGELOGs. [ci skip]Yves Senn2015-01-101-1/+3
| |
* | Add SecureRandom.base58Guillermo Iguaran2015-01-091-0/+4
| |
* | Add #prev_day and #next_day as counterparts to #yesterday and #tomorrow for ↵George Claghorn2015-01-061-0/+5
| | | | | | | | Date, Time, and DateTime
* | Add same_time option to #prev_week and #next_week for Date, Time, and DateTimeGeorge Claghorn2015-01-061-0/+5
| |
* | Add #on_weekend?, #next_weekday, and #prev_weekday methods to Date, Time, ↵George Claghorn2015-01-061-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | and DateTime `#on_weekend?` returns true if the receiving date/time falls on a Saturday or Sunday. `#next_weekday` returns a new date/time representing the next day that does not fall on a Saturday or Sunday. `#prev_weekday` returns a new date/time representing the previous day that does not fall on a Saturday or Sunday.
* | Change the default test order from `:sorted` to `:random`Rafael Mendonça França2015-01-041-0/+4
| |
* | Remove deprecated ActiveSupport::JSON::Encoding::CircularReferenceError.Rafael Mendonça França2015-01-041-0/+4
| |
* | Remove deprecated ActiveSupport::JSON::Encoding.encode_big_decimal_as_string=Rafael Mendonça França2015-01-041-0/+5
| |
* | Remove deprecated `ActiveSupport::SafeBuffer#prepend`Rafael Mendonça França2015-01-041-0/+4
| |
* | Remove deprecated methods at `Kernel`.Rafael Mendonça França2015-01-041-0/+6
| | | | | | | | `silence_stderr`, `silence_stream`, `capture` and `quietly`.
* | Remove deprecated core_ext/big_decimal/yaml_conversions fileRafael Mendonça França2015-01-041-0/+5
| |
* | Remove deprecated ActiveSupport::Cache::Store.instrumentRafael Mendonça França2015-01-041-1/+5
| |
* | Add config to halt callback chain on return falseclaudiob2015-01-021-6/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This stems from [a comment](rails#17227 (comment)) by @dhh. In summary: * New Rails 5.0 apps will not accept `return false` as a way to halt callback chains, and will not display a deprecation warning. * Existing apps ported to Rails 5.0 will still accept `return false` as a way to halt callback chains, albeit with a deprecation warning. For this purpose, this commit introduces a Rails configuration option: ```ruby config.active_support.halt_callback_chains_on_return_false ``` For new Rails 5.0 apps, this option will be set to `false` by a new initializer `config/initializers/callback_terminator.rb`: ```ruby Rails.application.config.active_support.halt_callback_chains_on_return_false = false ``` For existing apps ported to Rails 5.0, the initializers above will not exist. Even running `rake rails:update` will not create this initializer. Since the default value of `halt_callback_chains_on_return_false` is set to `true`, these apps will still accept `return true` as a way to halt callback chains, displaying a deprecation warning. Developers will be able to switch to the new behavior (and stop the warning) by manually adding the line above to their `config/application.rb`. A gist with the suggested release notes to add to Rails 5.0 after this commit is available at https://gist.github.com/claudiob/614c59409fb7d11f2931
* | Deprecate `false` as the way to halt AS callbacksclaudiob2015-01-021-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | After this commit, returning `false` in a callback will display a deprecation warning to make developers aware of the fact that they need to explicitly `throw(:abort)` if their intention is to halt a callback chain. This commit also patches two internal uses of AS::Callbacks (inside ActiveRecord and ActionDispatch) which sometimes return `false` but whose returned value is not meaningful for the purpose of execution. In both cases, the returned value is set to `true`, which does not affect the execution of the callbacks but prevents unrequested deprecation warnings from showing up.
* | Throw :abort halts default CallbackChainsclaudiob2015-01-021-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit changes arguments and default value of CallbackChain's :terminator option. After this commit, Chains of callbacks defined **without** an explicit `:terminator` option will be halted as soon as a `before_` callback throws `:abort`. Chains of callbacks defined **with** a `:terminator` option will maintain their existing behavior of halting as soon as a `before_` callback matches the terminator's expectation. For instance, ActiveModel's callbacks will still halt the chain when a `before_` callback returns `false`.
* | Deprecate `MissingSourceFile` in favor of `LoadError`.Rafael Mendonça França2015-01-021-0/+7
| | | | | | | | | | `MissingSourceFile` was just an alias to `LoadError` and was not being raised inside the framework.
* | Changelog edits [ci skip]Robin Dupret2014-12-311-4/+10
| |
* | cleanup CHANGELOGs. [ci skip]Yves Senn2014-12-231-1/+1
| |
* | Add class level case operator support for error dispatching in RescuableGenadi Samokovarov2014-12-101-0/+16
| |
* | Fix MessageVerifier's #verified in CHANGELOGclaudiob2014-12-041-4/+4
| | | | | | | | | | | | | | | | [ci skip] As confirmed by @lleger (the author of `verified`) [in this comment](https://github.com/rails/rails/pull/17727#issuecomment-65488743): > Actually, it no longer returns false explicitly (bc8cc56), so I guess the CHANGELOG isn't totally accurate. It returns nil instead (but the functionality isn't practically different).
* | Add `#verified` and `#valid_message?` to MessageVerifierLogan Leger2014-12-011-0/+8
| | | | | | | | | | | | | | | | | | | | | | This commit adds a `#verified` method to `ActiveSupport::MessageVerifier` which will return either `false` when it encounters an error or the message. `#verify` continues to raise an `InvalidSignature` exception on error. This commit also adds a convenience boolean method on `MessageVerifier` as a way to check if a message is valid without performing the decoding.
* | Start Rails 5 development :tada:Rafael Mendonça França2014-11-281-388/+1
| | | | | | | | | | | | | | We will support only Ruby >= 2.1. But right now we don't accept pull requests with syntax changes to drop support to Ruby 1.9.
* | dependencies.rb: keep the decorated #load and #require private [closes #17553]Xavier Noria2014-11-101-0/+6
| |
* | docs, synchronize 4.2. release notes. [ci skip]Yves Senn2014-11-061-3/+3
| | | | | | | | /cc @chancancode
* | Merge pull request #17383 from rwz/string-removeRafael Mendonça França2014-11-031-0/+4
|\ \ | | | | | | | | | | | | | | | | | | Make `String#remove` and `String#remove!` accept multiple arguments Conflicts: activesupport/CHANGELOG.md
| * | Make `String#remove` and `String#remove!` accept multiple argumentsPavel Pravosud2014-10-251-0/+4
| | |
* | | Optimize TimeWithZoneTest#strftimePablo Herrero2014-10-271-0/+5
|/ /
* | Update CHANGELOG and release notes for e98f2a7Godfrey Chan2014-10-221-2/+2
| |
* | some changelog formatting. [ci skip]Yves Senn2014-10-161-8/+8
| |
* | Merge pull request #14146 from chewi/fix-underscore-acronyms-regexMatthew Draper2014-10-041-0/+4
| | | | | | | | Fix underscore inflector handling of namespaced and adjacent acronyms
* | fixes typo in AS CHANGELOG [ci skip]Xavier Noria2014-09-291-2/+2
| | | | | | | | References f92ac24.
* | Delegation works with reserved words passed to `:to`Agis-2014-09-191-0/+6
| | | | | | | | Fixes #16956.
* | Merge pull request #16950 from akshay-vishnoi/docs-rails-4point2Abdelkader Boudih2014-09-171-4/+4
|\ \ | | | | | | Grammar correction in ActiveSupport CHANGELOG [ci skip]
| * | Grammar correction in ActiveSupport CHANGELOG [ci skip]Akshay Vishnoi2014-09-181-4/+4
| | |
* | | Merge pull request #16948 from akshay-vishnoi/docs-rails-4point2Rafael Mendonça França2014-09-171-20/+20
|\| | | | | | | | [ci skip] ActiveSupport CHANGELOG fixes
| * | [ci skip] ActiveSupport CHANGELOG fixesAkshay Vishnoi2014-09-181-20/+20
| | | | | | | | | | | | | | | | | | | | | 1. spacing issues 2. spelling correction 3. grammar correction 4. Add missing docs
* | | Merge pull request #11794 from yoazt/duration-eqlRafael Mendonça França2014-09-171-0/+15
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | Added method `#eql?` to `ActiveSupport::Duration`, in addition to `#==`. Conflicts: activesupport/CHANGELOG.md activesupport/lib/active_support/duration.rb activesupport/test/core_ext/duration_test.rb
| * | Added method `#eql?` to `ActiveSupport::Duration`, in addition to `#==`.Joost Lubach2013-08-071-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the following returns `false`, contrary to expectation: 1.minute.eql?(1.minute) Adding method `#eql?` will make this behave like expected. Method `#eql?` is just a bit stricter than `#==`, as it checks whether the argument is also a uration. Their parts may be different though. 1.minute.eql?(60.seconds) # => true 1.minute.eql?(60) # => false
* | | Time#change can now change nanoseconds (:nsec)Agis-2014-09-141-0/+5
| | | | | | | | | | | | Closes #16392.
* | | MessageVerifier raises an appropriate exception if the secret is nilKostiantyn Kahanskyi2014-09-121-0/+5
| | | | | | | | | | | | | | | Otherwise this will lead to another error later on when generating a signature: TypeError (no implicit conversion of nil into String).
* | | Default to sorting user's test cases for nowGodfrey Chan2014-09-081-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Goals: 1. Default to :random for newly generated applications 2. Default to :sorted for existing applications with a warning 3. Only show the warning once 4. Only show the warning if the app actually uses AS::TestCase Fixes #16769