Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
401 commits
Select commit Hold shift + click to select a range
f118643
Java: Accept new test result after extractor changes
IdrissRio Sep 5, 2025
e6eacca
Update change note to reflect changes
Napalys Sep 5, 2025
d8c4d6d
Rename `cors-misconfiguration` to `cors-origin`.
Napalys Sep 5, 2025
b2b5199
JS: Bump TypeScript dependency to 5.9
asgerf Sep 5, 2025
0d03c81
JS: Also update @types/node version
asgerf Sep 5, 2025
76ca1a5
JS: Add basic test for 'import defer' syntax in TypeScript
asgerf Sep 5, 2025
215602c
JS: Preserve information about 'defer' keyword
asgerf Sep 5, 2025
bab2a79
JS: Add parsing support in JS parser
asgerf Sep 5, 2025
e719dd9
Merge pull request #20116 from github/idrissrio/compact-soruce-file
IdrissRio Sep 5, 2025
a08878f
JS: Add upgrade and downgrade scripts
asgerf Sep 5, 2025
ef114c4
JS: Add change note
asgerf Sep 5, 2025
b2feaac
Merge branch 'main' into js/move-cors-query-from-experimental
Napalys Sep 5, 2025
82476b9
Merge pull request #20373 from github/aibaars/drop-nbsp
aibaars Sep 5, 2025
a6fb45b
Update expected files
henrymercer Sep 5, 2025
8c13faf
Go: Set log level based on `CODEQL_VERBOSITY`
mbg Sep 5, 2025
e7fbd28
Add changelog note
henrymercer Sep 5, 2025
526990e
Add comment about GitHub API languages
henrymercer Sep 5, 2025
fea0533
Add date to changelog note filename
henrymercer Sep 5, 2025
1e77891
Merge branch 'main' into henrymercer/actions-status
henrymercer Sep 5, 2025
e18b049
Merge pull request #20376 from github/mbg/go/use-codeql-verbosity
mbg Sep 5, 2025
fe74267
Javba: Update tests results with disabled annotation processing.
alexet Sep 3, 2025
6148590
Merge pull request #20355 from github/alexet/update-java-tests-no-ann…
alexet Sep 5, 2025
c5ee0f3
Java: Add `ModuleImportDeclaration` QL class
IdrissRio Jul 21, 2025
039b5af
Java: Add module import declaration test
IdrissRio Jul 21, 2025
7d47970
Java: Add change note
IdrissRio Jul 21, 2025
1caf18e
Java: Address review comment. Improve module-import documentation
IdrissRio Sep 5, 2025
ed9ed43
Java: Address review comment. Improve `getAnImportedType` definition
IdrissRio Sep 5, 2025
c5cb86a
Merge pull request #20097 from github/idrissrio/module-import-declara…
IdrissRio Sep 6, 2025
c6adc51
Java: Fix broken performance.
aschackmull Sep 8, 2025
66379de
Merge pull request #20380 from aschackmull/java/fix-broken-perf
aschackmull Sep 8, 2025
8c34b7e
Merge pull request #20146 from Napalys/js/move-cors-query-from-experi…
Napalys Sep 8, 2025
869b7e0
Merge pull request #19932 from joefarebrother/python-qual-init-del-calls
joefarebrother Sep 8, 2025
ba5318f
Merge pull request #20369 from MathiasVP/value-numbering-unique-irfunc
jketema Sep 8, 2025
b4e6d30
Merge pull request #20371 from github/henrymercer/actions-status
henrymercer Sep 8, 2025
6c9a75e
C#: Include metrics in the database quality diagnostics.
michaelnebel Sep 4, 2025
08298f4
C#: Add change note.
michaelnebel Sep 4, 2025
7bf0529
C#: Update integration test expected output.
michaelnebel Sep 4, 2025
827ea4c
C#: Address review comments.
michaelnebel Sep 8, 2025
ed11a32
C#: Update integration test expected output.
michaelnebel Sep 8, 2025
b0ef0f0
Java: Include metrics in the database quality diagnostics and lower t…
michaelnebel Sep 8, 2025
3f4b2b7
Java: Add change note.
michaelnebel Sep 8, 2025
572da26
Java: Update integration test expected output.
michaelnebel Sep 8, 2025
d9787ef
Rust: Include metrics in the database quality diagnostics.
michaelnebel Sep 8, 2025
29c22e6
Rust: Add change note.
michaelnebel Sep 8, 2025
0159f5b
Java: Add failing test for Scoped Values
IdrissRio Sep 1, 2025
9f1e60c
Java: Add MaDs for `java.lang.scoped`
IdrissRio Sep 1, 2025
a8541b9
Java: accept new test results
IdrissRio Sep 1, 2025
2f4c728
Java: Add new change note
IdrissRio Sep 2, 2025
117c41b
Java: Address review comment. Fix dataflow model
IdrissRio Sep 5, 2025
666678a
Java: Address review comment. Inline dataflow annotation
IdrissRio Sep 5, 2025
eea11db
Rust: Relabel reqwest sinks as `request-url`
paldepind Sep 8, 2025
16fbe8d
Java: add dataflow test for newly added KDF API
IdrissRio Sep 2, 2025
f52a427
Java: Add MaDs for `java.crypto.KDF`
IdrissRio Sep 2, 2025
311690c
Java: accept new test results
IdrissRio Sep 2, 2025
89e080c
Java: Add new change note
IdrissRio Sep 2, 2025
55ff71b
Java: Address review comment. Fix dataflow model
IdrissRio Sep 5, 2025
3aba4d3
Java: Add test showing missing model for `thenExpand`
IdrissRio Sep 8, 2025
728a4af
Java: Add model for `thenExpand` and accept new results
IdrissRio Sep 8, 2025
9f47996
C++: Lift a few more predicates to expression guards.
MathiasVP Sep 8, 2025
a81989d
C++: Simplify the 'SSLResultNotChecked' query.
MathiasVP Sep 8, 2025
4c1fa58
Java: Fix more broken performance.
aschackmull Sep 8, 2025
40c8c3a
Swift: Update to Swift 6.1.3
jketema Sep 8, 2025
84df8f9
Merge pull request #20366 from michaelnebel/csharp/improvedatabasequa…
michaelnebel Sep 8, 2025
dc247e0
Merge pull request #20383 from aschackmull/java/fix-more-broken-perf
IdrissRio Sep 8, 2025
702d6d8
Update cpp/ql/lib/semmle/code/cpp/controlflow/IRGuards.qll
MathiasVP Sep 8, 2025
2d84f8a
Changedocs for 2.23.0
jonjanego Sep 8, 2025
2505272
Changedocs for 2.23.0 - updating 2.22.4 golang note
jonjanego Sep 8, 2025
d51361c
Merge pull request #20387 from github/changedocs-2.23.0
jonjanego Sep 8, 2025
b5045b3
Merge pull request #20363 from asgerf/js/remove-fallback-type
asgerf Sep 8, 2025
0752dbe
Merge pull request #20360 from asgerf/js/remove-angularjs-string-spec…
asgerf Sep 8, 2025
f104205
Bump golang.org/x/mod
dependabot[bot] Sep 9, 2025
d8e943e
Update javascript/ql/lib/semmle/javascript/frameworks/React.qll
asgerf Sep 9, 2025
aa9d299
Merge pull request #20348 from paldepind/rust/certain-shorthand-self
paldepind Sep 9, 2025
c4633c7
Swift: Update LFS
jketema Sep 9, 2025
63a2c9d
Rust: Add request forgery tests
paldepind Sep 8, 2025
e1047dc
Rust: Add request forgery query
paldepind Sep 8, 2025
1c922f0
Rust: Add request forgery query qhelp
paldepind Sep 8, 2025
387d08a
Rust: Update query suite expected files
paldepind Sep 8, 2025
4f9d827
Rust: Add change node for request forgery query
paldepind Sep 9, 2025
91f9247
C#: Update extractor to use .NET Runtime 9.0.5 and .NET SDK 9.0.300.
michaelnebel Sep 3, 2025
6ea6f30
Bazel: fix `codeql_csharp_binary`
redsun82 Sep 3, 2025
51052c7
Bazel: patch `rules_dotnet` to avoid unit test failure
redsun82 Sep 4, 2025
30b93d1
C#: Update global.json files for most integration tests to se .NET SD…
michaelnebel Sep 3, 2025
a0f8b58
C#: Update integration tests expected output.
michaelnebel Sep 4, 2025
4b9d102
Merge pull request #20389 from github/dependabot/go_modules/go/extrac…
mbg Sep 9, 2025
fd7d216
Shared: Replace explicit recursion with a HOP.
MathiasVP Sep 4, 2025
3aee4a8
Shared: Cache the sourceBoundedFastTC structure instead of the result…
MathiasVP Sep 8, 2025
417e79c
Merge pull request #20382 from MathiasVP/simplify-ssl-result-not-checked
MathiasVP Sep 9, 2025
f7c7466
Rust: Improve a few `toString` implementations
paldepind Sep 9, 2025
b34fa7a
Merge pull request #20393 from paldepind/rust/impl-to-string
paldepind Sep 9, 2025
a1980ee
Shared: Make some generalizations in type inference library
hvitved Sep 3, 2025
2e90499
Rename `State` -> `Environment`
hvitved Sep 9, 2025
e3e1bcd
Rename `Environment` -> `AccessEnvironment`
hvitved Sep 9, 2025
125cc91
Merge pull request #20358 from hvitved/shared/type-inference-generalize
hvitved Sep 9, 2025
174f89f
Merge pull request #20384 from jketema/swift-6.1.3
jketema Sep 9, 2025
d575d3c
Merge pull request #20374 from asgerf/js/typescript-5.9
asgerf Sep 9, 2025
fbc4f0b
C#: Increase attempts to reach nuget.org in integration tests to redu…
michaelnebel Sep 10, 2025
09edc29
Merge pull request #20322 from asgerf/js/react-no-override
asgerf Sep 10, 2025
166c77d
Merge pull request #20345 from github/idrissrio/java-kdf
IdrissRio Sep 10, 2025
b89b68d
Merge pull request #20339 from github/idrissrio/scoped-values
IdrissRio Sep 10, 2025
e5ba1c7
Merge pull request #20352 from michaelnebel/csharp/dotnet908
michaelnebel Sep 10, 2025
046d0d4
Merge pull request #20396 from michaelnebel/csharp/improveintegration…
michaelnebel Sep 10, 2025
b7bc94b
Update shared/typetracking/codeql/typetracking/internal/TypeTrackingI…
MathiasVP Sep 10, 2025
f8bdf92
Shared: Make 'standardFlowsTo' private.
MathiasVP Sep 10, 2025
dacc9e2
JS: Refactor 'default' import interop
asgerf Sep 10, 2025
5a9b562
Merge branch 'main' into source-bounded-fast-tc-in-typetracking
MathiasVP Sep 10, 2025
d097946
C++: No need for this additional case.
MathiasVP Sep 10, 2025
72d7223
C++: Small drive by cleanup. Delete unnecessary nested 'exists'.
MathiasVP Sep 10, 2025
d39263d
Merge pull request #20317 from asgerf/js/xunit
asgerf Sep 10, 2025
e5da0b9
C#: Deprecate cs/captured-foreach-variable.
michaelnebel Sep 10, 2025
186e42b
C#: Add change note.
michaelnebel Sep 10, 2025
edec76a
Merge pull request #20370 from MathiasVP/source-bounded-fast-tc-in-ty…
MathiasVP Sep 10, 2025
50cd200
Apply suggestions from code review
paldepind Sep 10, 2025
c73d081
Rust: Fix based on review
paldepind Sep 10, 2025
a207373
Java: Revert wrongly generated stats file
IdrissRio Sep 8, 2025
762d2ef
Java: Manually add new relation to stats file
IdrissRio Sep 10, 2025
d1a3294
Merge branch 'main' into rust/request-forgery-query
paldepind Sep 10, 2025
065388d
Rust: Fix formatting
paldepind Sep 10, 2025
3815503
Java: Consolidate Assertions.qll and Preconditions.qll.
aschackmull Sep 5, 2025
b5c7bc1
Java: Accept test output.
aschackmull Sep 8, 2025
4227dd7
Merge pull request #20400 from MathiasVP/cleanup-incorrect-scanf-query
MathiasVP Sep 10, 2025
5c19aad
Java: Make Virtual Dispatch Global, but keep SSA local.
alexet Jul 9, 2025
dcc5572
Java: Hnalde global files as exceptions rather than annotating them
alexet Sep 10, 2025
a9a0cb9
Rust: add `rust-analyzer` update instructions
redsun82 Jun 30, 2025
a671480
Add changed framework coverage reports
github-actions[bot] Sep 11, 2025
b996dc3
Bump golang.org/x/tools
dependabot[bot] Sep 11, 2025
eea7006
Rust: Infer certain type information for struct expressions
paldepind Sep 10, 2025
e7df1b2
Java: Add change note.
aschackmull Sep 11, 2025
59fc7aa
Merge pull request #20385 from github/idrissrio/java-regression-stats…
IdrissRio Sep 11, 2025
d224f85
C++: Add uninitialized variable FP test
jketema Sep 11, 2025
2bc035c
C++: Update test results after extractor changes
jketema Sep 11, 2025
9a96372
Rust: Add some more details.
geoffw0 Sep 11, 2025
8af8c6d
Rust: Move upgrade script to the very end, add a few details.
geoffw0 Sep 11, 2025
7a2391f
JS: Deprecate Portals and delete tests
asgerf Sep 11, 2025
2f99618
Swift: Mention in update playbook that we want a change note
jketema Sep 11, 2025
32131cf
Update rust/README.md
geoffw0 Sep 11, 2025
051da9d
Merge branch 'main' into rustanalyzerdoc
redsun82 Sep 11, 2025
cbbf7c2
Include pre-update node in output
owen-mc Sep 11, 2025
fa18fd2
Add method defs
owen-mc Sep 11, 2025
84e70e1
Add direct method calls
owen-mc Sep 11, 2025
d9e7c89
Add indirect method calls
owen-mc Sep 11, 2025
671bea5
Rust: Add certain type information for struct patterns
paldepind Sep 11, 2025
f74913a
Merge pull request #20411 from owen-mc/go/improve-pun-tests
owen-mc Sep 11, 2025
d87e9ec
Merge pull request #20409 from jketema/jketema/swift-changenote
jketema Sep 11, 2025
4d0635d
Update qhelp for request forgery query
paldepind Sep 11, 2025
f4575d9
Merge pull request #20406 from github/dependabot/go_modules/go/extrac…
mbg Sep 11, 2025
0b5745c
Merge pull request #20405 from github/workflow/coverage/update
IdrissRio Sep 11, 2025
b3f4c68
C++: Remove the BMN filter from some queries, but reduce precision to…
igfoo Sep 11, 2025
a0e963f
Java: Add change note and update supported versions
IdrissRio Sep 11, 2025
5113087
DataFlow: Permit local flow between post-update nodes
asgerf Sep 9, 2025
ae4cf30
Remove failures from dataflow-consistency expectations
asgerf Sep 10, 2025
0b43203
Merge pull request #20401 from michaelnebel/csharp/deprecatecapturedf…
michaelnebel Sep 11, 2025
cc131a0
C++: Accept changes to cpp/ql/integration-tests/query-suite
igfoo Sep 11, 2025
8ce2d39
Merge pull request #20413 from github/idrissrio/java25-change-note
IdrissRio Sep 11, 2025
050a9e1
C++: Add changenote for changes to some queries
igfoo Sep 11, 2025
ffeece1
Merge pull request #20410 from igfoo/igfoo/bmn-med
igfoo Sep 11, 2025
aaa67a2
Update rust/README.md
geoffw0 Sep 11, 2025
d5ee91b
Java: Adress comments form code review.
alexet Sep 11, 2025
b456a8c
Apply suggestions from code review
paldepind Sep 12, 2025
cb766de
Docs: remove 1-year deprecation period for QL libs
jbj Sep 12, 2025
5ac8035
Docs: remove outdated link to change notes.
jbj Sep 12, 2025
92124a9
Update rust/README.md
geoffw0 Sep 12, 2025
fd5b5ba
Merge pull request #20403 from paldepind/rust/certain-struct-expr
paldepind Sep 12, 2025
352610d
C++: Add `GOOD` annotation
jketema Sep 12, 2025
3de9356
Go: Retrofit the change log to mention Go 1.25
jketema Sep 12, 2025
0f5bd37
Merge branch 'main' into go-log
jketema Sep 12, 2025
a773042
Merge pull request #20407 from jketema/dyn-too-many
jketema Sep 12, 2025
7c35835
Merge pull request #20422 from jketema/go-log
jketema Sep 12, 2025
d638ee9
Merge pull request #20404 from geoffw0/rustanalyzerdoc
geoffw0 Sep 12, 2025
e9fcd98
Merge pull request #20357 from github/alexet/java-global-virtual-disp…
alexet Sep 12, 2025
e8ddac0
Merge pull request #20377 from aschackmull/java/preconditions
aschackmull Sep 12, 2025
db1f399
Java: Preparatory Nullness refactor.
aschackmull Aug 14, 2025
1ebdcdf
Guards: Support integer ranges.
aschackmull Aug 15, 2025
924a8ea
Java: Improve precision of SuccessorType labels in CFG.
aschackmull Sep 2, 2025
452bbf7
Java: Add some more nullness tests.
aschackmull Aug 25, 2025
69a1c7e
Rust: Add tests with blanket implementation
paldepind Aug 2, 2025
d10cdfb
Rust: Move existing blanket implementation test
paldepind Sep 10, 2025
4fb133a
Recognise that a less-than test is as good as a non-equal test for mi…
smowton Sep 12, 2025
f5780ae
Amend docstring
smowton Sep 12, 2025
db5c581
Change note
smowton Sep 12, 2025
29ba013
Rust: Add support for resolving methods from blanket implementations
paldepind Sep 10, 2025
12dcd75
Rust: Accept test changes
paldepind Sep 10, 2025
4a8ffea
Shared: Add control flow reachability lib.
aschackmull Aug 7, 2025
03321ff
Java: Replace nullness implementation.
aschackmull Aug 14, 2025
60d07cf
Java: Clean up IntegerGuards.qll
aschackmull Sep 5, 2025
e8f1ec6
Java: Accept guards test results.
aschackmull Sep 5, 2025
2743fc0
Guards: Include ConditionalExpr in exprHasValue.
aschackmull Sep 10, 2025
f9ffee0
Java: Minor nullness cleanup.
aschackmull Sep 12, 2025
e302616
Java: Accept qltest change.
aschackmull Sep 12, 2025
e2e6fd0
Rust: Address feedback from PR review
paldepind Sep 12, 2025
2bb9e2f
Rust: Add test cases for hardcoded cryptographic constants in cookies.
geoffw0 Sep 10, 2025
5d3ea2f
Rust: Add models for the cookie and biscotti crates.
geoffw0 Sep 11, 2025
e2d9412
Rust: Model vec::from.
geoffw0 Sep 12, 2025
9f83b67
Rust: Model vec::from_elem.
geoffw0 Sep 12, 2025
118ac07
Rust: Convert 'from' models into one generic one.
geoffw0 Sep 12, 2025
989081b
Rust: Change note.
geoffw0 Sep 12, 2025
50bdc65
Rust: Apply documentation tweaks
paldepind Sep 15, 2025
b308c54
Java: Add a change note, and a minor ql comment.
aschackmull Sep 15, 2025
875c7da
Rust: Improve comments in type inference
paldepind Sep 15, 2025
be39c4c
Shared: Minor precision improvement.
aschackmull Sep 15, 2025
3543829
Rust: Remove condition that always holds
paldepind Sep 15, 2025
acb4d9f
Shared: Copy some qldoc from Guards.qll
aschackmull Sep 15, 2025
00f6448
Merge pull request #20426 from geoffw0/cookie2
geoffw0 Sep 15, 2025
af49301
Merge pull request #20381 from paldepind/rust/request-forgery-query
paldepind Sep 15, 2025
78389c8
Merge pull request #20133 from paldepind/rust/type-inference-blanket-…
paldepind Sep 15, 2025
d0091e1
javascript: Fix spelling error in documentation
igfoo Sep 15, 2025
d6a14e6
JS: Add test cases for promisification libraries.
Napalys Sep 15, 2025
22b6185
JS: Add modeling for `thenify-all`
Napalys Sep 15, 2025
5cf052d
Csharp: Fix typo in LeapYear qhelp
igfoo Sep 15, 2025
d37425a
JS: Treat promisify(obj).member as obj.member
Napalys Sep 15, 2025
312471e
JS: Add modeling for `@google-cloud/promisify`
Napalys Sep 15, 2025
35c75c0
JS: Add modeling for `@gar/promisify`
Napalys Sep 15, 2025
e002f20
JS: Add modeling for `es6-promisify`
Napalys Sep 15, 2025
2c6db00
JS: Add modeling for util promisify*
Napalys Sep 15, 2025
0d23ab0
JS: Add data flow modeling for promisified user-defined functions
Napalys Sep 15, 2025
3a75500
JS: Add modeling for `call-me-maybe`
Napalys Sep 15, 2025
b797df6
Merge pull request #20436 from github/igfoo/fix-typo-substract
igfoo Sep 15, 2025
7860857
Merge pull request #20434 from github/igfoo/fix-typo
igfoo Sep 15, 2025
cc72314
C++: Tweak a release note
igfoo Sep 15, 2025
a4c845c
C++: Fix barrier in 'cpp/unbounded-write'.
MathiasVP Sep 15, 2025
9231119
Merge pull request #20437 from github/igfoo/tweak-release-note
igfoo Sep 15, 2025
18c96fd
Shared: Remove antijoin.
MathiasVP Sep 15, 2025
278a1ef
JS: Add change note
Napalys Sep 15, 2025
c375f24
Merge pull request #20423 from smowton/smowton/fix/length-comparison-…
smowton Sep 15, 2025
f587273
Merge pull request #19768 from trailofbits/VF/lodash-group-by
asgerf Sep 16, 2025
65102a0
Merge pull request #19770 from trailofbits/VF/async-package-improvements
asgerf Sep 16, 2025
5c33af3
Rust: Update .expected file.
geoffw0 Sep 16, 2025
61faeef
Rust: Pretty print models, so that the MaD IDs aren't reported raw / …
geoffw0 Sep 16, 2025
6264f46
Merge pull request #20440 from MathiasVP/converted-barrier-in-unbound…
jketema Sep 16, 2025
107d142
C#: Exclude enum types as they don't inherit the default toString.
aschackmull Sep 16, 2025
57e15b9
Merge pull request #20367 from aschackmull/shared/controlflow
aschackmull Sep 16, 2025
0ceb2f3
Merge pull request #20442 from aschackmull/csharp/default-tostring-enum
aschackmull Sep 16, 2025
fa36d9f
Merge pull request #20438 from MathiasVP/remove-antijoin-in-shared-gu…
MathiasVP Sep 16, 2025
78bfdfd
Merge pull request #20390 from asgerf/post-update-consistency
asgerf Sep 16, 2025
45eff3d
Merge pull request #20399 from asgerf/js/default-interop2
asgerf Sep 16, 2025
ee78b7d
JS: Add support for Promise.try
asgerf Sep 5, 2025
429c4ea
JS: Add support for Array.prototype.with
asgerf Sep 5, 2025
49ccb8c
JS: Simplify exist clause to use `Promisify::PromisifyAllCall` instea…
Napalys Sep 16, 2025
8fbd720
C#: Fix failing integration test after new version of NewtonSoft.JSon…
michaelnebel Sep 16, 2025
a2d8327
Merge pull request #20441 from geoffw0/fixrfquery
hvitved Sep 16, 2025
6d9e489
Merge pull request #20445 from michaelnebel/csharp/fixintegrationtest
michaelnebel Sep 16, 2025
edf79a3
JS: Change note
asgerf Sep 16, 2025
97a11de
Merge pull request #20435 from Napalys/js/promisification_modeling
Napalys Sep 16, 2025
eac8a79
Merge pull request #20420 from jbj/no-qll-deprecation
jbj Sep 16, 2025
7670a2b
Merge pull request #20375 from asgerf/js/promise-try
asgerf Sep 16, 2025
02a1b1e
Release preparation for version 2.23.1
invalid-email-address Sep 16, 2025
ce9c8e6
Merge pull request #20447 from github/release-prep/2.23.1
igfoo Sep 17, 2025
c83268f
Merge tag 'codeql-cli/latest' into auto/sync-main-pr
MathiasVP Sep 23, 2025
3332f70
PS: Mirror the changes from github/codeql#20300.
MathiasVP Sep 23, 2025
6530fac
PS: Accept library test changes.
MathiasVP Sep 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- name: Setup dotnet
uses: actions/setup-dotnet@v4
with:
dotnet-version: 9.0.100
dotnet-version: 9.0.300

