@@ -1068,14 +1068,16 @@ def iter_alleles_and_genotypes(self, start, stop, shape, num_alleles):
10681068 for variant_length , alleles in zip (
10691069 variant_lengths , self .iter_alleles (start , stop , num_alleles )
10701070 ):
1071- yield vcz .VariantData (variant_length , alleles , None , None )
1071+ # Stored ICF values are always at least 1D arrays; "rlen" is Number=1
1072+ # so we must extract the scalar to avoid NumPy scalar-conversion issues.
1073+ yield vcz .VariantData (variant_length [0 ], alleles , None , None )
10721074 else :
10731075 for variant_length , alleles , (gt , phased ) in zip (
10741076 variant_lengths ,
10751077 self .iter_alleles (start , stop , num_alleles ),
10761078 self .iter_genotypes (shape , start , stop ),
10771079 ):
1078- yield vcz .VariantData (variant_length , alleles , gt , phased )
1080+ yield vcz .VariantData (variant_length [ 0 ] , alleles , gt , phased )
10791081
10801082 def generate_schema (
10811083 self , variants_chunk_size = None , samples_chunk_size = None , local_alleles = None
0 commit comments