Commit Graph

856 Commits

Author SHA1 Message Date
Paolo Tranquilli
27738eaacc Rust: reorganize perf diagnostics 2024-11-27 12:05:06 +01:00
Paolo Tranquilli
556774edc7 Rust: do not put extraction steps in the expected diagnostics 2024-11-26 18:00:15 +01:00
Paolo Tranquilli
8abd3c4707 Rust: Remove windows difference from diagnostics 2024-11-26 16:48:49 +01:00
Paolo Tranquilli
24eb65692f Rust: add some performance diagnostics
This outputs some duration counts for various parts of the extraction
process in the database in the form of telemetry diagnostics.

The diagnostics format was preferred to putting things in the relational
database as that will scale better to code scanning and is more flexible
as for the data we can put into it without passing through the dbscheme.
Also, although it's not the case yet, it will be possible to output
diagnostics even if creation of the database fails.
2024-11-26 16:35:38 +01:00
Paolo Tranquilli
9f09454db9 Merge pull request #18107 from github/redsun82/rust-rename
Rust: rename `MatchExpr.expr` to `scrutinee` in all layers
2024-11-26 12:59:06 +01:00
Paolo Tranquilli
cb0ac61db6 Merge pull request #18069 from geoffw0/sourcemodels
Rust: Add some flow source models
2024-11-26 12:08:02 +01:00
Paolo Tranquilli
7a86257968 Merge branch 'main' into redsun82/rust-rename 2024-11-26 10:48:19 +01:00
Paolo Tranquilli
8a01161d4a Rust: rename MatchExpr.expr to scrutinee in all layers
This doesn't require `ql.name` and is simpler while we don't have
to write upgrade scripts. The `ql.name` mechanism might get useful
once we do have to write upgrade scripts, as that doesn't change the
dbscheme.
2024-11-26 10:42:13 +01:00
Simon Friis Vindum
8252e1da02 Rust: Change &String to &str 2024-11-26 09:21:44 +01:00
Geoffrey White
1090164b77 Merge branch 'main' into sourcemodels 2024-11-25 21:12:24 +00:00
Geoffrey White
93e7202a69 Merge pull request #17940 from geoffw0/resolvable
Rust: Add unresolved macro calls diagnostic
2024-11-25 19:08:29 +00:00
Paolo Tranquilli
269ea75036 Rust: matched_expr -> scrutinee 2024-11-25 17:23:47 +01:00
Paolo Tranquilli
b47e9612eb Rust: fix MatchExpr.getExpr renaming 2024-11-25 17:14:05 +01:00
Paolo Tranquilli
261e0a1a53 Codegen/Rust: allow renaming in QL
This adds a `ql.name` codegen pragma to change the name of a property on
the QL side. This is useful to give more meaningful names than what we
get from the generated rust AST.
2024-11-25 17:04:03 +01:00
Geoffrey White
f92e8555a6 Rust: update for toString changes in main. 2024-11-25 14:35:12 +00:00
Geoffrey White
e9a13aec1d Merge branch 'main' into resolvable 2024-11-25 14:33:56 +00:00
Simon Friis Vindum
d5c8dfd88c Merge pull request #18092 from paldepind/rust-param-base
Rust: Generate `ParamBase`, a superclass of `Param` and `SelfParam`
2024-11-25 14:58:07 +01:00
Simon Friis Vindum
0de6658660 Rust: Use ParamBase in data flow implementation 2024-11-25 14:18:08 +01:00
Simon Friis Vindum
0d02126f12 Generate ParamBase, superclass of Param and SelfParam 2024-11-25 14:07:50 +01:00
Tom Hvitved
e6161a5019 Merge pull request #18070 from hvitved/rust/canonical-path-dataflow
Rust: Use extended canonical paths to resolve calls in data flow
2024-11-25 11:48:19 +01:00
Geoffrey White
bded7085f0 Rust: Effect of toString changes in main. 2024-11-25 10:01:57 +00:00
Geoffrey White
d38f0eec7b Merge branch 'main' into sourcemodels 2024-11-25 09:59:08 +00:00
Geoffrey White
4c50c083fb Rust: Implement good suggestions from ql-for-ql. 2024-11-22 17:12:09 +00:00
Geoffrey White
f2f577f86c Rust: Fix toString(). 2024-11-22 17:09:52 +00:00
Geoffrey White
d8b58f21c7 Rust: Restrict ReqwestGet by crate origin. 2024-11-22 16:42:24 +00:00
Paolo Tranquilli
b32e578580 Rust: accept test changes 2024-11-22 17:18:32 +01:00
Paolo Tranquilli
e7c10c6325 Merge branch 'main' into redsun82/rust-str 2024-11-22 14:44:48 +01:00
Paolo Tranquilli
28d517da59 Rust: fix regression in getFormat indexing 2024-11-22 14:13:15 +01:00
Paolo Tranquilli
626b1cef17 Merge pull request #18071 from github/redsun82/rust-format-parent-child
Rust: fix parent/child relationship for format entities
2024-11-22 14:03:53 +01:00
Paolo Tranquilli
2e90c80a6f Rust: accept test changes 2024-11-22 13:45:00 +01:00
Tom Hvitved
143d7e2084 Rust: Use extended canonical paths to resolve calls in data flow 2024-11-22 13:23:39 +01:00
Tom Hvitved
faabc9982e Merge pull request #18056 from paldepind/rust-df-global
Rust: Extend data flow library instantiation for global data flow
2024-11-22 13:23:02 +01:00
Geoffrey White
6e627f6543 Rust: Add new consistency check failure. 2024-11-22 12:21:13 +00:00
Geoffrey White
75a3c931d1 Rust: Autoformat (again). 2024-11-22 11:58:23 +00:00
Geoffrey White
fa7c6f8b5e Merge branch 'main' into resolvable 2024-11-22 11:45:47 +00:00
Geoffrey White
fe2d0b631c Rust: Autoformat. 2024-11-22 11:37:15 +00:00
Geoffrey White
194f967d74 Rust: Required doc comments. 2024-11-22 11:36:54 +00:00
Geoffrey White
ed67dae850 Rust: Make ql-for-ql happy. 2024-11-22 11:33:35 +00:00
Paolo Tranquilli
9a07b3c3d4 Rust: remove obsolete expected files 2024-11-22 12:24:44 +01:00
Paolo Tranquilli
e49a5be62f Rust: fix parent/child relationship for format entities 2024-11-22 12:20:49 +01:00
Geoffrey White
20eaaa5699 Rust: Use final extensions. 2024-11-22 09:22:11 +00:00
Simon Friis Vindum
e81c3483db Rust: Apply suggestions from PR comments 2024-11-22 10:19:13 +01:00
Geoffrey White
292b29b0e3 Rust: Fix following rebase on main. 2024-11-22 09:13:48 +00:00
Geoffrey White
176e9a425f Rust: Model reqwest. 2024-11-22 09:13:47 +00:00
Geoffrey White
e64f139c98 Rust: Model std::env. 2024-11-22 09:13:44 +00:00
Geoffrey White
374769873a Rust: Add Frameworks.qll infrastructure. 2024-11-22 09:13:43 +00:00
Geoffrey White
be40085982 Rust: Add a test of flow sources reaching sinks as well. 2024-11-22 09:13:42 +00:00
Geoffrey White
a85ad4ec29 Rust: Add a dataflow/sources test. 2024-11-22 09:13:41 +00:00
Geoffrey White
ca424d1e61 Rust: Add a count of flow sources to rust/summary/summary-statistics. 2024-11-22 09:13:39 +00:00
Geoffrey White
3fa93e5ca9 Rust: Add rust/summary/taint-sources query. 2024-11-22 09:13:38 +00:00