- name: Checkout repository
uses: actions/checkout@v5
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/csharp-qltest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,14 +43,14 @@ jobs:
- name: Setup dotnet
uses: actions/setup-dotnet@v4
with:
dotnet-version: 9.0.100
dotnet-version: 9.0.300
- name: Extractor unit tests
run: |
dotnet tool restore
dotnet test -p:RuntimeFrameworkVersion=9.0.0 extractor/Semmle.Util.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.0 extractor/Semmle.Extraction.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.0 autobuilder/Semmle.Autobuild.CSharp.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.0 autobuilder/Semmle.Autobuild.Cpp.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.5 extractor/Semmle.Util.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.5 extractor/Semmle.Extraction.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.5 autobuilder/Semmle.Autobuild.CSharp.Tests
dotnet test -p:RuntimeFrameworkVersion=9.0.5 autobuilder/Semmle.Autobuild.Cpp.Tests
shell: bash
stubgentest:
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/query-list.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
with:
python-version: 3.8
- name: Download CodeQL CLI
# Look under the `codeql` directory, as this is where we checked out the `github/codeql` repo
# Look under the `codeql` directory, as this is where we checked out the `github/codeql` repo
uses: ./codeql/.github/actions/fetch-codeql
- name: Build code scanning query list
run: |
Expand Down
4 changes: 2 additions & 2 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json")
bazel_dep(name = "fmt", version = "10.0.0")
bazel_dep(name = "rules_kotlin", version = "2.1.3-codeql.1")
bazel_dep(name = "gazelle", version = "0.40.0")
bazel_dep(name = "rules_dotnet", version = "0.17.4")
bazel_dep(name = "rules_dotnet", version = "0.19.2-codeql.1")
bazel_dep(name = "googletest", version = "1.14.0.bcr.1")
bazel_dep(name = "rules_rust", version = "0.63.0")
bazel_dep(name = "zstd", version = "1.5.5.bcr.1")
Expand Down Expand Up @@ -172,7 +172,7 @@ http_archive(
)

dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet")
dotnet.toolchain(dotnet_version = "9.0.100")
dotnet.toolchain(dotnet_version = "9.0.300")
use_repo(dotnet, "dotnet_toolchains")

register_toolchains("@dotnet_toolchains//:all")
Expand Down
7 changes: 4 additions & 3 deletions actions/extractor/codeql-extractor.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
name: "actions"
aliases: []
display_name: "GitHub Actions"
version: 0.0.1
column_kind: "utf16"
Expand All @@ -8,9 +7,11 @@ build_modes:
- none
default_queries:
- codeql/actions-queries
file_coverage_languages: []
# Actions workflows are not reported separately by the GitHub API, so we can't
# associate them with a specific language.
github_api_languages: []
scc_languages: []
scc_languages:
- YAML
file_types:
- name: workflow
display_name: GitHub Actions workflow files
Expand Down
10 changes: 10 additions & 0 deletions actions/extractor/tools/baseline-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"paths": [
".github/workflows/*.yml",
".github/workflows/*.yaml",
".github/reusable_workflows/**/*.yml",
".github/reusable_workflows/**/*.yaml",
"**/action.yml",
"**/action.yaml"
]
}
2 changes: 2 additions & 0 deletions actions/extractor/tools/configure-baseline.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
@echo off
type "%CODEQL_EXTRACTOR_ACTIONS_ROOT%\tools\baseline-config.json"
3 changes: 3 additions & 0 deletions actions/extractor/tools/configure-baseline.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/sh

