Tom Hvitved
a25acd0128
Merge pull request #1441 from calumgrant/cs/nullable-warning-expressions
...
C#: Extract SuppressNullableWarning expressions
2019-06-11 19:36:24 +02:00
Taus
83cbad9a9d
Merge pull request #1442 from markshannon/python-fixup-six-test-results
...
Python: fixup test results for https://github.com/Semmle/ql/pull/1433
2019-06-11 17:35:30 +02:00
Mark Shannon
0c02d3deef
Python: Fix up expected test results for six test.
2019-06-11 15:44:44 +01:00
Calum Grant
3c7510b44b
C#: Analysis change notes.
2019-06-11 15:20:27 +01:00
Calum Grant
d055c85ff0
C#: Exclude case from cs/dispose-not-called-on-throw where the disposable is disposed by a UsingStmt, even when explicitly disposed.
2019-06-11 15:20:27 +01:00
Calum Grant
b9d2fc3380
C#: DB upgrade script and stats.
2019-06-11 15:04:39 +01:00
semmle-qlci
821d8c9dd2
Merge pull request #1436 from yh-semmle/java-android-manifest
...
Approved by aschackmull
2019-06-11 14:04:21 +01:00
Jonas Jensen
32122e86b0
C++: use plain recursion in PrimitiveBasicBlocks
...
It's sometimes faster but sometimes up to 2x slower to use plain
recursion here. On the other hand, plain recursion won't run out of Java
heap space, and it won't make unrelated computation slower by forcing
all RAM data out to disk.
2019-06-11 14:30:21 +02:00
Calum Grant
40481fbf9d
C#: Make SuppressNullableWarningExpr a nonNullValue, and add a test.
2019-06-11 12:45:50 +01:00
Calum Grant
d48ce859eb
C#: Implement nullable warning suppression expressions.
2019-06-11 12:12:29 +01:00
semmle-qlci
7790ac45bd
Merge pull request #1409 from esben-semmle/js/more-command-injection
...
Approved by xiemaisi
2019-06-11 11:59:18 +01:00
semmle-qlci
dbf085a6df
Merge pull request #1432 from xiemaisi/js/process-module
...
Approved by esben-semmle
2019-06-11 11:58:47 +01:00
Geoffrey White
bf680161fd
CPP: Optimize.
2019-06-11 11:00:45 +01:00
Taus
d14d31c26e
Merge pull request #1410 from markshannon/python-no-methodcall-defs-in-tests
...
Python ESSA: Remove method-callsite definitions when call is in a test defining a pi-node.
2019-06-11 11:17:16 +02:00
Taus
1ff67f74e1
Merge pull request #1407 from markshannon/python-fix-odasa-7104
...
Python points-to. Improve handling of socket module.
2019-06-11 11:04:29 +02:00
Jonas Jensen
16b151745b
C++: use shortestDistances in PrimitiveBasicBlocks
...
The use of transitive closure for BB index calculation has been the
cause of an out-of-memory error. This commit switches the calculation to
use the `shortestDistances` HOP, which still has the problem that the
result needs to fit in RAM, but at least the RAM requirements are sure
to be linear in the size of the result. The `shortestDistances` HOP is
already used for BB index calculation for the C++ IR and for C#.
We could guard even better against OOM by switching the calculation to
use manual recursion, but that would undo the much-needed performance
improvements we got from #123 .
This change improves performance on Wireshark, which is notorious for
having long basic blocks. When I benchmarked `shortestDistances`
for #123 , it was slower than TC. With the current evaluator, it looks
like `shortestDistances` is faster. Performance before was:
PrimitiveBasicBlocks::Cached::getMemberIndex#ff ................... 9.7s (executed 8027 times)
#PrimitiveBasicBlocks::Cached::member_step#ffPlus ................. 6.6s
PrimitiveBasicBlocks::Cached::primitive_basic_block_entry_node#f .. 3.5s
PrimitiveBasicBlocks::Cached::primitive_basic_block_member#fff .... 2.3s
Performance with this commit is:
PrimitiveBasicBlocks::Cached::primitive_basic_block_entry_node#f ................................................................... 3.5s
shortestDistances@PrimitiveBasicBlocks::Cached::primitive_basic_block_entry_node#1@PrimitiveBasicBlocks::Cached::member_step#2#fff . 3s
PrimitiveBasicBlocks::Cached::primitive_basic_block_member#fff ..................................................................... 963ms
2019-06-11 09:44:50 +02:00
Max Schaefer
70cf32c889
JavaScript: Add a few more tests.
2019-06-11 08:44:14 +01:00
Esben Sparre Andreasen
299d4c6e93
JS: add additional SystemCommandExecutors
2019-06-11 09:38:10 +02:00
semmle-qlci
61f7c78fa9
Merge pull request #1421 from xiemaisi/js/data-flow-tutorial-tests
...
Approved by esben-semmle
2019-06-11 07:55:47 +01:00
Ziemowit Laski
0f5a4a7089
[CPP-370] Improve handling of _ macros by using taint sanitizers.
2019-06-10 15:50:53 -07:00
yh-semmle
6c9d68d847
Merge pull request #1412 from aschackmull/java/typeflow-basecases
...
Java: Include two more base cases in TypeFlow to improve virtual dispatch.
2019-06-10 17:23:24 -04:00
Calum Grant
fc0e34100a
Merge pull request #1397 from hvitved/csharp/lgtm-alerts-suite
...
C#: Make `csharp-alerts-lgtm` a stub
2019-06-10 18:24:41 +01:00
Mark Shannon
831850fad9
Merge pull request #1435 from aeyerstaylor/python-points-to-performance
...
Python: Improve points-to performance on large databases.
2019-06-10 18:11:53 +01:00
yh-semmle
8e6b62a301
Java: add QL library for modeling Android components
2019-06-10 13:00:03 -04:00
yh-semmle
0fb323b5ff
Java: add QL library for modeling AndroidManifest.xml files
2019-06-10 12:59:47 -04:00
alexet
f04bc26684
Python: Improve points-to performance on large databases.
2019-06-10 17:12:45 +01:00
Geoffrey White
6a95ca9743
CPP: Change note.
2019-06-10 15:38:32 +01:00
Geoffrey White
a842ed56cf
CPP: Integrate and produce full results.
2019-06-10 15:33:12 +01:00
Geoffrey White
e143870b65
CPP: Pavel's sketch implementation.
2019-06-10 15:33:12 +01:00
Mark Shannon
28741dda07
Merge pull request #1433 from aeyerstaylor/faster-python
...
Python: Improve performance of submodule name computation.
2019-06-10 15:30:09 +01:00
Geoffrey White
2f36d81137
CPP: Add cases for fields.
2019-06-10 15:07:52 +01:00
Geoffrey White
d3f98a5a74
CPP: Create a direct test of Variable.getAnAssignedValue().
2019-06-10 14:33:14 +01:00
Mark Shannon
c03e8040b5
Merge pull request #1434 from felicity-semmle/merge-121-back
...
Merge 'rc/1.21' back into 'master'
2019-06-10 12:59:51 +01:00
Felicity Chapman
4999d3e9cc
Merge branch 'rc/1.21' into merge-121-back
...
Conflicts:
change-notes/1.21/analysis-python.md
2019-06-10 12:31:42 +01:00
Geoffrey White
1f036c3d82
CPP: Change note.
2019-06-10 12:09:44 +01:00
alexet
e66c132bae
Python: Improve performance of submodule name computation.
2019-06-10 12:07:31 +01:00
Geoffrey White
3deff9c578
CPP: Fix in dataflow.
2019-06-10 12:01:14 +01:00
Geoffrey White
d51f870053
CPP: Add test cases.
2019-06-10 12:01:13 +01:00
yh-semmle
9c7995961d
Merge pull request #1426 from felicity-semmle/1.21/support
...
Update support info for 1.21
2019-06-10 06:58:20 -04:00
Mark Shannon
dd5cf392de
Merge pull request #1430 from felicity-semmle/1.21/python-change-notes
...
LGTM 1.21: Finalize Python change notes
2019-06-10 11:48:27 +01:00
Felicity Chapman
9b9f257e0a
Add a link to a new query on LGTM.com
2019-06-10 11:35:19 +01:00
Felicity Chapman
b242b84764
Remove boilerplate text and fix table formatting
2019-06-10 11:32:34 +01:00
Mark Shannon
0f0dc81291
Python ESSA: Remove method-callsite definitions when call is in a test defining a pi-node.
2019-06-10 11:23:15 +01:00
Felicity Chapman
54a0772821
Merge pull request #1429 from markshannon/python-points-to-change-note
...
Backport of https://github.com/Semmle/ql/pull/1425
2019-06-10 11:17:03 +01:00
Max Schaefer
b32a037ff2
JavaScript: Refactor a few access path computation predicates.
2019-06-10 11:15:52 +01:00
Mark Shannon
b7141ad998
Python: Clarify change note.
2019-06-10 11:13:25 +01:00
Mark Shannon
ec0c1dc70e
Python: Change note for new points-to implementation.
2019-06-10 11:13:25 +01:00
Felicity Chapman
18443e3297
Merge pull request #1425 from markshannon/python-points-to-change-note
...
Python: Change note for new points-to implementation.
2019-06-10 11:01:04 +01:00
Mark Shannon
ff5e4d1b52
Python: Clarify change note.
2019-06-10 10:56:28 +01:00
Arthur Baars
f7620aec37
Merge pull request #1424 from markshannon/python-points-to-varargs
...
Backport of #1391
2019-06-07 19:54:56 +02:00