Move FlowSummaryImpl.qll to dataflow pack#14573
Conversation
| /** | ||
| * A query predicate for outputting flow summaries in semi-colon separated format in QL tests. | ||
| * The syntax is: "namespace;type;overrides;name;signature;ext;inputspec;outputspec;kind;provenance", | ||
| * ext is hardcoded to empty. | ||
| */ |
Check warning
Code scanning / CodeQL
Predicate QLDoc style.
| sinkElement(_, spec, _, _) | ||
| } | ||
|
|
||
| private module AccessPath = AccessPathSyntax::AccessPath<sourceSinkSpec/1>; |
Check warning
Code scanning / CodeQL
Dead code
741725b to
45b59c1
Compare
45b59c1 to
6185feb
Compare
| module SourceSinkInterpretationInput implements | ||
| Impl::Private::External::SourceSinkInterpretationInputSig | ||
| { | ||
| private import csharp as Cs |
Check warning
Code scanning / CodeQL
Names only differing by case
6185feb to
a047beb
Compare
94cefa4 to
b2ee1f0
Compare
b2ee1f0 to
5f79e7c
Compare
5f79e7c to
c656fba
Compare
c656fba to
d73136b
Compare
ae7e347 to
fcb6c19
Compare
fb1102c to
f9dbf67
Compare
RasmusWL
left a comment
There was a problem hiding this comment.
Overall LGTM, but there are 2 things I would like to get fixed for Python 🙏
| ) | ||
| } | ||
|
|
||
| private class SummarizedCallableAdapter extends SummarizedCallable { |
There was a problem hiding this comment.
Maybe a comment that this is where the MaD rows are being used to create SummarizedCallable's (the same for neutrals as well).
michaelnebel
left a comment
There was a problem hiding this comment.
C#: Looks good to me!
Thank you for doing this @hvitved !
RasmusWL
left a comment
There was a problem hiding this comment.
Python 👍 (thanks for the updates)
yoff
left a comment
There was a problem hiding this comment.
I can see this has already been approved by Python. I can also see that I have a pending comment, but I do not remember what it is, so I will just submit the partial review now, to see if it is still relevant.
|
|
|
@aschackmull Do we have a test for what happens when we have a manual model and a generated model? |
There is at least https://github.com/github/codeql/blob/main/java/ql/src/Metrics/Summaries/GeneratedVsManualCoverage.ql. |
I don't think there exists such a test for Java. |
aschackmull
left a comment
There was a problem hiding this comment.
LGTM! Thanks for tackling this!
This PR turns
FlowSummaryImpl.qll(andAccessPathSyntax.qll) into a proper parameterized module, and moves it to the shareddataflowpack.Previously, the exposed
SummarizedCallableclass would look likebut after this PR it is simply
That is, we now consider
SummaryComponentStackan internal implementation detail, which is not exposed to the user (the user-facing aliases have been deprecated).Commit-by-commit review is encouraged, and for each of the
<LANG>: Use FlowSummaryImpl from dataflow packcommits, I recommend viewing theFlowSummaryImpl.qllin full, as the diff is not really meaningful (previously, it was the synced copy of share library, now it contains the inputs to the shared library).