cat "$CODEQL_EXTRACTOR_ACTIONS_ROOT/tools/baseline-config.json"
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
ql/actions/ql/src/Diagnostics/SuccessfullyExtractedFiles.ql
ql/actions/ql/src/Security/CWE-077/EnvPathInjectionCritical.ql
ql/actions/ql/src/Security/CWE-077/EnvVarInjectionCritical.ql
ql/actions/ql/src/Security/CWE-094/CodeInjectionCritical.ql
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
ql/actions/ql/src/Debug/SyntaxError.ql
ql/actions/ql/src/Diagnostics/SuccessfullyExtractedFiles.ql
ql/actions/ql/src/Security/CWE-077/EnvPathInjectionCritical.ql
ql/actions/ql/src/Security/CWE-077/EnvPathInjectionMedium.ql
ql/actions/ql/src/Security/CWE-077/EnvVarInjectionCritical.ql
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
ql/actions/ql/src/Diagnostics/SuccessfullyExtractedFiles.ql
ql/actions/ql/src/Security/CWE-077/EnvPathInjectionCritical.ql
ql/actions/ql/src/Security/CWE-077/EnvPathInjectionMedium.ql
ql/actions/ql/src/Security/CWE-077/EnvVarInjectionCritical.ql
Expand Down
4 changes: 4 additions & 0 deletions actions/ql/lib/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
## 0.4.17

