CodeQL 2.22.3 (2025-08-06)ΒΆ
This is an overview of changes in the CodeQL CLI and relevant CodeQL query and library packs. For additional updates on changes to the CodeQL code scanning experience, check out the code scanning section on the GitHub blog, relevant GitHub Changelog updates, changes in the CodeQL extension for Visual Studio Code, and the CodeQL Action changelog.
Security CoverageΒΆ
CodeQL 2.22.3 runs a total of 476 security queries when configured with the Default suite (covering 169 CWE). The Extended suite enables an additional 130 queries (covering 32 more CWE). 2 security queries have been added with this release.
CodeQL CLIΒΆ
New FeaturesΒΆ
The
codeql database cleanup
command now takes the--cache-cleanup=overlay
option, which trims the cache to just the data that will be useful when evaluating against an overlay.
Query PacksΒΆ
Minor Analysis ImprovementsΒΆ
C/C++ΒΆ
The βInitialization code not runβ query (
cpp/initialization-not-run
) no longer reports an alert on static global variables that have no dereference.
RustΒΆ
Type inference now supports closures, calls to closures, and trait bounds using the
FnOnce
trait.Type inference now supports trait objects, i.e.,
dyn Trait
types.Type inference now supports tuple types.
New QueriesΒΆ
RustΒΆ
Added a new query,
rust/hard-coded-cryptographic-value
, for detecting use of hardcoded keys, passwords, salts and initialization vectors.
Language LibrariesΒΆ
Minor Analysis ImprovementsΒΆ
C/C++ΒΆ
The
cpp/overrun-write
query now recognizes more bound checks and thus produces fewer false positives.
JavaScript/TypeScriptΒΆ
The regular expressions in
SensitiveDataHeuristics.qll
have been extended to find more instances of sensitive data such as secrets used in authentication, finance and health information, and device data. The heuristics have also been refined to find fewer false positive matches. This will improve results for queries related to sensitive information.
PythonΒΆ
The regular expressions in
SensitiveDataHeuristics.qll
have been extended to find more instances of sensitive data such as secrets used in authentication, finance and health information, and device data. The heuristics have also been refined to find fewer false positive matches. This will improve results for queries related to sensitive information.
RubyΒΆ
The regular expressions in
SensitiveDataHeuristics.qll
have been extended to find more instances of sensitive data such as secrets used in authentication, finance and health information, and device data. The heuristics have also been refined to find fewer false positive matches. This will improve results for queries related to sensitive information.
SwiftΒΆ
The regular expressions in
SensitiveDataHeuristics.qll
have been extended to find more instances of sensitive data such as secrets used in authentication, finance and health information, and device data. The heuristics have also been refined to find fewer false positive matches. This will improve results for queries related to sensitive information.
RustΒΆ
Removed deprecated dataflow extensible predicates
sourceModelDeprecated
,sinkModelDeprecated
, andsummaryModelDeprecated
, along with their associated classes.The regular expressions in
SensitiveDataHeuristics.qll
have been extended to find more instances of sensitive data such as secrets used in authentication, finance and health information, and device data. The heuristics have also been refined to find fewer false positive matches. This will improve results for queries related to sensitive information.
New FeaturesΒΆ
C/C++ΒΆ
Exposed various SSA-related classes (
Definition
,PhiNode
,ExplicitDefinition
,DirectExplicitDefinition
, andIndirectExplicitDefinition
) which were previously only usable inside the internal dataflow directory.
Java/KotlinΒΆ
Kotlin versions up to 2.2.2x are now supported.