lib/cancan/config.rb in cancancan-3.4.0 vs lib/cancan/config.rb in cancancan-3.5.0

- old
+ new

@@ -9,9 +9,32 @@ end strategies end + # You can disable the rules compressor if it's causing unexpected issues. + def self.rules_compressor_enabled + return @rules_compressor_enabled if defined?(@rules_compressor_enabled) + + @rules_compressor_enabled = true + end + + def self.rules_compressor_enabled=(value) + @rules_compressor_enabled = value + end + + def self.with_rules_compressor_enabled(value) + return yield if value == rules_compressor_enabled + + begin + rules_compressor_enabled_was = rules_compressor_enabled + @rules_compressor_enabled = value + yield + ensure + @rules_compressor_enabled = rules_compressor_enabled_was + end + end + # Determines how CanCan should build queries when calling accessible_by, # if the query will contain a join. The default strategy is `:subquery`. # # # config/initializers/cancan.rb # CanCan.accessible_by_strategy = :subquery