Paolo Tranquilli
6a95251206
Merge pull request #21793 from github/release-prep/2.25.4
...
Release preparation for version 2.25.4
2026-05-05 11:39:13 +02:00
github-actions[bot]
88e1d86c27
Release preparation for version 2.25.4
2026-05-05 09:34:30 +00:00
Tom Hvitved
4c1461ad5b
Merge pull request #21786 from hvitved/inline-test-ignore-tags
...
Inline test expectations: Rename `tagIsOptional` to `tagIsIgnored`
2026-05-05 09:01:58 +02:00
Anders Schack-Mulligen
b67ebd11e0
Merge pull request #21762 from aschackmull/csharp/ssa2
...
C#: Replace SSA classes with shared code.
2026-05-04 14:21:01 +02:00
Anders Schack-Mulligen
02f5fe9a42
C#: Address some review comments.
2026-05-04 11:49:24 +02:00
Tom Hvitved
04a8ef0f81
Merge pull request #21777 from hvitved/swift/type-inference-tests
...
Swift: Add type inference tests
2026-05-04 11:45:32 +02:00
Anders Schack-Mulligen
f663eccf66
Merge pull request #21781 from aschackmull/java/rm-deprecated
...
Java: Delete old deprecated code.
2026-05-04 11:35:09 +02:00
Tom Hvitved
80ccdcc696
Inline test expectations: Rename tagIsOptional to tagIsIgnored
2026-05-04 11:21:33 +02:00
Tom Hvitved
224934645e
Swift: Add type inference tests for key path expressions
2026-05-04 11:00:38 +02:00
Tom Hvitved
038f9a2c2f
Swift: Split type inference tests into multiple files
2026-05-04 10:55:06 +02:00
Anders Schack-Mulligen
c7904b12c8
Java: Fix reference in deprecated code.
2026-05-04 10:52:27 +02:00
Anders Schack-Mulligen
17fded4aa5
Java: Delete old deprecated code.
2026-05-04 10:52:27 +02:00
Paolo Tranquilli
77cdafd55e
Merge pull request #21785 from github/codeql-spark-run-25308467256
...
Update changelog documentation site for codeql-cli-2.25.3
2026-05-04 10:42:33 +02:00
Paolo Tranquilli
1c20e78593
Docs: replace build mode: none with build-mode: none
2026-05-04 10:26:50 +02:00
github-actions[bot]
5546025f12
update codeql documentation
2026-05-04 08:19:28 +00:00
Tom Hvitved
1f3a8319ed
Update csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-05-04 09:41:00 +02:00
Anders Schack-Mulligen
21a0d1444f
C#: Add change note.
2026-05-01 13:13:40 +02:00
Anders Schack-Mulligen
e012981e5b
C#: Accept test changes for out/ref SSA location changes.
2026-05-01 10:32:18 +02:00
Anders Schack-Mulligen
351e9cc914
C#: Accept test changes.
2026-05-01 10:28:15 +02:00
Anders Schack-Mulligen
439a67a3fe
C#: Fix toString for capture definitions.
2026-05-01 10:26:50 +02:00
Anders Schack-Mulligen
5fbba0e9fe
C#: Delete ParameterDefaultDefinition.
2026-05-01 10:24:23 +02:00
Anders Schack-Mulligen
d3df5ce110
C#: Deprecate ParameterDefinition in favour of SsaParameterInit.
2026-05-01 10:22:53 +02:00
Mathias Vorreiter Pedersen
154d213fd2
Merge pull request #21768 from github/speed-up-unchecked-leap-year-after-modification
...
C++: Speed up `cpp/leap-year/unchecked-after-arithmetic-year-modification`
2026-04-30 16:06:17 +01:00
Michael Nebel
4446f42846
Merge pull request #21684 from michaelnebel/csharp/improve-reachability-checks
...
C#: Improve BMN feed checking & handling.
2026-04-30 15:53:52 +02:00
Owen Mansel-Chan
87c35e6401
Merge pull request #21654 from MarkLee131/fix/sensitive-log-hash-sanitizer
...
Java: treat hash/encrypt/digest methods as sensitive-log sanitizers
2026-04-30 13:21:03 +01:00
Anders Schack-Mulligen
ff8ab191d1
C#: Drop caching for deprecated predicates.
2026-04-30 13:58:55 +02:00
Anders Schack-Mulligen
77807c83f8
C#: Exclude entry definitions from qualifier definitions.
2026-04-30 13:56:21 +02:00
Anders Schack-Mulligen
e0421dbf53
C#: Reinstate toString for SSA data flow nodes.
2026-04-30 13:56:16 +02:00
Anders Schack-Mulligen
bedadc9f04
C#: Deprecate some SSA internals.
2026-04-30 13:54:21 +02:00
Anders Schack-Mulligen
55b83ca22a
C#: Deprecate Ssa::Definition in favour of SsaDefinition.
2026-04-30 13:54:20 +02:00
Anders Schack-Mulligen
de96b5acfd
C#: Deprecate Ssa::ImplicitDefinition.
2026-04-30 13:54:20 +02:00
Anders Schack-Mulligen
80d5e27b46
C#: Deprecate Ssa::ImplicitEntryDefinition.
2026-04-30 13:54:15 +02:00
Anders Schack-Mulligen
65f647a8c0
C#: Replace Ssa::UncertainDefinition with SsaUncertainWrite.
2026-04-30 13:49:23 +02:00
Anders Schack-Mulligen
9a7eb8dfb9
C#: Replace Ssa::PhiNode with SsaPhiDefinition.
2026-04-30 13:49:23 +02:00
Anders Schack-Mulligen
6ecdf3fe32
C#: Replace Ssa::ImplicitParameterDefinition with SsaParameterInit.
2026-04-30 13:49:19 +02:00
Tom Hvitved
4042bbec5b
Swift: Add type inference tests
2026-04-30 13:45:57 +02:00
Anders Schack-Mulligen
31e06bc0a9
C#: Remove SSA location overrides.
2026-04-30 12:56:58 +02:00
Anders Schack-Mulligen
dc34b10cb6
C#: Replace Ssa::ExplicitDefinition with SsaExplicitWrite.
2026-04-30 12:52:51 +02:00
Anders Schack-Mulligen
a6c7f27fc1
C#: Deprecate Definition.getEnclosingCallable.
2026-04-30 12:46:28 +02:00
Anders Schack-Mulligen
ed6cdfc227
C#: Move isLiveOutRefParameterDefinition to top-level.
2026-04-30 12:46:27 +02:00
Anders Schack-Mulligen
9345c44e0f
C#: Delete test for Definition.getElement.
2026-04-30 12:46:23 +02:00
Anders Schack-Mulligen
c88a22ccf8
C#: Replace most uses of Ssa::Definition with SsaDefinition.
2026-04-30 12:45:25 +02:00
Anders Schack-Mulligen
2545f06b52
C#: Deprecate member predicate Definition.getAReadAtNode.
2026-04-30 12:42:24 +02:00
Anders Schack-Mulligen
83c7a33e53
C#: Deprecate member predicates Definition.getAFirstRead and getAFirstReadAtNode.
2026-04-30 12:42:21 +02:00
Anders Schack-Mulligen
fb438bf512
C#: Remove references to getAFirstReadAtNode.
2026-04-30 11:55:55 +02:00
Anders Schack-Mulligen
e5d219a039
C#: Simplify library instantiations.
2026-04-30 11:50:59 +02:00
Anders Schack-Mulligen
72d21a9a56
C#: Instantiate shared SSA wrappers.
2026-04-30 11:48:27 +02:00
Anders Schack-Mulligen
7ef9e1b939
C#: Rename SsaImpl input.
2026-04-30 11:46:20 +02:00
Tom Hvitved
a473fdb709
Merge pull request #21759 from hvitved/csharp/cfg-params
...
C#: Include parameters and their defaults in the CFG
2026-04-30 11:31:06 +02:00
Owen Mansel-Chan
fed42d655f
Merge pull request #21656 from MarkLee131/fix/trust-boundary-regexp-barrier
...
Java: add RegexpCheckBarrier to trust-boundary-violation sanitizers
2026-04-29 14:59:01 +01:00
Michael Nebel
03d70b9f94
C#: Add another nuget.config integration test.
2026-04-29 15:47:32 +02:00
Michael Nebel
e29770c2b5
C#: Fix missing slash in comments.
2026-04-29 15:27:47 +02:00
MarkLee131
28a6ff208c
Merge remote-tracking branch 'origin/main' into fix/sensitive-log-hash-sanitizer
...
# Conflicts:
# java/ql/test/query-tests/security/CWE-532/SensitiveLogInfo.expected
# java/ql/test/query-tests/security/CWE-532/Test.java
2026-04-29 20:59:59 +08:00
Tom Hvitved
e14b654e8a
Update shared/controlflow/codeql/controlflow/ControlFlowGraph.qll
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2026-04-29 14:57:35 +02:00
MarkLee131
51e2a5418b
Java: move EncryptedSensitiveMethodCall into Sanitizers.qll
...
Address review feedback by moving the shared method-name-based encryption/hash/digest
check into Sanitizers.qll, and reference it from both CleartextStorageQuery.qll and
SensitiveLoggingQuery.qll instead of duplicating the definition.
2026-04-29 20:56:36 +08:00
MarkLee131
75162bb9eb
Update java/ql/test/query-tests/security/CWE-532/Test.java
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2026-04-29 20:53:58 +08:00
MarkLee131
49d014cbac
Merge branch 'main' into fix/trust-boundary-regexp-barrier
2026-04-29 20:48:22 +08:00
MarkLee131
d27ee86242
Java: refactor trust-boundary sanitizers into TrustBoundaryValidationSanitizer subclasses
...
Address review feedback by introducing dedicated subclasses of
TrustBoundaryValidationSanitizer for SimpleTypeSanitizer, RegexpCheckBarrier,
and the HttpServletSession type check, so isBarrier only references the
abstract class.
2026-04-29 20:46:11 +08:00
Jack Nørskov Jørgensen
0192ffab07
Merge pull request #21751 from github/jacknojo/move_java_generated_mads
...
Move generated MaDs into modelgenerator/
2026-04-29 14:33:58 +02:00
Tom Hvitved
99b5cecb18
Java: Adapt to changes in shared CFG library
2026-04-29 14:03:06 +02:00
Tom Hvitved
99023f8b59
C#: Add upgrade/downgrade scripts
2026-04-29 14:03:05 +02:00
Tom Hvitved
b6c464281b
C#: Move internal logic into internal/ControlFlowGraph.qll
2026-04-29 14:01:14 +02:00
Tom Hvitved
d4a32476da
C#: No need to special-case default arguments in nullness analysis
2026-04-29 14:01:13 +02:00
Tom Hvitved
6c42418faf
C#: Use parameter CFG nodes in SSA
2026-04-29 14:01:11 +02:00
Tom Hvitved
cbe207ab65
C#: Include parameters and their defaults in the CFG
2026-04-29 14:01:09 +02:00
Tom Hvitved
d792e11b7f
C#: Add tests for methods with default parameters
2026-04-29 14:01:08 +02:00
Tom Hvitved
77639817fe
C#: Remove unintended CP
2026-04-29 14:01:06 +02:00
Josef Svenningsson
68be006a29
Merge pull request #21641 from github/josefs/promptInjectionImprovements
...
Improve prompt inject for Python
2026-04-29 11:23:52 +01:00
Mathias Vorreiter Pedersen
96d6ee61ff
Update cpp/ql/src/Likely Bugs/Leap Year/UncheckedLeapYearAfterYearModification.ql
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2026-04-29 10:55:02 +01:00
Michael Nebel
bfd3683b0b
Merge pull request #21372 from michaelnebel/csharp14/usercompoundassignment
...
C# 14: User defined compound assignment operators.
2026-04-29 11:22:35 +02:00
Asger F
c95083b176
Merge pull request #21697 from yearn/js/vercel-node-framework
...
JS: Add support for @vercel/node serverless functions
2026-04-29 10:58:53 +02:00
Mathias Vorreiter Pedersen
dfd85c321c
C++: Compute 'IgnorableOperationToOperationSourceCandidateConfig' after an initial round of the query to reduce the number of sinks.
2026-04-28 22:02:32 +01:00
Jeroen Ketema
c2beef1900
Merge pull request #21765 from jketema/switch
...
C++: Fix join-order problem in `getNextSwitchCase`
2026-04-28 21:57:10 +02:00
Josef Svenningsson
25a8aa97b2
Fix openai prompt injection tests
2026-04-28 18:24:26 +01:00
Josef Svenningsson
691aeb0815
Remove the chat completion create logic.
2026-04-28 18:24:24 +01:00
Josef Svenningsson
a05e191518
Add tests for anthropic prompt injection models
2026-04-28 18:24:22 +01:00
Josef Svenningsson
e069c9c2ee
Fix tests
2026-04-28 18:24:19 +01:00
Josef Svenningsson
bb18bb084c
Improve prompt inject for Python
2026-04-28 18:24:16 +01:00
murderteeth
6f774470b3
Merge branch 'main' into js/vercel-node-framework
2026-04-28 12:30:27 -04:00
murderteeth
18b06f1cf4
Model res.json and res.jsonp as Vercel response sinks
...
Vercel API handlers more often return JSON than HTML, so res.send is
not the only response body sink that matters. Mirror Express's
ResponseJsonCall by also matching res.json(...) and res.jsonp(...) on
the response (direct and chained), and exercise the new behavior in
the library-test fixture.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-28 16:14:53 +00:00
murderteeth
1b87140ce7
Regenerate DatabaseAccesses.expected for new vercel.ts fixture
...
The CWE-089/untyped/vercel.ts fixture added in this PR introduces a
conn.query(...) call that DatabaseAccesses.ql reports, so its
.expected baseline needs the corresponding entry. Output produced by
`codeql test accept`.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-28 15:57:06 +00:00
Jeroen Ketema
29dd56f83f
C++: Make formatting of switch statement examples more uniform
2026-04-28 16:36:54 +02:00
Jeroen Ketema
0bc23c3af1
C++: Match example with text
2026-04-28 16:33:17 +02:00
Jeroen Ketema
f634b328ee
C++: Fix join-order problem in getNextSwitchCase
...
Before on `neovim`:
```
[2026-04-28 14:54:20] Evaluated non-recursive predicate Stmt::SwitchCase.getNextSwitchCase/0#dispred#2d3cb6d3@ac8178o2 in 68ms (size: 20848).
Evaluated relational algebra for predicate Stmt::SwitchCase.getNextSwitchCase/0#dispred#2d3cb6d3@ac8178o2 with tuple counts:
21888 ~0% {2} r1 = SCAN switch_case OUTPUT In.2, In.0
21888 ~0% {4} | JOIN WITH #switch_caseMerge_21#join_rhs ON FIRST 1 OUTPUT Lhs.1, Lhs.0, _, Rhs.1
21888 ~4% {3} | REWRITE WITH Tmp.2 := 1, Out.2 := (In.3 - Tmp.2) KEEPING 3
24091916 ~0% {3} | JOIN WITH switch_case ON FIRST 1 OUTPUT Lhs.2, Rhs.2, Lhs.1
20848 ~2% {2} | JOIN WITH #switch_caseMerge_12#join_rhs ON FIRST 2 OUTPUT Lhs.1, Lhs.2
return r1
```
After:
```
[2026-04-28 15:30:53] Evaluated non-recursive predicate Stmt::SwitchCase.getNextSwitchCase/0#dispred#2d3cb6d3@bf9801oj in 0ms (size: 20848).
Evaluated relational algebra for predicate Stmt::SwitchCase.getNextSwitchCase/0#dispred#2d3cb6d3@bf9801oj with tuple counts:
21888 ~0% {4} r1 = SCAN switch_case OUTPUT In.0, _, In.2, In.1
21888 ~1% {3} | REWRITE WITH Tmp.1 := 1, Out.1 := (In.3 + Tmp.1) KEEPING 3
20848 ~2% {2} | JOIN WITH switch_case ON FIRST 2 OUTPUT Lhs.2, Rhs.2
return r1
```
2026-04-28 15:44:53 +02:00
Jeroen Ketema
fa8c1d6226
C++: Add a getSwitchCase predicate to SwitchStmt
2026-04-28 15:44:12 +02:00
Mathias Vorreiter Pedersen
1ba9601257
Merge pull request #21764 from github/add-strsafe.h-models
...
C++: Add `Strsafe.h` models
2026-04-28 12:10:26 +01:00
Michael Nebel
67aa342fe5
C#: Update test expected output for integration tests.
2026-04-28 12:46:41 +02:00
Owen Mansel-Chan
b07d2fb7d7
Merge pull request #21740 from owen-mc/go/overlay-correctness
...
Go: improve accuracy of overlay annotations
2026-04-28 11:35:14 +01:00
Mathias Vorreiter Pedersen
c59d6cb2a7
C++: Accept query test change.
2026-04-28 11:35:08 +01:00
Mathias Vorreiter Pedersen
f28d5d2f59
C++: Add change note.
2026-04-28 10:57:04 +01:00
Mathias Vorreiter Pedersen
86d8e362a1
C++: Accept test changes.
2026-04-28 10:50:50 +01:00
Mathias Vorreiter Pedersen
2805f788ee
C++: Add strsafe.h model.
2026-04-28 10:50:48 +01:00
Mathias Vorreiter Pedersen
e29efc7d2c
C++: Add tests with missing flow.
2026-04-28 10:50:39 +01:00
Michael Nebel
615ae41e67
C#: Address review comments.
2026-04-28 11:47:13 +02:00
Michael Nebel
ae81f3a00f
C#: Inherited feeds may not get properly computed if a nuget.config file contains a clear. This has been fixed.
2026-04-28 11:47:11 +02:00
Michael Nebel
ed857ad6e0
C#: Make the restore sources project/solution specific.
2026-04-28 11:47:09 +02:00
Michael Nebel
a6d1ccae8e
C#: Update integration test expected output.
2026-04-28 11:47:07 +02:00
Michael Nebel
831b4d6ceb
C#: Add NuGet package missing failures to the compilation info.
2026-04-28 11:47:05 +02:00
Michael Nebel
9bd4f65463
C#: Also apply feed exclusions to inherited feeds.
2026-04-28 11:47:03 +02:00
Michael Nebel
5ff4b43732
C#: Address review comment.
2026-04-28 11:47:01 +02:00
Michael Nebel
ca0c2746fc
C#: Address Copilots review comments.
2026-04-28 11:46:59 +02:00
Michael Nebel
b7e3e6c5ca
C#: Add change-note.
2026-04-28 11:46:56 +02:00
Michael Nebel
597f3fa727
C#: Update integration test expected output.
2026-04-28 11:46:54 +02:00
Michael Nebel
6f888f1544
C#: Change the All NuGet feed reachable telemetry.
2026-04-28 11:46:52 +02:00
Michael Nebel
8372a37f74
C#: Only include feeds that we can connect to.
2026-04-28 11:46:50 +02:00
Michael Nebel
c0a1dd0524
C#: Only use the default package source when using nuget.exe if it is reachable.
2026-04-28 11:46:47 +02:00
Michael Nebel
e6df1d8d8a
C#: Handle special case when no feeds are reachable.
2026-04-28 11:46:45 +02:00
Michael Nebel
1ee6d631c6
C#: Rename ExtraArgs to NugetSources.
2026-04-28 11:46:43 +02:00
Michael Nebel
8369c926b1
C#: Simplify and improve the reachability check and improve the logging.
2026-04-28 11:46:40 +02:00
Michael Nebel
1dfe30deaf
C#: For specific listed nuget feeds in a project, still allow their use unless there is a timeout when trying to reach them.
2026-04-28 11:46:38 +02:00
Michael Nebel
21fb44d0ba
C#: Re-add the compilation information on reachable fallback NuGet feed count.
2026-04-28 11:46:36 +02:00
Michael Nebel
b95a8aa378
C#: Address review comments.
2026-04-28 11:46:34 +02:00
Michael Nebel
c53b2f589b
C#: Remove redundant out parameter from CheckSpecifiedFeeds.
2026-04-28 11:46:32 +02:00
Michael Nebel
4dad62c481
C#: Make sure that the feeds that excluded for the feed check (based on an environment variable setting) are still used as sources.
2026-04-28 11:46:29 +02:00
Michael Nebel
365b419b5e
C#: Add private registries to the set of explicit feeds. Always use specific sources for restoring if private registries are used of if nuget feed reachability check is performed.
2026-04-28 11:46:27 +02:00
Michael Nebel
132dc1fa26
C#: Turn checkNugetFeedResponsiveness into a field and remove some explicit this qualifiers.
2026-04-28 11:46:25 +02:00
Michael B. Gale
cce5f06086
Only use reachable feeds when private registries are configured
2026-04-28 11:46:22 +02:00
Michael B. Gale
17c45fcd75
Check reachability of inherited feeds
2026-04-28 11:46:20 +02:00
Michael B. Gale
9898e21ce7
Divide up CheckSpecifiedFeeds
2026-04-28 11:46:18 +02:00
Michael B. Gale
fdbaba896f
Use explicitFeeds directly
2026-04-28 11:46:16 +02:00
Michael B. Gale
8215737db9
Inline CheckFeeds
2026-04-28 11:46:13 +02:00
Michael B. Gale
439e37a198
Use GetReachableNuGetFeeds in CheckSpecifiedFeeds
2026-04-28 11:46:11 +02:00
Michael B. Gale
d22381a943
Refactor GetReachableNuGetFeeds out of GetReachableFallbackNugetFeeds
2026-04-28 11:46:08 +02:00
Jeroen Ketema
2886127535
Merge pull request #21409 from jketema/jketema/softfloat
...
C++: Update expected test results after extractor changes
2026-04-28 09:47:44 +02:00
Tom Hvitved
81a00134aa
Merge pull request #21753 from hvitved/go/most-recent-side-effect-multi-entry
...
Go: Avoid combinatorial explosion in `mostRecentSideEffect` when there are multiple entry points
2026-04-28 09:12:59 +02:00
Michael B. Gale
cafb73a7a0
Merge pull request #21761 from github/post-release-prep/codeql-cli-2.25.3
...
Post-release preparation for codeql-cli-2.25.3
2026-04-27 17:23:19 +01:00
Tom Hvitved
2e94b09e6f
Address review comments
2026-04-27 14:18:41 +02:00
github-actions[bot]
24edae5e74
Post-release preparation for codeql-cli-2.25.3
2026-04-27 10:27:45 +00:00
Henry Mercer
f1a9637d1f
Merge pull request #21571 from github/henrymercer/yaml-regression-test
...
JS: Add regression test for YAML extraction
2026-04-27 11:09:37 +01:00
Michael B. Gale
310c41ed3d
Merge pull request #21760 from github/release-prep/2.25.3
...
Release preparation for version 2.25.3
2026-04-27 11:05:42 +01:00
Michael B. Gale
f817bd4924
Merge changelog entries for cpp/implicit-function-declaration
2026-04-27 11:03:42 +01:00
Michael B. Gale
03c3b3f4c4
Improve wording of actions note
2026-04-27 11:03:29 +01:00
github-actions[bot]
019ec0caf7
Release preparation for version 2.25.3
2026-04-27 10:01:23 +00:00
Michael B. Gale
6787beb8e7
Merge pull request #21758 from github/revert-21736-release-prep/2.25.3
...
Revert "Release preparation for version 2.25.3"
2026-04-27 09:52:36 +01:00
Michael B. Gale
9f70f718e3
Revert "Release preparation for version 2.25.3"
2026-04-27 09:36:56 +01:00
murderteeth
a6dba9eb25
Merge branch 'main' into js/vercel-node-framework
2026-04-25 14:19:43 -04:00
murderteeth
f15d53f3b9
Update javascript/ql/lib/change-notes/2026-04-12-vercel-node.md
...
Co-authored-by: Asger F <asgerf@github.com >
2026-04-25 14:19:01 -04:00
Owen Mansel-Chan
0daefb778b
Merge pull request #21755 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2026-04-25 07:42:44 +01:00
github-actions[bot]
be8c35ad8c
Add changed framework coverage reports
2026-04-25 00:39:28 +00:00
Owen Mansel-Chan
710c1ba050
Make getACallee overlay[global]
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-24 12:35:11 +01:00
Tom Hvitved
8e26fa1c81
Go: Avoid combinatorial explosion in mostRecentSideEffect when there are multiple entry points
2026-04-24 13:24:58 +02:00
Jack Nørskov Jørgensen
7f12fb7352
Change path where tool generate MaDs
2026-04-24 13:24:31 +02:00
Jack Nørskov Jørgensen
a6e052b2a0
Move generated MaDs for C# into modelgenerator/
2026-04-24 13:24:31 +02:00
Jack Nørskov Jørgensen
073529a951
Move generated MaDs for Rust into modelgenerator/
2026-04-24 13:24:31 +02:00
Jack Nørskov Jørgensen
07cb9803f0
Move generated MaDs for CPP into modelgenerator/
2026-04-24 13:24:31 +02:00
Jack Nørskov Jørgensen
6ec250951a
Move generated MaDs for Java into modelgenerator/
2026-04-24 13:24:31 +02:00
Tom Hvitved
cbc12324bb
Merge pull request #21703 from hvitved/rust/type-inference-sibling
...
Rust: Refine `implSiblings`
2026-04-24 12:36:51 +02:00
Owen Mansel-Chan
9fbe447428
Merge pull request #21749 from github/copilot/add-hibernate-sql-injection-tests
...
Add Hibernate SQL injection sink models and coverage
2026-04-24 09:36:46 +01:00
Michael Nebel
f3f3ee6e81
C#: Add cs/deferenced-value-is-always-null test example for compound operators.
2026-04-24 08:57:14 +02:00
Michael Nebel
01baa6e3ae
C#: Add tests and update expected test output.
2026-04-24 08:57:11 +02:00
Michael Nebel
e2fcaeb46a
C#: Handle compound assignment operators in the dispatch logic (and assignable definition).
2026-04-24 08:57:09 +02:00
Michael Nebel
bdf0c8ff5a
C#: Add compound assignment operator call classes.
2026-04-24 08:57:06 +02:00
Michael Nebel
43ebcb68f0
C#: Add upgrade- and downgrade scripts.
2026-04-24 08:57:00 +02:00
Michael Nebel
44dd2f008b
C#: Update the DB scheme, such that compound assignment operator calls can be considered qualifiable expressions.
2026-04-24 08:56:57 +02:00
Michael Nebel
2729bfe379
C#: Add compound assignment operator QL classes.
2026-04-24 08:50:09 +02:00
Michael Nebel
13e8976494
C#: Add change-note.
2026-04-24 08:50:06 +02:00
Michael Nebel
8ce38a5dfb
C#: Re-use the GetTargetSymbol logic from invocations to find the right operator symbol (operators can also be declared in extensions).
2026-04-24 08:50:03 +02:00
Michael Nebel
77f0de89ec
C#: Add support for compound assignment operators in the TryGetOperatorSymbol method.
2026-04-24 08:50:00 +02:00
Jeroen Ketema
ae89b2ee79
Merge pull request #21747 from jketema/join-order
...
Fix two `QualifiedName` join orders
2026-04-24 08:05:24 +02:00
Mathias Vorreiter Pedersen
82c99a594d
Merge pull request #21750 from github/fix-join-in-assertions-in-ir
...
C++: Fix join in `TranslatedAssertion::getVariable`
2026-04-23 17:25:15 +01:00
copilot-swe-agent[bot]
083909ee3b
Add Java change note for Hibernate sinks
...
Agent-Logs-Url: https://github.com/github/codeql/sessions/41769e74-a435-4aaf-b5f7-92060f6cd84e
Co-authored-by: owen-mc <62447351+owen-mc@users.noreply.github.com >
2026-04-23 14:10:29 +00:00
copilot-swe-agent[bot]
25d232b815
Model additional Hibernate query sinks
...
Agent-Logs-Url: https://github.com/github/codeql/sessions/fc2c7f71-3493-4bf7-9136-34571a1d4b47
Co-authored-by: owen-mc <62447351+owen-mc@users.noreply.github.com >
2026-04-23 13:41:03 +00:00
Tom Hvitved
c64223ae56
Merge pull request #21748 from hvitved/shared/remove-deprecated
...
Shared: Remove deprecated code
2026-04-23 14:44:17 +02:00
Anders Schack-Mulligen
cb21044900
Merge pull request #21744 from aschackmull/csharp/ssa
...
C#: Replace BaseSSA classes with shared code.
2026-04-23 14:39:54 +02:00
Tom Hvitved
eee5b067b3
Merge pull request #21743 from hvitved/cfg/body-parts
...
C#: Move handling of callables into shared control flow library
2026-04-23 14:10:46 +02:00
Mathias Vorreiter Pedersen
14efb4502b
C++: Fix join in getVariable.
2026-04-23 12:10:09 +01:00
Owen Mansel-Chan
bf960b8c76
Merge pull request #21652 from MarkLee131/fix/path-injection-torealpath
...
Java: recognize Path.toRealPath() as path normalization sanitizer
2026-04-23 11:18:23 +01:00
copilot-swe-agent[bot]
081ad03b4b
Add Hibernate SQL injection sink tests
...
Agent-Logs-Url: https://github.com/github/codeql/sessions/2e7aecca-63ea-489f-8b87-4cc557655919
Co-authored-by: owen-mc <62447351+owen-mc@users.noreply.github.com >
2026-04-23 10:04:52 +00:00
copilot-swe-agent[bot]
7b897add22
Initial plan
2026-04-23 09:50:34 +00:00
Owen Mansel-Chan
9f19791d8c
Merge branch 'main' into fix/path-injection-torealpath
2026-04-23 10:40:47 +01:00
Tom Hvitved
61f1ef877f
Swift: Remove deprecated references to deprecated shared code
2026-04-23 11:29:10 +02:00
Tom Hvitved
18da5f61cd
Ruby: Remove deprecated references to deprecated shared code
2026-04-23 11:29:04 +02:00
Tom Hvitved
14dd72b3b1
C#: Remove deprecated references to deprecated shared code
2026-04-23 11:28:33 +02:00
Tom Hvitved
90ae086822
Shared: Remove deprecated code
2026-04-23 11:24:14 +02:00
Tom Hvitved
1a84b2b555
CFG: Use dense ranking
2026-04-23 11:22:38 +02:00
Jeroen Ketema
076b020dc4
Fix two QualifiedName join orders
...
Before on `StanfordLegion__legion` with `cpp/throwing-pointer`:
```
Pipeline standard for QualifiedName::Namespace.getQualifiedName/0#cbc0648a@7ff329j5 was evaluated in 2 iterations totaling 0ms (delta sizes total: 70).
162061 ~0% {2} r1 = JOIN `QualifiedName::Namespace.getQualifiedName/0#cbc0648a#prev_delta` WITH namespacembrs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
70 ~2% {4} | JOIN WITH namespaces ON FIRST 1 OUTPUT Lhs.0, _, Lhs.1, Rhs.1
70 ~0% {2} | REWRITE WITH Tmp.1 := "::", Out.1 := (In.2 ++ Tmp.1 ++ In.3) KEEPING 2
70 ~0% {2} | AND NOT `QualifiedName::Namespace.getQualifiedName/0#cbc0648a#prev`(FIRST 2)
return r1
Pipeline standard for QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1@cfd47189 was evaluated in 2 iterations totaling 3ms (delta sizes total: 85).
12 ~0% {2} r1 = JOIN `QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1#prev_delta` WITH _#namespace_inlineMerge_#namespacembrsMerge#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
162417 ~0% {2} r2 = JOIN `QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1#prev_delta` WITH namespacembrs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
73 ~1% {4} | JOIN WITH namespaces ON FIRST 1 OUTPUT Lhs.0, _, Lhs.1, Rhs.1
73 ~0% {2} | REWRITE WITH Tmp.1 := "::", Out.1 := (In.2 ++ Tmp.1 ++ In.3) KEEPING 2
85 ~0% {2} r3 = r1 UNION r2
85 ~0% {2} | AND NOT `QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1#prev`(FIRST 2)
return r3
```
After:
```
Pipeline standard for QualifiedName::Namespace.getQualifiedName/0#cbc0648a@91677d3f was evaluated in 2 iterations totaling 0ms (delta sizes total: 70).
70 ~0% {4} r1 = JOIN `QualifiedName::Namespace.getQualifiedName/0#cbc0648a#prev_delta` WITH _#namespacembrsMerge_1#antijoin_rhs_#namespacembrsMerge_10#join_rhs_#namespacesMerge#join_rhs ON FIRST 1 OUTPUT Rhs.1, _, Lhs.1, Rhs.2
70 ~0% {2} | REWRITE WITH Tmp.1 := "::", Out.1 := (In.2 ++ Tmp.1 ++ In.3) KEEPING 2
70 ~0% {2} | AND NOT `QualifiedName::Namespace.getQualifiedName/0#cbc0648a#prev`(FIRST 2)
return r1
Pipeline standard for QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1@3bbc99mb was evaluated in 2 iterations totaling 0ms (delta sizes total: 85).
12 ~0% {2} r1 = JOIN `QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1#prev_delta` WITH _#namespace_inlineMerge_#namespacembrsMerge_1#antijoin_rhs__#namespacembrsMerge_#namespacembrsMerge___#join_rhs ON FIRST 1 OUTPUT Rhs.1, Lhs.1
73 ~0% {4} r2 = JOIN `QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1#prev_delta` WITH _#namespacembrsMerge_1#antijoin_rhs_#namespacesMerge__#namespacembrsMerge_#namespacembrsMerge_10#joi__#join_rhs ON FIRST 1 OUTPUT Rhs.1, _, Lhs.1, Rhs.2
73 ~1% {2} | REWRITE WITH Tmp.1 := "::", Out.1 := (In.2 ++ Tmp.1 ++ In.3) KEEPING 2
85 ~0% {2} r3 = r1 UNION r2
85 ~0% {2} | AND NOT `QualifiedName::Namespace.getAQualifierForMembers/0#132b16e1#prev`(FIRST 2)
return r3
```
2026-04-23 10:37:12 +02:00
Jeroen Ketema
f50bbdb9af
C++: Update expected test results after extractor changes
2026-04-23 10:13:57 +02:00
Tom Hvitved
71fa2166ee
Apply suggestions from code review
...
Co-authored-by: Anders Schack-Mulligen <aschackmull@users.noreply.github.com >
2026-04-22 17:06:31 +02:00
Owen Mansel-Chan
d6abd4c72d
Merge pull request #21745 from owen-mc/go/refactor-encryption-operation
...
Go: refactor `EncryptionOperation`
2026-04-22 15:46:49 +01:00
Owen Mansel-Chan
57eaed4dcc
Refactor: remove fields from EncryptionOperation
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-22 13:37:35 +01:00
Tom Hvitved
6ebf4ee394
Java: Adapt to changes in CFG library
2026-04-22 14:11:58 +02:00
Tom Hvitved
39cd86a48e
C#: Move handling of callables into shared control flow library
2026-04-22 14:11:57 +02:00
Anders Schack-Mulligen
4b8e4b40af
C#: Fix test.
2026-04-22 14:00:13 +02:00
Tom Hvitved
e60275c4de
Rust: Refine implSiblings
...
Consider two implementations of the same trait to be siblings when the
type being implemented by one is an instantiation of the type being
implemented by the other.
2026-04-22 13:32:56 +02:00
Anders Schack-Mulligen
b0c31badc2
C#: Bugfix for multi-body baseSsa entry defs.
2026-04-22 11:53:44 +02:00
Anders Schack-Mulligen
ae7904f0c8
C#: Fix BaseSSA caching.
2026-04-22 11:53:44 +02:00
Anders Schack-Mulligen
bbd60031b1
C#: Replace references to old BaseSSA classes.
2026-04-22 11:53:40 +02:00
Anders Schack-Mulligen
145d3242a6
C#: Instantiate shared SSA wrappers for BaseSSA.
2026-04-22 11:51:44 +02:00
Michael Nebel
bca51a986c
Merge pull request #21612 from michaelnebel/csharp/legacyasptaintedmember
...
C#: Taint members of types in ASP.NET user context.
2026-04-22 09:28:27 +02:00
Owen Mansel-Chan
62f15d0166
Merge pull request #21742 from owen-mc/docs/fixes
...
Docs: several minor fixes
2026-04-21 17:40:11 +01:00
Owen Mansel-Chan
b47afafe8e
Fix duplicated quotation mark
2026-04-21 14:53:11 +01:00
Owen Mansel-Chan
3a13f77058
Fix typo "passd" -> "passed"
2026-04-21 14:52:48 +01:00
Owen Mansel-Chan
424b7decb1
Fix wrong parameter name
2026-04-21 14:52:22 +01:00
Owen Mansel-Chan
91f9f23138
Fix wrong function name
2026-04-21 14:52:10 +01:00
Anders Schack-Mulligen
f912731cd4
Merge pull request #21565 from aschackmull/csharp/cfg2
...
C#: Replace CFG with the shared implementation
2026-04-21 15:50:38 +02:00
Kaixuan Li
af794ed3c0
Merge branch 'main' into fix/trust-boundary-regexp-barrier
2026-04-21 23:01:06 +10:00
Owen Mansel-Chan
6efb21314a
Merge pull request #21523 from owen-mc/docs/mad/barriers
...
Document models-as-data barriers and barrier guards and add change notes
2026-04-21 13:49:19 +01:00
Owen Mansel-Chan
c91b5b3c2e
Merge pull request #21650 from MarkLee131/fix/sensitive-log-fp-regex
...
Java: reduce false positives in sensitive-log
2026-04-21 13:48:32 +01:00
Michael Nebel
8b93ce2747
C#: Add ASP.NET test case for a collection type.
2026-04-21 14:27:06 +02:00
Michael Nebel
2d6197fd7d
C#: Generalize ASP.NET taint members to collection types.
2026-04-21 14:27:03 +02:00
Michael Nebel
f826262f1d
C#: Re-factor CollectionType into an abstract class and introduce getElementType predicate.
2026-04-21 14:26:59 +02:00
Michael Nebel
1055084305
C#: Address review comments.
2026-04-21 13:40:07 +02:00
Michael Nebel
dc0e7d4988
C#: Add change-note.
2026-04-21 13:40:04 +02:00
Michael Nebel
8060d2ff24
C#: Streamline the implementation for ASP.NET Core tainted members.
2026-04-21 13:40:02 +02:00
Michael Nebel
921d93e427
C#: Add an ASP.NET flow source example when using the WebMethod attribute.
2026-04-21 13:39:59 +02:00
Michael Nebel
dba1b7539f
C#: Taint members of types used in ASP.NET remote flow source context.
2026-04-21 13:39:56 +02:00
Michael Nebel
77da545ab4
C#: Reclassify some sources as AspNetRemoteFlowSource.
2026-04-21 13:39:54 +02:00
Michael Nebel
0062eb1209
C#: Update remote flow sources test to also report tainted members.
2026-04-21 13:39:51 +02:00
Anders Schack-Mulligen
67c0515d3c
Cfg: Undo consistency check change.
2026-04-21 13:10:03 +02:00
Michael B. Gale
58e9bad0a0
Merge pull request #21737 from github/post-release-prep/codeql-cli-2.25.3
...
Post-release preparation for codeql-cli-2.25.3
2026-04-21 11:48:30 +02:00
Anders Schack-Mulligen
a2a4e8288e
C#: Deprecate ControlFlowElement.getAControlFlowNode and remove some splitting quantification.
2026-04-21 11:14:05 +02:00
Anders Schack-Mulligen
9de02b7ae6
Cfg: Use consistent casing in additional node tags.
2026-04-21 10:56:10 +02:00
Jeroen Ketema
7f2a13bc7a
Merge pull request #21728 from jketema/jketema/swift-6.3.1
...
Swift: Update to Swift 6.3.1
2026-04-20 19:33:08 +02:00
Jeroen Ketema
abd08440a1
Swift: Update to Swift 6.3.1
2026-04-20 16:30:29 +02:00
Jeroen Ketema
d5ded932d3
Merge pull request #21723 from jketema/swift-fixed-array
...
Swift: Expose the generic arguments of `BuiltinFixedArrayType`s
2026-04-20 16:17:41 +02:00
Taus
b108e173a5
Merge pull request #21695 from github/tausbn/python-add-support-for-pep-798
...
Python: Add support for PEP-798
2026-04-20 15:01:01 +02:00
Anders Schack-Mulligen
b6f50f5992
C#: Simplify.
2026-04-20 14:43:28 +02:00
Anders Schack-Mulligen
3ceb96a45f
C#: Eliminate Completion.qll.
2026-04-20 14:43:28 +02:00
Anders Schack-Mulligen
e928c224ae
C#/Cfg: Some simple review fixes.
2026-04-20 14:43:27 +02:00
github-actions[bot]
a0bab539bb
Post-release preparation for codeql-cli-2.25.3
2026-04-20 12:40:34 +00:00
Owen Mansel-Chan
9f310c20f3
Merge pull request #21734 from owen-mc/java/fix-partial-path-traversal
...
Java: fix bug in partial path traversal
2026-04-20 11:52:55 +01:00
Michael B. Gale
a73f7cb79d
Merge pull request #21736 from github/release-prep/2.25.3
...
Release preparation for version 2.25.3
2026-04-20 12:29:07 +02:00
Michael B. Gale
abf374433b
Merge changelog entries for cpp/implicit-function-declaration
2026-04-20 12:24:05 +02:00
Michael B. Gale
34b5dcfd5f
Improve wording of actions note
2026-04-20 11:40:32 +02:00
github-actions[bot]
c861d99802
Release preparation for version 2.25.3
2026-04-20 09:27:23 +00:00
MarkLee131
92d205d1a8
Use set literal for getCommonSensitiveInfoFPRegex
...
Replace the five-way result = ... or result = ... disjunction with a
single equality on a set literal. Addresses the CodeQL style alert
"Use a set literal in place of or" reported by the self-scan on this
PR. Pure refactor, no semantic change.
2026-04-19 23:29:07 -04:00
Owen Mansel-Chan
c6f641eac4
Add change note
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-19 07:18:48 +01:00
Owen Mansel-Chan
6d4a3974ce
Fix bug so += File.separator is recognized
2026-04-19 07:18:42 +01:00
Owen Mansel-Chan
6099c5d034
Add SPURIOUS test for += File.separator
2026-04-19 07:18:00 +01:00
Owen Mansel-Chan
63d20a54d4
Use inline expectations with second test
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-19 07:17:05 +01:00
Owen Mansel-Chan
dca7046d8c
Make inline expectation comments specify query
2026-04-18 10:35:15 +01:00
Owen Mansel-Chan
2764580cdf
Merge pull request #21718 from chmodxxx/java/woodstox-xxe
...
Java: Add XXE sink model for Woodstox WstxInputFactory
2026-04-17 17:25:15 +01:00
Salah Baddou
fb2d53e72a
Address review: inline Woodstox into XmlParsers, move changelog to lib
2026-04-17 18:46:51 +04:00
Salah Baddou
f5131f9bc6
Java: Add XXE sink model for Woodstox WstxInputFactory
...
`com.ctc.wstx.stax.WstxInputFactory` overrides `createXMLStreamReader`,
`createXMLEventReader` and `setProperty` from `XMLInputFactory`, so the
existing `XmlInputFactory` model in `XmlParsers.qll` does not match calls
where the static receiver type is `WstxInputFactory` (or its supertype
`org.codehaus.stax2.XMLInputFactory2`). Woodstox is vulnerable to XXE in
its default configuration, so these missed sinks were false negatives in
`java/xxe`.
This adds a scoped framework model under
`semmle/code/java/frameworks/woodstox/WoodstoxXml.qll` (registered in the
`Frameworks` module of `XmlParsers.qll`) that recognises these calls as
XXE sinks and treats the factory as safe when both
`javax.xml.stream.supportDTD` and
`javax.xml.stream.isSupportingExternalEntities` are disabled — mirroring
the existing `XMLInputFactory` safe-configuration logic.
2026-04-17 18:46:51 +04:00
Taus
ac23e16786
Python: Move Python 3.15 data-flow tests to a separate file
...
We won't be able to run these tests until Python 3.15 is actually out
(and our CI is using it), so it seemed easiest to just put them in their
own test directory.
2026-04-17 13:16:46 +00:00
Owen Mansel-Chan
29b07d5d07
Merge pull request #21721 from owen-mc/go/remove-global-function-jump-step-from-local-flow
...
Go: Remove global function step from local flow
2026-04-17 14:09:16 +01:00
Tom Hvitved
14bdb62cf8
Merge pull request #21726 from hvitved/csharp/useless-to-string-fps
...
C#: Fix FPs in `RedundantToStringCall.ql`
2026-04-17 14:59:22 +02:00
Jeroen Ketema
3073c1c94c
Merge pull request #21725 from github/jeongsoolee09/add-aligned-alloc-model
...
Add models of various `aligned_alloc`s
2026-04-17 14:31:25 +02:00
Owen Mansel-Chan
bc28e1726c
Refactor to get rid of duplication
2026-04-17 13:24:16 +01:00
Taus
dc36609743
Python: Add data-flow tests
...
Alas, all these demonstrate is that we already don't fully support the
desugared `yield from` form.
2026-04-17 12:15:04 +00:00
Tom Hvitved
7bfdfbefa9
Add change note
2026-04-17 13:57:08 +02:00
Tom Hvitved
0235df8758
C#: Improve alert message for RedundantToStringCall.ql
2026-04-17 13:55:00 +02:00
Jeroen Ketema
e3b88cbad3
Swift: Fix change note
2026-04-17 13:29:24 +02:00
Jeroen Ketema
dd2440086f
Swift: Add change note
2026-04-17 13:24:17 +02:00
Jeongsoo Lee
abec00cd34
Update cpp/ql/src/change-notes/2026-04-16-add-model-for-aligned-alloc.md
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2026-04-17 07:08:38 -04:00
Owen Mansel-Chan
9f4fd7fab0
Remove a data flow consistency exclusion
...
This is no longer needed.
2026-04-17 11:27:36 +01:00
Paolo Tranquilli
5342cc79fb
Merge pull request #21574 from github/redsun82/actions/remove-harden-runner-false-positive
...
Remove false positive injection sink models for `docker/build-push-action` and `step-security/harden-runner`
2026-04-17 09:43:45 +02:00
Tom Hvitved
426962e348
C#: Fix FPs in RedundantToStringCall.ql
2026-04-17 09:37:19 +02:00
Tom Hvitved
33e9c02079
C#: Add more tests for RedundantToStringCall.ql
2026-04-17 09:33:13 +02:00
jeongsoolee09
553ed103c3
Add a change note
2026-04-16 21:31:55 -04:00
jeongsoolee09
d2d594a8ff
Add models of ::aligned_alloc, std::aligned_alloc, and bsl::aligned_alloc
2026-04-16 21:21:09 -04:00
Taus
6c675fcede
Python: Consolidate duplicated code
2026-04-16 21:14:42 +00:00
Jeroen Ketema
efddfab564
Swift: Expose the generic arguments of BuiltinFixedArrays
2026-04-16 17:07:20 +02:00
Owen Mansel-Chan
73cc54c10d
Use monospace instead of bold for quoted code
2026-04-16 12:35:38 +01:00
Owen Mansel-Chan
69c150d5f6
Use monospace instead of bold for predicate signatures
2026-04-16 12:34:47 +01:00
Owen Mansel-Chan
82d9d46fde
Remove duplication and standardize wording
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-16 12:26:44 +01:00
Owen Mansel-Chan
5a7b1b91e0
Fix mistakes in explanation of override column
...
To avoid copy-paste mistakes and make them more consistent we just use
the word "model".
2026-04-16 11:41:30 +01:00
Owen Mansel-Chan
2c16cb46ad
Quote library name in backticks
...
Co-authored-by: Sarita Iyer <66540150+saritai@users.noreply.github.com >
2026-04-16 11:30:10 +01:00
Owen Mansel-Chan
f6135b70ea
Remove global function step from local flow
2026-04-16 11:15:01 +01:00
Tom Hvitved
ee34e3353d
Merge pull request #21698 from hvitved/rust/type-inference-index-expr
...
Rust: Replace special handling of index expressions in type inference
2026-04-16 09:03:06 +02:00
Jon Janego
f95ee129df
Merge pull request #21713 from github/codeql-spark-run-24459914636
...
Update changelog documentation site for codeql-cli-2.25.2
2026-04-15 09:55:53 -05:00
github-actions[bot]
d24fb29ff4
update codeql documentation
2026-04-15 14:23:47 +00:00
Jeroen Ketema
97d8993fc5
Merge pull request #21667 from jketema/jketema/swift-6.3
...
Swift: Update to Swift 6.3
2026-04-15 14:07:23 +02:00
Jeroen Ketema
7d1c62daa6
Swift: Address review comment
2026-04-15 13:37:15 +02:00
Tom Hvitved
597d81038a
Merge pull request #21708 from github/copilot/fix-missed-opportunity-to-use-select
...
Fix false positive in `MissedSelectOpportunity` when foreach body uses `await`
2026-04-15 11:32:02 +02:00
Tom Hvitved
069431941e
Merge pull request #21596 from hvitved/rust/data-flow-closure-type
...
Rust: Track closure types in data flow
2026-04-15 10:32:05 +02:00
Tom Hvitved
609621f638
Merge pull request #21679 from hvitved/rust/type-inference-forall-checks
...
Rust: Replace recursion through `forall` with ranked recursion
2026-04-15 09:43:37 +02:00
Jeroen Ketema
ae2226345e
Merge pull request #21709 from jketema/depr
...
C++: Remove deprecated code deprecated more than a year ago
2026-04-14 17:04:48 +02:00
Owen Mansel-Chan
f79ffe792e
Fix docs: "branch" -> "acceptingValue"
2026-04-14 15:41:02 +01:00
Owen Mansel-Chan
87f2e21ae9
Fix docs: "acceptingvalue" -> "acceptingValue"
2026-04-14 15:37:17 +01:00
Owen Mansel-Chan
6321482a46
Remove mention of extension ID
2026-04-14 15:29:52 +01:00
Owen Mansel-Chan
8081d4602b
Use hyphens in column names: "access-path", "accepting-value"
2026-04-14 15:27:42 +01:00
Owen Mansel-Chan
2ecf086333
Include parameters when quoting extensible predicate name
2026-04-14 15:27:41 +01:00
Owen Mansel-Chan
76d165e71e
"modelling" -> "modeling" in docs
2026-04-14 15:27:39 +01:00
Owen Mansel-Chan
8f17b73796
Fix link formatting in change notes
2026-04-14 15:27:37 +01:00
Owen Mansel-Chan
6d4e8bfcb2
Correct extensible predicate signatures in docs
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-14 15:27:35 +01:00
Owen Mansel-Chan
a2a0c087e1
Remove incorrect parameter of extensible predicate
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-14 15:27:33 +01:00
Owen Mansel-Chan
c86ba38a4e
Add change notes
2026-04-14 15:27:31 +01:00
Owen Mansel-Chan
415330d5eb
Update docs for barriers and barrier guards
2026-04-14 15:27:29 +01:00
Owen Mansel-Chan
05e3073165
List extensible predicates for barriers and barrier guards
2026-04-14 15:27:27 +01:00
Owen Mansel-Chan
ef9136c053
(Formatting) Remove erroneous bullet point in ruby docs
2026-04-14 15:27:25 +01:00
Owen Mansel-Chan
f02ccd36cc
(Trivial) Remove trailing spaces in some docs
2026-04-14 15:27:21 +01:00
Owen Mansel-Chan
6e0bee7471
Merge pull request #21691 from github/dependabot/go_modules/go/extractor/extractor-dependencies-2d1b0e128d
...
Bump the extractor-dependencies group across 1 directory with 2 updates
2026-04-14 15:26:00 +01:00
Henry Mercer
cb1fd76a4c
Merge pull request #21658 from github/post-release-prep/codeql-cli-2.25.2
...
Post-release preparation for codeql-cli-2.25.2
2026-04-14 15:24:13 +01:00
Tom Hvitved
467933bbb1
Rust: Also add specialized IndexMut implementations
2026-04-14 15:45:14 +02:00
Henry Mercer
43c9b95e6f
Merge branch 'main' into post-release-prep/codeql-cli-2.25.2
2026-04-14 13:56:52 +01:00
Tom Hvitved
878cfd720c
C#: Use inline test expectations
2026-04-14 14:41:28 +02:00
Geoffrey White
666c8bf87a
Merge pull request #21635 from geoffw0/suspicioussizeof2
...
C++: Upgrade cpp/suspicious-add-sizeof to high precision
2026-04-14 13:04:24 +01:00
Jeroen Ketema
07b02942db
Merge remote-tracking branch 'upstream/main' into jketema/swift-6.3
2026-04-14 13:54:16 +02:00
Jeroen Ketema
9ef088d423
C++: Add change note
2026-04-14 13:46:43 +02:00
Taus
8b1ecf05c9
Python: Update test output
...
This change reflects the `(value, key)` to `(key, value)` fix in an
earlier commit.
2026-04-14 13:27:31 +02:00
Taus
15790aa00c
Python: Add change note
2026-04-14 13:27:31 +02:00
Taus
de900fc3b5
Python: Add QL test for comprehensions with unpacking
2026-04-14 13:27:31 +02:00
Taus
fc5b3562c3
Python: Add parser test for comprehensions with unpacking
2026-04-14 13:27:31 +02:00
Taus
90b64616f7
Python: Also fix (value, key) bug in old parser
2026-04-14 13:27:31 +02:00
Taus
91d4cf6624
Python: Update python.tsg
...
First, we extend the various location overriding hacks to also accept
list and dict splats in various places. Having done this, we then have
to tackle how to actually desugar these new comprehension forms (as this
is what we currently do for the old forms).
As a reminder, a list comprehension like `[x for x in y]` currently gets
desugared into a small local function, something like
```python
def listcomp(a):
for x in a:
yield x
listcomp(y)
```
For `[*x for x in y]`, the behaviour we want is that we unpack `x`
before yielding its elements in turn. This is essentially what we would
get if we were to use `yield from x` instead of `yield x` in the above
desugaring, so that's what we do. This also works for set
comprehensions.
For dict comprehensions, it's slightly more complicated. Here, the
generator function instead yields a stream of `(key, value)` tuples.
(And apparently the old parser got this wrong and emitted `(value, key)`
pairs instead, which we faithfully recreated in the new parser as well.
We fix that bug in both parsers while we're at it). So, a bare `yield
from` is not enough, we also need a `.items()` call to get the
double-starred expression to emit its items as a stream of tuples (that
we then `yield from`.
To make this (hopefully) less verbose in the implementation, we defer
the decision of whether to use `yield` or `yield from` by introducing a
`yield_kind` scoped variable that determines the type of the actual AST
node. And of course for dict comprehensions with unpacking we need to
synthesise the extra machinery mentioned above.
On the plus side, this means we don't have to mess with control-flow, as
the existing machinery should be able to handle the desugared syntax
just fine.
2026-04-14 13:27:31 +02:00
Taus
97086c3cc9
Python: Regenerate parser files
2026-04-14 13:27:31 +02:00
Taus
4b5ff0b89e
Python: Support unpacking in comprehensions in tree-sitter-python
...
This is the easy part -- we just allow `dictionary_splat` or
`list_splat` to appear in the same place as the expression.
2026-04-14 13:27:31 +02:00
Taus
c748fdf8ee
Merge pull request #21694 from github/tausbn/python-add-support-for-pep-810
...
Python: Add support for PEP 810
2026-04-14 13:27:08 +02:00
Tom Hvitved
b749ad645a
Merge pull request #21706 from hvitved/rust/type-inference-perf-fixes
...
Rust: Improve performance of two type inference predicates
2026-04-14 13:06:26 +02:00
Jeroen Ketema
12868e5140
C++: Remove deprecated code added more than a year ago
2026-04-14 13:03:10 +02:00
Geoffrey White
fe7e8480b2
Merge branch 'main' into suspicioussizeof2
2026-04-14 10:52:00 +01:00
Anders Schack-Mulligen
e0952948ba
Merge pull request #21701 from aschackmull/csharp/intvalue
...
C#: Introduce Expr.getIntValue.
2026-04-14 11:23:29 +02:00
Owen Mansel-Chan
7458674470
Merge pull request #21584 from owen-mc/shared/update-mad-comments
...
Shared: update code comments explaining models-as-data format to include barriers and barrier guards
2026-04-14 09:30:28 +01:00
copilot-swe-agent[bot]
3483050526
Fix false positive in MissedSelectOpportunity for async/await loops
...
Agent-Logs-Url: https://github.com/github/codeql/sessions/3e8f4320-2bf4-45f5-b9ea-dad41d522d84
Co-authored-by: hvitved <3667920+hvitved@users.noreply.github.com >
2026-04-14 08:18:02 +00:00
copilot-swe-agent[bot]
0e66555e37
Initial plan
2026-04-14 08:10:53 +00:00
Jeroen Ketema
0724c22f28
Merge pull request #21702 from jketema/conv-string
...
C++: Use new `getConvSpecString` instead of `getConvSpecOffset` and `substring`
2026-04-14 10:00:51 +02:00
Tom Hvitved
d69be77035
Rust: Avoid expensive regex calls
...
Before
```
Pipeline standard for TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422@d5eb7r0w was evaluated in 782 iterations totaling 13208ms (delta sizes total: 20187834).
1464 ~2% {7} r1 = JOIN `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsInstantiationOf/6#aaa87ac9#prev_delta` WITH `TypeInference::AssocFunctionResolution::OverloadedCallArgsAreInstantiationsOf::argsAreNotInstantiationsOf/2#6a6070f7#prev` ON FIRST 2 OUTPUT Lhs.5, _, Lhs.0, Lhs.1, Lhs.2, Lhs.3, Lhs.4
1464 ~0% {7} | REWRITE WITH Out.1 := ""
1464 ~0% {6} | JOIN WITH `FunctionType::AssocFunctionType.getTypeAt/1#dispred#d4d46f61` ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Rhs.2
173691 ~1% {7} r2 = JOIN `TypeInference::AssocFunctionResolution::OverloadedCallArgsAreInstantiationsOf::argsAreNotInstantiationsOf/2#6a6070f7#prev_delta` WITH `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsInstantiationOf/6#aaa87ac9#prev` ON FIRST 2 OUTPUT Rhs.5, _, Lhs.0, Lhs.1, Rhs.2, Rhs.3, Rhs.4
173691 ~1% {7} | REWRITE WITH Out.1 := ""
173691 ~1% {6} | JOIN WITH `FunctionType::AssocFunctionType.getTypeAt/1#dispred#d4d46f61` ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Rhs.2
20022454 ~0% {7} r3 = SCAN `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsNotInstantiationOf/6#1b8e512e#prev_delta` OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, _
20022454 ~0% {7} | REWRITE WITH Out.6 := "^([0-9]+)\\..*$"
20022175 ~2% {9} | JOIN WITH PRIMITIVE regexpCapture#bbff ON Lhs.5,Lhs.6
20022175 ~2% {10} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5, In.6, In.7, In.8, _
{9} | REWRITE WITH Tmp.9 := 1, TEST InOut.7 = Tmp.9 KEEPING 9
20022175 ~1% {7} | SCAN OUTPUT In.8, In.0, In.1, In.2, In.3, In.4, In.5
20022175 ~1% {8} | JOIN WITH `UnboundList::Make<Locations::Location,TypeInference::M1::UnboundListInput>::encode/1#47b2ec3f_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Lhs.0
20022175 ~0% {10} | JOIN WITH `Type::Type.getATypeParameter/0#dispred#ddf0e8ff_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, Lhs.4, Lhs.5, Rhs.1, _, Lhs.6, Lhs.7, _
{7} | REWRITE WITH Tmp.6 := length(In.8), Tmp.9 := 1, Tmp.6 := (Tmp.6 + Tmp.9), Out.6 := suffix(In.7,Tmp.6) KEEPING 7
20022175 ~0% {6} | SCAN OUTPUT In.0, In.1, In.2, In.3, In.4, In.5
20197330 ~0% {6} r4 = r1 UNION r2 UNION r3
20187834 ~0% {6} | AND NOT `TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422#prev`(FIRST 6)
return r4
```
After
```
Pipeline standard for TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422@a58ce91w was evaluated in 537 iterations totaling 382ms (delta sizes total: 20033950).
19862347 ~0% {7} r1 = SCAN `TypeInference::AssocFunctionResolution::SelfArgIsInstantiationOf::argIsNotInstantiationOf/6#1b8e512e#prev_delta` OUTPUT In.5, _, In.0, In.1, In.2, In.3, In.4
19862347 ~0% {7} | REWRITE WITH Out.1 := ""
174684 ~1% {7} r2 = SCAN `TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleArgsTarget/5#dispred#7d49b9f9#prev_delta` OUTPUT In.5, _, In.0, In.1, In.2, In.3, In.4
174684 ~1% {7} | REWRITE WITH Out.1 := ""
20037031 ~0% {7} r3 = r1 UNION r2
20037031 ~0% {6} | JOIN WITH `FunctionType::AssocFunctionType.getTypeAt/1#dispred#d4d46f61` ON FIRST 2 OUTPUT Lhs.2, Lhs.3, Lhs.4, Lhs.5, Lhs.6, Rhs.2
20033950 ~0% {6} | AND NOT `TypeInference::AssocFunctionResolution::AssocFunctionCall.hasIncompatibleTarget/5#85c07422#prev`(FIRST 6)
return r3
```
2026-04-14 09:51:45 +02:00
Tom Hvitved
0db62b2e68
Type inference: Fix bad join
...
Before
```
Pipeline standard for TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112@d5eb7x9q was evaluated in 471 iterations totaling 24306ms (delta sizes total: 42097188).
5676156578 ~1% {7} r1 = JOIN `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev_delta` WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersEqual/4#a276e5d4#prev` ON FIRST 3 OUTPUT Lhs.0, Lhs.1, Lhs.2, Rhs.3, _, Lhs.3, _
{5} | REWRITE WITH Tmp.4 := 1, Out.4 := (Tmp.4 + In.5), Tmp.6 := 0, TEST Out.4 != Tmp.6 KEEPING 5
5676156578 ~1% {5} | SCAN OUTPUT In.1, In.4, In.3, In.0, In.2
41691564 ~1% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::ArgumentTypeAndBlanketOffset,TypeMention::TypeMention,TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::SatisfiesBlanketConstraint::Inp>::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343` ON FIRST 3 OUTPUT Lhs.3, Lhs.0, Lhs.4, Lhs.1
42097188 ~2% {4} r2 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersEqual/4#a276e5d4#prev_delta` OUTPUT In.1, In.3, In.0, In.2
42097188 ~1% {5} r3 = JOIN r2 WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::ArgumentTypeAndBlanketOffset,TypeMention::TypeMention,TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::SatisfiesBlanketConstraint::Inp>::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343_021#join_rhs` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Lhs.3, Rhs.2, _
{4} | REWRITE WITH Tmp.4 := 0, TEST InOut.3 != Tmp.4 KEEPING 4
41691564 ~1% {5} | SCAN OUTPUT In.0, In.1, In.2, _, In.3
41691564 ~1% {5} | REWRITE WITH Tmp.3 := 1, Out.3 := (InOut.4 - Tmp.3)
0 ~0% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.4
42097188 ~0% {6} r4 = JOIN r2 WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::ArgumentTypeAndBlanketOffset,TypeMention::TypeMention,TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::SatisfiesBlanketConstraint::Inp>::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343_021#join_rhs` ON FIRST 2 OUTPUT Lhs.2, Lhs.0, Lhs.3, Lhs.1, Rhs.2, _
{5} | REWRITE WITH Tmp.5 := 0, TEST InOut.4 = Tmp.5 KEEPING 5
405624 ~1% {5} | SCAN OUTPUT In.1, _, In.3, In.0, In.2
405624 ~1% {5} | REWRITE WITH Out.1 := 0
405624 ~0% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::ArgumentTypeAndBlanketOffset,TypeMention::TypeMention,TypeInference::AssocFunctionResolution::ArgSatisfiesBlanketLikeConstraint::SatisfiesBlanketConstraint::Inp>::TermIsInstantiationOfCondition::getNthTypeParameter/2#40c66343` ON FIRST 3 OUTPUT Lhs.3, Lhs.0, Lhs.4, _
405624 ~1% {4} | REWRITE WITH Out.3 := 0
42097188 ~1% {4} r5 = r1 UNION r3 UNION r4
42097188 ~1% {4} | AND NOT `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev`(FIRST 4)
return r5
```
After
```
Pipeline standard for TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112@96df1x2u was evaluated in 471 iterations totaling 4058ms (delta sizes total: 42097188).
42097188 ~0% {4} r1 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersEqual/5#ddfcf430#prev_delta` OUTPUT In.3, In.0, In.1, In.2
405624 ~0% {4} | JOIN WITH const_0 ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Lhs.3, _
405624 ~1% {4} | REWRITE WITH Out.3 := 0
42097188 ~1% {6} r2 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev_delta` OUTPUT In.0, In.1, In.2, _, In.3, _
42097188 ~1% {4} | REWRITE WITH Tmp.3 := 1, Out.3 := (Tmp.3 + In.4), Tmp.5 := 0, TEST Out.3 != Tmp.5 KEEPING 4
41691564 ~1% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersEqual/5#ddfcf430#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.3
42097188 ~1% {6} r3 = SCAN `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersEqual/5#ddfcf430#prev_delta` OUTPUT In.0, In.1, In.2, In.3, In.4, _
{5} | REWRITE WITH Tmp.5 := 0, TEST InOut.3 != Tmp.5 KEEPING 5
41691564 ~1% {5} | SCAN OUTPUT In.0, In.1, In.2, _, In.3
41691564 ~1% {5} | REWRITE WITH Tmp.3 := 1, Out.3 := (InOut.4 - Tmp.3)
0 ~0% {4} | JOIN WITH `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev` ON FIRST 4 OUTPUT Lhs.0, Lhs.1, Lhs.2, Lhs.4
42097188 ~1% {4} r4 = r1 UNION r2 UNION r3
42097188 ~1% {4} | AND NOT `TypeInference::M2::SatisfiesConstraintWithTypeMatching<TypeInference::FunctionCallMatching::AccessConstraint::RelevantAccess,TypeMention::TypeMention,TypeInference::FunctionCallMatching::AccessConstraint::SatisfiesTypeParameterConstraintInput>::TermIsInstantiationOfCondition::typeParametersHaveEqualInstantiationToIndex/4#dde26112#prev`(FIRST 4)
return r4
```
2026-04-14 09:34:13 +02:00
Jeroen Ketema
26715fc95c
C++: Rename rst to convSpec
2026-04-14 08:03:51 +02:00
dependabot[bot]
b19f2c6874
Bump the extractor-dependencies group in /go/extractor with 2 updates
...
Bumps the extractor-dependencies group in /go/extractor with 2 updates: [golang.org/x/mod](https://github.com/golang/mod ) and [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/mod` from 0.34.0 to 0.35.0
- [Commits](https://github.com/golang/mod/compare/v0.34.0...v0.35.0 )
Updates `golang.org/x/tools` from 0.43.0 to 0.44.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.43.0...v0.44.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.35.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
- dependency-name: golang.org/x/tools
dependency-version: 0.44.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-14 03:04:45 +00:00
murderteeth
47915328e6
Address Copilot review nits
...
Fixes US spelling (recognised -> recognized) across docs, QLDoc,
change note, and test fixture comments. Clarifies the handler QLDoc
to note sync/async support. Renames the supported-frameworks entry
from "vercel" to "Vercel (@vercel/node)" to avoid implying broader
platform coverage.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 17:35:08 +00:00
murderteeth
cff07342f5
Recognize legacy @now/node type aliases
...
Extends the Vercel serverless handler detection to also match the
deprecated Zeit-era @now/node package with NowRequest/NowResponse
types. Per-review feedback from asgerf, these aliases still appear
in real-world code.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 17:31:29 +00:00
Tom Hvitved
f6fb613962
Merge pull request #21700 from hvitved/js/fastify-per-route-rate-limiting
...
JS: Recognize Fastify per-route rate limiting
2026-04-13 17:28:34 +02:00
Jeroen Ketema
e0ce5bcf40
Merge pull request #21699 from jketema/join-fix
...
C++: Fix `isCompiledAsC` join order
2026-04-13 16:03:38 +02:00
Jeroen Ketema
19c4b2ff8f
C++: Use getConvSpecString instead of getConvSpecOffset and substring
2026-04-13 15:44:41 +02:00
Anders Schack-Mulligen
d3e580fd0e
C#: Introduce Expr.getIntValue.
2026-04-13 14:52:38 +02:00
Taus
2eeb31b472
Python: Add tests for lazy from ... import * as well
2026-04-13 11:49:06 +00:00
Taus
81468daf9c
Merge pull request #21603 from github/tausbn/python-port-use-of-exit
...
Python: Port UseOfExit.ql
2026-04-13 13:20:29 +02:00
Taus
720ea702fe
Merge pull request #21602 from github/tausbn/python-port-modification-of-locals
...
Python: Port ModificationOfLocals.ql
2026-04-13 13:19:40 +02:00
Taus
36bbc8ca14
Merge pull request #21601 from github/tausbn/python-port-unused-exception-object
...
Python: Port UnusedExceptionObject.ql
2026-04-13 13:19:12 +02:00
Taus
cc9bc746a1
Merge pull request #21597 from github/tausbn/python-port-unreachable-code
...
Python: Port UnreachableCode.ql
2026-04-13 13:17:59 +02:00
Tom Hvitved
fcfb8c9c6b
Add change note
2026-04-13 12:22:30 +02:00
Tom Hvitved
7a48409e38
JS: Recognize Fastify per-route rate limiting
2026-04-13 11:31:34 +02:00
Tom Hvitved
fef582c858
JS: Add test case for Fastify per-route rate limiting
2026-04-13 11:24:41 +02:00
Jeroen Ketema
bee39c9d51
C++: Fix isCompiledAsC join order
...
Before on Abseil Windows for `cpp/too-few-arguments:`:
```
Pipeline standard for TooFewArguments::isCompiledAsC/1#52fe29e8@994f9bgp was evaluated in 12 iterations totaling 2ms (delta sizes total: 50).
1198778 ~3% {1} r1 = JOIN `TooFewArguments::isCompiledAsC/1#52fe29e8#prev_delta` WITH `Element::Element.getFile/0#2b8c8740_10#join_rhs` ON FIRST 1 OUTPUT Rhs.1
83 ~26% {1} | JOIN WITH includes ON FIRST 1 OUTPUT Rhs.1
50 ~4% {1} | AND NOT `TooFewArguments::isCompiledAsC/1#52fe29e8#prev`(FIRST 1)
return r1
```
After:
```
Pipeline standard for #File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf@b8d290i6 was evaluated in 11 iterations totaling 0ms (delta sizes total: 43).
47 ~0% {2} r1 = SCAN `#File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf#prev_delta` OUTPUT In.1, In.0
78 ~28% {2} | JOIN WITH `File::File.getAnIncludedFile/0#dispred#e8d44cd1` ON FIRST 1 OUTPUT Lhs.1, Rhs.1
43 ~0% {2} | AND NOT `#File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf#prev`(FIRST 2)
return r1
[2026-04-13 11:05:25] Evaluated non-recursive predicate TooFewArguments::isCompiledAsC/1#52fe29e8@4a3eb9jk in 0ms (size: 49).
Evaluated relational algebra for predicate TooFewArguments::isCompiledAsC/1#52fe29e8@4a3eb9jk with tuple counts:
1 ~0% {3} r1 = CONSTANT(unique int, unique string, unique string)[1,"compiled as c","1"]
1 ~0% {1} | JOIN WITH #fileannotationsMerge_1230#join_rhs ON FIRST 3 OUTPUT Rhs.3
48 ~0% {1} r2 = JOIN r1 WITH `#File::File.getAnIncludedFile/0#dispred#e8d44cd1Plus#bf` ON FIRST 1 OUTPUT Rhs.1
49 ~0% {1} r3 = r1 UNION r2
return r3
```
2026-04-13 11:13:52 +02:00
Tom Hvitved
40eff6525d
Rust: Replace special handling of index expressions
2026-04-13 10:30:01 +02:00
Anders Schack-Mulligen
88160ef2e2
C#: Add change note.
2026-04-13 10:05:30 +02:00
murderteeth
dfe05599d3
JS: Add support for @vercel/node serverless functions
...
This adds a framework model for Vercel serverless functions so that
CodeQL's existing JavaScript security queries can detect vulnerabilities
in handlers of the form
export default function handler(req: VercelRequest, res: VercelResponse) { ... }
Handlers are identified as the default export of a module whose first
two parameters are typed as `VercelRequest`/`VercelResponse` from
`@vercel/node`. The default-export constraint excludes private helpers
that share the same signature. Type-based detection follows the same
pattern already used by `NextReqResHandler` in `Next.qll`.
The framework model covers:
- Route handler recognition (default-exported typed handlers only)
- Request input sources: `query`, `body`, `cookies`, and `url`
(the last inherited from Node's `IncomingMessage`)
- Named header accesses like `req.headers.host` and `req.headers.referer`,
modelled as `Http::RequestHeaderAccess` so header-specific queries fire
- Response sinks: `res.send`, `res.status(...).send`, `res.redirect`
- Header definitions via `res.setHeader`
Includes a library test exercising each model predicate (including a
negative case for private helpers) and query consistency fixtures
demonstrating end-to-end detection for js/reflected-xss,
js/request-forgery, js/sql-injection, and js/command-line-injection.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-12 19:17:18 +00:00
Geoffrey White
ae85ada669
Merge pull request #21634 from geoffw0/compwidertype2
...
C++: Upgrade cpp/comparison-with-wider-type to high precision
2026-04-10 16:08:11 +01:00
Taus
86020d9eed
Python: Add change note
2026-04-10 14:43:30 +00:00
Taus
6b7d47ee7d
Python: Add QL test for the new syntax
2026-04-10 14:39:13 +00:00
Taus
1ddfed6b6b
Python: Add QL support for lazy imports
...
Adds a new `isLazy` predicate to the relevant classes, and adds the
relevant dbscheme (and up/downgrade) changes. On upgrades we do nothing,
and on downgrades we remove the `is_lazy` bits.
2026-04-10 14:25:08 +00:00
Taus
fe94828fe4
Python: Add overlay annotations to AST template
...
Otherwise these will disappear every time we regenerate the AST.
2026-04-10 14:23:29 +00:00
Taus
2c79f9d828
Python: Regenerate parser files
2026-04-10 13:50:59 +00:00
Taus
ad4018f399
Python: Add parser support for lazy imports
...
As defined in PEP-810. We implement this in much the same way as how we
handle `async` annotations currently. The relevant nodes get an
`is_lazy` field that defaults to being false.
2026-04-10 13:50:43 +00:00
Anders Schack-Mulligen
d5c9fd1085
C#/Cfg: A bit more qldoc.
2026-04-10 15:47:25 +02:00
Anders Schack-Mulligen
452913f336
C#: Improve perf of UnsynchronizedStaticAccess.ql.
2026-04-10 15:47:25 +02:00
Anders Schack-Mulligen
aaf9bb2e9e
C#: Accept fewer CallContextSpecificCall due to no splitting.
2026-04-10 15:47:24 +02:00
Anders Schack-Mulligen
2d5a1840f4
C#: Accept new CFG in tests.
2026-04-10 15:47:24 +02:00
Anders Schack-Mulligen
bbd403dbc3
C#: Rework DataFlowCallable-to-cfg relation in terms of basic blocks for performance.
2026-04-10 15:47:23 +02:00
Anders Schack-Mulligen
bfbd0f77e8
C#: Fix some bad join orders.
2026-04-10 15:47:23 +02:00
Anders Schack-Mulligen
1d9c0ae388
C#: Fix perf.
2026-04-10 15:47:22 +02:00
Anders Schack-Mulligen
371bc3012e
C#: CFG and data flow nodes now exist for LHSs.
2026-04-10 15:47:22 +02:00
Anders Schack-Mulligen
a7d4b00d06
C#: Accept changed location for phi nodes.
2026-04-10 15:47:21 +02:00
Anders Schack-Mulligen
a69581966b
C#: Accept CFG changes for "first" relation.
2026-04-10 15:47:21 +02:00
Anders Schack-Mulligen
a997d9f80c
C#: Accept fixed consistency check.
2026-04-10 15:47:20 +02:00
Anders Schack-Mulligen
773881f333
C#: Accept data flow inconsistency check for read+write calls.
2026-04-10 15:47:20 +02:00
Anders Schack-Mulligen
88256eeee8
C#: GuardedExpr no longer contains expressions guarded solely by disjunctions.
2026-04-10 15:47:19 +02:00
Anders Schack-Mulligen
e90243c348
C#: Accept irrelevant changes.
...
The additions are unintentional, but the fault lies with the shared
SignAnalysis code. The removals are due to compile-time constant
initializers no longer having CFG nodes.
2026-04-10 15:47:19 +02:00
Anders Schack-Mulligen
49cc931f92
C#: Compile-time constants no longer have CFG nodes.
2026-04-10 15:47:18 +02:00
Anders Schack-Mulligen
5d589093cf
C#: Accept CFG changes.
2026-04-10 15:47:18 +02:00
Anders Schack-Mulligen
a5c99f9693
C#: Accept harmless CFG changes.
2026-04-10 15:47:17 +02:00
Anders Schack-Mulligen
6010640cea
C#: Accept bugfix.
2026-04-10 15:47:17 +02:00
Anders Schack-Mulligen
1a6670a6bb
C#: Phi nodes are not expected to have associated Elements.
2026-04-10 15:47:16 +02:00
Anders Schack-Mulligen
43fe411585
C#: Accept SSA location changes.
2026-04-10 15:47:16 +02:00
Anders Schack-Mulligen
093eb57ad0
C#: Fix CFG position of property setter calls.
2026-04-10 15:47:15 +02:00
Anders Schack-Mulligen
ac88b73b65
C#: Bugfix in enclosing callable.
2026-04-10 15:47:15 +02:00
Anders Schack-Mulligen
700d56f3ab
C#: Fix UncheckedCastInEquals.
2026-04-10 15:47:14 +02:00
Anders Schack-Mulligen
b1790335c0
C#: Fix test.
2026-04-10 15:47:14 +02:00
Anders Schack-Mulligen
ff978d1a8c
C#: Replace CFG.
2026-04-10 15:47:13 +02:00
Anders Schack-Mulligen
9cf9a36d0d
C#: Rename ControlFlow::BasicBlock to BasicBlock.
2026-04-10 15:47:12 +02:00
Anders Schack-Mulligen
13a4141cc6
C#: Rename remaining references to ControlFlow::Nodes.
2026-04-10 15:47:12 +02:00
Anders Schack-Mulligen
b878ae3f21
C#: Update some references to ControlFlow::Nodes.
2026-04-10 15:47:11 +02:00
Anders Schack-Mulligen
03f6bdbdd2
C#: Update some references in preparation for CFG swap.
2026-04-10 15:47:11 +02:00
Anders Schack-Mulligen
b85b02abb4
Cfg: Add dominance predicates to shared ControlFlowNode.
2026-04-10 15:47:10 +02:00
Anders Schack-Mulligen
61976e3ef0
C#: Rename ControlFlow::Node to ControlFlowNode.
2026-04-10 15:47:10 +02:00
Anders Schack-Mulligen
88aaff863b
Cfg: Extend consistency checks.
2026-04-10 15:47:09 +02:00
Anders Schack-Mulligen
6ffed8523c
Cfg/Java: Move InstanceOfExpr CFG into shared lib.
2026-04-10 15:47:09 +02:00
Anders Schack-Mulligen
035b83c0e4
C#: Introduce ControlFlowElementOrCallable.
2026-04-10 15:47:08 +02:00
Anders Schack-Mulligen
0b6c416fd4
Cfg: Support short-circuiting compound assignments.
2026-04-10 15:47:08 +02:00
Anders Schack-Mulligen
a53cffc121
Cfg: Support GotoStmt.
2026-04-10 15:47:07 +02:00
Anders Schack-Mulligen
93a594e9c0
Cfg: Support Throw expressions.
2026-04-10 15:47:07 +02:00
Taus
6078df524b
Merge pull request #21683 from github/tausbn/python-add-extractor-pack-build-script
...
Python: Add `create-extractor-pack.sh` for Python
2026-04-10 15:16:54 +02:00
Jeroen Ketema
888d392040
Merge pull request #21636 from jketema/actions-perm
...
Actions: Correctly check reusable workflow permissions in `actions/missing-workflow-permissions`
2026-04-10 15:02:36 +02:00
Geoffrey White
b9226a359a
Merge pull request #21633 from geoffw0/intmultlong2
...
C++: Upgrade cpp/integer-multiplication-cast-to-long to high precision
2026-04-10 14:02:34 +01:00
Geoffrey White
814c0ae7a8
Merge pull request #21632 from geoffw0/wrongtype2
...
C++: Upgrade cpp/wrong-type-format-argument to high precision
2026-04-10 14:01:07 +01:00
Geoffrey White
9ea33bc5bb
Merge pull request #21553 from geoffw0/implicitfn
...
C++: Disable cpp/implicit-function-declaration on build mode none databases
2026-04-10 14:00:06 +01:00
Geoffrey White
bcf612e6fe
Merge branch 'main' into compwidertype2
2026-04-10 13:58:35 +01:00
Anders Schack-Mulligen
dfa8d72dd3
Merge pull request #21685 from aschackmull/csharp/unbind-new
...
C#: Replace old-style unbind with pragmas.
2026-04-10 13:55:01 +02:00
Tom Hvitved
27f7f747a4
Rust: Check whole blanket constraints, not just the root trait type
2026-04-10 13:20:36 +02:00
Tom Hvitved
be329c8ab4
Rust: Replace recursion through forall with ranked recursion
2026-04-10 13:18:57 +02:00
Geoffrey White
bcdbf141bc
Merge pull request #21671 from geoffw0/neutralperf
...
Rust: Fix performance issue with additionalExternalFile
2026-04-10 12:08:27 +01:00
Geoffrey White
0714ca816a
Merge branch 'main' into suspicioussizeof2
2026-04-10 10:10:45 +01:00
Tom Hvitved
42fe2d5002
Rust: Add another type inference test
2026-04-10 10:18:54 +02:00
Paolo Tranquilli
7de8ce961c
Merge pull request #21677 from github/dependabot/bazel/gazelle-0.50.0
...
Bump gazelle from 0.47.0 to 0.50.0
2026-04-10 10:07:25 +02:00
Michael Nebel
66278fcd10
Merge pull request #21690 from samchang-msft/update-net10-support
...
Support added in Jan 2026
2026-04-10 08:40:29 +02:00
Sam Chang
7883fab44f
Qualify the limited support for .NET 10 and C# 14
2026-04-09 12:06:54 -07:00
Sam Chang
38440d96b8
Support added in Jan 2026
2026-04-09 10:48:08 -07:00
Jeroen Ketema
43f48001e3
Swift: Clear override
2026-04-09 16:32:43 +02:00
Jeroen Ketema
4ada727bab
Swift: Add staged archives to LFS
2026-04-09 16:32:36 +02:00
Anders Schack-Mulligen
cf4ab1d106
C#: Replace old-style unbind with pragmas.
2026-04-09 15:57:19 +02:00
Tom Hvitved
23f081006e
Rust: Track closure types in data flow
2026-04-09 15:25:52 +02:00
Tom Hvitved
3fa5c952b3
Rust: Add more closure flow tests
2026-04-09 15:25:50 +02:00
Jeroen Ketema
85c42ae932
Swift: Update supported versions
2026-04-09 15:19:29 +02:00
Jeroen Ketema
94fb011b90
Swift: Add change note
2026-04-09 15:17:13 +02:00
Taus
d622dabf3e
Python: Add create-extractor-pack.sh for Python
...
This allows us to build and test the extractor (for actual QL extraction
-- not just the extractor unit tests) entirely from within the
`github/codeql` repo, just as we do with Ruby. All that's needed is a
`--search-path` argument that points to the repo root.
2026-04-09 13:06:45 +00:00
Jeroen Ketema
21937c2415
Swift: Add dbscheme upgrade and downgrade scripts
2026-04-09 15:05:30 +02:00
Jeroen Ketema
7879d0a006
Swift: Fix OpaqueTypeArchetypeType name mangling
2026-04-09 15:05:28 +02:00
Jeroen Ketema
34b626e8bb
Swift: Update expected integration test results
2026-04-09 15:05:27 +02:00
Jeroen Ketema
d09e2f66cd
Swift: Assign indexes to fileprivate ValueDecls
...
At least in the case of function declarations there can be multiple
identical ones within the same module, causing data set check errors
if not differentiated.
2026-04-09 15:05:16 +02:00
Tom Hvitved
33cc887be0
Merge pull request #21592 from hvitved/dataflow/source-call-context-type-flow
...
Data flow: Add hook for preventing lambda dispatch in source call contexts
2026-04-09 13:44:42 +02:00
Geoffrey White
e72c116664
Rust: Proposed improved solution.
2026-04-09 11:18:25 +01:00
Tom Hvitved
d704b753c8
Fix CP in typeFlowParamType
...
Forgot to link `p` with `c` using `nodeEnclosingCallable(p, c)`.
2026-04-09 09:19:55 +02:00
dependabot[bot]
7833a0a2e8
Bump gazelle from 0.47.0 to 0.50.0
...
Bumps [gazelle](https://github.com/bazel-contrib/bazel-gazelle ) from 0.47.0 to 0.50.0.
- [Release notes](https://github.com/bazel-contrib/bazel-gazelle/releases )
- [Commits](https://github.com/bazel-contrib/bazel-gazelle/compare/v0.47.0...v0.50.0 )
---
updated-dependencies:
- dependency-name: gazelle
dependency-version: 0.50.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-09 03:08:02 +00:00
Geoffrey White
95681bfad4
Rust: Fix performance issue with File.fromSource.
2026-04-08 15:04:03 +01:00
Jeroen Ketema
7bf78de167
Swift: Fix AnyFunctionType name mangling
2026-04-08 15:53:24 +02:00
Kristen Newbury
fb0ee5b987
Merge pull request #21640 from knewbury01/knewbury01/adjust-actions-queries-alerts
...
Adjust alert messages CWE-829/ArtifactPoisoning[Critical|Medium]
2026-04-08 09:44:00 -04:00
Jeroen Ketema
f7de0abe60
Swift: Fix BuiltinFixedArrayType mangling
2026-04-08 15:41:57 +02:00
Kristen Newbury
7b7411f7df
Change alert location CWE-829/ArtifactPoisoning queries
2026-04-08 08:57:45 -04:00
Jeroen Ketema
5eb8db0d48
Swift: Update expected QL test results after 6.3 update
2026-04-08 13:21:33 +02:00
Jeroen Ketema
6b2494c3e5
Swift: Update generated files
2026-04-08 13:21:03 +02:00
Jeroen Ketema
d473c7143d
Swift: Update schema
2026-04-08 13:20:06 +02:00
Jeroen Ketema
fd83515843
Swift: Make extractor compile
2026-04-08 13:19:40 +02:00
Jeroen Ketema
2fbfcb970e
Swift: Use Swift 6.3 artifacts
2026-04-08 13:19:00 +02:00
Taus
e3688444d7
Python: Also exclude class scope
...
Changing the `locals()` dictionary actually _does_ change the attributes
of the class being defined, so we shouldn't alert in this case.
2026-04-07 23:46:03 +02:00
Taus
8d79248ea7
Python: Port ModificationOfLocals.ql
2026-04-07 23:46:03 +02:00
Taus
16683aee0e
Merge pull request #21590 from github/tausbn/python-improve-bind-all-interfaces-query
...
Python: Improve "bind all interfaces" query
2026-04-07 17:59:48 +02:00
Jeroen Ketema
e7d3eedc80
Merge pull request #21661 from jketema/autoconf
...
C++: Add heuristic for GNU autoconf config files
2026-04-07 15:38:06 +02:00
Taus
4cb238f1af
Merge pull request #21598 from github/tausbn/python-port-should-use-with
...
Python: Port ShouldUseWithStatement.ql
2026-04-07 14:16:41 +02:00
Geoffrey White
b21dba6131
C++: Update code scanning suite .expected.
2026-04-07 13:06:34 +01:00
Geoffrey White
201af3fffc
C++: Update code scanning suite .expected.
2026-04-07 12:59:31 +01:00
Geoffrey White
f2292643a3
C++: Update code scanning suite .expected.
2026-04-07 12:53:53 +01:00
Geoffrey White
3769a8a482
C++: Update code scanning suite .expected.
2026-04-07 12:51:56 +01:00
Mathias Vorreiter Pedersen
5e145aa27d
Merge pull request #21631 from MathiasVP/expose-fwd-stage-1
...
Dataflow: Expose stage 1's `fwdFlow`
2026-04-07 11:29:56 +01:00
Mathias Vorreiter Pedersen
e06294bcb4
Shared: Respond to review comments.
2026-04-07 11:11:04 +01:00
Idriss Riouak
39f92e992a
Merge pull request #21494 from github/idrissrio/java/jdk26
...
Java: Accept new test results after JDK 26 extractor upgrade
2026-04-07 12:03:36 +02:00
Tom Hvitved
0d4524f8f3
Address review comments
2026-04-07 11:40:10 +02:00
Tom Hvitved
1e1a8732a3
Data flow: Add hook for preventing lambda dispatch in source call contexts
2026-04-07 11:40:08 +02:00
Tom Hvitved
eb64fcd208
C#: Add test that shows unintended flow summary generation
2026-04-07 11:40:07 +02:00
Jeroen Ketema
04cfd37f53
C++: Fix comments in tests
2026-04-07 10:52:12 +02:00
Jeroen Ketema
b19c648965
C++: Add heuristic for GNU autoconf config files
2026-04-07 10:43:15 +02:00
Michael Nebel
e259ebe258
Merge pull request #21627 from michaelnebel/csharp/cleanup
...
C#: Deprecate get[L|R]Value predicates.
2026-04-07 10:23:59 +02:00
idrissrio
6f199b90ba
Java: Accept new test results for JDK 26
...
Accept new ByteOrder.getEntries, List.ofLazy, and Map.ofLazy entries
in kotlin2 test expected files.
2026-04-07 09:28:25 +02:00
idrissrio
3ccbd8032c
Java: Accept new test results for JDK 26
...
JDK 26 added ofLazy methods to List, Map, and Set collections.
Update expected test output to include these new methods.
2026-04-07 09:28:23 +02:00
idrissrio
5a6eb79470
Java: Pin CWE-676 test to --release 25
...
Thread.stop() was removed in JDK 26. Pin the test to --release 25.
2026-04-07 09:28:22 +02:00
idrissrio
74b0e8c19a
Java: Accept new test results after JDK 26 extractor upgrade
2026-04-07 09:28:20 +02:00
Tom Hvitved
7d184d0c7f
Merge pull request #21206 from hvitved/rust/type-inference-closure-param-context-typed
...
Rust: Infer argument types based on trait bounds on parameters
2026-04-07 09:17:30 +02:00
github-actions[bot]
242090e0ac
Post-release preparation for codeql-cli-2.25.2
2026-04-06 13:49:20 +00:00
Óscar San José
868ccfbb04
Merge pull request #21657 from github/release-prep/2.25.2
...
Release preparation for version 2.25.2
2026-04-06 12:50:52 +02:00
github-actions[bot]
4fe2f6d2b4
Release preparation for version 2.25.2
2026-04-06 10:30:38 +00:00
MarkLee131
b49c6dcbd4
Add @Pattern annotation test case and javax-validation-constraints stub
...
Adds a dedicated test verifying that fields annotated with
@javax.validation.constraints.Pattern are recognized as sanitized
by RegexpCheckBarrier, in addition to the existing String.matches()
guard test.
2026-04-04 22:04:05 +08:00
Kaixuan Li
258a53e146
Update java/ql/test/query-tests/security/CWE-501/TrustBoundaryViolations.java
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-04 22:02:00 +08:00
MarkLee131
46ef0204ef
Remove secretQuestion from FP exclusion list
...
secretQuestion is ambiguous: it could be the question text (not
sensitive) or a security question answer. Worse, the regex
secrets?(question) also matches secretQuestionAnswer, which is
clearly sensitive. Drop it to avoid false negatives.
2026-04-04 21:58:32 +08:00
MarkLee131
345b842edc
Java: add RegexpCheckBarrier to trust-boundary-violation sanitizers
...
The trust-boundary-violation query only recognized OWASP ESAPI validators
as sanitizers. ESAPI is rarely used in modern Java projects, while regex
validation via String.matches() and @javax.validation.constraints.Pattern
is the standard approach in Spring/Jakarta applications.
RegexpCheckBarrier already exists in Sanitizers.qll and is used by other
queries (e.g., RequestForgery). This wires it into TrustBoundaryConfig,
so patterns like input.matches("[a-zA-Z0-9]+") and @Pattern annotations
are recognized as sanitizers, consistent with the existing ESAPI treatment.
2026-04-04 21:36:37 +08:00
MarkLee131
f338ded349
Java: treat hash/encrypt/digest methods as sensitive-log sanitizers
...
The sensitive-log query (CWE-532) lacked sanitizers for hashed or
encrypted data, while the sibling cleartext-storage query (CWE-312)
already recognized methods with "encrypt", "hash", or "digest" in their
names as sanitizers (CleartextStorageQuery.qll:86).
This adds an EncryptionBarrier to SensitiveLoggingQuery that applies the
same name-based heuristic, making the two queries consistent. Calls like
DigestUtils.sha256Hex(password) or hashPassword(secret) are no longer
flagged when their results are logged.
2026-04-04 21:35:36 +08:00
MarkLee131
20cfe29199
Java: reduce false positives in sensitive-log by expanding FP exclusion regex
...
The getCommonSensitiveInfoFPRegex() only excluded "null", "tokenizer", and
"tokenImage", causing widespread false positives for common non-sensitive
variable names containing "token" or "secret".
This adds exclusions for three categories:
- Pagination/iteration tokens: nextToken (AWS SDK), pageToken (GCP),
continuationToken (Azure), etc.
- Token metadata: tokenType (OAuth), tokenEndpoint (OIDC), tokenCount,
tokenIndex, tokenLength, tokenUrl, etc.
- Secret metadata: secretName (K8s/AWS), secretId (Azure),
secretVersion, secretArn, secretPath, etc.
All truly sensitive variable names (accessToken, clientSecret, secretKey,
refreshToken, etc.) remain correctly flagged.
2026-04-04 21:33:35 +08:00
MarkLee131
9ff4ed286f
Java: recognize Path.toRealPath() as path normalization sanitizer
...
PathNormalizeSanitizer recognized Path.normalize() and
File.getCanonicalPath()/getCanonicalFile(), but not Path.toRealPath().
toRealPath() is strictly stronger than normalize() (resolves symlinks
and verifies file existence in addition to normalizing ".." components),
and is functionally equivalent to File.getCanonicalPath() for the NIO.2
API. CERT FIO16-J and OWASP both recommend it for path traversal defense.
This adds toRealPath to PathNormalizeSanitizer alongside normalize,
reducing false positives for code using idiomatic NIO.2 path handling.
2026-04-04 20:59:45 +08:00
Mario Campos
fb8b5699f2
Merge pull request #21639 from github/mario-campos/test-go-registries
...
Add tests for multiple Git sources and GoProxy servers in registry config parsing
2026-04-02 11:12:51 -05:00
Kristen Newbury
41714656ec
Adjust alert messages actions CWE-829
2026-04-02 11:58:58 -04:00
Kristen Newbury
e69e30aa84
Adjust alert messages CWE-829/ArtifactPoisoning[Critical|Medium]
2026-04-02 11:32:37 -04:00
Mario Campos
fb871cdfb8
Add tests for multiple Git sources and GoProxy servers in registry config parsing
2026-04-02 10:12:48 -05:00
Paolo Tranquilli
cedacc91db
Merge pull request #21583 from github/redsun82/update-kotlin-2.3.20
...
Kotlin: update to 2.3.20
2026-04-02 15:58:22 +02:00
Jeroen Ketema
87f9b9581e
Actions: Add change note
2026-04-02 15:48:45 +02:00
Jeroen Ketema
47409d1c59
Actions: Update expected test results
2026-04-02 15:43:49 +02:00
Jeroen Ketema
74e6d3474d
Actions: Correctly check permissions in actions/missing-workflow-permissions
2026-04-02 15:42:45 +02:00
Jeroen Ketema
5866bcc881
Actions: Add FP test for actions/missing-workflow-permissions
2026-04-02 15:41:41 +02:00
Geoffrey White
cc89b6ea91
C++: Change note.
2026-04-02 11:52:37 +01:00
Geoffrey White
70b72f70e1
C++: Upgrade query precision.
2026-04-02 11:52:36 +01:00
Geoffrey White
56af9a84ab
Update cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.qhelp
2026-04-02 11:40:51 +01:00
Geoffrey White
9eabfc5fdc
Update cpp/ql/src/Likely Bugs/Underspecified Functions/ImplicitFunctionDeclaration.ql
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2026-04-02 11:39:45 +01:00
Geoffrey White
e83658ed06
C++: Upgrade query precision.
2026-04-02 11:38:09 +01:00
Geoffrey White
2d02056e5c
C++: Second change note.
2026-04-02 11:34:54 +01:00
Geoffrey White
9dbbdef4cb
C++: Change note.
2026-04-02 11:30:52 +01:00
Geoffrey White
520e95d92c
C++: Upgrade query precision.
2026-04-02 11:30:34 +01:00
Geoffrey White
909b55a40a
C++: Change note.
2026-04-02 11:28:34 +01:00
Geoffrey White
b41a4ff5e4
C++: Upgrade query precision.
2026-04-02 11:28:19 +01:00
Geoffrey White
fca567f6ea
C++: Change note.
2026-04-02 11:26:50 +01:00
Geoffrey White
84c01bc255
C++: Upgrade query precision.
2026-04-02 11:26:49 +01:00
Mathias Vorreiter Pedersen
4d8b782695
Shared: Also expose dataflow stage 1's forward flow predicate.
2026-04-02 10:56:09 +01:00
Paolo Tranquilli
88a893efca
Kotlin: update supported versions in documentation
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-02 08:34:22 +02:00
Paolo Tranquilli
2d76b41293
Merge pull request #21628 from github/redsun82/vendor-picosha2
...
Vendor `PicoSHA2` into LFS
2026-04-01 15:24:41 +02:00
Paolo Tranquilli
9a1156dd62
Vendor PicoSHA2 into LFS
...
The upstream repo (`okdshin/PicoSHA2`) is a personal GitHub account,
at risk of suspension — the same scenario that hit `rules_antlr`.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-04-01 14:31:01 +02:00
Michael Nebel
6d5aff4822
C#: Add change-note.
2026-04-01 13:17:52 +02:00
Michael Nebel
9c095bc580
C#: Deprecate get[L|R]Value predicates.
2026-04-01 12:50:37 +02:00
Mathias Vorreiter Pedersen
43d002e6b5
Merge pull request #21619 from MathiasVP/more-http-remote-flow-sources
...
C++: Add flow sources from Windows' `http.h`
2026-03-31 15:44:39 +01:00
Mathias Vorreiter Pedersen
16a7e39e95
C++: Fix pointer indirection. Currently, this does not have any effect because of a conflation bug in taint-tracking.
2026-03-31 15:26:15 +01:00
Jeroen Ketema
17ab87d1fc
Merge pull request #21618 from jketema/meson-silence
...
C++: Add heuristics for meson configuration files
2026-03-31 15:24:22 +02:00
Mathias Vorreiter Pedersen
dc8dc61196
C++: Fix type name.
2026-03-31 13:54:30 +01:00
Mathias Vorreiter Pedersen
ab34bd232e
C++: Add change note.
2026-03-31 11:30:43 +01:00
Mathias Vorreiter Pedersen
9e97e0433e
C++: Accept test changes.
2026-03-31 11:30:41 +01:00
Mathias Vorreiter Pedersen
102221d0aa
C++: Add lots of taint inheriting content related to '_HTTP_REQUEST'.
2026-03-31 11:30:39 +01:00
Mathias Vorreiter Pedersen
c6d1ec5f64
C++: Add examples that need taint inheriting content.
2026-03-31 11:30:37 +01:00
Mathias Vorreiter Pedersen
21ea7ebe40
C++: Model a few more remote flow sources from 'http.h' and accept test changes.
2026-03-31 11:30:35 +01:00
Mathias Vorreiter Pedersen
18a25c5071
C++: Add tests with missing flow sources.
2026-03-31 11:30:33 +01:00
Paolo Tranquilli
1836a63122
Merge remote-tracking branch 'origin/main' into wild-crest-ql
2026-03-31 11:35:24 +02:00
Jeroen Ketema
ceec44b819
Apply suggestion from @Copilot
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-31 11:08:38 +02:00
Jeroen Ketema
d2839f4ee4
C++: Add change note
2026-03-31 11:02:40 +02:00
Anders Schack-Mulligen
2bde364bdd
Merge pull request #21599 from aschackmull/csharp/constantcondition-simplify
...
C#: Simplify the ConstantCondition query.
2026-03-31 11:02:30 +02:00
Jeroen Ketema
5122f7cf92
C++: Add heuristics for meson configuration files
2026-03-31 11:02:26 +02:00
Jeroen Ketema
afd33e4dcd
C++: Add test for meson configuration files
2026-03-31 10:23:51 +02:00
Anders Schack-Mulligen
29500c7eb7
C#: Add change note.
2026-03-31 09:38:45 +02:00
Anders Schack-Mulligen
2a54dce5cb
C#: Remove redundant ConstantComparison.ql query.
2026-03-31 09:38:44 +02:00
Anders Schack-Mulligen
056be6d504
C#: Simplify the ConstantCondition query.
2026-03-31 09:38:44 +02:00
Anders Schack-Mulligen
71b38b71bf
Merge pull request #21613 from aschackmull/csharp/consistent-cs-abbrev
...
C#: Fix inconsistent casing of Cs/CS.
2026-03-31 09:22:49 +02:00
Florin Coada
cd7bb54039
Merge pull request #21615 from github/codeql-spark-run-23750999202
...
Update changelog documentation site for codeql-cli-2.25.1
2026-03-30 16:09:14 +01:00
github-actions[bot]
3c78d8a737
update codeql documentation
2026-03-30 14:50:44 +00:00
Mathias Vorreiter Pedersen
b83d4e010b
Merge pull request #21611 from MathiasVP/nsdmi-dataflow-3
...
C++: Add dataflow through NSDMI
2026-03-30 15:48:31 +01:00
Paolo Tranquilli
628f85aebc
Kotlin: accept test changes
2026-03-30 15:35:19 +02:00
Anders Schack-Mulligen
40366042a5
C#: Fix inconsistent casing of Cs/CS.
2026-03-30 15:24:32 +02:00
Paolo Tranquilli
106d6b91f3
Merge remote-tracking branch 'origin/main' into wild-crest-ql
2026-03-30 14:21:28 +02:00
Paolo Tranquilli
6433b80b25
Kotlin: accept integration test changes
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-30 14:21:19 +02:00
Jeroen Ketema
095a9cbc73
Merge pull request #21588 from jketema/jketema/compiler-error-bmn
...
C++: Silence `ExtractionRecoverableWarning`s when BMN is active
2026-03-30 14:17:26 +02:00
Mathias Vorreiter Pedersen
5db069eb56
C++: Fix more consistency errors.
2026-03-30 12:08:08 +01:00
Óscar San José
9f27a5278f
Merge pull request #21579 from github/post-release-prep/codeql-cli-2.25.1
...
Post-release preparation for codeql-cli-2.25.1
2026-03-30 12:47:59 +02:00
Mathias Vorreiter Pedersen
9247e6af0c
C++: Add change note.
2026-03-30 11:30:17 +01:00
Mathias Vorreiter Pedersen
29768bbed4
Update cpp/ql/test/library-tests/dataflow/dataflow-tests/type-bugs.ql
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-30 11:26:24 +01:00
Mathias Vorreiter Pedersen
78c0c7cb76
C++: Exclude flow summaries from 'irTypeBugs'.
2026-03-30 11:04:42 +01:00
Paolo Tranquilli
1d028382da
Merge branch 'main' into wild-crest-ql
2026-03-30 12:04:16 +02:00
Mathias Vorreiter Pedersen
503c15334a
C++: Accept test changes.
2026-03-30 11:03:52 +01:00
Mathias Vorreiter Pedersen
599b7a6653
C++: Handle fields in 'getThisType'.
2026-03-30 11:00:40 +01:00
Mathias Vorreiter Pedersen
9cb8edb41a
C++: Change 'Function' to 'Declaration' in a few places to handle enclosing callables being fields.
2026-03-30 11:00:38 +01:00
Mathias Vorreiter Pedersen
eb35fa0d5e
C++: Unify 'isSourceParameterOf' for this parameters with the implementation for positional parameters.
2026-03-30 11:00:37 +01:00
Jeroen Ketema
6692f23cbd
C++: Add change note
2026-03-30 11:50:31 +02:00
Jeroen Ketema
8349bd50ba
Merge pull request #21391 from jketema/jketema/nsdmi
...
C++: Handle field initialization via NSDMI in IR generation
2026-03-30 11:35:06 +02:00
Óscar San José
59eec7ffa2
Merge branch 'main' of https://github.com/github/codeql into post-release-prep/codeql-cli-2.25.1
2026-03-30 10:51:12 +02:00
github-actions[bot]
ce6e6d5db3
Post-release preparation for codeql-cli-2.25.1
2026-03-30 08:43:48 +00:00
Paolo Tranquilli
6fad5b823c
Kotlin: accept test changes
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-30 10:07:17 +02:00
Owen Mansel-Chan
898d12b0be
Merge pull request #21608 from MarkLee131/fix/tainted-arithmetic-bounds-check-barrier
...
Exclude bounds-check arithmetic from tainted-arithmetic sinks
2026-03-29 22:47:20 +01:00
MarkLee131
e6adfbca77
Address review: update QLDoc comment and fix expected test output
...
- Clarify that arithmeticUsedInBoundsCheck applies to if-condition
comparisons, not all comparisons
- Update expected test line numbers to reflect added test calls
2026-03-29 11:53:06 +08:00
Kaixuan Li
b595a70384
Update java/ql/lib/change-notes/2026-03-28-tainted-arithmetic-bounds-check.md
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-29 11:45:27 +08:00
Kaixuan Li
938039d82c
Merge branch 'main' into fix/tainted-arithmetic-bounds-check-barrier
2026-03-29 10:25:39 +08:00
Kaixuan Li
f5cfc5e282
Update java/ql/test/query-tests/security/CWE-190/semmle/tests/ArithmeticTainted.java
...
Co-authored-by: Owen Mansel-Chan <62447351+owen-mc@users.noreply.github.com >
2026-03-29 10:25:10 +08:00
Owen Mansel-Chan
58218ee630
Merge pull request #21594 from MarkLee131/fix/add-ec-to-secure-algorithm-whitelist
...
Add EC to secure algorithm whitelist for Java CWE-327 query
2026-03-28 17:13:19 +00:00
Owen Mansel-Chan
2b8558706f
Add sentence to change note.
2026-03-28 16:39:16 +00:00
Owen Mansel-Chan
ea9b99f67c
Rephrase change note
2026-03-28 16:36:39 +00:00
MarkLee131
0c5e89a68e
Exclude bounds-check arithmetic from tainted-arithmetic sinks
...
The java/tainted-arithmetic query now recognizes when an arithmetic
expression appears directly as an operand of a comparison (e.g.,
`if (off + len > array.length)`). Such expressions are bounds checks,
not vulnerable computations, and are excluded via the existing
overflowIrrelevant predicate.
Add test cases for bounds-checking patterns that should not be flagged.
2026-03-28 17:39:40 +08:00
MarkLee131
da4a2238bc
Address PR review: add Signature.getInstance sink, HMAC/PBKDF2 whitelist, fix test APIs
...
- Model Signature.getInstance() as CryptoAlgoSpec sink (previously only
Signature constructor was modeled)
- Add HMAC-based algorithms (HMACSHA1/256/384/512, HmacSHA1/256/384/512)
and PBKDF2 to the secure algorithm whitelist
- Fix XDH/X25519/X448 tests to use KeyAgreement.getInstance() instead of
KeyPairGenerator.getInstance() to match their key agreement semantics
- Add test cases for SHA384withECDSA, HMACSHA*, and PBKDF2WithHmacSHA1
from user-reported false positives
- Update change note to document all additions
2026-03-28 16:53:46 +08:00
MarkLee131
a9449cc991
Add EC to secure algorithm whitelist for Java CWE-327 query
2026-03-28 16:48:58 +08:00
Taus
a0b3c2f13a
Python: Update change note
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-27 23:46:50 +01:00
Taus
187f7c7bcf
Python: Move isNetworkBind check into isSink
2026-03-27 22:45:26 +00:00
Owen Mansel-Chan
37aac05964
Replace branch with acceptingValue
2026-03-27 22:39:10 +00:00
Taus
c5ef1f6342
Python: Port UseOfExit.ql
2026-03-27 22:28:38 +00:00
Owen Mansel-Chan
a7fdc4b543
Replace acceptingvalue with acceptingValue
2026-03-27 22:15:45 +00:00
Owen Mansel-Chan
a8b52acaa9
Merge pull request #21585 from github/copilot/convert-models-to-yml
...
C++: Convert remaining CSV models to .model.yml and remove CSV model infrastructure
2026-03-27 20:48:34 +00:00
Geoffrey White
a9cce1c0fa
C++: Undo increasing query precision.
2026-03-27 17:32:03 +00:00
Geoffrey White
4f3108c444
C++: Update change note.
2026-03-27 17:04:05 +00:00
Taus
4f74d421b9
Python: Exclude AF_UNIX sockets from BindToAllInterfaces
...
Looking at the results of the the previous DCA run, there was a bunch of
false positives where `bind` was being used with a `AF_UNIX` socket (a
filesystem path encoded as a string), not a `(host, port)` tuple. These
results should be excluded from the query, as they are not vulnerable.
Ideally, we would just add `.TupleElement[0]` to the MaD sink, except we
don't actually support this in Python MaD...
So, instead I opted for a more low-tech solution: check that the
argument in question flows from a tuple in the local scope.
This eliminates a bunch of false positives on `python/cpython` leaving
behind four true positive results.
2026-03-27 16:55:10 +00:00
Geoffrey White
50681a3c42
C++: Add note to the .qhelp.
2026-03-27 16:47:31 +00:00
Geoffrey White
bb9873dc8f
C++: Increase the query precision to high.
2026-03-27 16:40:45 +00:00
Jeroen Ketema
0f8e39a236
C++: Silence ExtractionRecoverableWarnings when BMN is active
2026-03-27 13:42:44 +01:00
Taus
47d24632e6
Python: Port ShouldUseWithStatement.ql
...
Only trivial test changes.
2026-03-27 12:34:20 +00:00
Taus
0ea80ac184
Python: Port UnusedExceptionObject.ql
...
Depending on whether other queries depend on this, we may end up moving
the exception utility functions to a more central location.
2026-03-27 12:34:14 +00:00
Taus
60f9ce4ce7
Python: Port UnreachableCode.ql
2026-03-27 12:33:04 +00:00
Owen Mansel-Chan
b3285c6ae2
Make description of acceptingvalue column clearer
2026-03-27 11:35:22 +00:00
Owen Mansel-Chan
c07a814515
Add comments to converted MaD file
2026-03-27 11:23:33 +00:00
Mathias Vorreiter Pedersen
8fc914f636
Merge pull request #21591 from MathiasVP/restrict-pair-cand
...
C++: Fix join orders in virtual dispatch computation
2026-03-27 11:20:53 +00:00
Owen Mansel-Chan
7e1ad825c3
Fix model row with misaligned columns
...
The original CSV had too many columns, and copilot cut off the last one, before adding the provenance column at the end.
2026-03-27 11:17:15 +00:00
Tom Hvitved
6dc98cfd01
Rust: Infer argument types based on trait bounds on parameters
2026-03-27 11:39:03 +01:00
Owen Mansel-Chan
f897575d3f
Update change note
2026-03-27 10:11:13 +00:00
Paolo Tranquilli
55b95d22e9
Merge pull request #21580 from github/dependabot/bazel/rules_shell-0.7.1
...
Bump rules_shell from 0.6.1 to 0.7.1
2026-03-27 11:08:39 +01:00
Owen Mansel-Chan
5451424e75
Rust: Fix columns for neutrals
2026-03-27 09:47:36 +00:00
Owen Mansel-Chan
886a16bfad
C++: Add provenance column
2026-03-27 09:47:34 +00:00
Owen Mansel-Chan
e680d49c93
Shared: document extensible relations rather than CSV
2026-03-27 09:47:32 +00:00
Owen Mansel-Chan
df842665b7
Rust: Add neutrals to MaD format explanation
2026-03-27 09:47:30 +00:00
Owen Mansel-Chan
805d2ec46c
Go: Add provenance to MaD format explanation
2026-03-27 09:47:28 +00:00
Owen Mansel-Chan
61b13d5702
C++: Add provenance to MaD format explanation
2026-03-27 09:47:26 +00:00
Owen Mansel-Chan
10fddc7b96
Add barriers and barrier guards to MaD format explanations
2026-03-27 09:47:24 +00:00
Michael Nebel
73360eefb3
Merge pull request #21452 from michaelnebel/csharp/expandedassignment
...
C#: Remove expanded assignments.
2026-03-27 09:18:55 +01:00
yoff
08e115056d
Merge pull request #21519 from github/tausbn/python-port-no-alert-change
2026-03-27 08:44:28 +01:00
Taus
c9832c330a
Python: Convert BindToAllInterfaces to path-problem
...
Now that we're using global data-flow, we might as well make use of the
fact that we know where the source is.
2026-03-26 21:10:43 +00:00
Henry Mercer
4f79d6a2de
Merge branch 'main' into henrymercer/yaml-regression-test
2026-03-26 19:36:21 +00:00
Michael Nebel
c4c363d4e5
Merge pull request #21589 from michaelnebel/csharp/updateintegrationtests
...
C#: Update integration tests to use SDK 10.0.201.
2026-03-26 19:51:22 +01:00
Mathias Vorreiter Pedersen
56153d583e
C++: Switch to doublyBoundedFastTC when computing virtual dispatch edges and inline pairCand to avoid a giant tuple explosion.
2026-03-26 17:31:18 +00:00
Michael Nebel
1a4f333c4a
C#: Update integration tests to use SDK 10.0.201.
2026-03-26 18:07:05 +01:00
Tom Hvitved
b8a8a160c5
Rust: More type inference tests
2026-03-26 18:06:32 +01:00
Owen Mansel-Chan
8a99ef4531
Update csv model tests to use MaD
2026-03-26 16:44:58 +00:00
Owen Mansel-Chan
21ecf230ce
Small tweaks
2026-03-26 16:39:10 +00:00
Óscar San José
7a4b88fadc
Merge pull request #21586 from github/oscarsj/hotfix-2.25.1-base
...
Release 2.25.1 preparations
2026-03-26 16:36:02 +01:00
Taus
c0ce6699a5
Python: Add change note
2026-03-26 15:35:33 +00:00
Taus
c439fc5d45
Python: Replace type tracking with global data-flow
...
This takes care of most of the false negatives from the preceding
commit.
Additionally, we add models for some known wrappers of `socket.socket`
from the `gevent` and `eventlet` packages.
2026-03-26 15:35:33 +00:00
Owen Mansel-Chan
de4fe6d25c
Use inline expectations for query test
2026-03-26 15:27:17 +00:00
copilot-swe-agent[bot]
d69bcca687
Remove CSV model infrastructure from ExternalFlow.qll
...
Remove SourceModelCsv, SinkModelCsv, SummaryModelCsv classes,
single-argument CSV predicates, CSV parsing in MadInput, and
CSV-specific validation checks. Simplify MadInput to only contain
the namespace separator. Convert test models to .ext.yml format.
Agent-Logs-Url: https://github.com/github/codeql/sessions/89ff81fe-5585-446d-99e2-6fe6966495c5
Co-authored-by: owen-mc <62447351+owen-mc@users.noreply.github.com >
2026-03-26 15:07:39 +00:00
Taus
1ecd9e83b8
Python: Add test cases for BindToAllInterfaces FNs
...
Adds test cases from github/codeql#21582 demonstrating false negatives:
- Address stored in class attribute (`self.bind_addr`)
- `os.environ.get` with insecure default value
- `gevent.socket` (alternative socket module)
2026-03-26 14:57:24 +00:00
Taus
824d004a27
Python: Convert BindToAllInterfaces test to inline expectations
2026-03-26 14:56:57 +00:00
Óscar San José
fe565baf06
Apply suggestions from code review
...
Co-authored-by: Óscar San José <oscarsj@github.com >
2026-03-26 15:54:35 +01:00
Owen Mansel-Chan
64a52ba07f
Update test that uses zmq models
2026-03-26 14:53:33 +00:00
Óscar San José
a5be35170b
Missing file
2026-03-26 15:26:16 +01:00
Owen Mansel-Chan
6769f08f93
Remove blank line at end of file
2026-03-26 14:10:15 +00:00
Paolo Tranquilli
2a3d2b882d
Merge branch 'main' into redsun82/update-kotlin-2.3.20
2026-03-26 14:59:59 +01:00
Paolo Tranquilli
4e6d94bc4f
Kotlin: reinstante trailing whitespace
2026-03-26 14:59:49 +01:00
Tom Hvitved
c66679c03b
Merge pull request #21564 from hvitved/rust/type-inference-additional-constraints
...
Rust: Take additional type parameter constraints into account
2026-03-26 14:38:06 +01:00
Michael Nebel
41bb349a9b
C#: Improve the downgrade script.
2026-03-26 14:34:54 +01:00
Óscar San José
805c2c3c3c
Merge remote-tracking branch 'origin/codeql-cli-2.25.1' into oscarsj/hotfix-2.25.1-base
2026-03-26 14:29:44 +01:00
Florin Coada
8382a352d4
Merge pull request #21558 from github/codeql-spark-run-23458057791
...
Update changelog documentation site for codeql-cli-2.25.0
2026-03-26 13:45:50 +01:00
Óscar San José
b2d9a600e5
Merge pull request #21486 from github/post-release-prep/codeql-cli-2.25.0
...
Post-release preparation for codeql-cli-2.25.0
2026-03-26 13:45:15 +01:00
copilot-swe-agent[bot]
a6377145ac
Convert C++ CSV models from QL files to .model.yml data extensions
...
Migrate ZeroMQ models from ZMQ.qll and getc-family source models
from Gets.qll into new .model.yml files in the ext/ directory.
Agent-Logs-Url: https://github.com/github/codeql/sessions/da8f5e5b-35f7-47a4-afa0-750616e3df5b
Co-authored-by: owen-mc <62447351+owen-mc@users.noreply.github.com >
2026-03-26 12:38:19 +00:00
copilot-swe-agent[bot]
4748c4a4f5
Initial plan
2026-03-26 12:31:21 +00:00
Paolo Tranquilli
c2e1ae3b9c
Kotlin: accept test changes
2026-03-26 12:20:59 +01:00
Michael Nebel
a5f27b8f19
C#: Add change-note.
2026-03-26 11:52:42 +01:00
Paolo Tranquilli
ded6968558
Kotlin: update to 2.3.20
2026-03-26 11:43:37 +01:00
Henry Mercer
389630a95d
Merge branch 'main' into henrymercer/yaml-regression-test
2026-03-26 10:40:17 +00:00
Michael Nebel
a402ce59f4
C#: Fix bad join in cs/coalesce-of-identical-expressions.
2026-03-26 10:45:02 +01:00
Paolo Tranquilli
e0bc18c228
Add changenote for false positive sink model removals
2026-03-26 09:19:34 +01:00
Paolo Tranquilli
e807545591
Remove false positive docker/build-push-action context sink model
...
The `context` input is passed as a single array element through
`docker/actions-toolkit` and `@actions/exec` all the way to
`child_process.spawn()`, which does not perform shell splitting.
No code injection is possible.
Fixes https://github.com/github/codeql/issues/21428
2026-03-26 09:08:34 +01:00
dependabot[bot]
94ad234a28
Bump rules_shell from 0.6.1 to 0.7.1
...
Bumps [rules_shell](https://github.com/bazel-contrib/rules_shell ) from 0.6.1 to 0.7.1.
- [Release notes](https://github.com/bazel-contrib/rules_shell/releases )
- [Commits](https://github.com/bazel-contrib/rules_shell/compare/v0.6.1...v0.7.1 )
---
updated-dependencies:
- dependency-name: rules_shell
dependency-version: 0.7.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-26 03:07:47 +00:00
Óscar San José
970b57cbe7
Merge pull request #21578 from github/release-prep/2.25.1
...
Release preparation for version 2.25.1
2026-03-26 00:51:30 +01:00
github-actions[bot]
fb011842c9
Release preparation for version 2.25.1
2026-03-25 23:43:06 +00:00
Jeroen Ketema
ab1f0c13e5
C++: Update expected test results
2026-03-25 16:36:31 +01:00
Jeroen Ketema
ef780c15fb
C++: NSDMI fixes
...
* Do not generate IR for field initializers from uninstantiated templates.
* Add forgotten case to `TranslatedDeclarationEntry`
2026-03-25 16:34:02 +01:00
Jeroen Ketema
346ab9d623
C++: Add struct and variable template tests
2026-03-25 16:31:28 +01:00
Michael Nebel
147ac37fec
C#: Add downgrade script.
2026-03-25 16:09:39 +01:00
Michael Nebel
29acd6960f
C#: Add upgrade script.
2026-03-25 16:09:26 +01:00
Tom Hvitved
09a2dd4a2e
Update rust/ql/lib/codeql/rust/internal/typeinference/FunctionType.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-25 15:01:39 +01:00
Paolo Tranquilli
6c52de9234
Merge pull request #21566 from github/redsun82/csharp-opt-out-of-dotnet-telemetry
...
C#: Opt out of dotnet CLI telemetry
2026-03-25 14:55:33 +01:00
Tom Hvitved
c579ec9ea7
Merge pull request #21575 from hvitved/rust/model-generator-taint-steps
...
Rust: Include taint steps when generating flow models
2026-03-25 14:41:36 +01:00
Owen Mansel-Chan
898713538f
Merge pull request #21563 from owen-mc/rust/allow-mad-barriers
...
Rust: Enable MaD barriers for queries with MaD sinks
2026-03-25 12:55:31 +00:00
Tom Hvitved
fba4a83dc8
Rust: Include taint steps when generating flow models
2026-03-25 12:52:08 +01:00
Owen Mansel-Chan
f25d7456da
Fix QL formatting
2026-03-25 10:05:04 +00:00
Paolo Tranquilli
55d16e8781
Remove false-positive command-injection sink model for step-security/harden-runner
...
The `allowed-endpoints` input only flows to `execFileSync("echo", [content])`
(no shell) and `fs.writeFileSync` (JSON config), neither of which is a
command injection vector.
Fixes https://github.com/github/codeql/issues/21568
2026-03-25 10:58:16 +01:00
Óscar San José
851315fb93
Merge pull request #21573 from github/release-prep/2.25.1
...
Release preparation for version 2.25.1
2026-03-25 10:55:04 +01:00
Tom Hvitved
6295f57a87
Rust: Take additional type parameter constraints into account
2026-03-25 10:11:04 +01:00
github-actions[bot]
8cf0954796
Release preparation for version 2.25.1
2026-03-25 08:28:30 +00:00
Owen Mansel-Chan
bedfe1e755
Apply suggestions from code review
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2026-03-24 22:06:53 +00:00
Henry Mercer
c9fcdf3e80
JS: Add regression test for YAML extraction
...
SnakeYAML 2.3 has [a bug](https://bitbucket.org/snakeyaml/snakeyaml/issues/1098 ) where it crashes with an `IndexOutOfBoundsException` when a Unicode surrogate pair (e.g. an emoji) straddles the 1024 character internal buffer boundary. This happens because the high surrogate can end up as the last character in the data window, and the reader tries to read the low surrogate past the end of the buffer.
This caused languages that extract YAML, most notably JavaScript and Actions, to fail when the codebase contained a YAML file with an emoji at an unlucky position in the file.
2026-03-24 18:47:52 +00:00
Simon Friis Vindum
0ed037d667
Merge pull request #21544 from paldepind/cpp/extraction-information-expr-types
...
C++: Add expressions with type data to `cpp/extraction-information`
2026-03-24 17:16:47 +01:00
Jeroen Ketema
dad517ff5e
C++: Fix typo
2026-03-24 16:16:14 +01:00
Jeroen Ketema
db7c61969d
Update cpp/ql/lib/change-notes/2026-03-24-field-init.md
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-24 16:11:10 +01:00
Jeroen Ketema
49c5cc05ac
Update cpp/ql/lib/semmle/code/cpp/ir/implementation/raw/internal/TranslatedCall.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-24 16:09:33 +01:00
Simon Friis Vindum
8cb5380d84
C++: Remove unused find predicate
2026-03-24 15:54:46 +01:00
Tom Hvitved
ddc407257f
Rust: Type inference test
2026-03-24 15:41:43 +01:00
Jeroen Ketema
0f44d6a780
C++: Add change note
2026-03-24 15:39:09 +01:00
Jeroen Ketema
4a637cbe0a
C++: Accept dataflow test changes
...
These need to be looked at, but because data flow through default field
initialization is currently not working, let's postpone this as part of that
work.
2026-03-24 15:34:34 +01:00
Jeroen Ketema
b554d7dd16
C++: Fix QL-for-QL warnings
2026-03-24 15:33:35 +01:00
Jeroen Ketema
f3fc80a080
C++: Update expected test results
2026-03-24 15:33:34 +01:00
Jeroen Ketema
22eda4ef0a
C++: Add call side effects for default field initializations to the IR
2026-03-24 15:33:32 +01:00
Jeroen Ketema
e986d8922a
C++: Call functions for NSDMI initialization
...
Currently missing: side-effect information for the functions
2026-03-24 15:33:30 +01:00
Jeroen Ketema
b91a52a050
C++: Allow getInstructionFunction to yield a declaration
2026-03-24 15:33:29 +01:00
Jeroen Ketema
9e60e1217f
C++: Update expected test results
2026-03-24 15:33:27 +01:00
Jeroen Ketema
09f930f4e8
C++: Generate initialization function for each NSDMI
2026-03-24 15:33:25 +01:00
Jeroen Ketema
68039ecd68
C++: Add NSDMI dataflow test
2026-03-24 15:33:24 +01:00
Jeroen Ketema
59c27a2196
C++: Add NSDMI tests
2026-03-24 15:33:22 +01:00
Jeroen Ketema
07603a835a
C++: Rename CallOrAllocationExpr to something more generic
2026-03-24 15:33:20 +01:00
Jeroen Ketema
5aabd90eff
C++: Add direct and default initialization subclasses for ConstructorFieldInit
2026-03-24 15:32:58 +01:00
Michael Nebel
d96e8cb704
C#: Remove expr_parent_adjusted.
2026-03-24 15:32:20 +01:00
Michael Nebel
a900fe8657
C#: Adress review comments.
2026-03-24 15:32:17 +01:00
Michael Nebel
3d2d09d0bc
C#: Use the DB types and replace the abstract class implementation.
2026-03-24 15:32:15 +01:00
Michael Nebel
96f55fbdf1
C#: Add operation types to the DB scheme.
2026-03-24 15:32:13 +01:00
Michael Nebel
55516342b2
C#: Add/update tests and expected output.
2026-03-24 15:32:11 +01:00
Michael Nebel
51673312c5
C#: Upgrade libraries and queries to use the new Operation classes.
2026-03-24 15:32:08 +01:00
Michael Nebel
149df86ce2
C#: Update the CFG implementation based on the new operations and remove hack that rotates children of assignments.
2026-03-24 15:32:06 +01:00
Michael Nebel
569e33b407
C#: Introduce a new kind of assignable definitions for compound assignments (those that was previously covered by expanded assignments).
2026-03-24 15:32:04 +01:00
Michael Nebel
e2afb000b2
C#: Cleaup expanded assignments from the dispatch logic.
2026-03-24 15:32:02 +01:00
Michael Nebel
2a78183238
C#: Deprecate the expanded assignment predicate as we no longer extract expanded assignments.
2026-03-24 15:32:00 +01:00
Michael Nebel
327757dbcb
C#: Update the child indices for assignments, update Assign classes to extend OperatorCall and add AssignOperation classes.
2026-03-24 15:31:57 +01:00
Michael Nebel
b426c6fb39
C#: Update the DB scheme to reflect that assign arithmetic- and bitwise operations are operator calls.
2026-03-24 15:31:55 +01:00
Michael Nebel
c8169f576f
C#: Don't extract expanded assignments and swap child indices for assignments.
2026-03-24 15:31:53 +01:00
Paolo Tranquilli
14b3f6211e
C#: Opt out of dotnet CLI telemetry
...
Add `DOTNET_CLI_TELEMETRY_OPTOUT=1` to the minimal environment used for
all `dotnet` invocations. The telemetry is unnecessary and may even be
causing segfaults in some cases.
2026-03-24 14:16:49 +01:00
Taus
059693ce89
Python: Restrict ShouldBeContextManager.ql results
...
By limiting the results to the class that actually defines the `__del__`
method, we eliminate a bunch of FPs where a _subclass_ of such a class
would also get flagged.
2026-03-24 13:04:44 +00:00
Florin Coada
70d8c1c76e
Merge pull request #21558 from github/codeql-spark-run-23458057791
...
Update changelog documentation site for codeql-cli-2.25.0
2026-03-24 12:54:23 +00:00
Taus
f245da1e52
Merge pull request #21560 from github/tausbn/cpp-fix-bad-join-in-printf
...
C++: Fix bad join in `callsVariadicFormatter`
2026-03-24 13:37:23 +01:00
Owen Mansel-Chan
7e6319d648
Remove unused field
2026-03-24 10:39:32 +00:00
Owen Mansel-Chan
93231794ee
Document that MaD barriers for hardcoded credentials apply to all kinds
2026-03-24 10:39:05 +00:00
Owen Mansel-Chan
5762191832
Enable MaD barriers for queries with MaD sinks
2026-03-24 10:28:25 +00:00
Owen Mansel-Chan
fd8821fcb5
Merge pull request #21475 from owen-mc/rust/mad-barriers
...
Rust: Add support for defining barriers and barrier guards using models-as-data
2026-03-24 09:31:24 +00:00
Tom Hvitved
cc99867969
Merge pull request #21511 from hvitved/ruby/empty-stats
...
Ruby: Use empty DB stats
2026-03-24 08:25:43 +01:00
Taus
2e76f3471a
C++: Fix bad join in callsVariadicFormatter
...
On `wireshark` this reduces the intermediate tuple count from roughly 88
million tuples to roughly 3000 (with the new helper predicate
materialising ~300 tuples).
2026-03-23 23:17:22 +00:00
github-actions[bot]
19424627c1
update codeql documentation
2026-03-23 20:19:09 +00:00
Mathias Vorreiter Pedersen
680ea0b960
Merge pull request #21552 from MathiasVP/more-public-dataflow-apis
...
C++: Expose indirect instructions and indirect parameters in dataflow
2026-03-23 17:46:14 +00:00
Mario Campos
a5763303fc
Merge pull request #21557 from github/rc/3.21
...
Merge back remaining changes from rc/3.21
2026-03-23 12:28:34 -05:00
Owen Mansel-Chan
8d16a2b4fa
Fix parameter -> argument in QLDoc
2026-03-23 16:24:03 +00:00
Owen Mansel-Chan
97ebc0e839
Update QLDoc in FlowBarrier.qll
2026-03-23 16:22:27 +00:00
Owen Mansel-Chan
d82fc67b36
Fix QLDoc formatting
2026-03-23 16:11:22 +00:00
Taus
ac48eca916
Python: Use cls.getMethod instead of getName
2026-03-23 15:26:00 +00:00
Taus
93e35661e6
Python: Make isNewType more precise
...
For module-level metaclass declarations, we now also check that the
right hand side in a `__metaclass__ = type` assignment is in fact the
built-in `type`.
2026-03-23 15:22:24 +00:00
Taus
a276f721f7
Python: Add ternary overridesMethod
...
This one also allows easy access to the method being overridden and the
class on which it resides. This let's us simplify DocStrings.ql
accordingly.
2026-03-23 15:21:27 +00:00
Taus
1ffcdc9293
Python: Select property instead of function
...
in PropertyInOldStyleClass. This matches the previous behaviour more
closely.
2026-03-23 14:55:28 +00:00
Taus
56c83e250e
Python: Make comment more precise
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-23 15:09:27 +01:00
Taus
5859590b5d
Python: Fix typo in comment
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-23 15:07:31 +01:00
Mathias Vorreiter Pedersen
8cebf510dc
C++: Reword the change note from #21458 .
2026-03-23 13:45:46 +00:00
Mathias Vorreiter Pedersen
b5723bd75d
Merge branch 'main' into more-public-dataflow-apis
2026-03-23 13:43:01 +00:00
Mathias Vorreiter Pedersen
fef314e27f
C++: Add change note.
2026-03-23 13:39:15 +00:00
Mathias Vorreiter Pedersen
1363c54a9f
C++: Add 'asIndirectInstruction' as a public predicate.
2026-03-23 13:28:33 +00:00
Mathias Vorreiter Pedersen
09caeca7e9
C++: Move parameter indirection nodes into the public API.
2026-03-23 13:27:20 +00:00
Geoffrey White
39056e4477
C++: Change note.
2026-03-23 12:28:17 +00:00
Geoffrey White
5a77128a8b
C++: Disable cpp/implicit-function-declaration on BMN databases.
2026-03-23 11:27:15 +00:00
Simon Friis Vindum
c67122b3f1
C++: Add expressions with type data to cpp/extraction-information
2026-03-23 12:14:11 +01:00
Tom Hvitved
0d0d34cc71
Merge pull request #21498 from Gregro/csharp/fix-log-forging-extension-methods
...
C#: Fix false positives in cs/log-forging for extension methods
2026-03-23 11:24:12 +01:00
Jeroen Ketema
be245357cc
Merge pull request #21458 from github/jeongsoolee09/add-getIndirectionIndex
...
Add `IndirectUninitializedNode` and related helper predicates
2026-03-23 11:03:57 +01:00
Jeroen Ketema
ee00b98476
Update cpp/ql/lib/change-notes/2026-03-20-add-indirect-uninitialized-node.md
2026-03-23 10:44:21 +01:00
Jeongsoo Lee
6ae32f22a8
Merge branch 'main' into jeongsoolee09/add-getIndirectionIndex
2026-03-22 11:51:14 -04:00
Gregro
a59c865328
let interprocedural analysis handle source-available extension methods for LogForgingLogMessageSink's
2026-03-21 20:05:08 +00:00
Gregro
d0c48893f5
update test helper to use more robust .ReplaceLineEndings() sanitizer
2026-03-21 20:05:08 +00:00
Gregro
d99247cf13
Clarify static extension method class name
2026-03-21 20:05:08 +00:00
Gregro
a9eb801fea
C#: Fix false positives in cs/log-forging for extension methods
2026-03-21 20:05:08 +00:00
Tom Hvitved
9a4bc69843
Merge pull request #21510 from hvitved/ci/remove-ruby-checks
...
CI: Remove Ruby checks
2026-03-21 08:04:17 +01:00
Jeongsoo Lee
d4fef1c68e
Merge branch 'main' into jeongsoolee09/add-getIndirectionIndex
2026-03-20 10:01:05 -07:00
Jeongsoo Lee
d2fcced5ad
Add a feature change note
2026-03-20 09:59:12 -07:00
Owen Mansel-Chan
093c27955f
Fix incorrect QLDoc
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-20 15:24:15 +00:00
Tom Hvitved
f99f26f908
Merge pull request #21464 from hvitved/rust/type-inference-trait-bound-impl-overlap
...
Rust: Disambiguate types inferred from trait bounds
2026-03-20 15:14:24 +01:00
Taus
434b3973eb
Python: Add change note
2026-03-20 13:30:29 +00:00
Taus
3584ad1905
Python: Port DeprecatedSliceMethod.ql
...
Only trivial test changes.
2026-03-20 13:30:29 +00:00
Taus
50b3b7ee1f
Python: Add DuckTyping::hasUnreliableMro
...
Primarily used to filter out false positives in cases where our MRO
approximation may be wrong.
2026-03-20 13:30:29 +00:00
Taus
fa8e4f7314
Python: Port DocStrings.ql
2026-03-20 13:28:45 +00:00
Taus
c04b615a07
Python: Extend DuckTyping module
...
Adds `overridesMethod` and `isPropertyAccessor`.
2026-03-20 13:28:45 +00:00
Taus
283231bdbc
Python: Port ShouldBeContextManager.ql
...
Only trivial test changes.
2026-03-20 13:28:45 +00:00
Taus
025a7d0cca
Python: Port UselessClass.ql
...
No test changes.
2026-03-20 13:28:45 +00:00
Taus
8cfdea2001
Python: Port PropertyInOldStyleClass.ql
...
Only trivial test changes.
2026-03-20 13:28:45 +00:00
Taus
e860d706c9
Python: Port SuperInOldStyleClass.ql
2026-03-20 13:28:45 +00:00
Taus
3d20050c0a
Python: Port SlotsInOldStyleClass.ql
...
Only trivial test changes.
2026-03-20 13:28:45 +00:00
Taus
b57e92164c
Python: Add declares/getAttribute API
...
These could arguably be moved to `Class` itself, but for now I'm
choosing to limit the changes to the `DuckTyping` module (until we
decide on a proper API).
2026-03-20 13:28:45 +00:00
Taus
cd92162920
Python: Add DuckTyping::isNewStyle
...
Approximates the behaviour of `Types::isNewStyle` but without depending
on points-to
2026-03-20 13:28:45 +00:00
Taus
33ed6034f6
Python: Introduce DuckTyping module
...
This module (which for convenience currently resides inside
`DataFlowDispatch`, but this may change later) contains convenience
predicates for bridging the gap between the data-flow layer and the old
points-to analysis.
2026-03-20 13:28:44 +00:00
Taus
1dcc76996d
Python: Port py/print-during-import
...
Uses a (perhaps) slightly coarser approximation of what modules are
imported, but it's probably fine.
2026-03-20 13:28:44 +00:00
Taus
f4841e1f39
Python: Use API graphs instead of points-to for simple built-ins
...
Also extends the list of known built-ins slightly, to add some that were
missing.
2026-03-20 13:28:44 +00:00
Simon Friis Vindum
f6c81ff30a
Merge pull request #21512 from paldepind/cpp/extraction-information
...
C++: Add `cpp/extraction-information` query
2026-03-20 14:12:59 +01:00
Tom Hvitved
4b364639a2
Ruby: Fix join orders following DB stats removal
2026-03-20 13:13:38 +01:00
Owen Mansel-Chan
bde9378cee
Update MaD barrier guard test output
2026-03-20 11:10:08 +00:00
Owen Mansel-Chan
769b3a6aae
Instantiate flow barrier guards from MaD
2026-03-20 11:08:53 +00:00
Owen Mansel-Chan
7d65baccb2
Add FlowBarrierGuard to FlowBarrier.qll
2026-03-20 11:08:33 +00:00
Owen Mansel-Chan
77cb35380c
Add MaD barrier guard model to make test pass
2026-03-20 11:06:41 +00:00
Owen Mansel-Chan
c5457d3e30
Add (failing) test for MaD barrier guard
2026-03-20 11:06:39 +00:00
Owen Mansel-Chan
2f0d3288ce
Misc: fix typos in QLDocs
2026-03-20 11:06:38 +00:00
Owen Mansel-Chan
93c656065d
Add test for MaD barriers
2026-03-20 11:06:36 +00:00
Owen Mansel-Chan
e86ce8feed
Instantiate flow barriers from MaD
2026-03-20 11:06:35 +00:00
Owen Mansel-Chan
d3177b9e82
Add FlowBarrier.qll
2026-03-20 11:06:33 +00:00
Owen Mansel-Chan
f4550544ce
Shared: Add barrierElement in FlowSummaryImpl.qll
2026-03-20 11:06:32 +00:00
Owen Mansel-Chan
f9521e9e88
Update interpretModelForTest
2026-03-20 11:06:30 +00:00
Owen Mansel-Chan
f342bae962
Update empty.model.yml
2026-03-20 11:06:29 +00:00
Owen Mansel-Chan
bceab0b44e
Add extensible predicates
2026-03-20 11:06:26 +00:00
Jeroen Ketema
02f8984aff
Merge pull request #21522 from jketema/swift-linux-test
...
Swift: Fix typo
2026-03-20 12:04:27 +01:00
Jeroen Ketema
b63e34d467
Swift: Fix typo
2026-03-20 11:34:19 +01:00
Óscar San José
ec726f5941
Merge pull request #21486 from github/post-release-prep/codeql-cli-2.25.0
...
Post-release preparation for codeql-cli-2.25.0
2026-03-20 11:23:20 +01:00
Geoffrey White
208ae7aa01
Merge pull request #21514 from geoffw0/suspicioussizeof
...
C++: Fix an issue with cpp/suspicious-add-sizeof in BMN databases
2026-03-20 09:41:39 +00:00
Geoffrey White
be746b775b
Merge pull request #21493 from MarkLee131/fix/format-string-fp-in-printf-impl
...
C++: exclude printf implementation internals from uncontrolled format string sinks
2026-03-20 09:21:48 +00:00
Simon Friis Vindum
bc518c08c7
C++: Fix grammar in comment
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-20 09:19:59 +01:00
Paolo Tranquilli
06ea72ccc7
Merge pull request #21517 from github/dependabot/bazel/bazel_skylib-1.9.0
...
Bump bazel_skylib from 1.8.1 to 1.9.0
2026-03-20 09:18:44 +01:00
Paolo Tranquilli
57086f60b9
Merge pull request #21518 from github/dependabot/bazel/rules_java-9.6.1
...
Bump rules_java from 9.0.3 to 9.6.1
2026-03-20 09:18:16 +01:00
Kaixuan Li
6452cc549f
Merge branch 'github:main' into fix/format-string-fp-in-printf-impl
2026-03-20 10:15:56 +08:00
Kaixuan Li
f59bacab30
Merge pull request #1 from geoffw0/changenote
...
C++: Change note.
2026-03-20 10:14:24 +08:00
Jeongsoo Lee
356905ba36
Merge branch 'jeongsoolee09/add-getIndirectionIndex' of github.com:github/codeql into jeongsoolee09/add-getIndirectionIndex
2026-03-19 15:51:37 -07:00
Jeongsoo Lee
dc291ffad7
Address code review
2026-03-19 15:51:00 -07:00
Jeongsoo Lee
d191d09c55
Apply suggestions from code review
...
Co-authored-by: Jeroen Ketema <93738568+jketema@users.noreply.github.com >
2026-03-19 15:48:47 -07:00
Geoffrey White
9c6276ef48
C++: Change note.
2026-03-19 16:24:35 +00:00
Tom Hvitved
21f2c81f24
Merge pull request #21509 from hvitved/ci/remove-compile-queries
...
CI: Remove `compile-queries.yml`
2026-03-19 17:21:09 +01:00
Óscar San José
d30aab47ea
Merge branch 'main' into post-release-prep/codeql-cli-2.25.0
2026-03-19 16:57:20 +01:00
dependabot[bot]
fef758998c
Bump rules_java from 9.0.3 to 9.6.1
...
Bumps [rules_java](https://github.com/bazelbuild/rules_java ) from 9.0.3 to 9.6.1.
- [Release notes](https://github.com/bazelbuild/rules_java/releases )
- [Commits](https://github.com/bazelbuild/rules_java/compare/9.0.3...9.6.1 )
---
updated-dependencies:
- dependency-name: rules_java
dependency-version: 9.6.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-19 15:48:18 +00:00
dependabot[bot]
b9592fef2d
Bump bazel_skylib from 1.8.1 to 1.9.0
...
Bumps [bazel_skylib](https://github.com/bazelbuild/bazel-skylib ) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/bazelbuild/bazel-skylib/releases )
- [Changelog](https://github.com/bazelbuild/bazel-skylib/blob/main/CHANGELOG.md )
- [Commits](https://github.com/bazelbuild/bazel-skylib/compare/1.8.1...1.9.0 )
---
updated-dependencies:
- dependency-name: bazel_skylib
dependency-version: 1.9.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-19 15:48:11 +00:00
Paolo Tranquilli
7a33e2f539
Merge pull request #21508 from github/dependabot/bazel/rules_pkg-1.2.0
...
Bump rules_pkg from 1.0.1 to 1.2.0
2026-03-19 16:27:45 +01:00
Paolo Tranquilli
34101b5ca0
Merge pull request #21448 from github/redsun82/update-rules-rust
...
Update `rules_rust` 0.68.1.codeql.1 → 0.69.0, drop local patch
2026-03-19 16:16:34 +01:00
Geoffrey White
07db9cf3c4
Merge pull request #21421 from geoffw0/wrongtypeformat
...
C++: Add some test cases for cpp/wrong-type-format-argument
2026-03-19 14:25:33 +00:00
Geoffrey White
92c9a8e146
Update cpp/ql/test/query-tests/Security/CWE/CWE-468/semmle/SuspiciousAddWithSizeof/buildless.cpp
2026-03-19 13:51:03 +00:00
Geoffrey White
21cb11ea5d
C++: Change note.
2026-03-19 13:29:41 +00:00
Simon Friis Vindum
4c525ce7ab
C++: Add cpp/extraction-information query
2026-03-19 14:29:31 +01:00
Geoffrey White
0f794b57ed
C++: Fix the issue.
2026-03-19 13:16:16 +00:00
Geoffrey White
2e987f8d78
C++: Add test cases emulating cpp/suspicious-add-sizeof in buildless mode.
2026-03-19 13:00:58 +00:00
Óscar San José
2139b97628
Merge branch 'main' into post-release-prep/codeql-cli-2.25.0
2026-03-19 13:07:00 +01:00
Tom Hvitved
7fc1d53ede
Rust: Disambiguate types inferred from trait bounds
2026-03-19 12:57:22 +01:00
Paolo Tranquilli
50d83ada95
Merge branch 'main' into redsun82/update-rules-rust
2026-03-19 12:50:00 +01:00
dependabot[bot]
10678d3a42
Bump rules_pkg from 1.0.1 to 1.2.0
...
Bumps [rules_pkg](https://github.com/bazelbuild/rules_pkg ) from 1.0.1 to 1.2.0.
- [Release notes](https://github.com/bazelbuild/rules_pkg/releases )
- [Changelog](https://github.com/bazelbuild/rules_pkg/blob/main/CHANGELOG.md )
- [Commits](https://github.com/bazelbuild/rules_pkg/compare/1.0.1...1.2.0 )
---
updated-dependencies:
- dependency-name: rules_pkg
dependency-version: 1.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-19 11:31:03 +00:00
Paolo Tranquilli
7d538988a6
Merge pull request #21507 from github/dependabot/bazel/rules_go-0.60.0
...
Bump rules_go from 0.59.0 to 0.60.0
2026-03-19 12:29:17 +01:00
dependabot[bot]
7f17b7716d
Bump rules_go from 0.59.0 to 0.60.0
...
Bumps [rules_go](https://github.com/bazel-contrib/rules_go ) from 0.59.0 to 0.60.0.
- [Release notes](https://github.com/bazel-contrib/rules_go/releases )
- [Commits](https://github.com/bazel-contrib/rules_go/compare/v0.59.0...v0.60.0 )
---
updated-dependencies:
- dependency-name: rules_go
dependency-version: 0.60.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-19 10:43:19 +00:00
Paolo Tranquilli
b57fa1bffa
Merge pull request #21505 from github/dependabot/bazel/rules_cc-0.2.17
...
Bump rules_cc from 0.2.16 to 0.2.17
2026-03-19 11:41:28 +01:00
dependabot[bot]
662b1e7df6
Bump rules_cc from 0.2.16 to 0.2.17
...
Bumps [rules_cc](https://github.com/bazelbuild/rules_cc ) from 0.2.16 to 0.2.17.
- [Release notes](https://github.com/bazelbuild/rules_cc/releases )
- [Commits](https://github.com/bazelbuild/rules_cc/compare/0.2.16...0.2.17 )
---
updated-dependencies:
- dependency-name: rules_cc
dependency-version: 0.2.17
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-19 10:02:30 +00:00
Tom Hvitved
750f1ae8e9
Ruby: Use empty DB stats
2026-03-19 10:18:42 +01:00
Tom Hvitved
e0b06c8e72
CI: Remove Ruby checks
...
Have been superseded by an internal checks.
2026-03-19 10:15:36 +01:00
Tom Hvitved
8d6aceb008
CI: Remove compile-queries.yml
...
Has been superseded by an internal check.
2026-03-19 10:10:38 +01:00
Tom Hvitved
3fad6bdc0c
Merge pull request #21495 from hvitved/rust/fix-bad-joins
...
Rust: Fix two bad joins
2026-03-19 09:53:22 +01:00
Paolo Tranquilli
518d170acd
Merge pull request #21499 from github/redsun82/dependabot-exclude-bazel-registry
...
Dependabot: ignore modules in our bazel registry
2026-03-19 09:25:28 +01:00
Paolo Tranquilli
b9ad36c11d
Depdendabot: ignore modules in the our bazel registry
...
These come from the upstream registry and should just be left alone.
2026-03-19 09:15:25 +01:00
Paolo Tranquilli
4ca071210b
Merge branch 'main' into redsun82/update-rules-rust
2026-03-19 08:36:31 +01:00
Kaixuan Li
1ddf81c58c
Merge branch 'main' into fix/format-string-fp-in-printf-impl
2026-03-19 14:36:50 +08:00
Kaixuan Li
c155394f25
the [] syntax directly
...
Co-authored-by: Geoffrey White <40627776+geoffw0@users.noreply.github.com >
2026-03-19 14:36:28 +08:00
Kaixuan Li
2c76e6e637
use American spellings in documentation
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-03-19 14:35:45 +08:00
Tom Hvitved
2ff5c2c234
Rust: Fix two bad joins
...
Before
```
Evaluated relational algebra for predicate TypeInference::DeconstructionPatMatchingInput::Access.getNodeAt/1#dispred#cc149bc2@88f6f09n with tuple counts:
142521 ~1% {3} r1 = JOIN num#FunctionType::TReturnFunctionPosition#a15fd6be WITH TypeInference::DeconstructionPatMatchingInput::Access#a2676dcb CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0, Rhs.0
131938 ~0% {3} r2 = JOIN `TupleStructPat::Generated::TupleStructPat.getField/1#dispred#ac9c1af6` WITH TypeInference::DeconstructionPatMatchingInput::Access#a2676dcb ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
131938 ~6% {3} | JOIN WITH `FunctionType::FunctionPosition.asPosition/0#dispred#efcc0611_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.2
3071346 ~0% {2} r3 = SCAN `Name::Generated::Name.getText/0#dispred#107a5a39` OUTPUT In.1, In.0
103064442 ~2% {3} | JOIN WITH `StructPat::StructPat.getPatField/1#5e21ea0e_102#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Rhs.2
103064442 ~3% {3} | JOIN WITH TypeInference::DeconstructionPatMatchingInput::Access#a2676dcb ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
103064438 ~1% {3} | JOIN WITH `StructPatField::Generated::StructPatField.getPat/0#dispred#1aadfeff` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Rhs.1
20514858 ~2% {3} | JOIN WITH `StructField::Generated::StructField.getName/0#dispred#e0248569_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.2
59554 ~1% {3} | JOIN WITH `StructPat::StructPat.getNthStructField/1#dispred#de537654_021#join_rhs` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2
59542 ~0% {3} | JOIN WITH `FunctionType::FunctionPosition.asPosition/0#dispred#efcc0611_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.2
334001 ~0% {3} r4 = r1 UNION r2 UNION r3
return r4
Evaluated relational algebra for predicate TypeInference::ConstructionMatchingInput::Access.getNodeAt/1#dispred#acd835e6@bfb1f1e1 with tuple counts:
1395153 ~3% {3} r1 = JOIN TypeInference::ConstructionMatchingInput::PathExprAccess#b7a80c43 WITH num#FunctionType::TReturnFunctionPosition#a15fd6be CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0, Lhs.0
34290 ~3% {3} r2 = JOIN StructExpr::Generated::StructExpr#d0a89c56 WITH num#FunctionType::TReturnFunctionPosition#a15fd6be CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0, Lhs.0
3071346 ~0% {2} r3 = SCAN `Name::Generated::Name.getText/0#dispred#107a5a39` OUTPUT In.1, In.0
145365745 ~0% {3} | JOIN WITH `StructExpr::StructExpr.getFieldExpr/1#cd55566d_102#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Rhs.2
145365745 ~1% {3} | JOIN WITH StructExpr::Generated::StructExpr#d0a89c56 ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
33371514 ~0% {3} | JOIN WITH `StructField::Generated::StructField.getName/0#dispred#e0248569_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.2
108831 ~0% {3} | JOIN WITH `StructExpr::StructExpr.getNthStructField/1#dispred#89ad7e20_021#join_rhs` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2
108751 ~0% {3} | JOIN WITH `FunctionType::FunctionPosition.asPosition/0#dispred#efcc0611_10#join_rhs` ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
108751 ~4% {3} | JOIN WITH `StructExprField::Generated::StructExprField.getExpr/0#dispred#956e6ba1` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Rhs.1
1748398 ~4% {3} r4 = `TypeInference::ConstructionMatchingInput::NonAssocCallAccess.getNodeAt/1#dispred#ef232b1f` UNION r1 UNION r2 UNION r3
return r4
```
After
```
Evaluated relational algebra for predicate TypeInference::DeconstructionPatMatchingInput::Access.getNodeAt/1#dispred#cc149bc2@2ea6ebjs with tuple counts:
142521 ~1% {3} r1 = JOIN num#FunctionType::TReturnFunctionPosition#a15fd6be WITH TypeInference::DeconstructionPatMatchingInput::Access#a2676dcb CARTESIAN PRODUCT OUTPUT Rhs.0, Lhs.0, Rhs.0
131938 ~0% {3} r2 = JOIN `TupleStructPat::Generated::TupleStructPat.getField/1#dispred#ac9c1af6` WITH TypeInference::DeconstructionPatMatchingInput::Access#a2676dcb ON FIRST 1 OUTPUT Lhs.1, Lhs.0, Lhs.2
131938 ~6% {3} | JOIN WITH `FunctionType::FunctionPosition.asPosition/0#dispred#efcc0611_10#join_rhs` ON FIRST 1 OUTPUT Lhs.1, Rhs.1, Lhs.2
166829 ~3% {3} r3 = JOIN `_Name::Generated::Name.getText/0#dispred#107a5a39_StructField::Generated::StructField.getName/0#disp__#shared` WITH `StructPat::StructPat.getNthStructField/1#dispred#de537654_201#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Rhs.2
166817 ~2% {3} | JOIN WITH TypeInference::DeconstructionPatMatchingInput::Access#a2676dcb ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
166817 ~0% {3} | JOIN WITH `FunctionType::FunctionPosition.asPosition/0#dispred#efcc0611_10#join_rhs` ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
59542 ~0% {3} | JOIN WITH `StructPat::StructPat.getPatField/1#5e21ea0e` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2
59542 ~0% {3} | JOIN WITH `StructPatField::Generated::StructPatField.getPat/0#dispred#1aadfeff` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Rhs.1
334001 ~0% {3} r4 = r1 UNION r2 UNION r3
return r4
Evaluated relational algebra for predicate TypeInference::ConstructionMatchingInput::Access.getNodeAt/1#dispred#acd835e6@c7f267fp with tuple counts:
1395153 ~3% {3} r1 = JOIN TypeInference::ConstructionMatchingInput::PathExprAccess#b7a80c43 WITH num#FunctionType::TReturnFunctionPosition#a15fd6be CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0, Lhs.0
34290 ~3% {3} r2 = JOIN StructExpr::Generated::StructExpr#d0a89c56 WITH num#FunctionType::TReturnFunctionPosition#a15fd6be CARTESIAN PRODUCT OUTPUT Lhs.0, Rhs.0, Lhs.0
159331 ~0% {3} r3 = JOIN `_Name::Generated::Name.getText/0#dispred#107a5a39_StructField::Generated::StructField.getName/0#disp__#shared` WITH `StructExpr::StructExpr.getNthStructField/1#dispred#89ad7e20_201#join_rhs` ON FIRST 1 OUTPUT Rhs.1, Lhs.1, Rhs.2
159231 ~3% {3} | JOIN WITH StructExpr::Generated::StructExpr#d0a89c56 ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Lhs.0
159231 ~3% {3} | JOIN WITH `FunctionType::FunctionPosition.asPosition/0#dispred#efcc0611_10#join_rhs` ON FIRST 1 OUTPUT Lhs.2, Lhs.1, Rhs.1
108731 ~0% {3} | JOIN WITH `StructExpr::StructExpr.getFieldExpr/1#cd55566d` ON FIRST 2 OUTPUT Rhs.2, Lhs.0, Lhs.2
108731 ~4% {3} | JOIN WITH `StructExprField::Generated::StructExprField.getExpr/0#dispred#956e6ba1` ON FIRST 1 OUTPUT Lhs.1, Lhs.2, Rhs.1
1748378 ~4% {3} r4 = `TypeInference::ConstructionMatchingInput::NonAssocCallAccess.getNodeAt/1#dispred#ef232b1f` UNION r1 UNION r2 UNION r3
return r4
```
2026-03-18 20:42:57 +01:00
Tom Hvitved
98d8cd1d6d
Rust: Make getATypeParameterConstraint return a TypeMention again
2026-03-18 19:52:45 +01:00
Tom Hvitved
e8e46accc0
Rust: Refine AssociatedTypeTypeParameter.toString
2026-03-18 19:52:43 +01:00
Tom Hvitved
06f0c1189f
Shared: Generalize SatisfiesConstraint module
2026-03-18 19:52:41 +01:00
Tom Hvitved
082dc61620
Rust: Add type inference test
2026-03-18 19:52:39 +01:00
Tom Hvitved
2e7da72277
Merge pull request #21488 from paldepind/rust/tuple-constructor-self
...
Rust: Unify handling of struct and tuple constructors
2026-03-18 19:52:06 +01:00
Owen Mansel-Chan
5b17d8cf76
Merge pull request #21472 from owen-mc/adjust-severity/xss-log-injection
...
Adjust `@security-severity` metadata for XSS and log injection queries
2026-03-18 16:51:14 +00:00
Simon Friis Vindum
f2a0724620
Rust: Use getReturnType
2026-03-18 15:06:34 +01:00
Simon Friis Vindum
b8222167d2
Rust: Ensure that TPositionalArgumentPosition is large enough for struct expressions
2026-03-18 15:06:32 +01:00
Simon Friis Vindum
6efd844180
Rust: Rename into "construction" and "deconstruction"
2026-03-18 15:06:23 +01:00
Geoffrey White
34f405f465
C++: Update test annotations.
2026-03-18 13:13:22 +00:00
Anders Schack-Mulligen
d4a0846c6c
Merge pull request #21490 from aschackmull/csharp/enclosing-obinit
...
C#: Add ObjectInitMethod as enclosing callable for the instance initializers.
2026-03-18 10:03:18 +01:00
Simon Friis Vindum
d180900ab4
Rust: Minor improvements to documentation comments
...
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-03-17 19:01:22 +01:00
Simon Friis Vindum
97670b3674
Rust: Unify handling of struct and tuple constructors
2026-03-17 16:41:18 +01:00
MarkLee131
ff48ac5434
C++: exclude printf implementation internals from format string sinks
2026-03-17 22:45:38 +08:00
Anders Schack-Mulligen
af63e63686
C#: Accept test changes.
2026-03-17 14:12:18 +01:00
Anders Schack-Mulligen
19faf8f30b
C#: Add ObjectInitMethod as enclosing callable for the instance initializers.
2026-03-17 13:38:41 +01:00
Owen Mansel-Chan
3aaee9d981
Change @security-severity for rust/log-injection from 2.6 to 6.1
2026-03-17 12:01:05 +00:00
Tom Hvitved
8e19b05a25
Merge pull request #21355 from hvitved/rust/type-inference-unify
...
Rust: Unify call resolution logic
2026-03-17 10:38:05 +01:00
Tom Hvitved
1ac9e5a2a4
Rust: Elaborate QL doc on FunctionPosition class
2026-03-17 09:51:15 +01:00
Jeongsoo Lee
3f9ad14473
Factor out common code into an abstract private class
2026-03-16 14:11:34 -07:00
Geoffrey White
9cb1c89a02
C++: Change note.
2026-03-16 19:11:27 +00:00
Geoffrey White
a57f803b37
C++: Address false positive results.
2026-03-16 19:03:10 +00:00
Geoffrey White
1130870168
Merge remote-tracking branch 'upstream/main' into wrongtypeformat
2026-03-16 19:03:02 +00:00
Geoffrey White
8ddfee9971
Merge pull request #21457 from geoffw0/intmultlong
...
C++: Fix BMN issue with cpp/integer-multiplication-cast-to-long.
2026-03-16 19:02:16 +00:00
Geoffrey White
8df4dfb585
C++: Autoformat.
2026-03-16 16:40:27 +00:00
Geoffrey White
2f7526d70b
C++: Clarify doc comment and make build-mode: nonereferences more consistent.
2026-03-16 16:38:59 +00:00
Geoffrey White
eeb09ae389
C++: Fix typo.
2026-03-16 16:12:30 +00:00
Geoffrey White
3c4a386f3f
C++: Clarify two cases in the test.
2026-03-16 16:08:35 +00:00
github-actions[bot]
e3dbf5b022
Post-release preparation for codeql-cli-2.25.0
2026-03-16 16:03:22 +00:00
Óscar San José
72534e882b
Merge pull request #21483 from github/release-prep/2.25.0
...
Release preparation for version 2.25.0
2026-03-16 15:45:36 +01:00
Taus
a99b3f2c3b
Merge pull request #21459 from github/tausbn/python-fix-missing-relative-imports
...
Python: Fix resolution of relative imports from namespace packages
2026-03-16 14:59:44 +01:00
Taus
92718a98d0
Python: Add test for package inside namespace package
2026-03-16 12:41:09 +00:00
Taus
e70727524a
Python: Rename prints tag to flow
...
The former was a remnant of copying the setup over from
`ql/test/experimental/import-resolution/importflow.ql`.
2026-03-16 12:37:00 +00:00
github-actions[bot]
d6055754b6
Release preparation for version 2.25.0
2026-03-16 12:15:34 +00:00
Anders Schack-Mulligen
c24b43d01e
Merge pull request #21482 from aschackmull/csharp/rangeanalysis-no-split
...
C#: Remove splitting-awareness from Range Analysis.
2026-03-16 10:54:49 +01:00
Jeroen Ketema
179a4cd41a
Merge pull request #21474 from jketema/jketema/swift-linux-2
...
Swift: Ignore some DB-CHECK results on Linux
2026-03-16 10:50:05 +01:00
Anders Schack-Mulligen
a929c0bf24
C#: Remove splitting-awareness from Range Analysis.
2026-03-16 09:58:14 +01:00
Anders Schack-Mulligen
427ccee3b9
Merge pull request #21473 from aschackmull/csharp/dataflow-no-split
...
C#: Remove splitting-awareness from data flow.
2026-03-16 09:33:31 +01:00
Asger F
22f16dda85
Merge pull request #21368 from asgerf/browser-sources
...
JS: Add 'browser' source kinds
2026-03-16 09:24:54 +01:00
Anders Schack-Mulligen
db0a3e38e2
C#: Accept a few irrelevant taint steps.
2026-03-16 09:09:54 +01:00
Anders Schack-Mulligen
e7edf15031
C#: Clean up.
2026-03-16 08:51:51 +01:00
Anders Schack-Mulligen
4c77e0f315
C#: Remove splitting-awareness for local expression steps.
2026-03-16 08:51:51 +01:00
Anders Schack-Mulligen
7124cd4e6e
C#: Remove splitting-awareness for source-to-def steps.
2026-03-16 08:51:50 +01:00
Anders Schack-Mulligen
c076992b83
C#: Remove splitting-awareness in ObjectInitializerNode.
2026-03-16 08:51:49 +01:00
Anders Schack-Mulligen
659d8e7c90
C#: Remove splitting-awareness in argumentOf.
2026-03-16 08:51:49 +01:00
Anders Schack-Mulligen
1e8de0511b
C#: Remove splitting-awareness in lambda flow.
2026-03-16 08:51:48 +01:00
Anders Schack-Mulligen
bce0a4d2a7
C#: Remove splitting-awareness for store steps.
2026-03-16 08:51:48 +01:00
Anders Schack-Mulligen
2160910d56
C#: Remove splitting-awareness for read steps.
2026-03-16 08:51:47 +01:00
Anders Schack-Mulligen
a5c8a5b5f8
C#: Remove splitting-awareness for taint steps.
2026-03-16 08:51:47 +01:00
Jeongsoo Lee
f8a3ce7bf8
Merge branch 'main' into jeongsoolee09/add-getIndirectionIndex
2026-03-14 16:17:36 -07:00
Jeroen Ketema
f9f1d9eecc
Swift: Ignore some DB-CHECK results on Linux
2026-03-13 20:06:57 +01:00
Jeongsoo Lee
d3066af2e2
Create IndirectUninitializedNode and add a bridge from it to LocalVariable
...
This way the changes do not alter the meaning of `UninitializedNode`.
In the meantime, the code still provides a specialized `Node` type
`IndirectUninitializedNode` to access the nodes behind levels of
indirection.
2026-03-13 11:39:57 -07:00
Jeongsoo Lee
8c03136c25
Revert "Expose the indirection index"
...
This reverts commit 6c792e69b3 .
2026-03-13 10:11:40 -07:00
Owen Mansel-Chan
d52e9bc18c
Merge pull request #21370 from github/owen-mc/go/overlay-annotations
...
Go: Add overlay annotations from script
2026-03-13 16:46:01 +00:00
Owen Mansel-Chan
b8b841cfba
Add overlay[loca] in 4 more tests
2026-03-13 16:19:00 +00:00
Owen Mansel-Chan
df9f8ee386
Merge branch 'main' into owen-mc/go/overlay-annotations
2026-03-13 15:55:17 +00:00
Owen Mansel-Chan
99f4930e24
Explicitly mark DataFlowNodes.qll as overlay[local]
2026-03-13 15:23:39 +00:00
Owen Mansel-Chan
e9df9147ad
Add overlay annotations in 4 PrintAst tests
2026-03-13 15:03:05 +00:00
Owen Mansel-Chan
f32f85399a
Mark various files as overlay[local]
2026-03-13 15:03:02 +00:00
Jonas Jensen
c56feb7644
Go: annotate the standard library with for overlay
...
This commit is auto-generated with:
python3 config/add-overlay-annotations.py go
2026-03-13 15:03:01 +00:00
Jonas Jensen
7ef60a8649
Update the overlay annotation script for go
...
The Go libraries follow their own naming convention for "query
libraries". These need to be exempted from automatic `overlay[local?]`
annotations since otherwise it appears that too many predicates are
evaluated, possibly because of inadequate use of sentinels.
2026-03-13 15:02:58 +00:00
Tom Hvitved
ca2838b361
Address review comments
2026-03-13 15:38:07 +01:00
Tom Hvitved
7a6ab70091
Rust: Add test for free function with context-based typing
2026-03-13 15:36:06 +01:00
Asger F
7d6e08ecf1
Merge pull request #21461 from github/asger/js-shebang-bun-tsx
...
JS: Recognise bun and tsx in shebang lines
2026-03-13 15:07:12 +01:00
Asger F
dfa6d20072
JS: Replace broken link with plain text
2026-03-13 15:05:07 +01:00
Asger F
821cc0e875
JS: Address PR review comments
...
- Fix misplaced semicolons in test files (was inside comment, moved before it)
- Update QLdoc comments to reference new browser source kind names
- Update docs to list browser source kinds and fix outdated 'only remote' note
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-13 14:58:04 +01:00
Tom Hvitved
7094fb07a4
Rust: Replace FunctionPosition with FunctionPositionAdj
2026-03-13 14:37:40 +01:00
Owen Mansel-Chan
52809133f5
Add change notes
2026-03-13 11:10:43 +00:00
Owen Mansel-Chan
056aa342fe
Change @security-severity for log injection queries from 7.8 to 6.1
2026-03-13 10:02:01 +00:00
Owen Mansel-Chan
f58a6e5d3a
Change @security-severity for XSS queries from 6.1 to 7.8
2026-03-13 10:01:02 +00:00
Anders Schack-Mulligen
f11815c633
Merge pull request #21471 from aschackmull/csharp/rm-prebasicblock
...
C#: Delete PreBasicBlocks.
2026-03-13 08:54:06 +01:00
Owen Mansel-Chan
52cfd49087
Merge pull request #21469 from github/dependabot/go_modules/go/extractor/extractor-dependencies-7af763c229
...
Bump the extractor-dependencies group across 1 directory with 2 updates
2026-03-13 07:06:44 +00:00
Anders Schack-Mulligen
8c1c039edf
C#: Delete PreBasicBlocks.
2026-03-13 08:00:08 +01:00
dependabot[bot]
c9e0927992
Bump the extractor-dependencies group across 1 directory with 2 updates
...
Bumps the extractor-dependencies group with 2 updates in the /go/extractor directory: [golang.org/x/mod](https://github.com/golang/mod ) and [golang.org/x/tools](https://github.com/golang/tools ).
Updates `golang.org/x/mod` from 0.33.0 to 0.34.0
- [Commits](https://github.com/golang/mod/compare/v0.33.0...v0.34.0 )
Updates `golang.org/x/tools` from 0.42.0 to 0.43.0
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.42.0...v0.43.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/mod
dependency-version: 0.34.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
- dependency-name: golang.org/x/tools
dependency-version: 0.43.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: extractor-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-13 03:04:44 +00:00
Jeroen Ketema
d5f667e585
Merge pull request #21467 from jketema/jketema/swift-linux
...
Swift: Disable stack protector pass
2026-03-12 22:42:51 +01:00
Jeroen Ketema
b758732a28
Merge pull request #21468 from jketema/jketema/swift-lines
...
Swift: Limit successfully extracted lines
2026-03-12 17:24:28 +01:00
Jeroen Ketema
ba3fadbf20
Swift: Rename function
2026-03-12 16:37:13 +01:00
Owen Mansel-Chan
d7d1554461
Merge pull request #21465 from owen-mc/go/small-tweaks
...
Go: improve detection of type expressions when database is missing some type information
2026-03-12 14:58:16 +00:00
Jeroen Ketema
12e0f3f359
Swift: Limit successfully extracted lines
2026-03-12 15:46:23 +01:00
Owen Mansel-Chan
0bb6ff58cc
Merge pull request #21466 from owen-mc/go/add-nil-helper-predicate
...
Go: Add and use `exprRefersToNil` predicate
2026-03-12 14:36:03 +00:00
Jeroen Ketema
b9c0aca11a
Swift: Fix formatting
2026-03-12 15:00:18 +01:00
Jeroen Ketema
ee3674cb80
Swift: Disable stack protector pass
2026-03-12 14:43:05 +01:00
Taus
3ee369b710
Python: Add change note
2026-03-12 13:29:24 +00:00
Taus
e16bb226c0
Python: Fix resolution of relative imports from namespace packages
...
The fix may look a bit obscure, so here's what's going on.
When we see `from . import helper`, we create an `ImportExpr` with level
equal to 1 (corresponding to the number of dots). To resolve such
imports, we compute the name of the enclosing package, as part of
`ImportExpr.qualifiedTopName()`. For this form of import expression, it
is equivalent to `this.getEnclosingModule().getPackageName()`. But
`qualifiedTopName` requires that `valid_module_name` holds for its
result, and this was _not_ the case for namespace packages.
To fix this, we extend `valid_module_name` to include the module names
of _any_ folder, not just regular package (which are the ones where
there's a `__init__.py` in the folder). Note that this doesn't simply
include all folders -- only the ones that result in valid module names
in Python.
2026-03-12 13:29:23 +00:00
Taus
48bf4fd82a
Python: Add test for missing relative import in namespace packages
2026-03-12 13:29:19 +00:00
Owen Mansel-Chan
c271755985
Add and use exprRefersToNil predicate
2026-03-12 13:28:57 +00:00
Owen Mansel-Chan
a16c43881b
Use "database" instead of "snapshot" in QLDocs
2026-03-12 13:28:06 +00:00
Owen Mansel-Chan
39e0382089
Improve QLDoc for isTypeExprTopDown
2026-03-12 13:28:05 +00:00
Owen Mansel-Chan
22e012c6f4
Expand isTypeExprTopDown
...
We should be using all subtypes of `FieldBase`. This allows us to find
more type expressions, and is also simpler to evaluate.
2026-03-12 13:28:03 +00:00
Tom Hvitved
1b6f3a43ef
Rust: Unify type inference logic for associated functions
2026-03-12 10:31:35 +01:00
Asger F
b8c44be599
Add QL test for bun/tsx shebang recognition in TypeScript files
...
Add test files with #!/usr/bin/env bun, #!/usr/bin/env tsx, and
#!/usr/bin/env node shebangs. The query lists extracted .ts files,
verifying that all three shebangs are recognized and the files are
not skipped by the extractor.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-12 10:09:56 +01:00
Asger F
84d1828a9c
JavaScript extractor: recognise bun and tsx in shebang lines
...
Update the shebang regexp (renamed NODE_INVOCATION -> JS_INVOCATION) to
also match 'bun' and 'tsx' so that scripts using these runtimes are
correctly identified as JavaScript files.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-12 09:35:36 +01:00
Tom Hvitved
ca7017f3d7
Rust: Add more type inference tests
2026-03-12 09:02:40 +01:00
Mario Campos
f2e7dca65c
Merge pull request #21454 from github/mario-campos-patch-1
...
Correct comment about AES crypto algorithm strength
2026-03-11 22:43:21 -05:00
Mario Campos
b9b3b3a0b5
Empty commit for missed Green Check
2026-03-11 22:37:20 -05:00
Jeongsoo Lee
6c792e69b3
Expose the indirection index
2026-03-11 13:53:24 -07:00
Geoffrey White
4a39055322
C++: Change note.
2026-03-11 17:52:34 +00:00
Geoffrey White
6552c849f0
C++: Fix BMN issue in cpp/integer-multiplication-cast-to-long.
2026-03-11 17:49:36 +00:00
Geoffrey White
00d8a10051
C++: Add Function.hasAmbiguousReturnType.
2026-03-11 17:47:32 +00:00
Geoffrey White
da7da80b2b
C++: Add pseudo-buildless test cases (some missing declarations).
2026-03-11 17:47:25 +00:00
Asger F
5db30c9947
JS: Add change note
2026-03-11 15:40:07 +01:00
Mario Campos
6fb10555ff
Correct comment about AES crypto algorithm strength
2026-03-11 09:27:03 -05:00
Ian Lynagh
bbd02b855b
Merge pull request #21424 from github/idrissrio/cpp/overlay/discard
...
C/C++ overlay: update discard mechanism
2026-03-11 13:45:52 +00:00
Idriss Riouak
48a03e2a04
Apply suggestions from code review
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-11 14:25:53 +01:00
idrissrio
a92d97744f
C/C++ overlay: address review comment
2026-03-11 14:25:52 +01:00
idrissrio
ef6c1a9968
C/C++ overlay: fix failing header_dependency test
2026-03-11 14:25:50 +01:00
idrissrio
72142b51f7
C/C++ overlay: switch to updated discard strategy
2026-03-11 14:25:49 +01:00
Tom Hvitved
c06d4d2647
Merge pull request #21422 from hvitved/rust/type-mention-refactor
...
Rust: Small refactor in `TypeMention.qll`
2026-03-11 14:01:03 +01:00
Asger F
4a001f960f
JS: Add tests in request forgery queries
2026-03-11 13:53:25 +01:00
Asger F
1253553aec
JS: Add browser source kinds
2026-03-11 13:50:07 +01:00
Ian Lynagh
68dfa5c83b
Merge pull request #21451 from igfoo/igfoo/fix-build
...
Revert "Bump rules_android from 0.6.4 to 0.7.1"
2026-03-11 12:27:20 +00:00
Ian Lynagh
25a20f74f0
Revert "Bump rules_android from 0.6.4 to 0.7.1"
...
This reverts commit c7349740f0 .
It was making the build fail
2026-03-11 11:54:18 +00:00
Taus
5a65282241
Merge pull request #21429 from github/tausbn/fix-bad-join-in-method-call-order
...
Python: Fix bad join in method call order computation
2026-03-10 18:17:35 +01:00
Paolo Tranquilli
2e04d4b888
Merge branch 'main' into redsun82/update-rules-rust
2026-03-10 16:43:50 +01:00
Paolo Tranquilli
79499c240a
Merge pull request #21444 from github/dependabot/bazel/googletest-1.17.0.bcr.2
...
Bump googletest from 1.14.0.bcr.1 to 1.17.0.bcr.2
2026-03-10 16:41:38 +01:00
Paolo Tranquilli
267a46d01b
Merge pull request #21445 from github/dependabot/bazel/rules_shell-0.6.1
...
Bump rules_shell from 0.5.0 to 0.6.1
2026-03-10 16:41:24 +01:00
Ian Lynagh
341059d2d0
Merge pull request #21437 from igfoo/igfoo/onemk
...
C++: Small simplification
2026-03-10 15:36:38 +00:00
Paolo Tranquilli
79841bbc00
Update rules_rust 0.68.1.codeql.1 → 0.69.0, drop local patch
...
The `include_rmeta_in_stdlib.patch` is included upstream in 0.69.0.
Remove the local registry entry and regenerate vendored deps.
2026-03-10 16:20:50 +01:00
Paolo Tranquilli
3c3c58b0a9
Merge pull request #21443 from github/dependabot/bazel/rules_android-0.7.1
...
Bump rules_android from 0.6.4 to 0.7.1
2026-03-10 16:06:40 +01:00
Paolo Tranquilli
9bf1072a01
Merge pull request #21447 from github/revert-21414-redsun82/rerun-slash-command
...
Revert "Add `/rerun` slash command for failed internal checks"
2026-03-10 15:55:45 +01:00
Paolo Tranquilli
a5f23ade8c
Revert "Add /rerun slash command for failed internal checks"
2026-03-10 14:43:59 +01:00
Paolo Tranquilli
017b6f2e44
Merge pull request #21414 from github/redsun82/rerun-slash-command
...
Add `/rerun` slash command for failed internal checks
2026-03-10 14:01:03 +01:00
Anders Schack-Mulligen
6a6bb5ebf9
Merge pull request #21441 from aschackmull/cfg/switch-sharing
...
Cfg: Share more code for switch statements.
2026-03-10 13:50:21 +01:00
Florin Coada
15f7a95209
Merge pull request #21440 from github/codeql-spark-run-22877174736
...
Update changelog documentation site for codeql-cli-2.24.3
2026-03-10 12:21:56 +00:00
dependabot[bot]
b631138b63
Bump rules_shell from 0.5.0 to 0.6.1
...
Bumps [rules_shell](https://github.com/bazelbuild/rules_shell ) from 0.5.0 to 0.6.1.
- [Release notes](https://github.com/bazelbuild/rules_shell/releases )
- [Commits](https://github.com/bazelbuild/rules_shell/compare/v0.5.0...v0.6.1 )
---
updated-dependencies:
- dependency-name: rules_shell
dependency-version: 0.6.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-10 11:21:40 +00:00
dependabot[bot]
093d36ebe6
Bump googletest from 1.14.0.bcr.1 to 1.17.0.bcr.2
...
Bumps [googletest](https://github.com/google/googletest ) from 1.14.0.bcr.1 to 1.17.0.bcr.2.
- [Release notes](https://github.com/google/googletest/releases )
- [Commits](https://github.com/google/googletest/commits )
---
updated-dependencies:
- dependency-name: googletest
dependency-version: 1.17.0.bcr.2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-10 11:21:37 +00:00
dependabot[bot]
c7349740f0
Bump rules_android from 0.6.4 to 0.7.1
...
Bumps [rules_android](https://github.com/bazelbuild/rules_android ) from 0.6.4 to 0.7.1.
- [Release notes](https://github.com/bazelbuild/rules_android/releases )
- [Commits](https://github.com/bazelbuild/rules_android/compare/v0.6.4...v0.7.1 )
---
updated-dependencies:
- dependency-name: rules_android
dependency-version: 0.7.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-10 11:21:34 +00:00
Anders Schack-Mulligen
efa797a21d
Update shared/controlflow/codeql/controlflow/ControlFlowGraph.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-10 11:22:15 +01:00
Anders Schack-Mulligen
77d4f5a2dc
Cfg: Update fallsThrough default.
2026-03-10 11:10:24 +01:00
Anders Schack-Mulligen
edf88b34da
Cfg: Move Case.getBodyElement to shared code.
2026-03-10 11:02:58 +01:00
Owen Mansel-Chan
0215ea3ee3
Merge pull request #21426 from owen-mc/cpp/validate-constructor-summary-models
...
C++: Add model validation for constructor summary models
2026-03-10 09:42:24 +00:00
Anders Schack-Mulligen
35ac66d3aa
Cfg: Move getCaseControlFlowOrder to shared code.
2026-03-10 10:39:32 +01:00
Anders Schack-Mulligen
219fe03637
Merge pull request #21430 from aschackmull/csharp/switch-ast-simplify
...
C#: Disentangle SwitchStmt AST and CFG.
2026-03-10 10:23:37 +01:00
Mario Campos
b7a5b08d61
Fix formatting issues in codeql-cli-2.23.1.rst
2026-03-09 17:20:34 -05:00
Mario Campos
87ec22db65
Fix formatting of Kotlin version support note
2026-03-09 17:19:56 -05:00
Mario Campos
f52195e96d
Fix formatting in Kotlin version support note
2026-03-09 17:19:36 -05:00
Mario Campos
430ed055bc
Fix formatting for Kotlin version support note
2026-03-09 17:19:18 -05:00
github-actions[bot]
8e85c4c0ea
update codeql documentation
2026-03-09 22:17:15 +00:00
Mario Campos
017822b872
Merge pull request #21439 from github/revert-21438-codeql-spark-run-22872006382
...
Revert "Update changelog documentation site for codeql-cli-2.24.3"
2026-03-09 17:02:43 -05:00
Mario Campos
eea61ea821
Revert "Update changelog documentation site for codeql-cli-2.24.3"
2026-03-09 16:55:09 -05:00
Jon Janego
b289266398
Merge pull request #21438 from github/codeql-spark-run-22872006382
...
Update changelog documentation site for codeql-cli-2.24.3
2026-03-09 15:44:14 -05:00
Mario Campos
f5545516db
Fix formatting in codeql-cli-2.19.1.rst
2026-03-09 15:34:27 -05:00
Mario Campos
216bc76694
Fix formatting in Kotlin version support note
2026-03-09 15:34:07 -05:00
Mario Campos
5921dacf52
Fix formatting of Kotlin version support note
2026-03-09 15:33:08 -05:00
Mario Campos
ca44c777f0
Fix formatting issues in codeql-cli-2.23.1.rst
2026-03-09 15:32:42 -05:00
github-actions[bot]
5283413055
update codeql documentation
2026-03-09 20:00:48 +00:00
Ian Lynagh
dbb8bb86ba
C++: Small simplification
2026-03-09 17:45:38 +00:00
Paolo Tranquilli
afb2243984
Merge pull request #21433 from github/dependabot/bazel/abseil-cpp-20260107.1
...
Bump abseil-cpp from 20240116.1 to 20260107.1
2026-03-09 17:14:33 +01:00
Paolo Tranquilli
a7e426d89f
Merge pull request #21432 from github/dependabot/bazel/zstd-1.5.7.bcr.1
...
Bump zstd from 1.5.5.bcr.1 to 1.5.7.bcr.1
2026-03-09 17:13:29 +01:00
Paolo Tranquilli
fde51e0c29
Merge pull request #21436 from github/dependabot/bazel/rules_python-1.9.0
...
Bump rules_python from 0.40.0 to 1.9.0
2026-03-09 17:12:58 +01:00
dependabot[bot]
69ed88bccd
Bump rules_python from 0.40.0 to 1.9.0
...
Bumps [rules_python](https://github.com/bazel-contrib/rules_python ) from 0.40.0 to 1.9.0.
- [Release notes](https://github.com/bazel-contrib/rules_python/releases )
- [Changelog](https://github.com/bazel-contrib/rules_python/blob/main/CHANGELOG.md )
- [Commits](https://github.com/bazel-contrib/rules_python/compare/0.40.0...1.9.0 )
---
updated-dependencies:
- dependency-name: rules_python
dependency-version: 1.9.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-09 15:26:10 +00:00
dependabot[bot]
97e1c96200
Bump abseil-cpp from 20240116.1 to 20260107.1
...
Bumps [abseil-cpp](https://github.com/abseil/abseil-cpp ) from 20240116.1 to 20260107.1.
- [Release notes](https://github.com/abseil/abseil-cpp/releases )
- [Commits](https://github.com/abseil/abseil-cpp/compare/20240116.1...20260107.1 )
---
updated-dependencies:
- dependency-name: abseil-cpp
dependency-version: '20260107.1'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-09 15:25:57 +00:00
dependabot[bot]
46ba1f9160
Bump zstd from 1.5.5.bcr.1 to 1.5.7.bcr.1
...
Bumps [zstd](https://github.com/facebook/zstd ) from 1.5.5.bcr.1 to 1.5.7.bcr.1.
- [Release notes](https://github.com/facebook/zstd/releases )
- [Changelog](https://github.com/facebook/zstd/blob/dev/CHANGELOG )
- [Commits](https://github.com/facebook/zstd/commits )
---
updated-dependencies:
- dependency-name: zstd
dependency-version: 1.5.7.bcr.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-09 15:25:53 +00:00
Taus
5d74ad5bc6
Merge pull request #21419 from github/tausbn/python-improve-overloaded-method-resolution
...
Python: Improve modelling of overloaded methods
2026-03-09 16:25:05 +01:00
Anders Schack-Mulligen
4013f00b19
C#: Disentangle SwitchStmt AST and CFG.
2026-03-09 15:07:59 +01:00
Owen Mansel-Chan
e0e5319b11
C#: Make corresponding predicate private
2026-03-09 13:44:52 +00:00
Owen Mansel-Chan
d8007a85e6
Java: Make corresponding predicate private
2026-03-09 13:44:50 +00:00
Owen Mansel-Chan
512e27187e
Make new predicate private
2026-03-09 13:44:48 +00:00
Taus
f2bad1e6e1
Python: Improve docstring and make predicate private
2026-03-09 13:41:38 +00:00
Taus
c5360ba46c
Python: Fix bad join in method call order computation
...
This join had badness 1127 on the project FiacreT/M-moire, producing ~31
million tuples in order to end up with only ~27k tuples later in the
pipeline. With the fix, we reduce this by roughly the full 31 million
(the new materialised helper predicate accounting for roughly 130k
tuples on its own).
Co-authored-by: Mathias Vorreiter Pedersen <mathiasvp@github.com >
2026-03-09 13:09:29 +00:00
Geoffrey White
be9c1d074f
Merge pull request #21376 from geoffw0/splitoff2
...
Rust: Update split_off models
2026-03-09 09:22:36 +00:00
Owen Mansel-Chan
097681e705
Update cpp/ql/lib/semmle/code/cpp/dataflow/ExternalFlow.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-07 10:17:58 +00:00
Owen Mansel-Chan
63e8061917
Add model validation for constructor summary models
2026-03-07 09:57:09 +00:00
Jeroen Ketema
8bbb0ec954
Merge pull request #21418 from github/jketema/swift-6.2.4
...
Swift: Update to Swift 6.2.4
2026-03-06 21:48:09 +01:00
Geoffrey White
d81b9aa5fd
Merge branch 'main' into splitoff2
2026-03-06 17:24:01 +00:00
Geoffrey White
fd7093e74d
Merge pull request #21375 from geoffw0/mapfix
...
Rust: Add neutral models (map, from)
2026-03-06 17:20:14 +00:00
Óscar San José
a6de855549
Merge pull request #21423 from github/oscarsj/merge-back-rc-3.21
...
Merge back rc/3.21 into main
2026-03-06 16:58:04 +01:00
Óscar San José
3b9eba2afc
Merge branch 'main' of https://github.com/github/codeql into oscarsj/merge-back-rc-3.21
2026-03-06 16:20:36 +01:00
Tom Hvitved
4dca9aa958
Rust: Small refactor in TypeMention.qll
2026-03-06 15:33:11 +01:00
Tom Hvitved
84bef5d4bc
Merge pull request #21420 from hvitved/rust/type-inference-qualified-trait-arg-path
...
Rust: More conservative resolution of `<Foo as Bar<...>>` paths
2026-03-06 15:14:01 +01:00
Geoffrey White
da99d3660d
C++: Turns out we can simplify.
2026-03-06 11:53:43 +00:00
Geoffrey White
7f6fd34d46
C++: Expose a type resolution issue.
2026-03-06 11:34:57 +00:00
Geoffrey White
d23a3f821e
C++: Add a test case for WrongTypeFormatArguments involving code that's included twice.
2026-03-06 11:34:16 +00:00
Jeroen Ketema
2340369e2d
Swift: Add change note
2026-03-06 10:43:33 +01:00
Jeroen Ketema
70c1b58492
Swift: Remove overrides
2026-03-06 10:41:37 +01:00
Jeroen Ketema
f3dc0412b5
Swift: update artifacts
2026-03-06 10:40:43 +01:00
Owen Mansel-Chan
a3e9aed00a
Merge pull request #21416 from owen-mc/csharp/validate-constructor-summary-models
...
C#: Add model validation for constructor summary models
2026-03-06 09:09:39 +00:00
Owen Mansel-Chan
e96ba4806b
Merge pull request #21415 from owen-mc/java/validate-constructor-summary-models
...
Java: validate constructor summary models
2026-03-06 09:09:18 +00:00
Anders Schack-Mulligen
76346eccd8
Merge pull request #21417 from aschackmull/csharp/binary-assignment
...
C#: Make Assignment extend BinaryOperation.
2026-03-06 09:14:20 +01:00
Tom Hvitved
feb45e5731
Merge pull request #21348 from hvitved/csharp/remove-tcs
...
C#: Remove some unbounded TC computations
2026-03-06 09:00:38 +01:00
Taus
66ca10c338
Python: Add change note
2026-03-05 22:20:03 +00:00
Taus
fa61f6f3df
Python: Model @typing.overload in method resolution
...
Adds `hasOverloadDecorator` as a predicate on functions. It looks for
decorators called `overload` or `something.overload` (usually
`typing.overload` or `t.overload`). These are then filtered out in the
predicates that (approximate) resolving methods according to the MRO.
As the test introduced in the previous commit shows, this removes the
spurious resolutions we had before.
2026-03-05 22:20:03 +00:00
Taus
0561a63003
Python: Add test for overloaded __init__ resolution
...
Adds a test showing that `@typing.overload` stubs are spuriously
resolved as call targets alongside the actual `__init__` implementation.
2026-03-05 22:20:03 +00:00
Tom Hvitved
ff41917147
Rust: More conservative resolution of <Foo as Bar<...>> paths
2026-03-05 21:42:33 +01:00
Tom Hvitved
838f3b90e7
Rust: Add type inference test
2026-03-05 20:57:32 +01:00
Owen Mansel-Chan
3c36a9e308
Correctly deal with generic types
2026-03-05 15:47:53 +00:00
Jeroen Ketema
eb81743fb5
Swift: Update to Swift 6.2.4
2026-03-05 16:13:29 +01:00
Anders Schack-Mulligen
d9ef9f82e1
C#: Make Assignment extend BinaryOperation.
2026-03-05 14:41:38 +01:00
Owen Mansel-Chan
92a719092a
Update models in test output
2026-03-05 13:32:52 +00:00
Anders Schack-Mulligen
ffa5110522
C#: Update dbscheme to make assignments part of binary expressions.
2026-03-05 13:59:14 +01:00
Asger F
c9fa7fa283
Merge pull request #21369 from asgerf/js/this-bindings
...
JS: Emit variables for 'this'
2026-03-05 13:36:38 +01:00
Anders Schack-Mulligen
8ef4be49aa
Merge pull request #21412 from aschackmull/java/binary-assignment
...
Java: Make Assignment extend BinaryExpr.
2026-03-05 13:19:45 +01:00
Owen Mansel-Chan
e6996ea29a
Add model validation for constructor summary models
2026-03-05 12:11:25 +00:00
Owen Mansel-Chan
579c871b69
Fix incorrect constructor summary models
2026-03-05 12:03:21 +00:00
Owen Mansel-Chan
63c71b418c
Add model validation for constructor summary models
2026-03-05 12:02:37 +00:00
Anders Schack-Mulligen
3e7a966c0d
Merge pull request #21408 from aschackmull/guards/perf-tweak
...
Guards: Improve performance of forall in guardDeterminesPhiInput.
2026-03-05 12:42:06 +01:00
Owen Mansel-Chan
926725a87f
Merge pull request #21405 from owen-mc/java/consistent-inline-expectation-tests
...
Inline expectation tests should always have space before and after `$`
2026-03-05 11:27:37 +00:00
Paolo Tranquilli
9bf4262dbb
Add /rerun slash command for failed internal checks
2026-03-05 11:38:27 +01:00
Owen Mansel-Chan
c82f75604a
Add change notes
2026-03-05 10:34:30 +00:00
Anders Schack-Mulligen
ea77c0d86c
Java: Add change note.
2026-03-05 11:32:00 +01:00
Anders Schack-Mulligen
ec1d034ee0
Java: Make Assignment extend BinaryExpr.
2026-03-05 11:31:59 +01:00
Anders Schack-Mulligen
37a8fc85eb
Guards: Use unique aggregate.
2026-03-05 11:20:24 +01:00
Tom Hvitved
b5bf1c578c
Merge pull request #21404 from hvitved/dataflow/no-enclosing-stack-flow-feature
...
Data flow: Add `FeatureEscapesSourceCallContext(OrEqualSourceSinkCallContext)` flow feature
2026-03-05 09:36:48 +01:00
Tom Hvitved
f3898329d6
Merge pull request #21413 from github/workflow/coverage/update
...
Update CSV framework coverage reports
2026-03-05 09:28:47 +01:00
Tom Hvitved
acd6f4156b
C#: Avoid computing full TC in DangerousNonShortCircuitLogic.ql
2026-03-05 09:11:17 +01:00
Tom Hvitved
e22d3a1074
Sync files
2026-03-05 09:11:16 +01:00
Tom Hvitved
212374b94b
C#: Replace a recursive predicate with doublyBoundedFastTc
2026-03-05 09:11:15 +01:00
Tom Hvitved
aa7a730041
C#: Remove some unnecessary TCs
2026-03-05 09:11:13 +01:00
github-actions[bot]
1c5afb2306
Add changed framework coverage reports
2026-03-05 00:32:15 +00:00
Mathias Vorreiter Pedersen
5b30e945ef
Merge pull request #21410 from MathiasVP/add-WebSocket-ReceiveAsync-model
...
C#: Add `System.Net.WebSockets.ReceiveAsync` as a remote flow source
2026-03-04 16:09:50 +00:00
Owen Mansel-Chan
2b3111441d
Add space before $ in xml test file
2026-03-04 15:03:24 +00:00
Owen Mansel-Chan
99a4fe4828
Update expected test output column numbers
2026-03-04 15:02:53 +00:00
Owen Mansel-Chan
aa28c94562
Remove double space after $ in inline expectations tests
2026-03-04 14:12:42 +00:00
Owen Mansel-Chan
501485b9f6
Update library to require space after $
...
We cannot easily require a space before $ because some languages, like
C#, strip whitespace from the beginning of the comment text.
2026-03-04 14:06:59 +00:00
Tom Hvitved
db491fc985
Address review comments
2026-03-04 14:53:01 +01:00
Owen Mansel-Chan
1950fd33db
Ruby: Inline expectation should have space before $
2026-03-04 13:11:41 +00:00
Owen Mansel-Chan
91b6801db1
py: Inline expectation should have space before $
2026-03-04 13:11:38 +00:00
Owen Mansel-Chan
ea30f02271
js: Inline expectation should have space before $
2026-03-04 13:11:35 +00:00
Owen Mansel-Chan
f41c30e335
java: Inline expectation should have space before $
2026-03-04 13:11:33 +00:00
Owen Mansel-Chan
ddebdad9e1
c++: Inline expectation should have space before $
2026-03-04 13:11:30 +00:00
Mathias Vorreiter Pedersen
f8f8991d36
C#: Accept more test changes.
2026-03-04 13:06:59 +00:00
Anders Schack-Mulligen
3c129fcd23
Java: Align BinaryExpr.getOp() with AssignOp.getOp().
2026-03-04 13:46:04 +01:00
Owen Mansel-Chan
6001c735ff
Ruby: Inline expectation should have space after $
...
This was a regex-find-replace from `# \$(?! )` (using a negative lookahead) to `# $ `.
2026-03-04 12:45:06 +00:00
Owen Mansel-Chan
5a97348e78
python: Inline expectation should have space after $
...
This was a regex-find-replace from `# \$(?! )` (using a negative lookahead) to `# $ `.
2026-03-04 12:45:05 +00:00
Owen Mansel-Chan
0eccd902c2
js: Inline expectation should have space after $
...
This was a regex-find-replace from `// \$(?! )` (using a negative lookahead) to `// $ `.
2026-03-04 12:45:03 +00:00
Owen Mansel-Chan
45eb14975a
C#: Inline expectation should have space after $
...
This was a regex-find-replace from `// \$(?! )` (using a negative lookahead) to `// $ `.
2026-03-04 12:45:02 +00:00
Owen Mansel-Chan
badfa1a5c5
C++: Inline expectation should have space after $
...
This was a regex-find-replace from `// \$(?! )` (using a negative lookahead) to `// $ `.
2026-03-04 12:45:00 +00:00
Owen Mansel-Chan
b475f14575
Replace // $:tag with // $ tag in 2 tests
2026-03-04 12:44:59 +00:00
Owen Mansel-Chan
d4ba2d68f9
Go: Inline expectation should have space after $
...
This was a regex-find-replace from `// \$(?! )` (using a negative lookahead) to `// $ `.
2026-03-04 12:44:57 +00:00
Owen Mansel-Chan
05a77a2005
Java: Update test expectations
2026-03-04 12:44:56 +00:00
Owen Mansel-Chan
ef345a3279
Java: Inline expectation should have space after $
...
This was a regex-find-replace from `// \$(?! )` (using a negative lookahead) to `// $ `.
2026-03-04 12:44:54 +00:00
Mathias Vorreiter Pedersen
2357ef07cc
C#: Add change note.
2026-03-04 12:35:15 +00:00
Mathias Vorreiter Pedersen
088913d925
C#: Accept test changes.
2026-03-04 12:26:07 +00:00
Mathias Vorreiter Pedersen
83155df1f7
C#: Add 'System.Net.WebSockets.ReceiveAsync' flow source.
2026-03-04 12:26:05 +00:00
Mathias Vorreiter Pedersen
b7992ed8cd
C#: Add test.
2026-03-04 12:25:08 +00:00
Michael Nebel
219ea28217
Merge pull request #21400 from michaelnebel/csharp/implicitconversionreverseflowtaint
...
C#: Add default taint step from an implicit operator call to its argument.
2026-03-04 12:40:59 +01:00
Michael Nebel
fbf40ef02a
Update csharp/ql/lib/semmle/code/csharp/dataflow/internal/TaintTrackingPrivate.qll
...
Co-authored-by: Tom Hvitved <hvitved@github.com >
2026-03-04 12:28:07 +01:00
Geoffrey White
370c5157f1
Merge branch 'main' into mapfix
2026-03-04 10:20:04 +00:00
Anders Schack-Mulligen
2782d90d0f
Merge pull request #21403 from aschackmull/cfg/tweaks
...
Cfg: Small tweaks.
2026-03-04 11:17:15 +01:00
Anders Schack-Mulligen
ad5ab9f270
Gaurds: Improve perf of forall in guardDeterminesPhiInput.
2026-03-04 10:56:51 +01:00
Tom Hvitved
4474e252fe
Add change note
2026-03-04 10:44:26 +01:00
Tom Hvitved
18d2f586b3
Rust: Update AccessAfterLifetime query to use FeatureEscapesSourceCallContextOrEqualSourceSinkCallContext
2026-03-04 10:44:25 +01:00
Tom Hvitved
189c16095d
Data flow: Add FeatureEscapesSourceCallContext(OrEqualSourceSinkCallContext) flow feature
2026-03-04 10:44:23 +01:00
Michael Nebel
a604a68fe9
C#: Add change-note.
2026-03-04 08:03:32 +01:00
Michael Nebel
4e2a93df55
C#: Remove comment.
2026-03-04 07:58:55 +01:00
Mathias Vorreiter Pedersen
6a904eddd4
Merge pull request #21390 from MathiasVP/less-reevaluation-4
...
C++: Reduce re-evaluation
2026-03-03 15:09:55 +00:00
Anders Schack-Mulligen
fe032a5834
Java: Update dbscheme to make @assignment a @binaryexpr.
2026-03-03 15:15:35 +01:00
Michael Nebel
cfd4be6b4e
C#: Update test expected output.
2026-03-03 14:39:57 +01:00
Michael Nebel
93a28cbfaf
C#: Add default (reverse update) taint step from implicit operator calls to their arguments.
2026-03-03 14:39:52 +01:00
Óscar San José
13ce515aab
Merge pull request #21402 from github/post-release-prep/codeql-cli-2.24.3
...
Post-release preparation for codeql-cli-2.24.3
2026-03-03 14:33:49 +01:00
Michael Nebel
8807217e49
C#: Add implicit conversion operator taint example.
2026-03-03 14:26:46 +01:00
Anders Schack-Mulligen
daefd5988e
Java: Accept CFG diff.
2026-03-03 14:18:10 +01:00
Anders Schack-Mulligen
d9ea78bfb8
Cfg: Step directly from a failed case guard to the next case.
2026-03-03 13:42:13 +01:00
Anders Schack-Mulligen
f02abb3e93
Cfg: Handle ExprStmt and BlockStmt in defaultStep.
2026-03-03 13:34:27 +01:00
Michael Nebel
a2f45f1b5b
Merge pull request #21383 from michaelnebel/csharp/postupdatenoderestriction
...
C#: Add post-update nodes for `struct` type argument nodes.
2026-03-03 12:34:06 +01:00
Geoffrey White
bb5bfda14b
Rust: Update the models.
2026-03-03 09:26:54 +00:00
github-actions[bot]
e152f08468
Post-release preparation for codeql-cli-2.24.3
2026-03-02 22:51:27 +00:00
Ian Lynagh
16cd3a8bc0
Merge pull request #21399 from igfoo/igfoo/star_ids_trap_tags_ql
...
C++ overlay: Tweak dbsheme
2026-03-02 17:50:04 +00:00
Michael Nebel
319e3d1ba4
C#: Add change-note.
2026-03-02 15:34:20 +01:00
Michael Nebel
8380474acd
C#: Update other test expected output.
2026-03-02 15:32:37 +01:00
Michael Nebel
a3d15dbaa3
C#: Update test expected output for new tests.
2026-03-02 15:25:31 +01:00
Michael Nebel
ec7e6e8e03
C#: Add post-update nodes for arguments of struct type.
2026-03-02 15:25:27 +01:00
Michael Nebel
4e63b83fd3
C#: Add struct source model example.
2026-03-02 14:50:04 +01:00
Michael Nebel
ea1fc43732
C#: Add data flow test for struct.
2026-03-02 14:50:01 +01:00
Michael Nebel
13959ab91e
Merge pull request #21335 from michaelnebel/csharp14/partialconstrucstors
...
C# 14: Support for partial constructor declarations.
2026-03-02 14:47:56 +01:00
Anders Schack-Mulligen
e695477f4f
Merge pull request #21290 from aschackmull/cfg/new-shared
...
Java/Cfg: Introduce new shared CFG library and replace the Java CFG.
2026-03-02 13:56:59 +01:00
Anders Schack-Mulligen
627654cff9
Cfg: A few more review tweaks.
2026-03-02 13:08:23 +01:00
Asger F
f2cc0da936
JS: Add upgrade/downgrade scripts but with 'partial' compatibility
2026-03-02 11:09:19 +01:00
Ian Lynagh
bd0d69ffca
C++: Add up/downgrade scripts
2026-02-27 22:00:01 +00:00
Ian Lynagh
97ed67e284
C++ overlay: Update stats
2026-02-27 21:40:01 +00:00
Mathias Vorreiter Pedersen
db33dadb8e
C++: Add QLDoc. Also actually implement 'uninitializedNode' since there's no reason not to do so.
2026-02-27 17:36:57 +00:00
Mathias Vorreiter Pedersen
1139059d77
C++: Fix imports.
2026-02-27 17:12:00 +00:00
Mathias Vorreiter Pedersen
92f26027e1
C++: Remove outdated comment.
2026-02-27 16:32:04 +00:00
Mathias Vorreiter Pedersen
85875c2879
C++: Remove unnecessary recursion through Node.toString.
2026-02-27 16:32:01 +00:00
Mathias Vorreiter Pedersen
17e6fd2fe9
C++: Disable magic to prevent re-evaluation.
2026-02-27 16:31:58 +00:00
Mathias Vorreiter Pedersen
5d75b255a8
C++: Remove IR re-evaluation.
2026-02-27 16:31:56 +00:00
Mathias Vorreiter Pedersen
26e8701ae3
C++: Fix a few qualifiers.
2026-02-27 16:22:51 +00:00
Mathias Vorreiter Pedersen
cdb41588a9
C++: Fix some imports.
2026-02-27 16:22:49 +00:00
Mathias Vorreiter Pedersen
1eccb8ea93
C++: Add a cache module to taint-tracking and ensure they happen in the same stage as the dataflow stage.
2026-02-27 16:22:47 +00:00
Mathias Vorreiter Pedersen
66611323e2
C++: No need to keep this in its own module now.
2026-02-27 16:22:44 +00:00
Mathias Vorreiter Pedersen
d804fc5168
C++: Remove the 'ExprFlowCached' module. Instead we have a single cached module.
2026-02-27 16:22:42 +00:00
Mathias Vorreiter Pedersen
f223c957ba
C++: Cache 'toString' and 'getLocation'.
2026-02-27 16:22:39 +00:00
Mathias Vorreiter Pedersen
86bd0c0dc3
C++: Move a bunch of newtypes and predicates into a cached module.
2026-02-27 16:22:36 +00:00
Mathias Vorreiter Pedersen
6e0c5615fe
C++: Move a bunch non-public dataflow node subtypes.
2026-02-27 16:22:33 +00:00
Mathias Vorreiter Pedersen
edde4149aa
C++: Move 'Node' into the public module.
2026-02-27 16:22:29 +00:00
Mathias Vorreiter Pedersen
87478d016a
C++: Move 'FieldAddress' and 'conversionFlow'.
2026-02-27 16:22:26 +00:00
Mathias Vorreiter Pedersen
09d74a3b3e
C++: Move 'CanonicalField' stuff.
2026-02-27 16:22:23 +00:00
Mathias Vorreiter Pedersen
271a759490
C++: Move 'TIRDataFlowNode'.
2026-02-27 16:22:21 +00:00
Mathias Vorreiter Pedersen
b9595d985e
C++: Create a new file.
2026-02-27 16:22:19 +00:00
Anders Schack-Mulligen
ab94524328
Cfg: Address review comments.
2026-02-27 16:35:25 +01:00
Ian Lynagh
155e21e729
C++ overlays: Tweak dbscheme
2026-02-27 15:28:15 +00:00
Asger F
d440b5fa85
JS: Update TRAP files
2026-02-27 14:15:34 +01:00
Asger F
47895b3334
JS: Update test for UniquePropertyNames test
...
This query now reports the alert previously found by DuplicateProperty
2026-02-27 13:37:29 +01:00
Asger F
71fb6bf915
JS: Mark corresponding lost result for the getter
2026-02-27 13:35:43 +01:00
Asger F
c673bd9151
JS: Document a missing alert due to limitation in structural comparison
2026-02-27 13:34:55 +01:00
Asger F
0f2de46648
JS: Emit variable bindings for 'this' expressions
2026-02-27 11:44:54 +01:00
Asger F
f0f58dacb3
JS: Also emit 'this' variable for class scopes
2026-02-27 11:44:31 +01:00
Asger F
4a3b86c652
JS: Update test output
2026-02-27 11:13:50 +01:00
Geoffrey White
062fbf2b3c
Rust: Accept consistency check changes from CI.
2026-02-26 15:45:40 +00:00
Geoffrey White
ec0b90f4b4
Rust: Simplify with the Copilot suggestions.
2026-02-26 13:00:07 +00:00
Geoffrey White
96a06bed8d
Rust: Accept consistency check changes.
2026-02-26 12:41:17 +00:00
Geoffrey White
f2dc585751
Rust: Convert split_off QL-defined barrier to a neutral model (which was always the intent).
2026-02-26 12:25:23 +00:00
Geoffrey White
478f56b82f
Rust: Move the existing 'alloc' neutral models into alloc.model.yml.
2026-02-26 12:25:10 +00:00
Geoffrey White
78f855d7e3
Rust: Make the manual model for Option::map more accurate.
2026-02-26 11:34:30 +00:00
Geoffrey White
75ffb5fc4c
Rust: Change note.
2026-02-26 10:59:48 +00:00
Geoffrey White
75fea4245a
Rust: Add neutral models of From::from (corresponding with existing generated sink models).
2026-02-26 10:00:30 +00:00
Geoffrey White
5c108e5c12
Rust: Add a manual model for flow through Option::map.
2026-02-26 09:12:33 +00:00
Geoffrey White
53e886380c
Rust: Add a neutral model of Option::map (so that we don't use the generated models).
2026-02-26 08:36:28 +00:00
Geoffrey White
97f7a26e11
Rust: Add test cases for log injection + uncontrolled allocation size with from.
2026-02-25 19:12:06 +00:00
Geoffrey White
1213369d75
Rust: Add test cases for log injection with map.
2026-02-25 14:30:01 +00:00
Asger F
e0ab5ce49b
JS: Emit variables for 'this'
...
The extractor does not emit bindings for 'this', we just ensure that a variable exists for it
2026-02-25 10:17:02 +01:00
Michael Nebel
06a8fd0e4a
C#: Add change-note.
2026-02-24 14:42:18 +01:00
Michael Nebel
113565ba76
C#: Update test expected output.
2026-02-24 14:38:59 +01:00
Michael Nebel
ae5ab9c67c
C#: Partial constructor declaration support.
2026-02-24 14:32:24 +01:00
Michael Nebel
884c61604e
C#: Add dataflow test for partial constructors.
2026-02-24 14:32:22 +01:00
Michael Nebel
c5e1f0ccc9
C#: Update partial tests and expected output.
2026-02-24 14:32:20 +01:00
Anders Schack-Mulligen
94121f19ca
Guards: Improve join-order.
2026-02-23 15:10:03 +01:00
Anders Schack-Mulligen
2b8e719034
Java: Add nullness test covering known FP.
2026-02-23 15:10:03 +01:00
Anders Schack-Mulligen
bdbbd45909
Java: Handle missing throws clauses.
2026-02-23 15:10:02 +01:00
Anders Schack-Mulligen
0d0711f2a7
Java: Add change note.
2026-02-23 15:10:02 +01:00
Anders Schack-Mulligen
d4873dd35e
Java: Adjust switch case guards test.
2026-02-23 15:10:01 +01:00
Anders Schack-Mulligen
f7317b6a2b
Java: Enable Cfg consistency checks.
2026-02-23 15:10:01 +01:00
Anders Schack-Mulligen
352b3711f6
Java: Remove obsolete tests - false successors are no longer special.
2026-02-23 15:10:00 +01:00
Anders Schack-Mulligen
eb37c413f2
Java: Accept revised CFG.
2026-02-23 15:10:00 +01:00
Anders Schack-Mulligen
106a9d479f
Java: Accept reduced precision from no longer nesting completions in YieldCompletions.
2026-02-23 15:09:59 +01:00
Anders Schack-Mulligen
d84e0e262d
Java: Accept removal of spurious reason (the alert stays).
2026-02-23 15:09:59 +01:00
Anders Schack-Mulligen
8b0dd7b866
Java: Accept new TP in NullMaybe.
2026-02-23 15:09:58 +01:00
Anders Schack-Mulligen
b798bc2c8f
Java: Fix enhancedForEarlyExit implementation.
2026-02-23 15:09:58 +01:00
Anders Schack-Mulligen
a72cf56a05
Java: Accept dispatch precision improvement.
2026-02-23 15:09:57 +01:00
Anders Schack-Mulligen
4d9c0e0c26
Java: Accept new locations for SSA definitions.
2026-02-23 15:09:57 +01:00
Anders Schack-Mulligen
a6ee1df567
Java: Remove test. Flexible constructors need AST-based tests, which are already in place, not CFG tests.
2026-02-23 15:09:56 +01:00
Anders Schack-Mulligen
581679d27d
Java: Fix reference to entry node.
2026-02-23 15:09:56 +01:00
Anders Schack-Mulligen
fc8b7c04cf
Java: Exclude ExprStmt consistent with SwitchCase.getRuleExpression().
2026-02-23 15:09:55 +01:00
Anders Schack-Mulligen
ccd28ff66a
Java: Fix instanceof-disjunction.
2026-02-23 15:09:55 +01:00
Anders Schack-Mulligen
a844d60174
Java: Accept new CFG nodes.
2026-02-23 15:09:54 +01:00
Anders Schack-Mulligen
6ac8c4f544
Java: Accept test changes due to pruned CFG, after-nodes, and reduced exception precision.
2026-02-23 15:09:54 +01:00
Anders Schack-Mulligen
e0eb653dcc
Java: Accept guards test changes for revised switch CFG.
2026-02-23 15:09:53 +01:00
Anders Schack-Mulligen
fb2799bd47
Java: Adjust idominance tests.
2026-02-23 15:09:53 +01:00
Anders Schack-Mulligen
12b9999289
Java: Adjust BasicBlock-based qltests.
2026-02-23 15:09:52 +01:00
Anders Schack-Mulligen
7871cd74f6
Java: Fix switchcase guards.
2026-02-23 15:09:52 +01:00
Anders Schack-Mulligen
1e9dcea88b
Java: Fix RangeAnalysis/ModulusAnalysis.
2026-02-23 15:09:51 +01:00
Anders Schack-Mulligen
6fbdb2c52b
Java: Fix Cyclomatic complexity calculation.
2026-02-23 15:09:51 +01:00
Anders Schack-Mulligen
48e3724299
Java/Cfg: Introduce new shared CFG library and replace the Java CFG.
2026-02-23 15:09:50 +01:00
Anders Schack-Mulligen
0c9931ff8a
Java: Replace idominance tests.
2026-02-23 15:09:50 +01:00
Anders Schack-Mulligen
48d7d9cedb
Cfg: Add getEnclosingCallable to shared BasicBlock
2026-02-23 15:09:49 +01:00
Anders Schack-Mulligen
4a97a449fc
Java: Replace ControlFlowNode.asCall with Call.getControlFlowNode.
2026-02-23 15:09:49 +01:00
Anders Schack-Mulligen
2e987343dd
Java: Preparatory tweaks.
2026-02-23 15:09:48 +01:00
Anders Schack-Mulligen
723a896b99
Cfg: Add ConditionKind and getDual to ConditionalSuccessor.
2026-02-23 15:09:48 +01:00