deepdiff
deepdiff copied to clipboard
Unused Parameters in `to_flat_dicts` Function
Bug Report
Description:
The to_flat_dicts function in the delta.py file has parameters include_action_in_path and report_type_changes that are defined but not used in the function call to self.to_flat_rows. This results in the parameters being ineffective.
Steps to Reproduce:
- Define a
Deltaobject. - Call the
to_flat_dictsmethod with custom values forinclude_action_in_pathandreport_type_changes. - Observe that the custom values are not passed to the
self.to_flat_rowsmethod.
Expected Behavior:
The include_action_in_path and report_type_changes parameters should be passed to the self.to_flat_rows method within the to_flat_dicts function.
Actual Behavior:
The parameters include_action_in_path and report_type_changes are not passed to the self.to_flat_rows method, making them ineffective.
Code:
def to_flat_dicts(self, include_action_in_path=False, report_type_changes=True) -> List[FlatDeltaRow]:
return [
i._asdict() for i in self.to_flat_rows(include_action_in_path=False, report_type_changes=True)
]
Suggested Fix:
Pass the include_action_in_path and report_type_changes parameters to the self.to_flat_rows method.
def to_flat_dicts(self, include_action_in_path=False, report_type_changes=True) -> List[FlatDeltaRow]:
return [
i._asdict() for i in self.to_flat_rows(include_action_in_path=include_action_in_path, report_type_changes=report_type_changes)
]
Environment:
- Python 3.10
- DeepDiff 8.0.1
- Windows