Copilot
717ff62d70
Python: deprecate AstNode.getAFlowNode() and rewrite internal callers
...
Preparatory refactor for the shared-CFG dataflow migration.
Deprecates the AstNode.getAFlowNode() cached predicate on the public
Python QL API and rewrites all ~140 internal callers across lib/, src/,
test/, and tools/ from `expr.getAFlowNode() = cfgNode` to
`cfgNode.getNode() = expr`, using ControlFlowNode.getNode() which
already exists in Flow.qll.
The predicate itself is preserved (with a deprecation note pointing at
the new pattern) so external users do not experience churn — they can
migrate at their own pace and the AST/CFG hierarchies still get the
intended untangling once the deprecation eventually elapses.
Semantic noop verified by:
- All 361 lib/ + src/ queries compile clean.
- All 122 ControlFlow + PointsTo library-tests pass.
- All 64 dataflow library-tests pass.
- All 113 Variables/Exceptions/Expressions/Statements/Functions/Imports/
Security/CWE-798/ModificationOfParameterWithDefault query-tests pass.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-06-22 14:55:19 +02:00
erik-krogh
8be7eadace
delete outdated deprecations
2024-01-22 09:11:35 +01:00
Kasper Svendsen
f41276cb7f
Python: Enable implicit this warnings for remaining packs
2023-06-27 12:00:13 +02:00
erik-krogh
6dfeb2536b
delete old deprecations
2023-06-09 15:12:23 +02:00
Chris Smowton
ee63e60bb7
qlpacks: libraryPathDependencies -> dependencies
2022-10-28 16:07:36 +01:00
erik-krogh
ce9f69a639
rename all occurrences of XML to Xml
2022-08-22 14:08:31 +02:00
erik-krogh
2e44fba67d
add explicit this
2022-08-17 13:33:31 +02:00
Erik Krogh Kristensen
69353bb014
patch upper-case acronyms to be PascalCase
2022-03-11 11:10:33 +01:00
Taus
063a8bbc43
Python: Apply suggestions from code review
...
Co-authored-by: yoff <lerchedahl@gmail.com >
2022-03-08 15:20:35 +01:00
Taus
d2603884ca
Python: Fix a bunch of class QLDoc
2022-03-07 18:59:49 +00:00
Rasmus Wriedt Larsen
fb37330f5e
Python: Fix grammar
...
Co-authored-by: Taus <tausbn@github.com >
2020-09-07 14:59:07 +02:00
Rasmus Wriedt Larsen
ecafc760e8
Python: CG trace: Improved debugging queries a bit
2020-07-24 19:34:51 +02:00
Rasmus Wriedt Larsen
2407c8b07e
Python: CG trace: Better handling of builtins without __module__
...
Not 100% perfect, but better
2020-07-24 19:13:53 +02:00
Rasmus Wriedt Larsen
4c689434c3
Python: CG trace: Restructure QL code
2020-07-24 17:00:13 +02:00
Rasmus Wriedt Larsen
321d5104f0
Python: CG trace: Autogenerate BytecodeExpr.qll
...
Some code I had lying around, just hadn't comitted.
Not that useful since most of these have been disabled in 55404ae98 for now.
2020-07-24 16:51:14 +02:00
Rasmus Wriedt Larsen
a7bc9544b6
Python: CG trace: Metrics, number of recorded calls not ignored
...
turned out to be useful after all :P
2020-07-24 16:49:54 +02:00
Rasmus Wriedt Larsen
367a49803b
Python: CG trace: handle class instantiation properly in points-to
2020-07-24 11:19:11 +02:00
Rasmus Wriedt Larsen
746c577d72
Python: CG trace: Update naming and add QLDoc
2020-07-22 15:49:11 +02:00
Rasmus Wriedt Larsen
67b45164eb
Python: CG trace: Partial matching of BytecodeExpr and AST not safe
2020-07-22 15:19:57 +02:00
Rasmus Wriedt Larsen
ad2e336ead
Python: CG trace: Autoformat
2020-07-22 13:53:22 +02:00
Rasmus Wriedt Larsen
ccffa7d99d
Python: CG trace: Ignore some calls for call-grahp metrics
...
and provide some internal metrics as well
2020-07-22 13:12:52 +02:00
Rasmus Wriedt Larsen
b227a7ec90
Python: CG trace: Add overall metrics query
2020-07-22 00:55:53 +02:00
Rasmus Wriedt Larsen
278ab4b883
Python: CG trace: Much improved toString for QL
2020-07-22 00:55:53 +02:00
Rasmus Wriedt Larsen
a5838b66ed
Python: CG trace: Small improvements to QL code
2020-07-22 00:00:17 +02:00
Rasmus Wriedt Larsen
89e8202d11
Python: CG trace: Add some tests using classes
2020-07-21 11:16:52 +02:00
Rasmus Wriedt Larsen
38af1930fe
Python: CG trace: Rename ValidRecordedCall to IdentifiedRecordedCall
2020-07-21 10:19:47 +02:00
Rasmus Wriedt Larsen
bbfea44db0
Python: CG trace: Handle multiple calls to same func on same line
...
Such as
```
one(); one()
```
Now there are no InvalidRecordedCall in the current examples.
2020-07-20 14:54:05 +02:00
Rasmus Wriedt Larsen
cb98f4433d
Python: CG trace: Handle multiple calls on one line
...
Reduced number of InvalidRecordedCall from 16 to 2. This is the calls
```
one(); one()
```
since they are not distinguishable from the expression.
2020-07-20 14:07:09 +02:00
Rasmus Wriedt Larsen
5ef817012a
Python: CG trace: restructure QL for new XML format
2020-07-20 13:00:07 +02:00
Rasmus Wriedt Larsen
1c2e259970
Python: CG trace: Handle builtins
2020-07-16 18:04:04 +02:00
Rasmus Wriedt Larsen
f1601d643a
Python: autoformat
2020-07-14 14:12:56 +02:00
Rasmus Wriedt Larsen
1d9c3b3bcd
Python: call-graph tracing: callable => callee
...
to use consistent naming
2020-07-14 14:12:02 +02:00
Rasmus Wriedt Larsen
27d1512a75
Python: MWE for call-graph tracing and ql comparison
2020-07-07 11:05:03 +02:00