Asger Feldthaus
55ac5cb012
Shared: auto format
2022-02-21 08:21:53 +01:00
Asger Feldthaus
4985fbb526
Shared: update getSummaryCsv and related test output
2022-02-21 08:21:53 +01:00
Asger Feldthaus
dcc523a2b7
Shared: auto format
2022-02-21 08:21:53 +01:00
Asger Feldthaus
7fcbdbeada
Shared: sync AccessPathSyntax.qll and FlowSummaryImpl.qll
2022-02-21 08:21:52 +01:00
Asger Feldthaus
2907d53e17
Shared: sync AccessPathSyntax.qll and FlowSummaryImpl.qll
2022-02-21 08:21:52 +01:00
Asger Feldthaus
0af9e8aa58
C#: remove support for legacy syntax
2022-02-21 08:16:55 +01:00
Asger Feldthaus
6bb15dcc27
C#: update CSV rows to dot-separated syntax
2022-02-21 08:16:55 +01:00
Asger Feldthaus
dffa1d1558
C#: use AccessPathSyntax.qll to parse input/output summary specs
2022-02-21 08:16:55 +01:00
Arthur Baars
ebb87c4b36
Merge pull request #7975 from github/post-release-prep/codeql-cli-2.8.1
...
Post-release preparation for codeql-cli-2.8.1
2022-02-15 20:17:35 +01:00
Nick Rolfe
6e7f5f8c12
C#: add DB upgrade and downgrade scripts
2022-02-14 12:16:39 +00:00
Nick Rolfe
d43a62a09f
C#: add externalData back to dbscheme
...
That table is still used, and is populated by the CSV extractor.
2022-02-14 12:09:00 +00:00
Chuan-kai Lin
9b4dbb9dd8
Merge pull request #7895 from github/cklin/upgrades-initial-dbscheme
...
Upgrade scripts testing: set initial dbschemes
2022-02-11 11:06:12 -08:00
Nick Rolfe
164cce7417
C#: fix misspellings of 'csharp'
2022-02-11 14:08:47 +00:00
github-actions[bot]
21bf29353f
Post-release preparation for codeql-cli-2.8.1
2022-02-11 11:07:31 +00:00
Tom Hvitved
0f60401919
Merge pull request #2513 from hvitved/csharp/null-maybe-capture
...
C#: Remove FPs from `cs/dereferenced-value-may-be-null`
2022-02-11 10:21:15 +01:00
Tamás Vajk
c5d917eb72
Improve formatting of 0.0.9 release notes
2022-02-11 09:19:43 +01:00
github-actions[bot]
f25fc70b7c
Release preparation for version 2.8.1
2022-02-10 22:08:24 +00:00
Tom Hvitved
9440a45015
Merge branch 'main' into post-release-prep/codeql-cli-2.8.0
2022-02-09 09:40:33 +01:00
Chuan-kai Lin
a7f1ee574c
Upgrade scripts testing: set initial dbschemes
...
This commit sets initial dbschemes for cpp, csharp, java, javascript, and
python so that automated testing for upgrade scripts would also cover legacy
upgrades.
2022-02-08 11:11:41 -08:00
Tom Hvitved
984e01ecf0
C#: Remove FPs from cs/dereferenced-value-may-be-null
...
Apply a conservative approach by filtering out results for accesses to
captured nullable values, when there is an (implicit) call to the capturing
callable which is `null`-guarded. For example:
```
bool M(int? i, IEnumerable<int> @is)
{
if (i.HasValue)
return @is.Any(j => j == i.Value); // GOOD
return false;
}
```
2022-02-08 14:01:57 +01:00
Michael Nebel
99f89f1fe2
C#: Update db stats file.
2022-02-07 12:57:10 +01:00
Michael Nebel
b2e18ebae1
C#: Lambda improvements change note.
2022-02-07 09:22:46 +01:00
Michael Nebel
782d6da754
C#: Support for lambda expression explicit return types and lambda attributes.
2022-02-07 09:19:47 +01:00
github-actions[bot]
b4ab86c020
Post-release preparation for codeql-cli-2.8.0
2022-02-06 23:34:07 +00:00
Michael Nebel
7b3ba3cb96
C#: Modify database schema to allow lambda expression to be attributable and extract the lambda expression attributes.
2022-02-04 16:34:58 +01:00
Michael Nebel
25019dbaa0
C#: Add support QL library support for lambda explicit return types.
2022-02-04 16:34:58 +01:00
Michael Nebel
ae62704d3a
C#: Add table for explicit return type in lambda expressions.
2022-02-04 16:34:57 +01:00
Michael Nebel
567768134f
Merge pull request #7792 from michaelnebel/csharp/attributes
...
C#: Attribute kind and return value attributes.
2022-02-04 14:10:51 +01:00
Michael Nebel
f365477996
C#: Address review comments and update test output.
2022-02-04 11:48:12 +01:00
Michael Nebel
32756cd442
C#: Update stats after the change in the attributes relation.
2022-02-03 20:00:33 +01:00
Tom Hvitved
6bb71f051b
Merge pull request #7791 from hvitved/dataflow/inline-local-flow-star
...
Data flow: Inline `local(Expr|Instruction)?(Flow|Taint)`
2022-02-03 09:02:43 +01:00
Arthur Baars
33b97f3e0c
Update synchronized files
2022-02-02 13:30:45 +01:00
Tom Hvitved
712418e5f8
Merge pull request #7781 from hvitved/dataflow/summary-stack-bottom-less-nonlinear
...
Data flow: Reduce non-linear recursion in `SummaryComponentStack::bottom`
2022-02-02 10:35:53 +01:00
Michael Nebel
860ded2806
C#: Added change note for return value attributes.
2022-02-02 09:59:09 +01:00
Michael Nebel
62d987f31f
C#: Add upgrade and downgrade scripts.
2022-02-02 09:53:29 +01:00
Michael Nebel
7d1d2e792c
C#: Add specialized ql classes for each attribute kind and update AST printing.
2022-02-01 13:29:26 +01:00
Michael Nebel
e86ac73628
C#: Add attribute kind to the dbscheme for the attribute relation.
2022-02-01 13:29:26 +01:00
Nick Rolfe
990e07b986
Ruby/C#: add semmle.order attribute to edges in CFG tests
2022-01-31 20:08:24 +00:00
Tom Hvitved
5503abc73d
Merge pull request #7772 from hvitved/csharp/event-accessor-event-null
...
C#: Guard against `AssociatedSymbol` not being an `IEventSymbol`
2022-01-31 14:52:02 +01:00
Tom Hvitved
f2352d8272
Data flow: Inline local(Expr|Instruction)?(Flow|Taint)
...
Computing a full transitive closure is often bad; by inlining all calls we are
providing more context to the QL optimizer.
2022-01-31 14:33:41 +01:00
Michael Nebel
56ac99039f
Merge pull request #7720 from michaelnebel/csharp/extended-prop-patterns
...
C#: Desugar property patterns that uses member access syntax.
2022-01-31 13:24:24 +01:00
Tom Hvitved
2354281721
C#: Add DB down/upgrade scripts
2022-01-31 11:46:10 +01:00
Tom Hvitved
32e58add7b
C#: Extend compiler_generated to include event accessors
2022-01-31 11:45:23 +01:00
Tom Hvitved
4bf07825a1
Data flow: Reduce non-linear recursion in SummaryComponentStack::bottom
...
Before:
```
[2022-01-28 09:45:34] (449s) Tuple counts for FlowSummaryImpl::Public::SummaryComponentStack::bottom_dispred#ff/2@i23#25a5eew4 after 432ms:
0 ~0% {2} r1 = SCAN FlowSummaryImpl::Public::SummaryComponentStack::length#ff#prev_delta OUTPUT In.0 'this', (In.1 - 1)
0 ~0% {2} r2 = JOIN r1 WITH FlowSummaryImpl::Public::SummaryComponentStack::drop#fff#prev ON FIRST 2 OUTPUT Rhs.2, Lhs.0 'this'
0 ~0% {2} r3 = JOIN r2 WITH FlowSummaryImpl::Public::SummaryComponentStack::head_dispred#ff#prev ON FIRST 1 OUTPUT Lhs.1 'this', Rhs.1 'result'
4171589 ~5% {2} r4 = SCAN FlowSummaryImpl::Public::SummaryComponentStack::length#ff#prev OUTPUT In.0 'this', (In.1 - 1)
4171589 ~0% {2} r5 = JOIN r4 WITH FlowSummaryImpl::Public::SummaryComponentStack::drop#fff#prev ON FIRST 2 OUTPUT Rhs.2, Lhs.0 'this'
0 ~0% {2} r6 = JOIN r5 WITH FlowSummaryImpl::Public::SummaryComponentStack::head_dispred#ff#prev_delta ON FIRST 1 OUTPUT Lhs.1 'this', Rhs.1 'result'
62238 ~0% {3} r7 = SCAN FlowSummaryImpl::Public::SummaryComponentStack::drop#fff#prev_delta OUTPUT In.2, In.0 'this', In.1
62238 ~8% {3} r8 = JOIN r7 WITH FlowSummaryImpl::Public::SummaryComponentStack::head_dispred#ff#prev ON FIRST 1 OUTPUT Lhs.1 'this', Lhs.2, Rhs.1 'result'
62238 ~5% {5} r9 = JOIN r8 WITH FlowSummaryImpl::Public::SummaryComponentStack::length#ff#prev ON FIRST 1 OUTPUT Lhs.0 'this', Lhs.1, Lhs.2 'result', Rhs.1, (Rhs.1 - 1)
10373 ~6% {5} r10 = SELECT r9 ON In.4 = In.1
10373 ~0% {2} r11 = SCAN r10 OUTPUT In.0 'this', In.2 'result'
10373 ~0% {2} r12 = r6 UNION r11
10373 ~0% {2} r13 = r3 UNION r12
10373 ~0% {2} r14 = r13 AND NOT FlowSummaryImpl::Public::SummaryComponentStack::bottom_dispred#ff#prev(Lhs.0 'this', Lhs.1 'result')
return r14
```
After:
```
[2022-01-28 09:52:48] (6s) Tuple counts for FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff/2@i21#6243afwv after 5ms:
0 ~0% {2} r1 = JOIN FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff#prev_delta WITH FlowSummaryImpl::Private::TConsSummaryComponentStack#fff#reorder_1_0_2#prev ON FIRST 1 OUTPUT Lhs.1 'result', Rhs.2 'this'
10373 ~3% {2} r2 = SCAN FlowSummaryImpl::Private::TConsSummaryComponentStack#fff#prev_delta OUTPUT In.1, In.2 'this'
10373 ~2% {2} r3 = JOIN r2 WITH FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff#prev ON FIRST 1 OUTPUT Rhs.1 'result', Lhs.1 'this'
10373 ~2% {2} r4 = r1 UNION r3
10373 ~2% {2} r5 = r4 AND NOT FlowSummaryImpl::Public::SummaryComponentStack::bottom#ff#prev(Lhs.1 'this', Lhs.0 'result')
10373 ~0% {2} r6 = SCAN r5 OUTPUT In.1 'this', In.0 'result'
return r6
```
2022-01-28 13:00:04 +01:00
Nick Rolfe
cd5010fe11
C#: sync changes from Ruby to improve ordering of graph test output
2022-01-27 15:34:01 +00:00
github-actions[bot]
634134f283
Release preparation for version 2.8.0
2022-01-27 10:40:20 +00:00
Tom Hvitved
32d1263810
Merge pull request #7755 from hvitved/csharp/qltest-stubs
...
C#: Restrict stub logic to QL test DBs
2022-01-26 20:08:33 +01:00
Tom Hvitved
f38ee39cda
C#: Remove stats for removed relations
2022-01-26 14:20:41 +01:00
Tom Hvitved
6975ade0ff
C#: Restrict stub logic to QL test DBs
2022-01-26 13:59:24 +01:00
Tom Hvitved
83fb822115
C#: Add DB upgrade script
2022-01-26 08:43:24 +01:00