Taus
25043f51a4
Merge pull request #11376 from RasmusWL/call-graph-code
...
Python: New type-tracking based call-graph
2023-02-27 14:51:21 +01:00
Rasmus Wriedt Larsen
766e6c400e
Python: Handle if-then-else definitions in import resolution
2023-02-16 11:18:30 +01:00
Rasmus Wriedt Larsen
c4fbfb0d07
Merge branch 'main' into call-graph-code
2023-02-15 20:15:04 +01:00
Rasmus Wriedt Larsen
220f227707
Python: Add wrapper for isPreferredModuleForName
...
We talked about how it's annoying that we in 4 places have the same fix
`isPreferredModuleForName(<module>.getFile(), <name> + ["", ".__init__"])`
, and that it would be nice to have a simple wrapper predicate that
ensures we never forget to do the `+ ["", ".__init__"]` dance...
I had trouble coming up with a name for this (ironically), but
I think `getModuleFromName` is good enough.
2023-02-15 14:23:39 +01:00
Rasmus Wriedt Larsen
66c3529465
Python: Fix import * from __init__.py files
2023-02-15 14:10:37 +01:00
Rasmus Wriedt Larsen
9e2eb56032
Python: Remove support for late *args arguments
...
I found this to cause bad performance, so the implementation of this has
to be thought out more carefully.
2023-02-15 09:42:11 +01:00
Anders Schack-Mulligen
e877b161d8
Merge pull request #12124 from hvitved/dataflow/stage1-dispatch
...
Data flow: Call context virtual dispatch pruning in stage 1
2023-02-13 13:13:43 +01:00
Tom Hvitved
f7a5a33474
Address review comment
2023-02-13 09:01:15 +01:00
Rasmus Wriedt Larsen
5c23b47ef4
Python: Fix typo in QLDoc
...
Co-authored-by: Taus <tausbn@github.com >
2023-02-08 16:27:06 +01:00
Rasmus Wriedt Larsen
8bb1d8631a
Python: Add call-graph hotfix for sympy
2023-02-08 16:19:29 +01:00
Rasmus Wriedt Larsen
23144f584a
Merge branch 'main' into call-graph-code
2023-02-08 16:17:34 +01:00
Tom Hvitved
8e8897b08b
Data flow: Sync files
2023-02-07 15:15:04 +01:00
Anders Schack-Mulligen
67d4ed53b9
Dataflow: Sync.
2023-02-02 16:33:00 +01:00
Rasmus Wriedt Larsen
db114bb104
Merge branch 'main' into call-graph-code
2023-02-02 11:56:55 +01:00
erik-krogh
77e014c5a4
sync added dataflow config
2023-02-01 11:46:57 +01:00
Erik Krogh Kristensen
01f6862965
Merge pull request #11833 from erik-krogh/trackPyReg
...
PY: track string-constants to regular expression uses
2023-02-01 11:40:42 +01:00
Rasmus Wriedt Larsen
c7e552b343
Python: Fix grammar in qldoc
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2023-01-30 09:45:45 +01:00
Rasmus Wriedt Larsen
a1c2f4c138
Python: Small rewrite of **kwargs getParameter logic
2023-01-30 09:42:43 +01:00
Mathias Vorreiter Pedersen
95b15825f9
DataFlow: Sync identical files.
2023-01-27 16:24:31 +00:00
Rasmus Wriedt Larsen
c099dbd04c
Python: Expand notes around bound methods self argument passing
2023-01-27 15:27:45 +01:00
Rasmus Wriedt Larsen
02b3a1b515
Python: At most one **kwargs ParameterNode per callable
...
Similar to the Ruby changes from
https://github.com/github/codeql/pull/11461
I feel the change to `DataFlowFunciton.getParameter` where we use
`not exists(func.getArgByName(_))` is not very great, but I was not allowed
to use `not exists(this.getParameter(any(ParameterPosition _).isKeyword(_)))`
because of negative recursion.
2023-01-27 11:14:42 +01:00
Rasmus Wriedt Larsen
f262dc68f8
Python: Reword note about debugging getNextClassInMro
2023-01-25 10:08:43 +01:00
Rasmus Wriedt Larsen
0879c8f8e1
Python: Expand comments on C3 MRO
2023-01-23 17:40:24 +01:00
Rasmus Wriedt Larsen
753192bb4d
Merge branch 'main' into call-graph-code
2023-01-23 11:25:02 +01:00
Alex Ford
55550e7980
Merge pull request #11941 from alexrford/summary-component-tostring-syntheticglobal
...
Add missing toString case for synthetic globals
2023-01-23 10:00:00 +00:00
Rasmus Wriedt Larsen
25a68c4d71
Python: Include @yoff's suggestion on synthetic *args handling
2023-01-20 16:49:33 +01:00
Rasmus Wriedt Larsen
41ebb4fb55
Python: Add p2 in QLDoc example code for synthetic **kwargs
2023-01-20 16:40:39 +01:00
Rasmus Wriedt Larsen
d9fbe58ad5
Python: Expand starargs_only test
2023-01-20 16:34:59 +01:00
Rasmus Wriedt Larsen
0df3dd68d6
Python: Remove (now) redundant cast
2023-01-20 15:13:02 +01:00
Alex Ford
e4df1f5a6f
Ruby: add missing toString case for synthetic globals
2023-01-20 13:31:43 +00:00
Michael Nebel
dc223cb82e
Sync files and make corresponding changes for other languages.
2023-01-19 15:14:06 +01:00
Rasmus Wriedt Larsen
4df946b161
Python: call-graph: Don't design for special method calls yet
...
The `call` arguments were not `CallNode`s before, to allow for easier
support of special method calls, such as `a + b` going to `__add__`.
However, this is not implemented yet, so for now we can keep things
simple.
Co-authored-by: Taus <tausbn@github.com >
2023-01-18 12:30:53 +01:00
Rasmus Wriedt Larsen
b83fc3b6eb
Python: Update QLDoc for clsArgumentTracker
2023-01-17 14:38:56 +01:00
Rasmus Wriedt Larsen
24892801ec
Python: clsTracker => clsArgumentTracker
...
Co-authored-by: Taus <tausbn@github.com >
2023-01-17 14:16:56 +01:00
Rasmus Wriedt Larsen
1c8cc6a32a
Python: Add QLDoc for TFunction
2023-01-17 14:14:05 +01:00
Rasmus Wriedt Larsen
a0b1c2ea79
DataFlow: Add uniqueParameterNodePositionExclude
2023-01-17 14:05:22 +01:00
Rasmus Wriedt Larsen
2b0a5fd5d1
DataFlow: Add uniqueParameterNodeAtPositionExclude
2023-01-17 14:05:17 +01:00
Rasmus Wriedt Larsen
a6fd5b6e59
DataFlow: Add uniqueParameterNodePositionExclude
2023-01-17 13:58:37 +01:00
Rasmus Wriedt Larsen
7a423622f8
DataFlow: Add uniqueParameterNodeAtPositionExclude
2023-01-17 13:57:31 +01:00
Rasmus Wriedt Larsen
479f019eb0
Python: Minor rewrite removing unnecessary exists
...
Co-authored-by: Taus <tausbn@github.com >
2023-01-17 10:59:11 +01:00
Rasmus Wriedt Larsen
4f3876f184
Python: Accept rewrite for _join( predicates
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2023-01-17 10:32:31 +01:00
Rasmus Wriedt Larsen
7c242b1409
Python: Minor QLDoc fix
...
Co-authored-by: Taus <tausbn@github.com >
2023-01-17 10:32:15 +01:00
Rasmus Wriedt Larsen
690a09d9b6
Python: new-call-graph: pragma[noinline] => pragma[nomagic]
...
As suggested by @tausbn. Obviously, this needs to be performance tested.
2023-01-16 20:45:44 +01:00
Rasmus Wriedt Larsen
3fcb8f3f4b
Python: Accept suggestions from code-review
2023-01-16 20:33:28 +01:00
Rasmus Wriedt Larsen
a1513cc1d3
Python: Minor QLDoc fix
2023-01-16 14:07:11 +01:00
Rasmus Wriedt Larsen
dfbb744a7a
Python: Add comment on *args argument handling
2023-01-16 14:04:25 +01:00
Rasmus Wriedt Larsen
61151d4aa7
Merge branch 'main' into call-graph-code
2023-01-16 13:39:15 +01:00
Michael Nebel
7e4f7a0c17
C#: Address review comments and sync files.
2023-01-11 16:29:24 +01:00
Michael Nebel
67cbe38255
Sync files.
2023-01-11 16:20:55 +01:00
Michael Nebel
59a9e255c7
Python: Re-factor provenance related predicates for summarized callable.
2023-01-11 16:20:55 +01:00