← Prev in month ← Prev in thread

#403: Remove per-property "inheritance" from cached objects

From
Laurence Golding
Date
2019-04-28T23:29:00+00:00
ID
Thread
#403: Remove per-property "inheritance" from cached objects
Michael identified a problem with our mechanism for inheriting individual properties from cached objects.  It breaks the SDK in ways that Michael will explain in a follow-on email .

I pushed and merged a change that fixes the problem. We can still  reuse  cached objects (so that, for example,
threadFlowLocations  can be reused in multiple thread flows, satisfying Yekaterina’s scenario), but we do not  inherit individual properties  from the cached object:

https://github.com/oasis-tcs/sarif-spec/blob/master/Documents/ChangeDrafts/Accepted/sarif-v2.0-issue-403-no-inheritance.docx

As part of this change, we removed the
index  properties from the  address  object and the  logicalLocation  object. These “hierarchical” objects have a  parentIndex , and  that , not
index , is what establishes a connection to the cache. These objects are very small (in contrast to  threadFlowLocation , which can be  huge  if it includes a stack), so the benefit of caching the “leaf objects” is small.

As always, the provisional draft and its HTML version are up to date:

https://github.com/oasis-tcs/sarif-spec/blob/master/Documents/ProvisionalDrafts/sarif-v2.0-csd02-provisional.docx
https://github.com/oasis-tcs/sarif-spec/blob/master/Documents/ProvisionalDrafts/sarif-v2.0-csd02-provisional.htm

Please take a look.  The plan is still to open the CSD 2 ballot on Monday.

This is it. We have no more open issues  except the question Michael asked this morning about this choice of which standard to cite for the  run.language  property.

Thanks,
Larry
← Prev in month ← Prev in thread