Open greschd opened 3 weeks ago
Attention: Patch coverage is 95.03106%
with 8 lines
in your changes missing coverage. Please review.
Project coverage is 93.11%. Comparing base (
b4bba30
) to head (ccec699
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Implement a
recursive_copy
helper function, which:To implement this, helper functions for getting the child objects and linked objects are added (as non-public API) to
_tree_objects/_traversal.py
.For the edge property lists, an additional
.clone()
method on theGenericEdgePropertyType
classes was needed. This is currently implemented separately on each. [2]Adds a dependency on
networkx
, for computing the order in which objects should be stored s.t. all their dependencies (parent, linked objects) are already stored. We may reuse the dependency graph produced for this task in other contexts.[1] more than one new parent may be needed, for example when copying a Modeling Ply (parent: Modeling Group) which links to a Fabric (parent: Model). [2] in general, the
GenericEdgePropertyType
classes have a lot of code duplication; this can be dealt with in a later PR (not urgent).