diff --git a/packages/expo-modules-core/CHANGELOG.md b/packages/expo-modules-core/CHANGELOG.md index 47f9ea3375fc17..50a98d75addfd6 100644 --- a/packages/expo-modules-core/CHANGELOG.md +++ b/packages/expo-modules-core/CHANGELOG.md @@ -8,6 +8,8 @@ ### 🐛 Bug fixes +- [iOS] Fixed `field.options.insert()` silently failing in `fieldsOf()` due to mutation on protocol existential. ([#43341](https://github.com/expo/expo/pull/43341) by [@just1and0](https://github.com/just1and0)) + ### 💡 Others ## 55.0.10 — 2026-02-20 diff --git a/packages/expo-modules-core/ios/Core/Records/Record.swift b/packages/expo-modules-core/ios/Core/Records/Record.swift index eac762bbdbe80e..c40042eca5028c 100644 --- a/packages/expo-modules-core/ios/Core/Records/Record.swift +++ b/packages/expo-modules-core/ios/Core/Records/Record.swift @@ -97,7 +97,7 @@ internal func fieldsOf(_ record: Record) -> [AnyFieldInternal] { guard var field = value as? AnyFieldInternal, let key = field.key ?? convertLabelToKey(label) else { return nil } - field.options.insert(.keyed(key)) + field.options = field.options.union([.keyed(key)]) return field } }