aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport
Commit message (Collapse)AuthorAgeFilesLines
* Allow passing block to deep_merge and deep_merge!Pranas Kiziela2012-09-133-4/+23
| | | | | Hash#merge accepts block that you can use to customize how hash values are merged. This change makes merge and deep_merge compatible.
* Copy-edit deprecation relared documentation [ci skip]Rafael Mendonça França2012-09-135-74/+51
|
* Change ActiveSupport::Deprecation to class.Piotr Niełacny2012-09-139-221/+405
| | | | | | | | | | | | | | | | | | | | | | | | ActiveSupport::Deprecation is now a class rather than a module. You can get instance of ActiveSupport::Deprecation calling #instance method. ActiveSupport::Deprecation.instance But when you need to get new object od ActiveSupport::Deprecation you need to just call #new. @instance = ActiveSupport::Deprecation.new Since you can create a new object, you can change the version and the name of the library where the deprecator concerned. ActiveSupport::Deprecation.new('2.0', 'MyGem') If you need use another deprecator instance you can select it in the options of deprecate method. deprecate :method, :deprecator => deprecator_instance Documentation has been updated.
* extend ActiveSupport::Deprecation with self, allow other objects to ↵Robert Pankowecki2012-09-136-102/+232
| | | | | | | | | | extend/include it also. test local deprecation deprecator object Test ActiveSupport::Deprecation when included
* Revert "Changelog entry for PR #7560"Bogdan Gusiev2012-09-101-19/+0
| | | | | This reverts commit ca80067bbe4662c60b933188ad3769605742e812. Entry already added in 895233
* Changelog entry for PR #7560Bogdan Gusiev2012-09-101-0/+19
|
* &#39 dates back to SGML when &#x27 was introduced in HTML 4.0Kalys Osmonov2012-09-093-2/+4
|
* Fix AS tests due to builder change with nil values / empty stringsCarlos Antonio da Silva2012-09-071-2/+2
| | | | | Check 0180e090ab6cbe66f7b521a0c03e278a0463accd for more reasoning about that.
* Fix Active Support changelog formatting [ci skip]Carlos Antonio da Silva2012-09-071-2/+2
|
* Add Changelog entry for #7560: deprecate #filter in AS::Callbacks [ci skip]Carlos Antonio da Silva2012-09-071-0/+22
|
* AS::Callbacks: deprecate monkey patch of object callbacksBogdan Gusiev2012-09-071-0/+1
|
* Fixed around callback with lambda exampleAaron Renner2012-09-061-1/+1
| | | This is a follow up to issue #7535
* we already have the module objects, do not constantizeXavier Noria2012-09-061-2/+6
| | | | | I have also chosen a variable name that matches the parameter in the definition of load_missing_constant.
* restores awesome commentXavier Noria2012-09-061-0/+19
| | | | Those who say source code should be without comments lie.
* no more const_missing combinatoricsXavier Noria2012-09-061-41/+2
| | | | | | | | Basically, const_missing had a loop to try parent namespaces if the constant lookup failed, but at the same time delegated to load_missing_constant which in turn also walks up parent namespaces calling const_missing by hand. In the case of missing constants this results in repeated work in some funky nested way.
* Extend HashWithIndifferentAccess#update to take an optional blockLeo Cassarani2012-09-053-6/+50
| | | | | | | | | | | | | When a block is passed into the method, it will be invoked for each duplicated key, with the key in question and the two values as arguments. The value for the duplicated key in the receiver will be set to the return value of the block. This behaviour matches Ruby's long-standing implementation of Hash#update and is intended to provide a more consistent interface. HashWithIndifferentAccess#merge is also affected by the change, as it uses #update internally.
* revised the exception message "Expected #{file_path} to define ↵Xavier Noria2012-09-041-1/+1
| | | | | | | #{qualified_name}" Users need to know the ultimate problem here is that AS was trying to autoload a constant and it failed.
* Merge branch 'master' of github.com:lifo/docrailsVijay Dev2012-09-013-4/+15
|\
| * copy edits [ci skip]Vijay Dev2012-09-011-1/+1
| |
| * Expand documentation for change() method in Time, Date, and DateTimeJeff Shantz2012-08-293-4/+15
| |
* | fixes a regexpXavier Noria2012-08-291-1/+1
| | | | | | | | | | | | | | | | We need to anchor to remove the extension. In addition to be the correct way to do that, files in ~/.rbenv get that .rb removed, so it is a real source of bugs, as reported in https://github.com/rails/rails/commit/b33700f5580b4cd85379a1dc60fa341ac4d8deb2#commitcomment-1781840
* | CHANGELOGs are now per branchXavier Noria2012-08-281-1724/+1
| | | | | | | | | | | | | | | | | | | | Changes in old branches needed to be manually synched in CHANGELOGs of newer ones. This has proven to be brittle, sometimes one just forgets this manual step. With this commit we switch to CHANGELOGs per branch. When a new major version is cut from master, the CHANGELOGs in master start being blank. A link to the CHANGELOG of the previous branch allows anyone interested to follow the history.
* | detect circular constant autoloadingXavier Noria2012-08-284-4/+27
| | | | | | | | | | | | | | Nowadays circular autoloads do not work, but the user gets a NameError that says some constant is undefined. That's puzzling, because he is normally trying to autoload a constant he knows can be autoloaded. With this check we can give a better error message.
* | fixes a bug in dependencies.rbXavier Noria2012-08-281-1/+1
| | | | | | | | | | | | | | loaded stores file names without the .rb extension, but search_for_file returns file names with the extension. The solution is hackish, but this file needs a revamp.
* | Remove unused variableRafael Mendonça França2012-08-261-1/+1
| |
* | Merge pull request #7029 from panthomakos/date-and-timeRafael Mendonça França2012-08-257-848/+433
|\ \ | | | | | | Refactored common date and time calculations.
| * | Refactored common date and time calculations.Pan Thomakos2012-08-047-848/+433
| | | | | | | | | | | | | | | | | | | | | | | | * Added the `DateAndTime::Calculations` module that is included in Time and Date. It houses common calculations to reduce duplicated code. * Simplified and cleaned-up the calculation code. * Removed duplication in tests by adding a behavior module for shared tests. I also added some missing tests.
* | | simplifies yet another regexpXavier Noria2012-08-251-1/+1
| | |
* | | instead of returning $& if =~ succeeds, use String#[]Xavier Noria2012-08-251-1/+1
| | |
* | | simplifies a regexpXavier Noria2012-08-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | We simplify two things here: First since * is greedy it is enough to go look for the rightmost ::, no need to ask the regexp engine to match the rest of the string since we are not validating anything, only capturing. The second simplification comes from using a look-ahead assertion, that allows us to have the capture in $&, thus removing the need of a group.
* | | Merge pull request #7058 from frodsan/fix_as_random_testsRafael Mendonça França2012-08-244-14/+23
|\ \ \ | | | | | | | | Fix tests that depend on run order
| * | | Fix ActiveSupport tests that depend on run orderFrancesco Rodriguez2012-08-234-14/+23
| | | |
* | | | simplifies a regexpXavier Noria2012-08-241-1/+1
|/ / / | | | | | | | | | | | | The new regexp has less work to do, we anchor a fixed string at the end and need no group.
* | | Revert "Use join without default separator"José Valim2012-08-232-2/+7
| | | | | | | | | | | | | | | | | | This reverts commit b0ab8dc0b2b0f580ffe5ac9ff57fd13152e18577 because it was removing the contents of the message when we did not have any tag. A test case is also committed.
* | | skip the memcache tests if the memcache server is not upAaron Patterson2012-08-222-48/+50
| | |
* | | revises a brittle test in Active SupportXavier Noria2012-08-222-12/+22
| |/ |/| | | | | | | | | | | The revised test assumed that the default permissions of a file matched the umask of the process, but in the general case that depends also on the file system. This test was failing in the /vagrant shared folder of Rails development boxes.
* | Add CHANGELOG entry for #3578 [ci skip]Rafael Mendonça França2012-08-211-0/+6
| |
* | Merge pull request #3578 from amatsuda/remove_j_alias_for_json_escapeRafael Mendonça França2012-08-211-7/+0
|\ \ | | | | | | Remove j alias for ERB::Util.json_escape
| * | Remove j alias for ERB::Util.json_escapeAkira Matsuda2011-11-091-7/+0
| | |
* | | Get rid of config.preload_frameworks in favor of config.eager_load_namespacesJosé Valim2012-08-211-0/+2
| | | | | | | | | | | | | | | | | | | | | The new option allows any Ruby namespace to be registered and set up for eager load. We are effectively exposing the structure existing in Rails since v3.0 for all developers in order to make their applications thread-safe and CoW friendly.
* | | Make ActiveSupport::Autoload localJosé Valim2012-08-213-30/+45
| | | | | | | | | | | | | | | | | | | | | Previously, ActiveSupport::Autoload was global and reserved for usage inside Rails. This pull request makes it local, fixes its test (they were not being run because its file was named wrongly) and make it part of Rails public API.
* | | Revert "removes unused optional argument in AS::Dependencies::Loadable#load"Xavier Noria2012-08-201-1/+1
| | | | | | | | | | | | | | | | | | This argument is there because that's the signature of Kernel#load. This reverts commit bf3fa34ed0aa33bca3aac9c96165662fe864a7b4.
* | | removes unused optional argument in AS::Dependencies::Loadable#loadXavier Noria2012-08-201-1/+1
| | |
* | | removes the second argument of the AS const_missing hookXavier Noria2012-08-191-8/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ruby does not pass the nesting to const_missing (unfortunately). That second argument was there in case that changed, Yehuda sent a patch to MRI http://bugs.ruby-lang.org/issues/2740 but there is not much movement there and Matz told me in Amsterdam there was no immediate plan to pass the nesting. So let's go back to implement what happens now, and if in the future we get the nesting then we will adapt this. Double-checked this with Mr Katz.
* | | no need for AS::Dependencies.(hook!|unhook!) to return anything in particularXavier Noria2012-08-191-2/+0
| | |
* | | Add test to cover increment/decrement of non-existing key in MemCacheStoreGuillermo Iguaran2012-08-171-0/+2
| | |
* | | Replace deprecated `memcache-client` gem with `dalli` in ↵Guillermo Iguaran2012-08-174-41/+34
| | | | | | | | | | | | | | | | | | ActiveSupport::Cache::MemCacheStore memcache-client was deprecated in favour of dalli in 2010.
* | | Evented notifications take priority over Timed notificationsEric Saxby2012-08-112-3/+23
| | | | | | | | | | | | | | | | | | | | | In cases where a notification subscriber includes methods to support both Evented and Timed events, Evented should take priority over Timed. This allows subscribers to be backwards compatible (older Rails only allows Timed events) while defaulting to newer behavior.
* | | Sync CHANGELOGs [ci skip]Rafael Mendonça França2012-08-111-0/+27
| | |
* | | Ensure I18n format values always have precedence over defaultsCarlos Antonio da Silva2012-08-113-43/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Always merge I18n format values, namespaced or not, over the default ones, to ensure I18n format defaults will have precedence over our namespaced values. Precedence should happen like this: default :format default :namespace :format i18n :format i18n :namespace :format Because we cannot allow our namespaced default to override a I18n :format config - ie precision in I18n :format should always have higher precedence than our default precision for a particular :namespace. Also simplify default format options logic.