Added method `#eql?` to `ActiveSupport::Duration`, in addition to `#==`.

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
Roll back open transactions when the running thread is killed.
Changed the DangerousAttributeError exception message to include messaging that the conflict could be because of a conflicting attribute.
Explain ERB space removal. [ci skip]
Changes puts to logger.info
Merge pull request #16874 from Bartuz/patch-1

[docs] Changes puts to logger.info [ci skip]
reuse view test-cases for pg materialized view tests.
pg, add test cases for updateable views.
Bump globalid version
[ci skip] #find_in_batches doesn't support :include option
Merge pull request #16893 from tanmay3011/docs

[ci skip] #find_in_batches doesn't support :include option
lock suckerpunch version to 1.1
Merge pull request #16895 from seuros/suck1-1

lock suckerpunch version to 1.1
Revert "lock suckerpunch version to 1.1"
MessageVerifier raises an appropriate exception if the secret is nil


Otherwise this will lead to another error later on 
when generating a signature:
TypeError (no implicit conversion of nil into String).
Remove version. No longer using Celluloid 0.16.
Merge pull request #16898 from brandonhilkert/master

Remove version. No longer using Celluloid 0.16.
Merge pull request #16896 from seuros/revert-16895-suck1-1

Revert "lock suckerpunch version to 1.1"
Merge pull request #16890 from seuros/globalid

Bump globalid version
Use latest globalid