The GitHub Actions job "Lint PR" on fory.git/row-codec-schema-versions has failed. Run started by GitHub user stevenschlansker (triggered by stevenschlansker).
Head commit for run: 2b78362a55696efaffb1538878feeefb205442c2 / Claude (on behalf of Steven Schlansker) <[email protected]> fix(format): enumerate versioned beans nested inside collection fields SchemaHistory.build discovered nested versioned beans only at a field's raw type, so a versioned bean appearing as a List element or Map value was never found: the outer's cross-product carried no dimension for the inner bean, and its history was never enumerated. A reader whose inner bean had evolved then had no projection matching an older payload's inner layout, and decode threw ClassNotCompatibleException. findVersionedBean now looks through list/array element and map key/value type refs to locate the versioned bean, mirroring TypeInference's element handling (component type for arrays, getElementType for iterables) and keeping the collection-first classification that lets a shadowed-field collection subclass short-circuit before any Descriptor.getDescriptors probe. The cross-product is keyed by the discovered bean class, preserving the one-dimension-per-class invariant. substituteNestedStruct rebuilds the list/map field with the chosen historical struct in the bean's slot, leaving the wrapper and its nullability exactly as inferNamedField produced them, so existing direct-field schemas and hashes are unchanged. Add evolvingBeanInCollectionField covering an inner bean evolved across a List and a Map value read by a newer codec. Report URL: https://github.com/apache/fory/actions/runs/28261481342 With regards, GitHub Actions via GitBox --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
