From 179090415255acf27a7b5da889c9742a36bd7fb8 Mon Sep 17 00:00:00 2001 From: Douglas Eichelberger Date: Fri, 12 Jan 2024 10:55:27 -0800 Subject: [PATCH] Resolve 'Error: can't add a new key into hash during iteration' --- Library/Homebrew/extend/hash/keys.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/extend/hash/keys.rb b/Library/Homebrew/extend/hash/keys.rb index 6ee0e945fd..caa742d3b2 100644 --- a/Library/Homebrew/extend/hash/keys.rb +++ b/Library/Homebrew/extend/hash/keys.rb @@ -102,7 +102,8 @@ class Hash def _deep_transform_keys_in_object!(object, &block) case object when Hash - object.each_key do |key| + # We can't use `each_key` here because we're updating the hash in-place + object.keys.each do |key| # rubocop:disable Style/HashEachMethods value = object.delete(key) object[yield(key)] = _deep_transform_keys_in_object!(value, &block) end