Compare commits

...

67 Commits

Author SHA1 Message Date
Philip Ginsbach
9a11e29c01 set compileForOverlayEval true for java 2025-04-22 19:22:47 +01:00
Philip Ginsbach
b6ac00f642 synchronise files 2025-04-22 19:22:46 +01:00
Philip Ginsbach
2a187e5922 add overlay[caller] annotations 2025-04-22 19:22:45 +01:00
Philip Ginsbach
bebe3f4fe5 annotate qll files via python script 2025-04-22 19:22:44 +01:00
Jeroen Ketema
0bcee84117 C++: Minor textual fixes 2025-04-17 12:33:27 +02:00
idrissrio
15fe2fbba6 C++: update stats file 2025-04-16 20:45:33 +02:00
idrissrio
36a425715c C++: add upgrade and downgrade scripts 2025-04-16 17:07:25 +02:00
idrissrio
d8afd2a786 C++: add change note for designator-based initializations 2025-04-16 16:23:32 +02:00
idrissrio
49183bb82a C++: add predicate to distinguish between array/field designators 2025-04-16 16:19:26 +02:00
Ian Lynagh
e05c030bb7 Merge pull request #19317 from github/post-release-prep/codeql-cli-2.21.1
Post-release preparation for codeql-cli-2.21.1
2025-04-16 14:45:49 +01:00
Ian Lynagh
bdd3207752 Merge branch 'main' into post-release-prep/codeql-cli-2.21.1 2025-04-16 11:54:23 +01:00
Idriss Riouak
67bfe108c2 Merge pull request #19298 from github/idrissrio/vla
C++: add `isVla` predicated to `ArrayType`
2025-04-16 11:25:31 +02:00
Michael Nebel
29be2171af Merge pull request #19309 from michaelnebel/csharp/fix-comments
C#: Adjust comments and remove compilation warnings.
2025-04-16 09:26:09 +02:00
Aditya Sharad
c4e8b1a79e Merge pull request #19307 from adityasharad/actions/public-preview-cleanup
Actions: Remove preview notice, minor help and metadata fixes
2025-04-16 05:40:20 +05:30
Aditya Sharad
4952768569 Actions: Fix change note newline 2025-04-15 10:21:54 -07:00
github-actions[bot]
d78736b1bf Post-release preparation for codeql-cli-2.21.1 2025-04-15 16:33:15 +00:00
Paolo Tranquilli
ff8cd98527 Merge pull request #19233 from github/redsun82/cargo-upgrade
Rust: upgrade rust-analyzer to `0.0.273`
2025-04-15 16:30:12 +02:00
Paolo Tranquilli
3d3de78076 Merge pull request #19299 from github/redsun82/swift-6-extraction
Swift: extract still unextracted entities from the 6.0.2 upgrade
2025-04-15 14:08:38 +02:00
idrissrio
202040fad4 C++: update stats file 2025-04-15 13:36:24 +02:00
Michael Nebel
9170993cf0 C#: Adjust comments and remove compilation warnings. 2025-04-15 12:46:31 +02:00
idrissrio
ae07272c44 C++: add upgrade and downgrade scripts 2025-04-15 11:09:31 +02:00
idrissrio
15ba9e0c66 C++: add change note for VLAs 2025-04-15 11:06:19 +02:00
idrissrio
033bade0ab C++: add isVLA() to ArrayType to identify variable-length arrays 2025-04-15 11:03:26 +02:00
Tamás Vajk
de9c1fbc9c Merge pull request #19251 from tamasvajk/fix/macos15
C#: Fix autobuild on macos without mono
2025-04-15 10:07:26 +02:00
Arthur Baars
1c79c5e9ab Merge pull request #19292 from github/aibaars/rust-shadow-prelude
Rust: allow shadowing of prelude items
2025-04-15 09:54:31 +02:00
Paolo Tranquilli
eda1bc9f6b Merge pull request #19282 from github/redsun82/rust-codeowners
Rust: add to `CODEOWNERS`
2025-04-15 08:58:27 +02:00
Aditya Sharad
f9103f8ddc Actions: Add change note for missing severity 2025-04-14 14:48:43 -07:00
Aditya Sharad
6eb060f16a Actions: Add security-severity to excessive secrets exposure query
Same value as missing actions permissions,
both providing warnings to follow the
principle of least privilege within a
workflow.
2025-04-14 14:41:08 -07:00
Aditya Sharad
93fbb9fe61 Actions: Update description of missing permissions query 2025-04-14 14:39:31 -07:00
Aditya Sharad
eeb938a76d Docs: Minor fixes for Actions query help 2025-04-14 13:25:54 -07:00
Aditya Sharad
32f191cd9d Docs: Remove public preview notice for Actions support
Ready for GA.
2025-04-14 13:21:59 -07:00
Paolo Tranquilli
2dd3dea33a Merge branch 'main' into redsun82/cargo-upgrade 2025-04-14 16:35:57 +02:00
Paolo Tranquilli
6176202d50 Merge pull request #19291 from github/redsun82/rust-pick-edition
Rust: pick correct edition for the files
2025-04-14 16:26:00 +02:00
Paolo Tranquilli
c9cff09f5d Merge branch 'main' into redsun82/rust-pick-edition 2025-04-14 15:19:33 +02:00
Tamas Vajk
a70536f002 Improve code quality 2025-04-14 14:54:56 +02:00
Paolo Tranquilli
1c11c5562a Swift: add change note 2025-04-14 14:50:46 +02:00
Tamas Vajk
91daca1a6b Improve code quality based on PR review 2025-04-14 13:51:30 +02:00
Michael Nebel
53c4b29b50 Merge pull request #19289 from michaelnebel/csharp/improveautobuilder
C#: Improve auto-builder to better detect SDK references.
2025-04-14 12:43:23 +02:00
Paolo Tranquilli
c245459e97 Merge pull request #19293 from github/redsun82/rust-fix-member-aggregation
Rust: fix workspace member aggregation when absolute path is a glob pattern
2025-04-14 12:08:43 +02:00
Paolo Tranquilli
1316e08365 Swift: add upgrade/downgrade scripts 2025-04-14 11:06:47 +02:00
Paolo Tranquilli
fa6deaf87a Swift: extract UnreachableExpr 2025-04-14 10:35:24 +02:00
Paolo Tranquilli
9473543933 Swift: extract ActorIsolationErasureExpr 2025-04-14 10:35:24 +02:00
Paolo Tranquilli
ad0f9f1e73 Swift: mark ErrorUnionType as type-check only 2025-04-14 10:35:23 +02:00
Paolo Tranquilli
b575c89463 Swift: add CurrentContextIsolationTree to control flow 2025-04-14 10:35:23 +02:00
Paolo Tranquilli
712142cde9 Swift: extract CurrentContextIsolationExpr 2025-04-14 10:35:22 +02:00
Paolo Tranquilli
42ec6b018d Swift: add ExtractFunctionIsolationTree to control flow 2025-04-14 10:35:22 +02:00
Paolo Tranquilli
2910cb68ce Swift: extract ExtracFunctionIsolationExpr 2025-04-14 10:35:21 +02:00
Paolo Tranquilli
9dd1062a9c Rust: remove fixed inconsistency 2025-04-11 17:25:56 +02:00
Paolo Tranquilli
c844db09d2 Merge branch 'redsun82/rust-pick-edition' into redsun82/cargo-upgrade 2025-04-11 17:03:29 +02:00
Paolo Tranquilli
63e5f5a555 Rust: parametrize some integration tests on three editions 2025-04-11 16:50:23 +02:00
Paolo Tranquilli
868680f078 Merge branch 'redsun82/rust-fix-member-aggregation' into redsun82/rust-pick-edition 2025-04-11 16:46:16 +02:00
Paolo Tranquilli
60aa3a8d9d Rust: fix workspace member aggregation when absolute path is a glob pattern
We were interpreting the absolute path of a workspace as a glob pattern,
which doesn't work if the path has some special characters (e.g. `[` or
`]`).
2025-04-11 16:41:51 +02:00
Arthur Baars
b27ae98b54 Rust: normalize paths in the rustup folder 2025-04-11 15:46:57 +02:00
Arthur Baars
662e963a7b Rust: allow shadowing of prelude items 2025-04-11 15:46:55 +02:00
Paolo Tranquilli
dbbd80f4dc Rust: pick correct edition for the files
Previously we would unconditionally set the edition to the latest stable
according to rust-analyzer (2021 at the moment). Now we ask
rust-analyzer itself to pick the correct edition for the file.
2025-04-11 15:36:45 +02:00
Tamas Vajk
51388f2401 Do not try running mono when it's not available on the runner 2025-04-11 14:58:08 +02:00
Michael Nebel
f349048e42 C#: Add change note. 2025-04-11 13:53:54 +02:00
Michael Nebel
31143b405e C#: Improve auto builder logic to detect Sdk reference. 2025-04-11 13:53:52 +02:00
Michael Nebel
a5aef8c6f9 C#: Add some more DotNet autobuilder unit tests. 2025-04-11 12:03:06 +02:00
Paolo Tranquilli
547833afb5 Rust: add to CODEOWNERS 2025-04-11 08:32:33 +02:00
Tamas Vajk
159d31d494 Reenable problematic test 2025-04-11 08:24:08 +02:00
Paolo Tranquilli
de0d374cce Rust: add upgrades property in qlpack.yml 2025-04-07 17:22:17 +02:00
Paolo Tranquilli
1f9455c434 Rust: add upgrade/downgrade scripts for struct_field_is_unsafe 2025-04-07 15:39:14 +02:00
Paolo Tranquilli
260322b669 Rust: fix compilation errors 2025-04-07 15:25:19 +02:00
Paolo Tranquilli
132632b2a1 Cargo: update rustc_apfloat patched revision 2025-04-07 14:45:55 +02:00
Paolo Tranquilli
afb97d2797 Rust: regenerate schema 2025-04-07 14:34:33 +02:00
Paolo Tranquilli
db9c908d1d Cargo: upgrade dependencies 2025-04-07 14:30:00 +02:00
662 changed files with 50536 additions and 2638 deletions

