Avoid URI parsing

This parsing is unecessary once the Request object already has the
needed information.
Merge pull request #14665 from andrielfn/avoid-uri-parsing

Avoid URI parsing
working against arel/collector branch
The `source` option for `has_many => through` should accept String
values.

With the changes introduced by 16b70fddd4dc7e7fb7be108add88bae6e3c2509b
it was expecting the value to be a Symbol, while it could be also a
String value.
Merge branch 'master' into adequaterecord

* master: (26 commits)
  Avoid URI parsing
  Add missing require so requiring `active_support/cache` works again.
  depend_on_asset is not required anymore on sprockets-rails 2.1.2
  upgrading section for 4.1 is no longer WIP. [ci skip]
  Expand explanation of how to set secrets.yml. [ci skip]
  Guides: minor typo fixed [ci skip]
  Fixed problem where `1.day.eql?(1.day)` is false
  new CHANGELOGs entries are in the top [ci skip]
  Updates the maintenance policy with new Rails versions
  Dont abbreviate that which needs no abbreviation
  Dont encourage aliases now that we have variants
  Use short-form for the scaffold render calls and drop the needless test
  Drop in @jeremy's new database.yml template text
  Don't deprecate after all
  Less ambition, more deprecation
  Ensure we correctly and immediately load all ENV entries
  Give a deprecation message even when the lookup fails
  Rearrange the config merger some more
  entry is always a Hash
  Check env_url only once
  ...

Conflicts:
	Gemfile
use the compile method so we do not have to specify the collectors in this case
Merge pull request #14668 from laurocaetano/source_option_with_string_value

The :source option for has_many => through should accept String values.
remove the bind substitution visitor. to_sql should never return bind values
add services: memcache to travis
Merge pull request #14671 from arthurnn/travis_memcache

add services: memcache to travis
add a bind collector, remove the bind visitor
fix bind collecting for mysql
working against arel/collector branch
all tests passing on mysql2
mysql tests are passing again
sqlite3 tests passing again
push the collectors up to the abstract adapter
remove the bind visitor since the collector handles substituting bind values
Merge branch 'master' into adequaterecord

* master:
  add services: memcache to travis
  The `source` option for `has_many => through` should accept String values.
oops! Fix Gemfile. :bomb: