From bce64840f3500df6387bd847bf7368885f407102 Mon Sep 17 00:00:00 2001 From: nick evans Date: Wed, 17 Dec 2025 11:04:44 -0500 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Config=20`version=5Fdefaults`=20?= =?UTF-8?q?should=20be=20attr=5Freader?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Although `version_defaults` is deeply frozen, it used `attr_accessor`! --- lib/net/imap/config/attr_version_defaults.rb | 2 +- test/net/imap/test_config.rb | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/net/imap/config/attr_version_defaults.rb b/lib/net/imap/config/attr_version_defaults.rb index 6457bddb..626b94f1 100644 --- a/lib/net/imap/config/attr_version_defaults.rb +++ b/lib/net/imap/config/attr_version_defaults.rb @@ -24,7 +24,7 @@ module AttrVersionDefaults VERSIONS = ((0.0r..FUTURE_VERSION) % 0.1r).to_a.freeze # See Config.version_defaults. - singleton_class.attr_accessor :version_defaults + singleton_class.attr_reader :version_defaults @version_defaults = Hash.new {|h, k| # NOTE: String responds to both so the order is significant. diff --git a/test/net/imap/test_config.rb b/test/net/imap/test_config.rb index a1b38afd..6a35bff9 100644 --- a/test/net/imap/test_config.rb +++ b/test/net/imap/test_config.rb @@ -151,6 +151,10 @@ class ConfigTest < Net::IMAP::TestCase end assert_same Config.global, config.parent end + assert_raise(NameError) do Config.method(:version_defaults=) end + assert_raise(NameError) do + Config::AttrVersionDefaults.method(:version_defaults=) + end end test "Config[:default] and Config[:current] both hold default config" do