No user-facing changes.

## 0.4.16

No user-facing changes.
Expand Down
3 changes: 3 additions & 0 deletions actions/ql/lib/change-notes/released/0.4.17.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
## 0.4.17

No user-facing changes.
2 changes: 1 addition & 1 deletion actions/ql/lib/codeql-pack.release.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
lastReleaseVersion: 0.4.16
lastReleaseVersion: 0.4.17
4 changes: 2 additions & 2 deletions actions/ql/lib/codeql/Locations.qll
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ class Location extends TLocation, TBaseLocation {

/**
* Holds if this element is at the specified location.
* The location spans column `startcolumn` of line `startline` to
* column `endcolumn` of line `endline` in file `filepath`.
* The location spans column `sc` of line `sl` to
* column `ec` of line `el` in file `p`.
* For more information, see
* [Providing locations in CodeQL queries](https://codeql.github.com/docs/writing-codeql-queries/providing-locations-in-codeql-queries/).
*/
Expand Down
2 changes: 1 addition & 1 deletion actions/ql/lib/codeql/actions/Ast.qll
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@ class If extends AstNode instanceof IfImpl {
}

/**
* An Environemnt node representing a deployment environment.
* An Environment node representing a deployment environment.
*/
class Environment extends AstNode instanceof EnvironmentImpl {
string getName() { result = super.getName() }
Expand Down
16 changes: 7 additions & 9 deletions actions/ql/lib/codeql/actions/ast/internal/Ast.qll
Original file line number Diff line number Diff line change
Expand Up @@ -125,12 +125,11 @@ abstract class AstNodeImpl extends TAstNode {
* Gets the enclosing Step.
*/
StepImpl getEnclosingStep() {
if this instanceof StepImpl
then result = this
else
if this instanceof ScalarValueImpl
then result.getAChildNode*() = this.getParentNode()
else none()
this instanceof StepImpl and
result = this
or
this instanceof ScalarValueImpl and
result.getAChildNode*() = this.getParentNode()
}

/**
Expand Down Expand Up @@ -1416,9 +1415,8 @@ class ExternalJobImpl extends JobImpl, UsesImpl {
override string getVersion() {
exists(YamlString name |
n.lookup("uses") = name and
if not name.getValue().matches("\\.%")
then result = name.getValue().regexpCapture(repoUsesParser(), 4)
else none()
not name.getValue().matches("\\.%") and
result = name.getValue().regexpCapture(repoUsesParser(), 4)
)
}
}
Expand Down
2 changes: 1 addition & 1 deletion actions/ql/lib/codeql/actions/controlflow/BasicBlocks.qll
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,7 @@ private module Cached {
/**
* Holds if `cfn` is the `i`th node in basic block `bb`.
*
* In other words, `i` is the shortest distance from a node `bb`
* In other words, `i` is the shortest distance from a node `bbStart`
* that starts a basic block to `cfn` along the `intraBBSucc` relation.
*/
cached
Expand Down
38 changes: 3 additions & 35 deletions actions/ql/lib/codeql/actions/controlflow/internal/Cfg.qll
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ private import codeql.controlflow.Cfg as CfgShared
private import codeql.Locations

module Completion {
import codeql.controlflow.SuccessorType

private newtype TCompletion =
TSimpleCompletion() or
TBooleanCompletion(boolean b) { b in [false, true] } or
Expand All @@ -25,7 +27,7 @@ module Completion {

override predicate isValidFor(AstNode e) { not any(Completion c).isValidForSpecific(e) }

override NormalSuccessor getAMatchingSuccessorType() { any() }
override DirectSuccessor getAMatchingSuccessorType() { any() }
}

class BooleanCompletion extends NormalCompletion, TBooleanCompletion {
Expand All @@ -49,34 +51,6 @@ module Completion {

override ReturnSuccessor getAMatchingSuccessorType() { any() }
}

cached
private newtype TSuccessorType =
TNormalSuccessor() or
TBooleanSuccessor(boolean b) { b in [false, true] } or
TReturnSuccessor()

class SuccessorType extends TSuccessorType {
string toString() { none() }
}

class NormalSuccessor extends SuccessorType, TNormalSuccessor {
override string toString() { result = "successor" }
}

class BooleanSuccessor extends SuccessorType, TBooleanSuccessor {
boolean value;

BooleanSuccessor() { this = TBooleanSuccessor(value) }

override string toString() { result = value.toString() }

boolean getValue() { result = value }
}

class ReturnSuccessor extends SuccessorType, TReturnSuccessor {
override string toString() { result = "return" }
}
}

module CfgScope {
Expand Down Expand Up @@ -127,14 +101,8 @@ private module Implementation implements CfgShared::InputSig<Location> {
last(scope.(CompositeAction), e, c)
}

predicate successorTypeIsSimple(SuccessorType t) { t instanceof NormalSuccessor }

predicate successorTypeIsCondition(SuccessorType t) { t instanceof BooleanSuccessor }

SuccessorType getAMatchingSuccessorType(Completion c) { result = c.getAMatchingSuccessorType() }

predicate isAbnormalExitType(SuccessorType t) { none() }

int idOfAstNode(AstNode node) { none() }

int idOfCfgScope(CfgScope scope) { none() }
Expand Down
8 changes: 4 additions & 4 deletions actions/ql/lib/codeql/actions/dataflow/ExternalFlow.qll
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,10 @@ predicate madSource(DataFlow::Node source, string kind, string fieldName) {
(
if fieldName.trim().matches("env.%")
then source.asExpr() = uses.getInScopeEnvVarExpr(fieldName.trim().replaceAll("env.", ""))
else
if fieldName.trim().matches("output.%")
then source.asExpr() = uses
else none()
else (
fieldName.trim().matches("output.%") and
source.asExpr() = uses
)
)
)
}
Expand Down
15 changes: 7 additions & 8 deletions actions/ql/lib/codeql/actions/dataflow/FlowSources.qll
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,14 @@ abstract class RemoteFlowSource extends SourceNode {
class GitHubCtxSource extends RemoteFlowSource {
string flag;
string event;
GitHubExpression e;

GitHubCtxSource() {
this.asExpr() = e and
// github.head_ref
e.getFieldName() = "head_ref" and
flag = "branch" and
(
exists(GitHubExpression e |
this.asExpr() = e and
// github.head_ref
e.getFieldName() = "head_ref" and
flag = "branch"
|
event = e.getATriggerEvent().getName() and
event = "pull_request_target"
or
Expand Down Expand Up @@ -148,7 +148,6 @@ class GhCLICommandSource extends RemoteFlowSource, CommandSource {
class GitHubEventPathSource extends RemoteFlowSource, CommandSource {
string cmd;
string flag;
string access_path;
Run run;

// Examples
Expand All @@ -163,7 +162,7 @@ class GitHubEventPathSource extends RemoteFlowSource, CommandSource {
run.getScript().getACommand() = cmd and
cmd.matches("jq%") and
cmd.matches("%GITHUB_EVENT_PATH%") and
exists(string regexp |
exists(string regexp, string access_path |
untrustedEventPropertiesDataModel(regexp, flag) and
not flag = "json" and
access_path = "github.event" + cmd.regexpCapture(".*\\s+([^\\s]+)\\s+.*", 1) and
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ abstract class ArgumentInjectionSink extends DataFlow::Node {
*/
class ArgumentInjectionFromEnvVarSink extends ArgumentInjectionSink {
string command;
string argument;

ArgumentInjectionFromEnvVarSink() {
exists(Run run, string var |
Expand All @@ -28,7 +27,7 @@ class ArgumentInjectionFromEnvVarSink extends ArgumentInjectionSink {
exists(run.getInScopeEnvVarExpr(var)) or
var = "GITHUB_HEAD_REF"
) and
run.getScript().getAnEnvReachingArgumentInjectionSink(var, command, argument)
run.getScript().getAnEnvReachingArgumentInjectionSink(var, command, _)
)
}

Expand All @@ -44,13 +43,12 @@ class ArgumentInjectionFromEnvVarSink extends ArgumentInjectionSink {
*/
class ArgumentInjectionFromCommandSink extends ArgumentInjectionSink {
string command;
string argument;

ArgumentInjectionFromCommandSink() {
exists(CommandSource source, Run run |
run = source.getEnclosingRun() and
this.asExpr() = run.getScript() and
run.getScript().getACmdReachingArgumentInjectionSink(source.getCommand(), command, argument)
run.getScript().getACmdReachingArgumentInjectionSink(source.getCommand(), command, _)
)
}

Expand Down
Loading
Loading