diff --git a/declarative_authorization.gemspec b/declarative_authorization.gemspec index 0f98ba1..c3141f5 100644 --- a/declarative_authorization.gemspec +++ b/declarative_authorization.gemspec @@ -18,6 +18,9 @@ Gem::Specification.new do |spec| spec.required_ruby_version = Gem::Requirement.new('< 4.1') spec.metadata['allowed_push_host'] = 'https://rubygems.org' + spec.add_dependency('actionpack', ['>= 7.2', '< 8.2']) + spec.add_dependency('activerecord', ['>= 7.2', '< 8.2']) + spec.add_dependency('activesupport', ['>= 7.2', '< 8.2']) spec.add_dependency('blockenspiel', ['>= 0.5', '< 1']) - spec.add_dependency('rails', ['>= 7.2', '< 8.2']) + spec.add_dependency('railties', ['>= 7.2', '< 8.2']) end diff --git a/lib/declarative_authorization/authorization.rb b/lib/declarative_authorization/authorization.rb index 0bb93f8..0789586 100644 --- a/lib/declarative_authorization/authorization.rb +++ b/lib/declarative_authorization/authorization.rb @@ -2,7 +2,7 @@ require File.dirname(__FILE__) + '/reader.rb' require "set" require "forwardable" -require 'rails' +require 'active_support' require 'uri' module Authorization @@ -45,7 +45,7 @@ def self.configure yield config end - AUTH_DSL_FILES = [Pathname.new(Rails.root || '').join("config", "authorization_rules.rb").to_s] unless defined? AUTH_DSL_FILES + AUTH_DSL_FILES = [Pathname.new(defined?(::Rails) && ::Rails.respond_to?(:root) && ::Rails.root || '').join("config", "authorization_rules.rb").to_s] unless defined? AUTH_DSL_FILES # Controller-independent method for retrieving the current user. # Needed for model security where the current controller is not available. diff --git a/lib/declarative_authorization/railsengine.rb b/lib/declarative_authorization/railsengine.rb index 75a07a4..f450453 100644 --- a/lib/declarative_authorization/railsengine.rb +++ b/lib/declarative_authorization/railsengine.rb @@ -1,4 +1,4 @@ -require 'rails' +require 'rails/engine' module Authorization class RailsEngine < Rails::Engine