Fix Typo existant -> existent [ci skip]
Merge pull request #10511 from prathamesh-sonpatki/existent

Fix Typo existant -> existent [ci skip]
cleanup, switch arguments in assert_equal calls
cleanup, assert on warning from postgres adapter
Changed spelling of Busines to Business
dependency ActiveSupport::Deprecation
Merge pull request #10519 from eiel/dependency-core_ext-hash-diff

dependency ActiveSupport::Deprecation
Use ruby's Encoding support for tidy_bytes

The previous implementation was quite slow. This leverages some of the
transcoding abilities built into Ruby 1.9 instead. It is roughly 96%
faster.

The roundtrip through UTF_8_MAC here is because ruby won't let you
transcode from UTF_8 to UTF_8. I chose the closest encoding I could
find as an intermediate.
adding test to demonstrate inconsistencies in the AS::Callbacks api
refactor tests for more points
adding more tests around callback inconsistencies
Merge pull request #10521 from yahonda/sanitize_oracle

Remove current_adapter? from test_sanitize_sql_hash_handles_associations
Using define method instead of class eval when defining model callbacks.
Based on my benchmark results, this change improves performance
substantially when defining callbacks.

This benchmark (https://gist.github.com/wangjohn/5542610) was run using
the current master and also using my experimental branch which replaced
class_eval with define_single_method.

Using class_eval (current master):

                    user     system      total        real
10 trials       0.000000   0.000000   0.000000 (  0.001568)
50 trials       0.020000   0.000000   0.020000 (  0.021715)
500 trials      0.110000   0.000000   0.110000 (  0.115357)
1000 trials     0.250000   0.000000   0.250000 (  0.260025)
10000 trials    2.560000   0.000000   2.560000 (  2.568408)
50000 trials   12.800000   0.010000  12.810000 ( 12.886871)

Using define_single_method (experimental branch):

                    user     system      total        real
10 trials       0.000000   0.000000   0.000000 (  0.000790)
50 trials       0.000000   0.000000   0.000000 (  0.002960)
500 trials      0.050000   0.010000   0.060000 (  0.055690)
1000 trials     0.100000   0.000000   0.100000 (  0.094073)
10000 trials    0.890000   0.000000   0.890000 (  0.900364)
50000 trials    4.650000   0.000000   4.650000 (  4.686127)
Merge pull request #10355 from burke/master

Use Ruby's native Encoding functionality to implement `tidy_bytes`
Fix Typo xml -> XML, json -> JSON
we need to indicate the type of callback
polymorphic comparison operator
fix object comparison case
if the callbacks are not the same class, they cannot be duplicates
separate filters from source code