diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index f55d9335..f3cf62b8 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -26,11 +26,6 @@ Lint/UnusedMethodArgument: - 'test/fixtures/poro.rb' - 'test/lint_test.rb' -# Offense count: 1 -Lint/UselessAccessModifier: - Exclude: - - 'lib/active_model/serializable_resource.rb' - # Offense count: 2 Lint/UselessAssignment: Exclude: diff --git a/lib/active_model/serializable_resource.rb b/lib/active_model/serializable_resource.rb index 56453dd9..d52dae51 100644 --- a/lib/active_model/serializable_resource.rb +++ b/lib/active_model/serializable_resource.rb @@ -61,10 +61,8 @@ module ActiveModel use_adapter? && !!(serializer) end - private + protected - ActiveModelSerializers.silence_warnings do - attr_reader :resource, :adapter_opts, :serializer_opts - end + attr_reader :resource, :adapter_opts, :serializer_opts end end diff --git a/lib/active_model/serializer.rb b/lib/active_model/serializer.rb index 643167a7..12bb51c3 100644 --- a/lib/active_model/serializer.rb +++ b/lib/active_model/serializer.rb @@ -154,10 +154,8 @@ module ActiveModel end end - private # rubocop:disable Lint/UselessAccessModifier + protected - ActiveModelSerializers.silence_warnings do - attr_accessor :instance_options - end + attr_accessor :instance_options end end diff --git a/lib/active_model/serializer/adapter/fragment_cache.rb b/lib/active_model/serializer/adapter/fragment_cache.rb index 6a326996..cf54a330 100644 --- a/lib/active_model/serializer/adapter/fragment_cache.rb +++ b/lib/active_model/serializer/adapter/fragment_cache.rb @@ -30,11 +30,11 @@ module ActiveModel adapter.fragment_cache(cached_hash, non_cached_hash) end - private + protected - ActiveModelSerializers.silence_warnings do - attr_reader :instance_options, :adapter - end + attr_reader :instance_options, :adapter + + private def cached_attributes(klass, serializers) attributes = serializer.class._attributes diff --git a/lib/active_model/serializer/adapter/json_api.rb b/lib/active_model/serializer/adapter/json_api.rb index 2792af09..422623b3 100644 --- a/lib/active_model/serializer/adapter/json_api.rb +++ b/lib/active_model/serializer/adapter/json_api.rb @@ -73,11 +73,11 @@ module ActiveModel ActiveModel::Serializer::Adapter::JsonApi::FragmentCache.new.fragment_cache(root, cached_hash, non_cached_hash) end - private + protected - ActiveModel.silence_warnings do - attr_reader :fieldset - end + attr_reader :fieldset + + private def serializable_hash_for_collection(options) hash = { data: [] } diff --git a/lib/active_model/serializer/array_serializer.rb b/lib/active_model/serializer/array_serializer.rb index c8029cc7..69144d53 100644 --- a/lib/active_model/serializer/array_serializer.rb +++ b/lib/active_model/serializer/array_serializer.rb @@ -34,11 +34,9 @@ module ActiveModel object.respond_to?(:size) end - private # rubocop:disable Lint/UselessAccessModifier + protected - ActiveModelSerializers.silence_warnings do - attr_reader :serializers - end + attr_reader :serializers end end end diff --git a/lib/active_model/serializer/fieldset.rb b/lib/active_model/serializer/fieldset.rb index eaa47ec8..4f2211df 100644 --- a/lib/active_model/serializer/fieldset.rb +++ b/lib/active_model/serializer/fieldset.rb @@ -13,11 +13,11 @@ module ActiveModel fields[type.singularize.to_sym] || fields[type.pluralize.to_sym] end - private + protected - ActiveModelSerializers.silence_warnings do - attr_reader :raw_fields - end + attr_reader :raw_fields + + private def parsed_fields if raw_fields.is_a?(Hash) diff --git a/lib/active_model_serializers.rb b/lib/active_model_serializers.rb index 6f00620f..355393e5 100644 --- a/lib/active_model_serializers.rb +++ b/lib/active_model_serializers.rb @@ -30,6 +30,8 @@ module ActiveModelSerializers # attr_reader :resource, :adapter_opts, :serializer_opts # end # ``` + # + # or, as specific stopgap, define the attrs in the protected scope. def silence_warnings verbose = $VERBOSE $VERBOSE = nil diff --git a/test/action_controller/serialization_scope_name_test.rb b/test/action_controller/serialization_scope_name_test.rb index 51abf108..75220be2 100644 --- a/test/action_controller/serialization_scope_name_test.rb +++ b/test/action_controller/serialization_scope_name_test.rb @@ -3,12 +3,10 @@ require 'pathname' class DefaultScopeNameTest < ActionController::TestCase class UserSerializer < ActiveModel::Serializer - attributes :admin? - ActiveModelSerializers.silence_warnings do - def admin? - current_user.admin - end + def admin? + current_user.admin end + attributes :admin? end class UserTestController < ActionController::Base @@ -35,12 +33,10 @@ end class SerializationScopeNameTest < ActionController::TestCase class AdminUserSerializer < ActiveModel::Serializer - attributes :admin? - ActiveModelSerializers.silence_warnings do - def admin? - current_admin.admin - end + def admin? + current_admin.admin end + attributes :admin? end class AdminUserTestController < ActionController::Base