module Ark class ResourceDeprecations def self.on(resource) new(resource).warnings end def initialize(resource) @resource = resource end attr_reader :resource def warnings applicable_deprecrations.map { |_, message| message } end def applicable_deprecrations deprecations.select { |condition, _| send(condition) } end def deprecations { strip_leading_dir_feature: strip_leading_dir_feature_message } end def strip_leading_dir_feature [true, false].include?(resource.strip_leading_dir) end def strip_leading_dir_feature_message 'strip_leading_dir attribute was deprecated. Use strip_components instead.' end end end