View File

@@ -8,6 +8,7 @@
/javascript/ @github/codeql-javascript
/python/ @github/codeql-python
/ruby/ @github/codeql-ruby
/rust/ @github/codeql-rust
/swift/ @github/codeql-swift
/misc/codegen/ @github/codeql-swift
/java/kotlin-extractor/ @github/codeql-kotlin
@@ -41,6 +42,7 @@ MODULE.bazel @github/codeql-ci-reviewers
/.github/workflows/go-* @github/codeql-go
/.github/workflows/ql-for-ql-* @github/codeql-ql-for-ql-reviewers
/.github/workflows/ruby-* @github/codeql-ruby
/.github/workflows/rust.yml @github/codeql-rust
/.github/workflows/swift.yml @github/codeql-swift
# Misc

277
Cargo.lock generated
View File

@@ -154,15 +154,15 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitflags"
version = "2.8.0"
version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36"
checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd"
[[package]]
name = "borsh"
version = "1.5.3"
version = "1.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2506947f73ad44e344215ccd6403ac2ae18cd8e046e581a441bf8d199f257f03"
checksum = "5430e3be710b68d984d1391c854eb431a9d548640711faa54eecb1df93db91cc"
dependencies = [
"cfg_aliases",
]
@@ -224,9 +224,9 @@ dependencies = [
[[package]]
name = "cargo_metadata"
version = "0.18.1"
version = "0.19.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037"
checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba"
dependencies = [
"camino",
"cargo-platform",
@@ -275,7 +275,7 @@ version = "0.100.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4f114996bda14c0213f014a4ef31a7867dcf5f539a3900477fc6b20138e7a17b"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
"chalk-derive",
]
@@ -301,7 +301,7 @@ dependencies = [
"chalk-derive",
"chalk-ir",
"ena",
"indexmap 2.7.0",
"indexmap 2.9.0",
"itertools 0.12.1",
"petgraph",
"rustc-hash 1.1.0",
@@ -325,9 +325,9 @@ dependencies = [
[[package]]
name = "clap"
version = "4.5.32"
version = "4.5.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6088f3ae8c3608d19260cd7445411865a485688711b78b5be70d78cd96136f83"
checksum = "d8aa86934b44c19c50f87cc2790e19f54f7a67aedb64101c2e1a2e5ecfb73944"
dependencies = [
"clap_builder",
"clap_derive",
@@ -335,9 +335,9 @@ dependencies = [
[[package]]
name = "clap_builder"
version = "4.5.32"
version = "4.5.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "22a7ef7f676155edfb82daa97f99441f3ebf4a58d5e32f295a56259f1b6facc8"
checksum = "2414dbb2dd0695280da6ea9261e327479e9d37b0630f6b53ba2a11c60c679fd9"
dependencies = [
"anstream",
"anstyle",
@@ -622,7 +622,7 @@ version = "0.14.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5"
dependencies = [
"log 0.4.25",
"log 0.4.27",
]
[[package]]
@@ -691,9 +691,9 @@ checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569"
[[package]]
name = "equivalent"
version = "1.0.1"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f"
[[package]]
name = "figment"
@@ -781,7 +781,7 @@ checksum = "cc6bd114ceda131d3b1d665eba35788690ad37f5916457286b32ab6fd3c438dd"
dependencies = [
"cfg-if",
"libc",
"log 0.4.25",
"log 0.4.27",
"rustversion",
"windows",
]
@@ -812,7 +812,7 @@ checksum = "15f1ce686646e7f1e19bf7d5533fe443a45dbfb990e00629110797578b42fb19"
dependencies = [
"aho-corasick",
"bstr",
"log 0.4.25",
"log 0.4.27",
"regex-automata 0.4.9",
"regex-syntax 0.8.5",
]
@@ -918,9 +918,9 @@ dependencies = [
[[package]]
name = "indexmap"
version = "2.7.0"
version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f"
checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e"
dependencies = [
"equivalent",
"hashbrown 0.15.2",
@@ -939,7 +939,7 @@ version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
"inotify-sys",
"libc",
]
@@ -979,9 +979,9 @@ dependencies = [
[[package]]
name = "itoa"
version = "1.0.14"
version = "1.0.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
[[package]]
name = "jod-thread"
@@ -1033,9 +1033,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
[[package]]
name = "libc"
version = "0.2.169"
version = "0.2.171"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
[[package]]
name = "libredox"
@@ -1043,7 +1043,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
"libc",
"redox_syscall",
]
@@ -1074,14 +1074,14 @@ version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
dependencies = [
"log 0.4.25",
"log 0.4.27",
]
[[package]]
name = "log"
version = "0.4.25"
version = "0.4.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f"
checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
[[package]]
name = "loom"
@@ -1096,12 +1096,6 @@ dependencies = [
"tracing-subscriber",
]
[[package]]
name = "lz4_flex"
version = "0.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5"
[[package]]
name = "matchers"
version = "0.1.0"
@@ -1142,7 +1136,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
dependencies = [
"libc",
"log 0.4.25",
"log 0.4.27",
"wasi 0.11.0+wasi-snapshot-preview1",
"windows-sys 0.52.0",
]
@@ -1178,13 +1172,13 @@ version = "8.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2fee8403b3d66ac7b26aee6e40a897d85dc5ce26f44da36b8b73e987cc52e943"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
"filetime",
"fsevent-sys",
"inotify",
"kqueue",
"libc",
"log 0.4.25",
"log 0.4.27",
"mio",
"notify-types",
"walkdir",
@@ -1240,9 +1234,9 @@ checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e"
[[package]]
name = "oorandom"
version = "11.1.4"
version = "11.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9"
checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e"
[[package]]
name = "os_str_bytes"
@@ -1331,7 +1325,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
"fixedbitset",
"indexmap 2.7.0",
"indexmap 2.9.0",
]
[[package]]
@@ -1398,7 +1392,7 @@ version = "0.100.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f1651b0f7e8c3eb7c27a88f39d277e69c32bfe58e3be174d286c1a24d6a7a4d8"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
"ra-ap-rustc_hashes",
"ra-ap-rustc_index",
"tracing",
@@ -1470,18 +1464,16 @@ dependencies = [
[[package]]
name = "ra_ap_base_db"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4baa9734d254af14fd603528ad594650dea601b1764492bd39988da38598ae67"
checksum = "8fd761118bbafe29e2b187e694c6b8e800f2c7822bbc1d9d2db4ac21fb8b0365"
dependencies = [
"dashmap 5.5.3",
"la-arena",
"lz4_flex",
"ra_ap_cfg",
"ra_ap_intern",
"ra_ap_query-group-macro",
"ra_ap_span",
"ra_ap_stdx",
"ra_ap_syntax",
"ra_ap_vfs",
"rustc-hash 2.1.1",
@@ -1493,9 +1485,9 @@ dependencies = [
[[package]]
name = "ra_ap_cfg"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ef2ba45636c5e585040c0c4bee640737a6001b08309f1a25ca78cf04abfbf90"
checksum = "5ce74ce1af24afd86d3529dbbf5a849d026948b2d8ba51d199b6ea6db6e345b6"
dependencies = [
"ra_ap_intern",
"ra_ap_tt",
@@ -1505,20 +1497,20 @@ dependencies = [
[[package]]
name = "ra_ap_edition"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8955c1484d5e7274f755187788ba0d51eb149f870c69cdf0d87c3b7edea20ea0"
checksum = "f423b9fb19e3920e4c7039120d09d9c79070a26efe8ff9f787c7234b07f518c5"
[[package]]
name = "ra_ap_hir"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a51d7955beff2212701b149bea36d4cf2dc0f5cd129652c9bcf0cb5c0b021078"
checksum = "dd4aa8a568b80d288b90c4fa5dc8a3cc405914d261bfd33a3761c1ba41be358d"
dependencies = [
"arrayvec",
"either",
"indexmap 2.7.0",
"itertools 0.12.1",
"indexmap 2.9.0",
"itertools 0.14.0",
"ra_ap_base_db",
"ra_ap_cfg",
"ra_ap_hir_def",
@@ -1537,23 +1529,20 @@ dependencies = [
[[package]]
name = "ra_ap_hir_def"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5c97e617e4c585d24b3d4f668861452aedddfbe0262f4c53235dcea77e62f9b"
checksum = "acb18d9378a828a23ccf87b89199db005adb67ba2a05a37d7a3fcad4d1036e66"
dependencies = [
"arrayvec",
"bitflags 2.8.0",
"bitflags 2.9.0",
"cov-mark",
"dashmap 5.5.3",
"drop_bomb",
"either",
"fst",
"hashbrown 0.14.5",
"indexmap 2.7.0",
"itertools 0.12.1",
"indexmap 2.9.0",
"itertools 0.14.0",
"la-arena",
"ra-ap-rustc_abi",
"ra-ap-rustc_hashes",
"ra-ap-rustc_parse_format",
"ra_ap_base_db",
"ra_ap_cfg",
@@ -1570,21 +1559,20 @@ dependencies = [
"salsa",
"smallvec",
"text-size",
"thin-vec",
"tracing",
"triomphe",
]
[[package]]
name = "ra_ap_hir_expand"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "be57c0d7e3f2180dd8ea584b11447f34060eadc06f0f6d559e2a790f6e91b6c5"
checksum = "094fa79d8f661f52cf3b7fb8b3d91c4be2ad9e71a3967d3dacd25429fa44b37d"
dependencies = [
"cov-mark",
"either",
"hashbrown 0.14.5",
"itertools 0.12.1",
"la-arena",
"itertools 0.14.0",
"ra_ap_base_db",
"ra_ap_cfg",
"ra_ap_intern",
@@ -1605,24 +1593,22 @@ dependencies = [
[[package]]
name = "ra_ap_hir_ty"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f260f35748f3035b46a8afcdebda7cb75d95c24750105fad86101d09a9d387c8"
checksum = "093482d200d5db421db5692e7819bbb14fb717cc8cb0f91f93cce9fde85b3df2"
dependencies = [
"arrayvec",
"bitflags 2.8.0",
"bitflags 2.9.0",
"chalk-derive",
"chalk-ir",
"chalk-recursive",
"chalk-solve",
"cov-mark",
"dashmap 5.5.3",
"either",
"ena",
"indexmap 2.7.0",
"itertools 0.12.1",
"indexmap 2.9.0",
"itertools 0.14.0",
"la-arena",
"nohash-hasher",
"oorandom",
"ra-ap-rustc_abi",
"ra-ap-rustc_index",
@@ -1647,19 +1633,18 @@ dependencies = [
[[package]]
name = "ra_ap_ide_db"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0426263be26e27cb55a3b9ef88b120511b66fe7d9b418a2473d6d5f3ac2fe0a6"
checksum = "b655b92dfa9444db8129321b9217d9e4a83a58ee707aa1004a93052acfb43d57"
dependencies = [
"arrayvec",
"bitflags 2.8.0",
"bitflags 2.9.0",
"cov-mark",
"crossbeam-channel",
"dashmap 5.5.3",
"either",
"fst",
"indexmap 2.7.0",
"itertools 0.12.1",
"indexmap 2.9.0",
"itertools 0.14.0",
"line-index",
"memchr",
"nohash-hasher",
@@ -1681,9 +1666,9 @@ dependencies = [
[[package]]
name = "ra_ap_intern"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f6ea8c9615b3b0688cf557e7310dbd9432f43860c8ea766d54f4416cbecf3571"
checksum = "b4e528496b4d4c351806bb073d3d7f6526535741b9e8801776603c924bbec624"
dependencies = [
"dashmap 5.5.3",
"hashbrown 0.14.5",
@@ -1693,17 +1678,16 @@ dependencies = [
[[package]]
name = "ra_ap_load-cargo"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "570907e16725c13a678bfd8050ce8839af2831da042a0878b75ee8c41b0f7b0c"
checksum = "1a97a5070b2f4b99f56683d91b2687aa0c530d8969cc5252ec2ae5644e428ffe"
dependencies = [
"anyhow",
"crossbeam-channel",
"itertools 0.12.1",
"itertools 0.14.0",
"ra_ap_hir_expand",
"ra_ap_ide_db",
"ra_ap_intern",
"ra_ap_paths",
"ra_ap_proc_macro_api",
"ra_ap_project_model",
"ra_ap_span",
@@ -1715,9 +1699,9 @@ dependencies = [
[[package]]
name = "ra_ap_mbe"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e893fe03b04b30c9b5a339ac2bf39ce32ac9c05a8b50121b7d89ce658346e164"
checksum = "b187ee5ee3fa726eeea5142242a0397e2200d77084026986a68324b9599f9046"
dependencies = [
"arrayvec",
"cov-mark",
@@ -1726,19 +1710,17 @@ dependencies = [
"ra_ap_parser",
"ra_ap_span",
"ra_ap_stdx",
"ra_ap_syntax",
"ra_ap_syntax-bridge",
"ra_ap_tt",
"rustc-hash 2.1.1",
"smallvec",
"tracing",
]
[[package]]
name = "ra_ap_parser"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6fd9a264120968b14a66b6ba756cd7f99435385b5dbc2f0a611cf3a12221c385"
checksum = "2306e6c051e60483f3b317fac9dec6c883b7792eeb8db24ec6f39dbfa5430159"
dependencies = [
"drop_bomb",
"ra-ap-rustc_lexer",
@@ -1748,20 +1730,20 @@ dependencies = [
[[package]]
name = "ra_ap_paths"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f47817351651e36b56ff3afc483b41600053c9cb7e67d945467c0abe93416032"
checksum = "dcedd00499621bdd0f1fe01955c04e4b388197aa826744003afaf6cc2944bc80"
dependencies = [
"camino",
]
[[package]]
name = "ra_ap_proc_macro_api"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d96da3b8b9f6b813a98f5357eef303905450741f47ba90adaab8a5371b748416"
checksum = "7a2e49b550015cd4ad152bd78d92d73594497f2e44f61273f9fed3534ad4bbbe"
dependencies = [
"indexmap 2.7.0",
"indexmap 2.9.0",
"ra_ap_intern",
"ra_ap_paths",
"ra_ap_span",
@@ -1776,9 +1758,9 @@ dependencies = [
[[package]]
name = "ra_ap_profile"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "13637377287c84f88a628e40229d271ef0081c0d683956bd99a6c8278a4f8b14"
checksum = "87cdbd27ebe02ec21fdae3df303f194bda036a019ecef80d47e0082646f06c54"
dependencies = [
"cfg-if",
"libc",
@@ -1788,13 +1770,13 @@ dependencies = [
[[package]]
name = "ra_ap_project_model"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "053c5207a638fc7a752c7a454bc952b28b0d02f0bf9f6d7ec785ec809579d8fa"
checksum = "5eaa3406c891a7840d20ce615f8decca32cbc9d3654b82dcbcc3a31257ce90b9"
dependencies = [
"anyhow",
"cargo_metadata",
"itertools 0.12.1",
"itertools 0.14.0",
"la-arena",
"ra_ap_base_db",
"ra_ap_cfg",
@@ -1814,22 +1796,20 @@ dependencies = [
[[package]]
name = "ra_ap_query-group-macro"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0f1a38f07b442e47a234cbe2e8fd1b8a41ff0cc5123cb1cf994c5ce20edb5bd6"
checksum = "1fbc1748e4876a9b0ccfacfc7e2fe254f30e92ef58d98925282b3803e8b004ed"
dependencies = [
"heck",
"proc-macro2",
"quote",
"salsa",
"syn",
]
[[package]]
name = "ra_ap_span"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8818680c6f7da3b32cb2bb0992940b24264b1aa90203aa94812e09ab34d362d1"
checksum = "ed1d036e738bf32a057d90698df85bcb83ed6263b5fe9fba132c99e8ec3aecaf"
dependencies = [
"hashbrown 0.14.5",
"la-arena",
@@ -1843,12 +1823,12 @@ dependencies = [
[[package]]
name = "ra_ap_stdx"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f1c10bee1b03fc48083862c13cf06bd3ed17760463ecce2734103a2f511e5ed4"
checksum = "6e3775954ab24408f71e97079a97558078a166a4082052e83256ae4c22dae18d"
dependencies = [
"crossbeam-channel",
"itertools 0.12.1",
"itertools 0.14.0",
"jod-thread",
"libc",
"miow",
@@ -1858,14 +1838,12 @@ dependencies = [
[[package]]
name = "ra_ap_syntax"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "92bc32f3946fc5fcbdc79e61b7e26a8c2a3a56f3ef6ab27c7d298a9e21a462f2"
checksum = "b49b081f209a764700f688db91820a66c2ecfe5f138895d831361cf84f716691"
dependencies = [
"cov-mark",
"either",
"indexmap 2.7.0",
"itertools 0.12.1",
"itertools 0.14.0",
"ra-ap-rustc_lexer",
"ra_ap_parser",
"ra_ap_stdx",
@@ -1878,9 +1856,9 @@ dependencies = [
[[package]]
name = "ra_ap_syntax-bridge"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a42052c44c98c122c37aac476260c8f19d8fec495edc9c05835307c9ae86194d"
checksum = "f2740bbe603d527f2cf0aaf51629de7d072694fbbaaeda8264f7591be1493d1b"
dependencies = [
"ra_ap_intern",
"ra_ap_parser",
@@ -1889,14 +1867,13 @@ dependencies = [
"ra_ap_syntax",
"ra_ap_tt",
"rustc-hash 2.1.1",
"tracing",
]
[[package]]
name = "ra_ap_toolchain"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "75996e70b3a0c68cd5157ba01f018964c7c6a5d7b209047d449b393139d0b57f"
checksum = "efbff9f26f307ef958586357d1653d000861dcd3acbaf33a009651e024720c7e"
dependencies = [
"camino",
"home",
@@ -1904,9 +1881,9 @@ dependencies = [
[[package]]
name = "ra_ap_tt"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0e4ee31e93bfabe83e6720b7469db88d7ad7ec5c59a1f011efec4aa1327ffc5c"
checksum = "0b1ce3ac14765e414fa6031fda7dc35d3492c74de225aac689ba8b8bf037e1f8"
dependencies = [
"arrayvec",
"ra-ap-rustc_lexer",
@@ -1917,13 +1894,13 @@ dependencies = [
[[package]]
name = "ra_ap_vfs"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f6aac1e277ac70bb073f40f8a3fc44e4b1bb9e4d4b1d0e0bd2f8269543560f80"
checksum = "29427a7c27ce8ddfefb52d77c952a4588c74d0a7ab064dc627129088a90423ca"
dependencies = [
"crossbeam-channel",
"fst",
"indexmap 2.7.0",
"indexmap 2.9.0",
"nohash-hasher",
"ra_ap_paths",
"ra_ap_stdx",
@@ -1933,9 +1910,9 @@ dependencies = [
[[package]]
name = "ra_ap_vfs-notify"
version = "0.0.270"
version = "0.0.273"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd95285146049621ee8f7a512c982a008bf036321fcc9b01a95c1ad7e6aeae57"
checksum = "d5a0e3095b8216ecc131f38b4b0025cac324a646469a95d2670354aee7278078"
dependencies = [
"crossbeam-channel",
"notify",
@@ -2005,7 +1982,7 @@ version = "0.5.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
]
[[package]]
@@ -2093,10 +2070,10 @@ checksum = "2febf9acc5ee5e99d1ad0afcdbccc02d87aa3f857a1f01f825b80eacf8edfcd1"
[[package]]
name = "rustc_apfloat"
version = "0.2.1+llvm-462a31f5a5ab"
source = "git+https://github.com/redsun82/rustc_apfloat.git?rev=096d585100636bc2e9f09d7eefec38c5b334d47b#096d585100636bc2e9f09d7eefec38c5b334d47b"
version = "0.2.2+llvm-462a31f5a5ab"
source = "git+https://github.com/redsun82/rustc_apfloat.git?rev=32968f16ef1b082243f9bf43a3fbd65c381b3e27#32968f16ef1b082243f9bf43a3fbd65c381b3e27"
dependencies = [
"bitflags 1.3.2",
"bitflags 2.9.0",
"smallvec",
]
@@ -2123,7 +2100,7 @@ dependencies = [
"dashmap 6.1.0",
"hashbrown 0.15.2",
"hashlink",
"indexmap 2.7.0",
"indexmap 2.9.0",
"parking_lot",
"portable-atomic",
"rayon",
@@ -2176,9 +2153,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]]
name = "semver"
version = "1.0.24"
version = "1.0.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba"
checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0"
dependencies = [
"serde",
]
@@ -2234,7 +2211,7 @@ dependencies = [
"chrono",
"hex",
"indexmap 1.9.3",
"indexmap 2.7.0",
"indexmap 2.9.0",
"serde",
"serde_derive",
"serde_json",
@@ -2260,7 +2237,7 @@ version = "0.9.34+deprecated"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47"
dependencies = [
"indexmap 2.7.0",
"indexmap 2.9.0",
"itoa",
"ryu",
"serde",
@@ -2345,19 +2322,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f18aa187839b2bdb1ad2fa35ead8c4c2976b64e4363c386d45ac0f7ee85c9233"
[[package]]
name = "thiserror"
version = "1.0.69"
name = "thin-vec"
version = "0.2.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
checksum = "144f754d318415ac792f9d69fc87abbbfc043ce2ef041c60f16ad828f638717d"
[[package]]
name = "thiserror"
version = "2.0.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.69"
version = "2.0.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d"
dependencies = [
"proc-macro2",
"quote",
@@ -2432,7 +2415,7 @@ version = "0.22.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474"
dependencies = [
"indexmap 2.7.0",
"indexmap 2.9.0",
"serde",
"serde_spanned",
"toml_datetime",
@@ -2488,7 +2471,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
dependencies = [
"log 0.4.25",
"log 0.4.27",
"once_cell",
"tracing-core",
]
@@ -2603,9 +2586,9 @@ checksum = "a3e5df347f0bf3ec1d670aad6ca5c6a1859cd9ea61d2113125794654ccced68f"
[[package]]
name = "unicode-ident"
version = "1.0.16"
version = "1.0.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034"
checksum = "00e2473a93778eb0bad35909dff6a10d28e63f792f16ed15e404fca9d5eeedbe"
[[package]]
name = "unicode-properties"
@@ -2686,7 +2669,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79"
dependencies = [
"bumpalo",
"log 0.4.25",
"log 0.4.27",
"proc-macro2",
"quote",
"syn",
@@ -2995,7 +2978,7 @@ version = "0.33.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c"
dependencies = [
"bitflags 2.8.0",
"bitflags 2.9.0",
]
[[package]]

View File

@@ -14,4 +14,4 @@ members = [
[patch.crates-io]
# patch for build script bug preventing bazel build
# see https://github.com/rust-lang/rustc_apfloat/pull/17
rustc_apfloat = { git = "https://github.com/redsun82/rustc_apfloat.git", rev = "096d585100636bc2e9f09d7eefec38c5b334d47b" }
rustc_apfloat = { git = "https://github.com/redsun82/rustc_apfloat.git", rev = "32968f16ef1b082243f9bf43a3fbd65c381b3e27" }

View File

@@ -75,7 +75,7 @@ use_repo(
"vendor_ts__argfile-0.2.1",
"vendor_ts__chalk-ir-0.100.0",
"vendor_ts__chrono-0.4.40",
"vendor_ts__clap-4.5.32",
"vendor_ts__clap-4.5.35",
"vendor_ts__dunce-1.0.5",
"vendor_ts__either-1.15.0",
"vendor_ts__encoding-0.2.33",
@@ -90,22 +90,22 @@ use_repo(
"vendor_ts__num_cpus-1.16.0",
"vendor_ts__proc-macro2-1.0.94",
"vendor_ts__quote-1.0.40",
"vendor_ts__ra_ap_base_db-0.0.270",
"vendor_ts__ra_ap_cfg-0.0.270",
"vendor_ts__ra_ap_hir-0.0.270",
"vendor_ts__ra_ap_hir_def-0.0.270",
"vendor_ts__ra_ap_hir_expand-0.0.270",
"vendor_ts__ra_ap_hir_ty-0.0.270",
"vendor_ts__ra_ap_ide_db-0.0.270",
"vendor_ts__ra_ap_intern-0.0.270",
"vendor_ts__ra_ap_load-cargo-0.0.270",
"vendor_ts__ra_ap_parser-0.0.270",
"vendor_ts__ra_ap_paths-0.0.270",
"vendor_ts__ra_ap_project_model-0.0.270",
"vendor_ts__ra_ap_span-0.0.270",
"vendor_ts__ra_ap_stdx-0.0.270",
"vendor_ts__ra_ap_syntax-0.0.270",
"vendor_ts__ra_ap_vfs-0.0.270",
"vendor_ts__ra_ap_base_db-0.0.273",
"vendor_ts__ra_ap_cfg-0.0.273",
"vendor_ts__ra_ap_hir-0.0.273",
"vendor_ts__ra_ap_hir_def-0.0.273",
"vendor_ts__ra_ap_hir_expand-0.0.273",
"vendor_ts__ra_ap_hir_ty-0.0.273",
"vendor_ts__ra_ap_ide_db-0.0.273",
"vendor_ts__ra_ap_intern-0.0.273",
"vendor_ts__ra_ap_load-cargo-0.0.273",
"vendor_ts__ra_ap_parser-0.0.273",
"vendor_ts__ra_ap_paths-0.0.273",
"vendor_ts__ra_ap_project_model-0.0.273",
"vendor_ts__ra_ap_span-0.0.273",
"vendor_ts__ra_ap_stdx-0.0.273",
"vendor_ts__ra_ap_syntax-0.0.273",
"vendor_ts__ra_ap_vfs-0.0.273",
"vendor_ts__rand-0.9.0",
"vendor_ts__rayon-1.10.0",
"vendor_ts__regex-1.11.1",

View File

@@ -1,5 +1,5 @@
name: codeql/actions-all
version: 0.4.7
version: 0.4.8-dev
library: true
warnOnImplicitThis: true
dependencies:

View File

@@ -109,7 +109,7 @@ An attacker could craft a malicious artifact that writes dangerous environment v
### Exploitation
An attacker is be able to run arbitrary code by injecting environment variables such as `LD_PRELOAD`, `BASH_ENV`, etc.
An attacker would be able to run arbitrary code by injecting environment variables such as `LD_PRELOAD`, `BASH_ENV`, etc.
## References

View File

@@ -1,6 +1,6 @@
/**
* @name Workflow does not contain permissions
* @description Workflows should contain permissions to provide a clear understanding has permissions to run the workflow.
* @description Workflows should contain explicit permissions to restrict the scope of the default GITHUB_TOKEN.
* @kind problem
* @security-severity 5.0
* @problem.severity warning

View File

@@ -3,6 +3,7 @@
* @description All organization and repository secrets are passed to the workflow runner.
* @kind problem
* @precision high
* @security-severity 5.0
* @problem.severity warning
* @id actions/excessive-secrets-exposure
* @tags actions

View File

@@ -2,11 +2,11 @@
## Description
Secrets derived from other secrets are not known to the workflow runner and therefore not masked unless explicitly registered.
Secrets derived from other secrets are not known to the workflow runner, and therefore are not masked unless explicitly registered.
## Recommendations
Avoid defining non-plain secrets. For example, do not define a new secret containing a JSON object and then read properties out of it from the workflow since these read values will not be masked by the workflow runner.
Avoid defining non-plain secrets. For example, do not define a new secret containing a JSON object and then read properties out of it from the workflow, since these read values will not be masked by the workflow runner.
## Examples

View File

@@ -0,0 +1,4 @@
---
category: fix
---
* Assigned a `security-severity` to the query `actions/excessive-secrets-exposure`.

View File

@@ -1,5 +1,5 @@
name: codeql/actions-queries
version: 0.5.4
version: 0.5.5-dev
library: false
warnOnImplicitThis: true
groups: [actions, queries]

123
annotateOverlayLocal.py Normal file
View File

@@ -0,0 +1,123 @@
#!/usr/bin/python
import os
def process_single_file(filename):
if not filename.endswith(".qll"):
return
with open(filename, 'r') as file_in:
lines = [line for line in file_in]
configuresDataflow = any(
"implements DataFlow::ConfigSig" in line for line in lines)
moduleAnnotations = ""
if any(line for line in lines if line.rstrip().endswith("module;")):
for line in lines:
moduleAnnotations += line
if line.rstrip().endswith("module;"):
break
moduleAnnotations = strip_comments(moduleAnnotations)
isFileLevelAnnotated = ("overlay[local]" in moduleAnnotations or
"overlay[local?]" in moduleAnnotations)
if configuresDataflow or isFileLevelAnnotated or filename.endswith("Query.qll"):
if isFileLevelAnnotated and configuresDataflow:
print("WARNING: file \""+filename +
"\" configures dataflow, but is annotated local")
elif configuresDataflow and not filename.endswith("Query.qll"):
print("WARNING: file \""+filename +
"\" configures dataflow but is not a [...]Query.qll file")
elif filename.endswith("Query.qll") and not configuresDataflow:
print("WARNING: file \""+filename +
"\" is a [...]Query.qll file that does not configure dataflow")
elif isFileLevelAnnotated and filename.endswith("Query.qll"):
print("WARNING: file \""+filename +
"\" is a [...]Query.qll file, but is annotated local")
elif any(line for line in lines if line.rstrip().endswith("module;")):
print("file \""+filename +
" was annotated using an existing file-level module statment")
with open(filename, "w") as file_out:
for line in lines:
if line.rstrip().endswith("module;"):
file_out.write("overlay[local?]\n")
file_out.write(line)
elif (lines[0].startswith("import ") or lines[0].startswith("private ") or
lines[0].startswith("newtype ") or lines[0].startswith("module ") or
lines[0].startswith("signature ")):
print("file \""+filename+" was annotated at the very start of the file")
with open(filename, "w") as file_out:
file_out.write("overlay[local?]\nmodule;\n\n")
for line in lines:
file_out.write(line)
elif (strip_comments("".join(lines)).lstrip().startswith("import") or
strip_comments("".join(lines)).lstrip().startswith("private import")):
print("file \""+filename+" was annotated at the first import statement")
with open(filename, "w") as file_out:
firstImport = True
addEmptyLine = ""
for line in lines:
if not line.strip():
if addEmptyLine:
file_out.write(addEmptyLine)
addEmptyLine = line
else:
if firstImport and (line.startswith("import") or line.startswith("private")):
file_out.write("overlay[local?]\nmodule;\n")
firstImport = False
if addEmptyLine:
file_out.write(addEmptyLine)
addEmptyLine = ""
file_out.write(line)
elif (len(lines) > 2 and lines[0].startswith("/** ") and lines[0].endswith(" */\n") and
not lines[1].strip() and lines[2].startswith("/**")):
print("file \""+filename+" was annotated after single-line file module qldoc")
with open(filename, "w") as file_out:
file_out.write(lines[0])
file_out.write("overlay[local?]\nmodule;\n")
for line in lines[1:]:
file_out.write(line)
else:
print("ERROR: failure to annotate file \""+filename+"\"")
def strip_comments(str):
prev = ""
in_multiline = False
in_singleline = False
result = ""
for c in str:
if c == '*' and prev == '/':
in_multiline = True
prev = ""
elif c == '/' and prev == '/':
in_singleline = True
prev = ""
elif in_multiline and c == '/' and prev == '*':
in_multiline = False
prev = ""
elif in_singleline and c == '\n':
in_singleline = False
result += '\n'
prev = ""
else:
if not in_multiline and not in_singleline:
if prev == '/':
result += '/'
if c != '/':
result += c
prev = c
return result
for roots in ["java/ql/lib/semmle/code", "shared"]:
for dirpath, dirnames, filenames in os.walk(roots):
for filename in filenames:
if filename.endswith(".qll"):
process_single_file(os.path.join(dirpath, filename))

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,3 @@
description: Add a new predicate `isVla()` to the `ArrayType` class
compatibility: full
type_is_vla.rel: delete

View File

@@ -0,0 +1,11 @@
class Expr extends @expr {
string toString() { none() }
}
class AggregateLiteral extends Expr, @aggregateliteral {
override string toString() { none() }
}
from AggregateLiteral aggregate, Expr initializer, int element_index, int position
where aggregate_array_init(aggregate, initializer, element_index, position, _)
select aggregate, initializer, element_index, position

View File

@@ -0,0 +1,15 @@
class Expr extends @expr {
string toString() { none() }
}
class AggregateLiteral extends Expr, @aggregateliteral {
override string toString() { none() }
}
class MemberVariable extends @membervariable {
string toString() { none() }
}
from AggregateLiteral aggregate, Expr initializer, MemberVariable field, int position
where aggregate_field_init(aggregate, initializer, field, position, _)
select aggregate, initializer, field, position

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,4 @@
description: add `hasDesignator` predicate to `ArrayOrVectorAggregateLiteral` and `ClassAggregateLiteral`
compatibility: backwards
aggregate_array_init.rel: run aggregate_array_init.qlo
aggregate_field_init.rel: run aggregate_field_init.qlo

View File

@@ -0,0 +1,4 @@
---
category: feature
---
* Added the `isVla()` predicate to the `ArrayType` class. This allows queries to identify variable-length arrays (VLAs).

View File

@@ -0,0 +1,4 @@
---
category: feature
---
* Introduced `hasDesignator()` predicates to distinguish between designated and positional initializations for both struct/union fields and array elements.

View File

@@ -1,5 +1,5 @@
name: codeql/cpp-all
version: 4.2.0
version: 4.2.1-dev
groups: cpp
dbscheme: semmlecode.cpp.dbscheme
extractor: cpp

View File

@@ -1369,6 +1369,11 @@ class ArrayType extends DerivedType {
override predicate isDeeplyConst() { this.getBaseType().isDeeplyConst() } // No such thing as a const array type
override predicate isDeeplyConstBelow() { this.getBaseType().isDeeplyConst() }
/**
* Holds if this array is a variable-length array (VLA).
*/
predicate isVla() { type_is_vla(underlyingElement(this)) }
}
/**

View File

@@ -213,7 +213,24 @@ class ClassAggregateLiteral extends AggregateLiteral {
Expr getFieldExpr(Field field, int position) {
field = classType.getAField() and
aggregate_field_init(underlyingElement(this), unresolveElement(result), unresolveElement(field),
position)
position, _)
}
/**
* Holds if the `position`-th initialization of `field` in this aggregate initializer
* uses a designated (e.g., `.x = ...`) rather than a positional initializer.
*
* For example, in:
* ```c
* struct S { int x, y; };
* struct S s = { .x = 1, 2 };
* ```
* - `.x = 1` is a designated initializer, therefore `hasDesignator(x, 0)` holds.
* - `2` is a positional initializer for `s.y`, therefore `hasDesignator(y, 1)` does not hold.
*/
predicate hasDesignator(Field field, int position) {
field = classType.getAField() and
aggregate_field_init(underlyingElement(this), _, unresolveElement(field), position, true)
}
/**
@@ -304,7 +321,24 @@ class ArrayOrVectorAggregateLiteral extends AggregateLiteral {
* - `a.getElementExpr(0, 2)` gives `789`.
*/
Expr getElementExpr(int elementIndex, int position) {
aggregate_array_init(underlyingElement(this), unresolveElement(result), elementIndex, position)
aggregate_array_init(underlyingElement(this), unresolveElement(result), elementIndex, position,
_)
}
/**
* Holds if the `position`-th initialization of the array element at `elementIndex`
* in this aggregate initializer uses a designated (e.g., `[0] = ...`) rather than
* a positional initializer.
*
* For example, in:
* ```c
* int x[] = { [0] = 1, 2 };
* ```
* - `[0] = 1` is a designated initializer, therefore `hasDesignator(0, 0)` holds.
* - `2` is a positional initializer for `x[1]`, therefore `hasDesignator(1, 1)` does not hold.
*/
predicate hasDesignator(int elementIndex, int position) {
aggregate_array_init(underlyingElement(this), _, elementIndex, position, true)
}
/**

View File

@@ -2039,7 +2039,8 @@ aggregate_field_init(
int aggregate: @aggregateliteral ref,
int initializer: @expr ref,
int field: @membervariable ref,
int position: int ref
int position: int ref,
boolean is_designated: boolean ref
);
/**
@@ -2051,7 +2052,8 @@ aggregate_array_init(
int aggregate: @aggregateliteral ref,
int initializer: @expr ref,
int element_index: int ref,
int position: int ref
int position: int ref,
boolean is_designated: boolean ref
);
@ctorinit = @ctordirectinit
@@ -2178,6 +2180,8 @@ variable_vla(
int decl: @stmt_vla_decl ref
);
type_is_vla(unique int type_id: @derivedtype ref)
if_initialization(
unique int if_stmt: @stmt_if ref,
int init_id: @stmt ref

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
class Expr extends @expr {
string toString() { none() }
}
class AggregateLiteral extends Expr, @aggregateliteral {
override string toString() { none() }
}
from AggregateLiteral aggregate, Expr initializer, int element_index, int position
where aggregate_array_init(aggregate, initializer, element_index, position)
select aggregate, initializer, element_index, position, false

View File

@@ -0,0 +1,15 @@
class Expr extends @expr {
string toString() { none() }
}
class AggregateLiteral extends Expr, @aggregateliteral {
override string toString() { none() }
}
class MemberVariable extends @membervariable {
string toString() { none() }
}
from AggregateLiteral aggregate, Expr initializer, MemberVariable field, int position
where aggregate_field_init(aggregate, initializer, field, position)
select aggregate, initializer, field, position, false

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,4 @@
description: add `hasDesignator` predicate to `ArrayOrVectorAggregateLiteral` and `ClassAggregateLiteral`
compatibility: backwards
aggregate_array_init.rel: run aggregate_array_init.qlo
aggregate_field_init.rel: run aggregate_field_init.qlo

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,2 @@
description: Add a new predicate `isVla()` to the `ArrayType` class
compatibility: backwards

View File

@@ -1,5 +1,5 @@
name: codeql/cpp-queries
version: 1.3.8
version: 1.3.9-dev
groups:
- cpp
- queries

View File

@@ -162,6 +162,10 @@ namespace Semmle.Autobuild.CSharp.Tests
bool IBuildActions.IsRunningOnAppleSilicon() => IsRunningOnAppleSilicon;
public bool IsMonoInstalled { get; set; }
bool IBuildActions.IsMonoInstalled() => IsMonoInstalled;
public string PathCombine(params string[] parts)
{
return string.Join(IsWindows ? '\\' : '/', parts.Where(p => !string.IsNullOrWhiteSpace(p)));
@@ -424,8 +428,7 @@ namespace Semmle.Autobuild.CSharp.Tests
return new CSharpAutobuilder(actions, options);
}
[Fact]
public void TestDefaultCSharpAutoBuilder()
private void SetupActionForDotnet()
{
actions.RunProcess["cmd.exe /C dotnet --info"] = 0;
actions.RunProcess[@"cmd.exe /C dotnet clean C:\Project\test.csproj"] = 0;
@@ -438,20 +441,80 @@ namespace Semmle.Autobuild.CSharp.Tests
actions.GetEnvironmentVariable["CODEQL_EXTRACTOR_CSHARP_SCRATCH_DIR"] = "scratch";
actions.EnumerateFiles[@"C:\Project"] = "foo.cs\nbar.cs\ntest.csproj";
actions.EnumerateDirectories[@"C:\Project"] = "";
var xml = new XmlDocument();
xml.LoadXml(@"<Project Sdk=""Microsoft.NET.Sdk"">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.1</TargetFramework>
</PropertyGroup>
}
</Project>");
private void CreateAndVerifyDotnetScript(XmlDocument xml)
{
actions.LoadXml[@"C:\Project\test.csproj"] = xml;
var autobuilder = CreateAutoBuilder(true);
TestAutobuilderScript(autobuilder, 0, 4);
}
[Fact]
public void TestDefaultCSharpAutoBuilder1()
{
SetupActionForDotnet();
var xml = new XmlDocument();
xml.LoadXml(
"""
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.1</TargetFramework>
</PropertyGroup>
</Project>
""");
CreateAndVerifyDotnetScript(xml);
}
[Fact]
public void TestDefaultCSharpAutoBuilder2()
{
SetupActionForDotnet();
var xml = new XmlDocument();
xml.LoadXml(
"""
<Project>
<Sdk Name="Microsoft.NET.Sdk" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
"""
);
CreateAndVerifyDotnetScript(xml);
}
[Fact]
public void TestDefaultCSharpAutoBuilder3()
{
SetupActionForDotnet();
var xml = new XmlDocument();
xml.LoadXml(
"""
<Project>
<Import Project="Sdk.props" Sdk="Microsoft.NET.Sdk" />
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Sdk" />
</Project>
"""
);
CreateAndVerifyDotnetScript(xml);
}
[Fact]
public void TestLinuxCSharpAutoBuilder()
{
@@ -797,11 +860,32 @@ namespace Semmle.Autobuild.CSharp.Tests
}
[Fact]
public void TestDirsProjLinux()
public void TestDirsProjLinux_WithMono()
{
actions.IsMonoInstalled = true;
actions.RunProcess[@"nuget restore C:\Project/dirs.proj -DisableParallelProcessing"] = 1;
actions.RunProcess[@"mono scratch/.nuget/nuget.exe restore C:\Project/dirs.proj -DisableParallelProcessing"] = 0;
actions.RunProcess[@"msbuild C:\Project/dirs.proj /t:rebuild"] = 0;
var autobuilder = TestDirsProjLinux();
TestAutobuilderScript(autobuilder, 0, 3);
}
[Fact]
public void TestDirsProjLinux_WithoutMono()
{
actions.IsMonoInstalled = false;
actions.RunProcess[@"dotnet msbuild /t:restore C:\Project/dirs.proj"] = 0;
actions.RunProcess[@"dotnet msbuild C:\Project/dirs.proj /t:rebuild"] = 0;
var autobuilder = TestDirsProjLinux();
TestAutobuilderScript(autobuilder, 0, 2);
}
private CSharpAutobuilder TestDirsProjLinux()
{
actions.FileExists["csharp.log"] = true;
actions.FileExists[@"C:\Project/a/test.csproj"] = true;
actions.FileExists[@"C:\Project/dirs.proj"] = true;
@@ -830,8 +914,7 @@ namespace Semmle.Autobuild.CSharp.Tests
</Project>");
actions.LoadXml[@"C:\Project/dirs.proj"] = dirsproj;
var autobuilder = CreateAutoBuilder(false);
TestAutobuilderScript(autobuilder, 0, 3);
return CreateAutoBuilder(false);
}
[Fact]

View File

@@ -150,6 +150,10 @@ namespace Semmle.Autobuild.Cpp.Tests
bool IBuildActions.IsRunningOnAppleSilicon() => IsRunningOnAppleSilicon;
public bool IsMonoInstalled { get; set; }
bool IBuildActions.IsMonoInstalled() => IsMonoInstalled;
string IBuildActions.PathCombine(params string[] parts)
{
return string.Join(IsWindows ? '\\' : '/', parts.Where(p => !string.IsNullOrWhiteSpace(p)));

View File

@@ -10,15 +10,15 @@ namespace Semmle.Autobuild.Shared
/// <summary>
/// Appends a call to msbuild.
/// </summary>
/// <param name="cmdBuilder"></param>
/// <param name="builder"></param>
/// <returns></returns>
public static CommandBuilder MsBuildCommand(this CommandBuilder cmdBuilder, IAutobuilder<AutobuildOptionsShared> builder)
public static CommandBuilder MsBuildCommand(this CommandBuilder cmdBuilder, IAutobuilder<AutobuildOptionsShared> builder, bool preferDotnet)
{
// mono doesn't ship with `msbuild` on Arm-based Macs, but we can fall back to
// msbuild that ships with `dotnet` which can be invoked with `dotnet msbuild`
// perhaps we should do this on all platforms?
return builder.Actions.IsRunningOnAppleSilicon()
// Similarly, there's no point in trying to rely on mono if it's not installed.
// In which case we can still fall back to `dotnet msbuild`.
return preferDotnet
? cmdBuilder.RunCommand("dotnet").Argument("msbuild")
: cmdBuilder.RunCommand("msbuild");
}
@@ -75,13 +75,16 @@ namespace Semmle.Autobuild.Shared
QuoteArgument(projectOrSolution.FullPath).
Argument("-DisableParallelProcessing").
Script;
var preferDotnet = builder.Actions.IsRunningOnAppleSilicon() || !builder.Actions.IsWindows() && !builder.Actions.IsMonoInstalled();
var nugetRestore = GetNugetRestoreScript();
var msbuildRestoreCommand = new CommandBuilder(builder.Actions).
MsBuildCommand(builder).
MsBuildCommand(builder, preferDotnet).
Argument("/t:restore").
QuoteArgument(projectOrSolution.FullPath);
if (builder.Actions.IsRunningOnAppleSilicon())
if (preferDotnet)
{
// On Apple Silicon, only try package restore with `dotnet msbuild /t:restore`
ret &= BuildScript.Try(msbuildRestoreCommand.Script);
@@ -119,7 +122,7 @@ namespace Semmle.Autobuild.Shared
command.RunCommand("set Platform=&& type NUL", quoteExe: false);
}
command.MsBuildCommand(builder);
command.MsBuildCommand(builder, preferDotnet);
command.QuoteArgument(projectOrSolution.FullPath);
var target = "rebuild";

View File

@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Xml;
using Semmle.Util.Logging;
namespace Semmle.Autobuild.Shared
{
@@ -26,6 +25,26 @@ namespace Semmle.Autobuild.Shared
private readonly Lazy<List<Project<TAutobuildOptions>>> includedProjectsLazy;
public override IEnumerable<IProjectOrSolution> IncludedProjects => includedProjectsLazy.Value;
private static bool HasSdkAttribute(XmlElement xml) =>
xml.HasAttribute("Sdk");
private static bool AnyElement(XmlNodeList l, Func<XmlElement, bool> f) =>
l.OfType<XmlElement>().Any(f);
/// <summary>
/// According to https://learn.microsoft.com/en-us/visualstudio/msbuild/how-to-use-project-sdk?view=vs-2022#reference-a-project-sdk
/// there are three ways to reference a project SDK:
/// 1. As an attribute on the &lt;Project/&gt;.
/// 2. As a top level element of &lt;Project&gt;.
/// 3. As an attribute on an &lt;Import&gt; element.
///
/// Returns true, if the Sdk attribute is used, otherwise false.
/// </summary>
private static bool ReferencesSdk(XmlElement xml) =>
HasSdkAttribute(xml) || // Case 1
AnyElement(xml.ChildNodes, e => e.Name == "Sdk") || // Case 2
AnyElement(xml.GetElementsByTagName("Import"), HasSdkAttribute); // Case 3
public Project(Autobuilder<TAutobuildOptions> builder, string path) : base(builder, path)
{
ToolsVersion = new Version();
@@ -49,7 +68,7 @@ namespace Semmle.Autobuild.Shared
if (root?.Name == "Project")
{
if (root.HasAttribute("Sdk"))
if (ReferencesSdk(root))
{
DotNetProject = true;
return;

View File

@@ -125,6 +125,11 @@ namespace Semmle.Util
/// <returns>True if we are running on Apple Silicon.</returns>
bool IsRunningOnAppleSilicon();
/// <summary>
/// Checks if Mono is installed.
/// </summary>
bool IsMonoInstalled();
/// <summary>
/// Combine path segments, Path.Combine().
/// </summary>
@@ -261,6 +266,25 @@ namespace Semmle.Util
}
}
bool IBuildActions.IsMonoInstalled()
{
var thisBuildActions = (IBuildActions)this;
if (thisBuildActions.IsWindows())
{
return false;
}
try
{
return 0 == thisBuildActions.RunProcess("mono", "--version", workingDirectory: null, env: null);
}
catch (Exception)
{
return false;
}
}
string IBuildActions.PathCombine(params string[] parts) => Path.Combine(parts);
void IBuildActions.WriteAllText(string filename, string contents) => File.WriteAllText(filename, contents);

View File

@@ -1,5 +1,5 @@
name: codeql/csharp-solorigate-all
version: 1.7.38
version: 1.7.39-dev
groups:
- csharp
- solorigate

View File

@@ -1,5 +1,5 @@
name: codeql/csharp-solorigate-queries
version: 1.7.38
version: 1.7.39-dev
groups:
- csharp
- solorigate

View File

@@ -1,8 +1,2 @@
import pytest
import runs_on
# Skipping the test on macos-15, as we're running into trouble.
@pytest.mark.only_if(not runs_on.macos_15)
def test(codeql, csharp):
codeql.database.create(_assert_failure=True)

View File

@@ -0,0 +1,4 @@
---
category: minorAnalysis
---
* Improved autobuilder logic for detecting whether a project references a SDK (and should be built using `dotnet`).

View File

@@ -1,5 +1,5 @@
name: codeql/csharp-all
version: 5.1.4
version: 5.1.5-dev
groups: csharp
dbscheme: semmlecode.csharp.dbscheme
extractor: csharp

View File

@@ -1,6 +1,8 @@
/**
* Provides classes for representing abstract bounds for use in, for example, range analysis.
*/
overlay[local?]
module;
private import internal.rangeanalysis.BoundSpecific

View File

@@ -3,6 +3,8 @@
* an expression, `b` is a `Bound` (typically zero or the value of an SSA
* variable), and `v` is an integer in the range `[0 .. m-1]`.
*/
overlay[local?]
module;
private import internal.rangeanalysis.ModulusAnalysisSpecific::Private
private import Bound

View File

@@ -1,3 +1,6 @@
overlay[local?]
module;
newtype TSign =
TNeg() or
TZero() or

View File

@@ -5,6 +5,8 @@
* The analysis is implemented as an abstract interpretation over the
* three-valued domain `{negative, zero, positive}`.
*/
overlay[local?]
module;
private import SignAnalysisSpecific::Private
private import SsaReadPositionCommon

View File

@@ -1,6 +1,8 @@
/**
* Provides classes for representing a position at which an SSA variable is read.
*/
overlay[local?]
module;
private import SsaReadPositionSpecific
import SsaReadPositionSpecific::Public

View File

@@ -1,5 +1,5 @@
name: codeql/csharp-queries
version: 1.1.1
version: 1.1.2-dev
groups:
- csharp
- queries

View File

@@ -16,7 +16,7 @@
.NET Core up to 3.1
.NET 5, .NET 6, .NET 7, .NET 8, .NET 9","``.sln``, ``.csproj``, ``.cs``, ``.cshtml``, ``.xaml``"
GitHub Actions [12]_,"Not applicable",Not applicable,"``.github/workflows/*.yml``, ``.github/workflows/*.yaml``, ``**/action.yml``, ``**/action.yaml``"
GitHub Actions,"Not applicable",Not applicable,"``.github/workflows/*.yml``, ``.github/workflows/*.yaml``, ``**/action.yml``, ``**/action.yaml``"
Go (aka Golang), "Go up to 1.24", "Go 1.11 or more recent", ``.go``
Java,"Java 7 to 24 [5]_","javac (OpenJDK and Oracle JDK),
@@ -41,4 +41,3 @@
.. [9] Requires glibc 2.17.
.. [10] Support for the analysis of Swift requires macOS.
.. [11] TypeScript analysis is performed by running the JavaScript extractor with TypeScript enabled. This is the default.
.. [12] Support for GitHub Actions is in public preview.

View File

@@ -1,5 +1,5 @@
name: codeql-go-consistency-queries
version: 1.0.21
version: 1.0.22-dev
groups:
- go
- queries

View File

@@ -1,5 +1,5 @@
name: codeql/go-all
version: 4.2.3
version: 4.2.4-dev
groups: go
dbscheme: go.dbscheme
extractor: go

View File

@@ -1,5 +1,5 @@
name: codeql/go-queries
version: 1.1.12
version: 1.1.13-dev
groups:
- go
- queries

View File

@@ -1,6 +1,8 @@
/**
* Provides shared predicates related to contextual queries in the code viewer.
*/
overlay[local?]
module;
import semmle.files.FileSystem
private import codeql.util.FileSystem

View File

@@ -1,3 +1,5 @@
/** DEPRECATED: use `java.qll` instead. */
overlay[local?]
module;
import java

View File

@@ -2,6 +2,8 @@
* Provides classes and predicates related to jump-to-definition links
* in the code viewer.
*/
overlay[local?]
module;
import java
import IDEContextual

View File

@@ -1,3 +1,6 @@
overlay[local?]
module;
import java
class ExternalData extends @externalDataElement {

View File

@@ -1,4 +1,6 @@
/** Provides all default Java QL imports. */
overlay[local?]
module;
import Customizations
import semmle.code.FileSystem

View File

@@ -1,5 +1,5 @@
name: codeql/java-all
version: 7.1.3
version: 7.1.4-dev
groups: java
dbscheme: config/semmlecode.dbscheme
extractor: java

View File

@@ -1,4 +1,6 @@
/** Provides classes for working with files and folders. */
overlay[local?]
module;
import Location
private import codeql.util.FileSystem

View File

@@ -3,6 +3,8 @@
*
* Locations represent parts of files and are used to map elements to their source location.
*/
overlay[local?]
module;
import FileSystem
import semmle.code.java.Element

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with SMAP files (see JSR-045).
*/
overlay[local?]
module;
import java

View File

@@ -1,3 +1,5 @@
/** Provides the `Unit` class. */
overlay[local?]
module;
import codeql.util.Unit

View File

@@ -2,6 +2,8 @@
* Provides classes and predicates for working with configuration files, such
* as Java `.properties` or `.ini` files.
*/
overlay[local?]
module;
import semmle.code.Location

View File

@@ -8,6 +8,8 @@
* Each annotation type has zero or more annotation elements that contain a
* name and possibly a value.
*/
overlay[local?]
module;
import Element
import Expr

View File

@@ -2,6 +2,8 @@
* Provides classes and predicates for reasoning about instances of
* `java.util.Collection` and their methods.
*/
overlay[local?]
module;
import java

View File

@@ -1,6 +1,8 @@
/**
* Provides a class representing individual compiler invocations that occurred during the build.
*/
overlay[local?]
module;
import semmle.code.FileSystem

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Java compilation units.
*/
overlay[local?]
module;
import Element
import Package

View File

@@ -16,6 +16,8 @@
* relevant for conditional contexts in which the value controls the
* control-flow successor.
*/
overlay[local?]
module;
import java

View File

@@ -1,3 +1,6 @@
overlay[local?]
module;
import java
/**

View File

@@ -1,6 +1,8 @@
/**
* Provdides a module to calculate constant integer and boolean values.
*/
overlay[local?]
module;
import java

View File

@@ -78,6 +78,8 @@
* l-values that aren't r-values as well, and expressions in `ConstCase`s.
* For example, the `x` in `x=3` is not in the CFG, but the `x` in `x+=3` is.
*/
overlay[local?]
module;
import java
private import Completion

View File

@@ -4,6 +4,8 @@
*
* See the Java Language Specification, Section 5, for details.
*/
overlay[local?]
module;
import java
import semmle.code.java.arithmetic.Overflow

View File

@@ -1,6 +1,8 @@
/**
* Provides utility predicates for representing dependencies between types.
*/
overlay[local?]
module;
import Type
import Generics

View File

@@ -1,6 +1,8 @@
/**
* This library provides utility predicates for representing the number of dependencies between types.
*/
overlay[local?]
module;
import Type
import Generics

View File

@@ -1,6 +1,8 @@
/**
* Provides classes representing warnings generated during compilation.
*/
overlay[local?]
module;
import java

View File

@@ -1,6 +1,8 @@
/**
* Provides a class that represents named elements in Java programs.
*/
overlay[local?]
module;
import CompilationUnit
import semmle.code.Location

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Java exceptions.
*/
overlay[local?]
module;
import Element
import Type

View File

@@ -1,6 +1,8 @@
/**
* Provides classes for working with Java expressions.
*/
overlay[local?]
module;
import java
private import semmle.code.java.frameworks.android.Compose

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with the most common types of generated files.
*/
overlay[local?]
module;
import Type
private import semmle.code.java.frameworks.JavaxAnnotations

View File

@@ -30,6 +30,8 @@
*
* The terminology for generic methods is analogous.
*/
overlay[local?]
module;
import Type

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Java imports.
*/
overlay[local?]
module;
import semmle.code.Location
import CompilationUnit

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with J2EE bean types.
*/
overlay[local?]
module;
import Type

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with standard classes and methods from the JDK.
*/
overlay[local?]
module;
import Member
import semmle.code.java.security.ExternalProcess

View File

@@ -1,6 +1,8 @@
/**
* Provides classes that represent standard annotations from the JDK.
*/
overlay[local?]
module;
import java

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with JMX bean types.
*/
overlay[local?]
module;
import Type

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Javadoc documentation.
*/
overlay[local?]
module;
import semmle.code.Location

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Kotlin types.
*/
overlay[local?]
module;
import java

View File

@@ -2,6 +2,8 @@
* Provides classes and predicates for reasoning about instances of
* `java.util.Map` and their methods.
*/
overlay[local?]
module;
import java
import Collections

View File

@@ -2,6 +2,8 @@
* Provides classes and predicates for working with members of Java classes and interfaces,
* that is, methods, constructors, fields and nested types.
*/
overlay[local?]
module;
import Element
import Type

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Java modifiers.
*/
overlay[local?]
module;
import Element

View File

@@ -1,6 +1,8 @@
/**
* Provides classes for working with Java modules.
*/
overlay[local?]
module;
import CompilationUnit

View File

@@ -1,4 +1,6 @@
/** Provides classes and predicates for reasoning about `java.lang.NumberFormatException`. */
overlay[local?]
module;
import java

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Java packages.
*/
overlay[local?]
module;
import Element
import Type

View File

@@ -2,6 +2,8 @@
* Provides pretty-printed representations of the AST, in particular top-level
* classes and interfaces.
*/
overlay[local?]
module;
import java

View File

@@ -5,6 +5,8 @@
* extend `PrintAstConfiguration` and override `shouldPrint` to hold for only the elements
* you wish to view the AST for.
*/
overlay[local?]
module;
import java
import semmle.code.java.regex.RegexTreeView as RegexTreeView

View File

@@ -1,6 +1,8 @@
/**
* Provides classes and predicates for working with Java Reflection.
*/
overlay[local?]
module;
import java
import JDKAnnotations

Some files were not shown because too many files have changed in this diff Show More