Skip to content

Commit e20ef35

Browse files
fix: create reader/writer of the original, not the copy
1 parent 2e2b266 commit e20ef35

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

frictionless/table/row.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@ def create_cell_handlers(fields: List[Field]) -> Dict[str, _CellHandler]:
2929
"""
3030
handlers: Dict[str, _CellHandler] = {}
3131
for field_number, field in enumerate(fields, start=1):
32-
field = field.to_copy()
32+
# Build the reader/writer from the original field so they keep the
33+
# schema back-references (e.g. schema-level missingValues). Only the
34+
# stored field, exposed via `Row.fields`, is copied for isolation.
3335
handlers[field.name] = _CellHandler(
34-
field=field,
36+
field=field.to_copy(),
3537
field_number=field_number,
3638
reader=field.create_cell_reader(),
3739
writer=field.create_cell_writer(),

0 commit comments

Comments
 (0)