You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Current HashFragment that stores both current/old hash must be renamed to RevisionFragment. It was designed to be used with a "diffing-revision workflow" anyway (so you can track objects back in time and tell who is new/modified/old).
Introduce new HashFragment that only stores the current hash. This is to be used for "diffing-current state workflow".
Review the IDiffing() method:
to make sure that by default computes HashFragment for objects and uses that (do a "diffing-current state");
if instead a RevisionFragment is found on the objects, do a "diffing-revision";
make sure that in the "diffing-current state", the property-by-property diffing is off by default (priority must be speed).
make sure that in the "diffing-revision", the property-by-property diffing is true by default (priority must be complete comparison).
Also consider:
Introduce new HashConfig? To be used as input to the BH.Engine.Base.Query.Hash() method instead of the long list of inputs.
Allow conversion/mapping between DiffConfig-HashConfig?
Allow conversion between RevisionFragment and HashFragment?
Description:
HashFragment
that stores both current/old hash must be renamed toRevisionFragment
. It was designed to be used with a "diffing-revision workflow" anyway (so you can track objects back in time and tell who is new/modified/old).HashFragment
that only stores the current hash. This is to be used for "diffing-current state workflow".IDiffing()
method:HashFragment
for objects and uses that (do a "diffing-current state");Also consider:
BH.Engine.Base.Query.Hash()
method instead of the long list of inputs.@rolyhudson @al-fisher
The text was updated successfully, but these errors were encountered: