SQLite3: Always close statements.

SQLite3 adapter must make sure to close statements after queries.

Fixes: #13631
use edge arel
use a params hash so we know what bind parameters are used
Merge branch 'master' into adequaterecord

* master:
  Make AR::Base#touch fire the after_commit and after_rollback callbacks
  Fix test for cache_key + touched
  Revert "methods are defined right after the module_eval, so we don't need to do"
  Revert "Don't remove trailing slash from PATH_INFO for mounted apps"
  Add failing test for #13369
  reset column information after fiddling with `Encoding.default_internal`
  we have `with_env_tz` as global test helper. Remove duplicate.
  isolate class attribute assignment in `migration_test.rb`
  use `teardown` for cleanup, not `setup`.
  tests without transactional fixtures need to cleanup afterwards.
  no need to `return skip` in tests. `skip` is enough.
  methods are defined right after the module_eval, so we don't need to do any line number maths
  Get rid of unused TransactionError constant
  Avoid converting :on option to array twice when defining commit/rollback callbacks
  Unify changelog entries about single quotes [ci skip]
  Use single quotes in generated files
Merge branch 'master' into adequaterecord

* master:
  define the delegate methods on one line. fixes #13724
change query strategy based on adapter
Merge branch 'master' into adequaterecord

* master:
  Fix eager load of Serializers on Active Model
  Consistence in the block style
  Remove warnings on Ruby 2.1
  Only some dynamic finders are deprecated.
  clean up security guide: his => their [ci skip]
  Remove warning
  Extract a method to simplify setup code
  Use minitest's skip rather than conditionals + early returns
  Move AR test classes inside the test case
  Do not set up a variable used only in two tests
  No need for instance vars on single tests
  Cleanup duplicated setup of callbacks in transactions tests
  No need to use #send with public methods
  Update deprecation warning to give more information about caller
  Update changelog
  Avoid scanning multiple render calls as a single match.
  Improve ERB dependency detection.
remove dead code
Revert "adding set_binds"

This reverts commit 474ebc55bd13ad58626a49dfc44c8e6407813935.
fixing explain tests for sqlite3
don't cache the connection (because we don't need to)
Remove outdated comment.

The code duplication was removed and this comment is pointing to the
wrong line.

[ci skip]
oops!
Merge branch 'adequaterecord' of github.com:rails/rails into adequaterecord

* 'adequaterecord' of github.com:rails/rails:
  Remove outdated comment.
run the damn tests @tenderlove
fix the method signature
Merge branch 'master' into adequaterecord

* master:
  fix exception translation
  translate exceptions on prepared statement failure
  test to ensure bad prepared statements raise a StatementInvalid exception
Merge branch 'master' into adequaterecord

* master: (311 commits)
  Add a missing changelog entry for #13981 and #14035
  Revert "Fixed plugin_generator test"
  implements new option :month_format_string for date select helpers [Closes #13618]
  add factory methods for empty alias trackers
  guarantee a list in the alias tracker so we can remove a conditional
  stop exposing table_joins
  make most parameters to the AliasTracker required
  make a singleton for AssociationScope
  pass the association and connection to the scope method
  pass the tracker down the stack and construct it in the scope method
  clean up add_constraints signature
  remove the reflection delegate
  remove klass delegator
  remove railties changes. fixes #14054
  remove chain delegate
  remove scope_chain delegate
  Add verb to sanitization note
  fix path shown in mailer's templates
  updated Travis build status image url
  fix guide active_support_core_extensions. add Note to String#indent [ci skip]
  ...

Conflicts:
	activerecord/lib/active_record/associations/join_dependency.rb
	activerecord/test/cases/associations/association_scope_test.rb
Merge branch 'master' into adequaterecord

* master:
  Revert "Merge pull request #13344 from ccutrer/fix-from-default-select"
  No need to use symbols
  Don't skip tests if they are not broken. Just don't define they
  Fix typo [ci skip]
  Resolve encoding issues with arrays of hstore (bug 11135).
  Fix coffeescript sample [ci skip]
add AST cache to the find_by method