Problem
Adding GeometryCollection([Point(), LineString(), Polygon()]) to the shared GeoPandas parity fixture makes TestMatchGeopandasSeries::test_to_arrow fail on the Python 3.9 / Spark 3.5 matrix. GeoPandas emits standard 2D WKB type codes for the collection and empty members, while Sedona emits ISO Z-offset type codes for part of the value even though the source geometries are 2D empties.
Minimal fixture:
GeometryCollection([Point(), LineString(), Polygon()])
CI evidence from #3326:
The fixture was removed from #3326 so that PR can remain scoped to passing edge-case coverage. This issue records the independently demonstrated serialization mismatch rather than masking it with an expected failure.
Expected behavior
GeoSeries.to_arrow() should match GeoPandas for a 2D GeometryCollection whose typed members are all empty, including the WKB dimensionality/type codes.
Problem
Adding
GeometryCollection([Point(), LineString(), Polygon()])to the shared GeoPandas parity fixture makesTestMatchGeopandasSeries::test_to_arrowfail on the Python 3.9 / Spark 3.5 matrix. GeoPandas emits standard 2D WKB type codes for the collection and empty members, while Sedona emits ISO Z-offset type codes for part of the value even though the source geometries are 2D empties.Minimal fixture:
CI evidence from #3326:
010700000003000000010100...01EF03000003000000010100...(collection type 1007), with an empty LineString encoded using type 1002The fixture was removed from #3326 so that PR can remain scoped to passing edge-case coverage. This issue records the independently demonstrated serialization mismatch rather than masking it with an expected failure.
Expected behavior
GeoSeries.to_arrow()should match GeoPandas for a 2DGeometryCollectionwhose typed members are all empty, including the WKB dimensionality/type codes.