diff --git a/apartment.gemspec b/apartment.gemspec index eb59070f..68d202c0 100644 --- a/apartment.gemspec +++ b/apartment.gemspec @@ -19,7 +19,7 @@ Gem::Specification.new do |s| s.licenses = ["MIT"] # must be >= 3.1.2 due to bug in prepared_statements - s.add_dependency 'activerecord', '>= 3.1.2', '< 6.1' + s.add_dependency 'activerecord', '>= 3.1.2', '< 8.0' s.add_dependency 'rack', '>= 1.3.6' s.add_dependency 'public_suffix', '>= 2' s.add_dependency 'parallel', '>= 0.7.1' diff --git a/lib/apartment.rb b/lib/apartment.rb index b20a7728..5bdc5aa0 100644 --- a/lib/apartment.rb +++ b/lib/apartment.rb @@ -16,7 +16,15 @@ class << self attr_accessor(*ACCESSOR_METHODS) attr_writer(*WRITER_METHODS) - def_delegators :connection_class, :connection, :connection_config, :establish_connection + def_delegators :connection_class, :connection, :establish_connection + + def connection_config + if ::ActiveRecord::Base.respond_to?(:connection_db_config) + ::ActiveRecord::Base.connection_db_config.configuration_hash + else + ::ActiveRecord::Base.connection_config + end + end # configure apartment with available options def configure