Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
630 commits
Select commit Hold shift + click to select a range
e6f4263
C#: Do not print compiler generated statements.
michaelnebel Feb 22, 2024
ff32cf9
C#: Add a test for compiler generated statements.
michaelnebel Feb 22, 2024
80513d8
C#: Update PrintAst test expected outputs.
michaelnebel Feb 22, 2024
4dd368f
C#: Add upgrade script.
michaelnebel Feb 22, 2024
f9934ed
C#: Add downgrade script.
michaelnebel Feb 23, 2024
cba2477
C#: Add change note.
michaelnebel Feb 23, 2024
b86643f
Ruby: doc fixes
hmac Feb 26, 2024
8212f5d
Ruby: Update test
hmac Feb 26, 2024
f92c106
Merge pull request #15724 from hvitved/csharp-change-note
hvitved Feb 26, 2024
6ff0054
Merge pull request #13431 from am0o0/amammad-ruby-YAMLunsafeLoad
hmac Feb 26, 2024
e9b5394
JS: Remove empty build target.
criemen Feb 26, 2024
5c4543f
C++: Mark internal files in the old dataflow library as deprecated (t…
geoffw0 Feb 26, 2024
234623e
Merge pull request #15726 from github/criemen/js
criemen Feb 26, 2024
4bb725c
Merge pull request #15656 from github/criemen/ruby-bazel
criemen Feb 26, 2024
cb733dc
Simplify model defenition
joefarebrother Feb 26, 2024
2e66392
C++: Update deprecated note to respect identical files.
geoffw0 Feb 26, 2024
408a550
Merge pull request #15727 from geoffw0/qldoc4
geoffw0 Feb 26, 2024
a513598
C++: Change note for IR named destructors.
rdmarsh2 Feb 26, 2024
03f01a0
Add tests for Maven wrapper
smowton Feb 16, 2024
f7cdcd4
Force Maven wrapper tests to run sequentially
smowton Feb 23, 2024
bbeee8f
Merge pull request #15717 from hvitved/csharp/view-cfg
hvitved Feb 27, 2024
699dddc
Merge pull request #15725 from aschackmull/dataflow/summary-join-fix
aschackmull Feb 27, 2024
540c20e
Merge pull request #15700 from geoffw0/extensions
geoffw0 Feb 27, 2024
df5e753
Merge pull request #15570 from aschackmull/java/cache-interpretelement
aschackmull Feb 27, 2024
3ab6f22
Merge pull request #15718 from joefarebrother/ruby-arel-sqlliteral
joefarebrother Feb 27, 2024
fbb0ffc
C++: Add testcase with invalid IR from vacuous destructor call.
MathiasVP Feb 27, 2024
e62a080
Add test for map literal
smowton Feb 27, 2024
74448c0
Autoformat / uglify
smowton Feb 27, 2024
9eaa4e1
C++: Add IR construction for vacuous destructor calls.
MathiasVP Feb 27, 2024
4a501e5
C++: Accept test changes.
MathiasVP Feb 27, 2024
a6480a4
Autoformat again / tabify
smowton Feb 27, 2024
dc3b78d
C++: Accept more test changes.
MathiasVP Feb 27, 2024
994d990
Ruby: Add another data flow test
hvitved Feb 27, 2024
914a605
Ruby: Rework hidden synthetic data-flow nodes
hvitved Feb 27, 2024
f7b2de8
Merge pull request #15506 from rdmarsh2/rdmarsh2/cpp/ir-synthetic-des…
MathiasVP Feb 27, 2024
5ea30e9
Merge pull request #15646 from smowton/smowton/fix/notice-self-suffic…
smowton Feb 27, 2024
aedd3ba
Add change note for https://github.com/github/codeql/pull/15646
smowton Feb 27, 2024
9f84653
Merge pull request #15613 from smowton/smowton/fix/golang-map-range-r…
smowton Feb 27, 2024
bba152d
Merge branch 'main' into ir-for-vacuous-destructor-calls
MathiasVP Feb 27, 2024
f2935ca
Merge pull request #15732 from github/max-schaefer/more-sink-types
max-schaefer Feb 27, 2024
7c7c10e
Merge pull request #15739 from github/smowton-patch-1
smowton Feb 27, 2024
f9c2b4d
MVP changes for C# library expansion support
felicitymay Feb 27, 2024
0335a4f
Merge pull request #15735 from MathiasVP/ir-for-vacuous-destructor-calls
MathiasVP Feb 27, 2024
892f97c
C++: Add testcase with invalid IR from constructing a 'RoutineType'.
MathiasVP Feb 27, 2024
ddd5113
C++: Ensure that we can construct an 'IRType' from a 'RoutineType'.
MathiasVP Feb 27, 2024
b8c141f
C++: Accept test changes.
MathiasVP Feb 27, 2024
a743683
Merge pull request #15563 from egregius313/egregius313/csharp/docs/ma…
egregius313 Feb 27, 2024
cc178ab
Bump rayon from 1.8.1 to 1.9.0 in /ql
dependabot[bot] Feb 28, 2024
0358e81
Merge pull request #15746 from github/dependabot/cargo/ql/rayon-1.9.0
erik-krogh Feb 28, 2024
7be7640
Merge pull request #15741 from MathiasVP/fix-ir-inconsistencies-from-…
MathiasVP Feb 28, 2024
95dc2f7
C#: Add ExperimentalAttribute class.
michaelnebel Feb 28, 2024
7535a15
C#: Add tests and update expected test output.
michaelnebel Feb 28, 2024
3c15b21
C#: Add change note.
michaelnebel Feb 28, 2024
00ad785
C++: Accept test changes after frontend upgrade
jketema Jan 3, 2024
65ec809
Merge pull request #15696 from michaelnebel/csharp/compilergeneratedstmt
michaelnebel Feb 28, 2024
897786d
Minor updates to model editor article
felicitymay Feb 28, 2024
053e172
Merge branch 'main' into 13332-codeql-model-editor-csharp
felicitymay Feb 28, 2024
c247dee
Delete docs/codeql/reusables/beta-note-model-packs-java.rst
felicitymay Feb 28, 2024
ae97a23
Merge pull request #15213 from jketema/frontend-update
jketema Feb 28, 2024
4bbaf68
Merge pull request #15723 from michaelnebel/csharp/experimentalattribute
michaelnebel Feb 28, 2024
d8bff14
C#: Adjust locations for the parameter default value tests.
michaelnebel Feb 23, 2024
18c7e73
C#: Add test for parameter modifiers.
michaelnebel Feb 23, 2024
a86de9d
C#: Update comment in DB Scheme.
michaelnebel Feb 26, 2024
692d703
C#: Add extractor and QL library support for ref readonly parameters.
michaelnebel Feb 26, 2024
794bc44
C#: Add test query predicate for ref readonly parameters.
michaelnebel Feb 26, 2024
00d3112
C#: Update expected test output.
michaelnebel Feb 26, 2024
5226c77
Update documentation for testing CodeQL queries in VS Code
koesie10 Feb 28, 2024
b764497
codeql 2.16.3 changelogs
coadaflorin Feb 28, 2024
f6b1d1f
C#: Add upgrade and downgrade scripts.
michaelnebel Feb 28, 2024
bb282b9
C#: Claim suppport for C# 12 / .NET 8.
michaelnebel Feb 28, 2024
9563705
C#: Add change note.
michaelnebel Feb 28, 2024
297a179
Merge pull request #15665 from hvitved/csharp/variable-capture
hvitved Feb 28, 2024
6aeef17
Rename Test Explorer to Testing view
koesie10 Feb 28, 2024
e4699e0
Python: Add test for iterable unpacking on module level
RasmusWL Feb 28, 2024
ab11068
Merge pull request #15749 from github/koesie10/update-testing-vscode-…
koesie10 Feb 28, 2024
efff014
Update formatting of 'tip'
felicitymay Feb 28, 2024
377ef59
Merge branch 'main' into 13332-codeql-model-editor-csharp
felicitymay Feb 28, 2024
cdf4dd1
Python: Fix module level flow for iterable unpacking
RasmusWL Feb 28, 2024
8079788
Python: Add change-note
RasmusWL Feb 28, 2024
ca1a27d
Merge pull request #15748 from github/13332-codeql-model-editor-csharp
felicitymay Feb 28, 2024
a7f0966
C++: Restrict 'VariableNode's to only be global-like variables (which…
MathiasVP Feb 28, 2024
b1deeaf
Update docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.16.3…
coadaflorin Feb 28, 2024
62f4d8e
Update docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.16.3…
coadaflorin Feb 28, 2024
0d017a9
Update docs/codeql/codeql-overview/codeql-changelog/codeql-cli-2.16.3…
coadaflorin Feb 28, 2024
c6426d8
C#: Move `BuildScript.cs` and friends to `Semmle.Util`
hvitved Feb 29, 2024
14d046e
Merge pull request #15710 from michaelnebel/csharp/refreadonlyparameters
michaelnebel Feb 29, 2024
a3b39c8
Merge pull request #15752 from michaelnebel/csharp/updatesupportedlan…
michaelnebel Feb 29, 2024
840ca91
Merge pull request #15750 from github/changedocs/2.16.3
coadaflorin Feb 29, 2024
62382fc
C#: Fetch .NET in dependency manager instead of autobuilder
hvitved Feb 29, 2024
0e93f5a
Merge pull request #15733 from hvitved/ruby/desugar-hidden
hvitved Feb 29, 2024
7beafc9
Merge pull request #15755 from RasmusWL/it-fix
yoff Feb 29, 2024
46b47db
C++: Rename IPA branch.
MathiasVP Feb 29, 2024
4474b54
C++: Add more QLDoc.
MathiasVP Feb 29, 2024
b0a13fb
Kotlin 2: Accept loc changes in library-tests/exprs/delegatedProperties
igfoo Feb 29, 2024
65bc62c
Add summary model for Map$Entry#copyOf
owen-mc Feb 28, 2024
939d6f9
Add summary models for javax.crypto.Cipher
owen-mc Feb 29, 2024
d892a04
Kotlin: Compile tests using the same jdk as the java tests.
alexet Feb 9, 2024
e620bfa
Merge pull request #15761 from MathiasVP/fewer-variablenodes
MathiasVP Feb 29, 2024
81facd2
Merge branch 'main' into redsun82/bazel-cmake
redsun82 Feb 29, 2024
cfdf163
Update changelog to match unified changelog
coadaflorin Feb 29, 2024
8d1965d
match changelog to unified changelog
coadaflorin Feb 29, 2024
0a137c7
Bazel/Cmake: share build options
redsun82 Feb 29, 2024
6c8105f
Merge pull request #15568 from github/alexet/kotlin-jdk-change
alexet Feb 29, 2024
1fd459e
Improve stringification of some erroneous expressions
smowton Feb 27, 2024
5d55265
Add telemetry for untyped expressions and missing call targets
smowton Feb 27, 2024
b6507e7
Add test for a buildless project that doesn't compile cleanly
smowton Feb 27, 2024
ffa998e
Autoformat
smowton Feb 27, 2024
551006c
Make predicate private
smowton Feb 27, 2024
ef82ea7
Add change note
smowton Feb 27, 2024
3bd0c3b
Switch test to using a qlref to the real telemetry query
smowton Feb 28, 2024
140c318
Adjust test expectations
smowton Feb 28, 2024
903e4f5
Exclude error types from contradictory-type-check query
smowton Feb 29, 2024
ef9544c
Adjust test expectations now signature type-accesses are named
smowton Feb 29, 2024
7b5f51b
Change summary models to neutral models for javax.crypto.Cipher
owen-mc Feb 29, 2024
47bf556
Merge pull request #15709 from atorralba/atorralba/java/enable-widget…
atorralba Feb 29, 2024
051d63a
Merge pull request #15740 from smowton/smowton/feature/call-and-type-…
smowton Feb 29, 2024
bd0137a
Deprecated direct use of `RemoteFlowSource` and use `ThreatModelFlowS…
egregius313 Jan 17, 2024
f388a0f
Deprecate direct uses of `RemoteFlowSource` and replace with `ThreatM…
egregius313 Jan 24, 2024
7577266
Change note
egregius313 Jan 24, 2024
31d4d0c
Move `getSourceType` to `SourceNode`
egregius313 Jan 31, 2024
fd3738b
Refactor to using `SourceNode::getSourceType`
egregius313 Jan 31, 2024
b76795f
Refactor to using ThreatModelFlowSource
egregius313 Jan 31, 2024
1086abc
Refactor to using `ThreatModelFlowSource`
egregius313 Jan 31, 2024
434fa20
Refactor to using `ThreatModelFlowSource`
egregius313 Jan 31, 2024
b4dabee
Remove unnecessary `flowsources.Remote` imports
egregius313 Jan 31, 2024
eb81946
Change note changes to mention `local` sources as well
egregius313 Jan 31, 2024
22e8da2
Update change note date
egregius313 Feb 5, 2024
5198f52
Add references to changed queries in change note
egregius313 Feb 5, 2024
f237d2a
Refactor to use `ThreatModelFlowSource`
egregius313 Feb 5, 2024
af749e2
Remove commented out code
egregius313 Feb 5, 2024
e64826d
Add threat-model configuration for `UncontrolledFormatString` test
egregius313 Feb 5, 2024
3563c7e
Modify deprecated `RemoteSource` classes to extend `DataFlow::Node` d…
egregius313 Feb 28, 2024
86ceeeb
Change handling of `LocalSource` in queries
egregius313 Feb 28, 2024
89bdb7f
Remove discussion of local flow in change note
egregius313 Feb 29, 2024
f488f23
Add `LocalFlowSource` back to `UncontrolledFormatString`
egregius313 Feb 29, 2024
6d90877
Merge pull request #15536 from github/redsun82/bazel-cmake
redsun82 Feb 29, 2024
1466f11
C++: Add change note.
MathiasVP Feb 29, 2024
a8468a6
C#: Better handle multiple `global.json` files
hvitved Feb 29, 2024
54031a8
Merge pull request #15767 from owen-mc/java/add-summary-models
owen-mc Feb 29, 2024
148bc26
Add changed framework coverage reports
github-actions[bot] Mar 1, 2024
dd1dbdf
Java: Fix provenance of Map.Entry.copyOf models
atorralba Mar 1, 2024
664dac6
Merge pull request #15773 from github/workflow/coverage/update
atorralba Mar 1, 2024
d182eae
Python: Add consistency check for `PhaseDependentFlow`
RasmusWL Mar 1, 2024
d54e3d7
Update java/ql/src/CHANGELOG.md
coadaflorin Mar 1, 2024
a8816a6
Update java/ql/src/change-notes/released/0.8.9.md
coadaflorin Mar 1, 2024
2eb8d13
C++: Accept test changes.
MathiasVP Mar 1, 2024
4e91359
Merge branch 'main' into cpp-non-constant-format-as-path-query
MathiasVP Mar 1, 2024
e051526
Merge pull request #15774 from atorralba/atorralba/java/mapentry-copy…
atorralba Mar 1, 2024
ef0a1d2
Implement models for translation methods
joefarebrother Feb 28, 2024
0b7b7ea
Add test cases and improve controller model
joefarebrother Feb 29, 2024
bf2174f
Add change note
joefarebrother Feb 29, 2024
abdae2c
Apply reveiw suggestion - update change note
joefarebrother Mar 1, 2024
bbf3fa7
do not generate models for toString
owen-mc Mar 1, 2024
0f1106b
Merge pull request #15753 from joefarebrother/ruby-i18n-translation
joefarebrother Mar 1, 2024
1719fd8
Merge pull request #15769 from github/coadaflorin/changelog-2.16.3-up…
coadaflorin Mar 1, 2024
a7547d5
Merge branch 'main' into cpp-non-constant-format-as-path-query
MathiasVP Mar 1, 2024
86b4f27
CI: Kotlin: Label Kotlin test changes as "Kotlin"
igfoo Mar 1, 2024
20ff7de
Address review comment
hvitved Mar 1, 2024
bb97df1
do not generate models for lambda flow methods
owen-mc Mar 1, 2024
cb128da
Merge pull request #15762 from hvitved/csharp/fetch-dotnet-dependency…
hvitved Mar 1, 2024
07fc84d
C#: Don't inject compiler flags when dotnet is used to execute an app…
michaelnebel Feb 29, 2024
2457284
C#: Move helper function to other repo to allow sharing.
michaelnebel Feb 29, 2024
ac4ad0c
C#: Add test where build should not be interpreted as a SDK sub command.
michaelnebel Feb 29, 2024
0e95f41
Add manual neutral models for java.lang
owen-mc Feb 27, 2024
f907fd2
Add manual neutral models for java.text.Format and java.text.MessageF…
owen-mc Feb 27, 2024
10f6329
Add manual neutral models for java.util.stream
owen-mc Feb 27, 2024
6d9f3d4
C#: Add `build_modes: none` to `codeql-extractor.yml`
hvitved Mar 1, 2024
9133a13
Merge pull request #15628 from microsoft/cpp-non-constant-format-as-p…
MathiasVP Mar 1, 2024
15d1105
Merge pull request #15779 from hvitved/csharp/build-mode-none
hvitved Mar 1, 2024
a97510a
Merge pull request #15419 from github/egregius313/csharp/dataflow/thr…
michaelnebel Mar 1, 2024
a693c6d
Ruby: sinks for code injection via calls to `method`
p- Mar 1, 2024
f89fedc
Add some neutral models for java.util
owen-mc Feb 28, 2024
df64e0b
Add neutral summary models for `java.security.MessageDigest#digest`
owen-mc Jan 13, 2024
0e1c45e
Accept test change: some more APIs have manual models now
owen-mc Feb 29, 2024
6e63df9
Accept test change: toString method no longer generated
owen-mc Mar 1, 2024
30b7fad
Python: Add test
RasmusWL Mar 1, 2024
e43c368
Ruby: change note for methode code injection sinks
p- Mar 1, 2024
eeda435
Python: Fix missing DictionaryElementContent
RasmusWL Mar 1, 2024
5399d88
Accept test change: slight change in gen vs man modelgen stats
owen-mc Mar 1, 2024
d99a763
Python: add change-note
RasmusWL Mar 1, 2024
bda8a80
Go: Add `go.work` file
mbg Jan 17, 2024
3418ec8
Ruby: Update method code injection sinks change note
p- Mar 1, 2024
4adc373
Ruby: more test cases for code injection via method
p- Mar 1, 2024
fd82a06
Merge pull request #15777 from igfoo/igfoo/label-kot
igfoo Mar 1, 2024
0a8dfba
Accept suggestion to put models under the right heading
owen-mc Mar 1, 2024
0bb6a64
Java: extractor information: tolerate fractional percentages
smowton Mar 1, 2024
bf22c6d
Merge pull request #15766 from owen-mc/java/add-neutral-models
owen-mc Mar 2, 2024
0403954
Update ExtractorInformation.expected
smowton Mar 2, 2024
114c17a
Add more methods of `java.util.Comparator`
owen-mc Mar 2, 2024
9c2322d
Merge pull request #15362 from github/mbg/go/add-go-work
mbg Mar 3, 2024
c7efde3
Remove variables with "null" in their name as sources
owen-mc Mar 3, 2024
19ac9e0
Add test
owen-mc Mar 3, 2024
7a96b11
Add change note
owen-mc Mar 3, 2024
11142df
Merge pull request #15764 from michaelnebel/csharp/csharptracerrunapp
michaelnebel Mar 4, 2024
037c76d
Update change note
owen-mc Mar 4, 2024
038afc4
Merge pull request #15772 from owen-mc/java/model-generator-exclude-t…
owen-mc Mar 4, 2024
ce1d0d2
Merge pull request #15780 from p-/p--method-injection
hmac Mar 4, 2024
0c93641
Merge pull request #15361 from github/mbg/go/legacy-gopath-mode-depre…
mbg Mar 4, 2024
85a45b0
Python: Fix comment
RasmusWL Mar 4, 2024
16cb6c2
Python: Fix validTest expectations
RasmusWL Mar 4, 2024
fbf6727
Python: Add change-note
RasmusWL Mar 4, 2024
6563414
Go: Allow 1.22 as a supported version
mbg Mar 4, 2024
ff82eb9
Go: Use 1.22 in `go.mod`
mbg Mar 4, 2024
0e9a7c8
Go: Update `go.work.sum`
mbg Mar 4, 2024
83cef78
Merge pull request #15783 from github/smowton/fix/extractor-informati…
smowton Mar 4, 2024
726e092
Merge pull request #15790 from github/mbg/go/allow-1.22
mbg Mar 4, 2024
4dd23d4
Merge pull request #15791 from github/mbg/go/use-1.22-for-extractor
mbg Mar 4, 2024
52a36ce
Java: Fix sink type in hudson.model.yml
max-schaefer Mar 4, 2024
a8ae2e2
Go: Add changenote for autobuilder refactor
mbg Mar 4, 2024
ac484e5
Merge pull request #15793 from github/mbg/go/autobuilder-refactor-cha…
mbg Mar 4, 2024
3721273
Go: Delete unused `AnyGoFilesOutsideDirs`
mbg Mar 4, 2024
040a288
Go: Update comment to replace Go.mod with go.mod
mbg Mar 4, 2024
020eb4a
Go: Use `slices.Concat` for `bazelPaths`
mbg Mar 4, 2024
8055c5d
Go: Avoid extra loop to track `unsuccessfulProjects`
mbg Mar 4, 2024
52b273a
Go: Include workspace count in success message
mbg Mar 4, 2024
1a13a0e
Go: Log discovered Go modules in case workspace files can't be read/p…
mbg Mar 4, 2024
acf2f76
Go: Improve log message for `InitGoModForLegacyProject`
mbg Mar 4, 2024
279605b
Merge pull request #15786 from owen-mc/java/sensitive-logging-query-e…
owen-mc Mar 4, 2024
9b5bf51
Update go/extractor/project/project.go
mbg Mar 4, 2024
9bad1e6
Merge pull request #15765 from igfoo/igfoo/deleg
igfoo Mar 4, 2024
1f3a349
Merge pull request #15792 from github/max-schaefer-patch-1
max-schaefer Mar 4, 2024
73fe20f
Merge pull request #15713 from igfoo/igfoo/past
igfoo Mar 4, 2024
e5de4f2
Merge pull request #15789 from github/mbg/go/autobuilder-review-comments
mbg Mar 4, 2024
ab288d0
Merge pull request #15712 from igfoo/igfoo/k2ref
igfoo Mar 4, 2024
a9ce2e1
Merge pull request #15781 from RasmusWL/dict-update
yoff Mar 4, 2024
569bb99
Merge pull request #15775 from RasmusWL/scope-consistency
yoff Mar 4, 2024
00e77a3
Merge pull request #15720 from RasmusWL/nosql-precision
yoff Mar 4, 2024
dcc2b2c
Merge pull request #15057 from aydinnyunus/main
owen-mc Mar 4, 2024
e124b07
Merge branch 'main' into patch-1
owen-mc Mar 4, 2024
331f308
Merge pull request #13692 from Marcono1234/patch-1
owen-mc Mar 4, 2024
2b2ea59
Fix formatting on changenotes
angelapwen Mar 4, 2024
19539ab
Merge pull request #15800 from github/angelapwen/fix-ruby-changenotes
angelapwen Mar 4, 2024
a67218a
Release preparation for version 2.16.4
invalid-email-address Mar 4, 2024
92e91f5
Merge pull request #15801 from github/release-prep/2.16.4
angelapwen Mar 4, 2024
2aa093c
Go: Move `getImportPath` to shared `util` package
mbg Mar 5, 2024
367ecf7
Go: Use import path for auto-generated Go module names
mbg Mar 5, 2024
b1e0bc0
Go: Fix check for whether it is safe to initialise a `go.mod` file in…
mbg Mar 5, 2024
ac394dc
Go: Better check for path prefixes
mbg Mar 5, 2024
a8d240d
Go: Add integration test for mixed layout project
mbg Mar 5, 2024
40ff75d
Go: Update list of expected files for `single-go-mod-and-go-files-not…
mbg Mar 5, 2024
eaef544
Merge pull request #15810 from github/mbg/go/fix-initialised-module-n…
mbg Mar 5, 2024
967963a
Revert "Release preparation for version 2.16.4"
angelapwen Mar 5, 2024
7e2a775
Merge pull request #15813 from github/revert-15801-release-prep/2.16.4
angelapwen Mar 5, 2024
661e68d
Release preparation for version 2.16.4
invalid-email-address Mar 5, 2024
727a38a
Merge pull request #15814 from github/release-prep/2.16.4
angelapwen Mar 5, 2024
ce31f86
Revert "Release preparation for version 2.16.4"
angelapwen Mar 6, 2024
711c474
Merge pull request #15832 from github/revert-15814-release-prep/2.16.4
angelapwen Mar 6, 2024
2f058ff
Release preparation for version 2.16.4
invalid-email-address Mar 6, 2024
2daf505
Merge pull request #15833 from github/release-prep/2.16.4
angelapwen Mar 6, 2024
dfdb5c9
merging 2.16.4, resolving zipslip .expected file conflict
Mar 11, 2024
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
  •  
  •  
  •  
8 changes: 8 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
common --enable_platform_specific_config
common --enable_bzlmod
# because we use --override_module with `%workspace%`, the lock file is not stable
common --lockfile_mode=off

# when building from this repository in isolation, the internal repository will not be found at ..
# where `MODULE.bazel` looks for it. The following will get us past the module loading phase, so
# that we can build things that do not rely on that
common --override_module=semmle_code=%workspace%/misc/bazel/semmle_code_stub

build --repo_env=CC=clang --repo_env=CXX=clang++

Expand Down
2 changes: 1 addition & 1 deletion .bazelversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.3.1
7.0.2
4 changes: 4 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,7 @@ javascript/ql/experimental/adaptivethreatmodeling/test/endpoint_large_scale/auto

# Auto-generated modeling for Python
python/ql/lib/semmle/python/frameworks/data/internal/subclass-capture/*.yml linguist-generated=true

# auto-generated bazel lock file
ruby/extractor/cargo-bazel-lock.json linguist-generated=true
ruby/extractor/cargo-bazel-lock.json -merge
2 changes: 1 addition & 1 deletion .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ JS:

Kotlin:
- java/kotlin-extractor/**/*
- java/ql/test/kotlin/**/*
- java/ql/test-kotlin*/**/*

Python:
- python/**/*
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/compile-queries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
with:
key: all-queries
- name: check formatting
run: find */ql -type f \( -name "*.qll" -o -name "*.ql" \) -print0 | xargs -0 -n 3000 -P 10 codeql query format -q --check-only
run: find shared */ql -type f \( -name "*.qll" -o -name "*.ql" \) -print0 | xargs -0 -n 3000 -P 10 codeql query format -q --check-only
- name: compile queries - check-only
# run with --check-only if running in a PR (github.sha != main)
if : ${{ github.event_name == 'pull_request' }}
Expand Down
73 changes: 8 additions & 65 deletions .github/workflows/ruby-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,11 @@ jobs:
run: |
brew install gnu-tar
echo "/usr/local/opt/gnu-tar/libexec/gnubin" >> $GITHUB_PATH
- name: Install cargo-cross
if: runner.os == 'Linux'
run: cargo install cross --version 0.2.5
- name: Prepare Windows
if: runner.os == 'Windows'
shell: powershell
run: |
git config --global core.longpaths true
- uses: ./.github/actions/os-version
id: os_version
- name: Cache entire extractor
Expand Down Expand Up @@ -82,16 +84,8 @@ jobs:
- name: Run tests
if: steps.cache-extractor.outputs.cache-hit != 'true'
run: cd extractor && cargo test --verbose
# On linux, build the extractor via cross in a centos7 container.
# This ensures we don't depend on glibc > 2.17.
- name: Release build (linux)
if: steps.cache-extractor.outputs.cache-hit != 'true' && runner.os == 'Linux'
run: |
cd extractor
cross build --release
mv target/x86_64-unknown-linux-gnu/release/codeql-extractor-ruby target/release/
- name: Release build (windows and macos)
if: steps.cache-extractor.outputs.cache-hit != 'true' && runner.os != 'Linux'
- name: Release build
if: steps.cache-extractor.outputs.cache-hit != 'true'
run: cd extractor && cargo build --release
- name: Generate dbscheme
if: ${{ matrix.os == 'ubuntu-latest' && steps.cache-extractor.outputs.cache-hit != 'true'}}
Expand Down Expand Up @@ -123,7 +117,7 @@ jobs:
- name: Cache compilation cache
id: query-cache
uses: ./.github/actions/cache-query-compilation
with:
with:
key: ruby-build
- name: Build Query Pack
run: |
Expand Down Expand Up @@ -235,54 +229,3 @@ jobs:
shell: bash
run: |
codeql database analyze --search-path "${{ runner.temp }}/ruby-bundle" --format=sarifv2.1.0 --output=out.sarif ../database ruby-code-scanning.qls

# This is a copy of the 'test' job that runs in a centos7 container.
# This tests that the extractor works correctly on systems with an old glibc.
test-centos7:
defaults:
run:
working-directory: ${{ github.workspace }}
strategy:
fail-fast: false
runs-on: ubuntu-latest
container:
image: centos:centos7
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
needs: [package]
steps:
- name: Install gh cli
run: |
yum-config-manager --add-repo https://cli.github.com/packages/rpm/gh-cli.repo
# fetch-codeql requires unzip and jq
# jq is available in epel-release (https://docs.fedoraproject.org/en-US/epel/)
yum install -y gh unzip epel-release
yum install -y jq
- uses: actions/checkout@v3
- name: Fetch CodeQL
uses: ./.github/actions/fetch-codeql

# Due to a bug in Actions, we can't use runner.temp in the run blocks here.
# https://github.com/actions/runner/issues/2185

- name: Download Ruby bundle
uses: actions/download-artifact@v3
with:
name: codeql-ruby-bundle
path: ${{ runner.temp }}
- name: Unzip Ruby bundle
shell: bash
run: unzip -q -d "$RUNNER_TEMP"/ruby-bundle "$RUNNER_TEMP"/codeql-ruby-bundle.zip

- name: Run QL test
shell: bash
run: |
codeql test run --search-path "$RUNNER_TEMP"/ruby-bundle --additional-packs "$RUNNER_TEMP"/ruby-bundle ruby/ql/test/library-tests/ast/constants/
- name: Create database
shell: bash
run: |
codeql database create --search-path "$RUNNER_TEMP"/ruby-bundle --language ruby --source-root ruby/ql/test/library-tests/ast/constants/ ../database
- name: Analyze database
shell: bash
run: |
codeql database analyze --search-path "$RUNNER_TEMP"/ruby-bundle --format=sarifv2.1.0 --output=out.sarif ../database ruby-code-scanning.qls
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@
# local bazel options
/local.bazelrc

# generated cmake directory
/.bazel-cmake

# CLion project files
/.clwb

Expand Down
1 change: 1 addition & 0 deletions CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@

# Bazel (excluding BUILD.bazel files)
WORKSPACE.bazel @github/codeql-ci-reviewers
MODULE.bazel @github/codeql-ci-reviewers
.bazelversion @github/codeql-ci-reviewers
.bazelrc @github/codeql-ci-reviewers
**/*.bzl @github/codeql-ci-reviewers
Expand Down
53 changes: 53 additions & 0 deletions MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
module(
name = "codeql",
version = "0.0",
)

# this points to our internal repository when `codeql` is checked out as a submodule thereof
# when building things from `codeql` independently this is stubbed out in `.bazelrc`
bazel_dep(name = "semmle_code", version = "0.0")
local_path_override(
module_name = "semmle_code",
path = "..",
)

# see https://registry.bazel.build/ for a list of available packages

bazel_dep(name = "platforms", version = "0.0.8")
bazel_dep(name = "rules_pkg", version = "0.9.1")
bazel_dep(name = "rules_nodejs", version = "6.0.3")
bazel_dep(name = "rules_python", version = "0.31.0")
bazel_dep(name = "bazel_skylib", version = "1.5.0")
bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "absl")
bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json")
bazel_dep(name = "fmt", version = "10.0.0")

pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
pip.parse(
hub_name = "codegen_deps",
python_version = "3.11",
requirements_lock = "//misc/codegen:requirements_lock.txt",
)
use_repo(pip, "codegen_deps")

swift_deps = use_extension("//swift/third_party:load.bzl", "swift_deps")
use_repo(
swift_deps,
"binlog",
"picosha2",
"swift_prebuilt_darwin_x86_64",
"swift_prebuilt_linux",
"swift_toolchain_linux",
"swift_toolchain_macos",
)

node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node")
node.toolchain(
name = "nodejs",
node_version = "18.15.0",
)
use_repo(node, "nodejs", "nodejs_toolchains")

register_toolchains(
"@nodejs_toolchains//:all",
)
14 changes: 2 additions & 12 deletions WORKSPACE.bazel
Original file line number Diff line number Diff line change
@@ -1,12 +1,2 @@
# Please notice that any bazel targets and definitions in this repository are currently experimental
# and for internal use only.

workspace(name = "codeql")

load("//misc/bazel:workspace.bzl", "codeql_workspace")

codeql_workspace()

load("//misc/bazel:workspace_deps.bzl", "codeql_workspace_deps")

codeql_workspace_deps()
# please use MODULE.bazel to add dependencies
# this empty file is required by internal repositories, don't remove it
7 changes: 0 additions & 7 deletions config/identical-files.json
Original file line number Diff line number Diff line change
Expand Up @@ -431,13 +431,6 @@
"java/ql/src/experimental/Security/CWE/CWE-400/LocalThreadResourceAbuse.qhelp",
"java/ql/src/experimental/Security/CWE/CWE-400/ThreadResourceAbuse.qhelp"
],
"IDE Contextual Queries": [
"cpp/ql/lib/IDEContextual.qll",
"csharp/ql/lib/IDEContextual.qll",
"java/ql/lib/IDEContextual.qll",
"javascript/ql/lib/IDEContextual.qll",
"python/ql/lib/analysis/IDEContextual.qll"
],
"CryptoAlgorithms Python/JS/Ruby": [
"javascript/ql/lib/semmle/javascript/security/CryptoAlgorithms.qll",
"python/ql/lib/semmle/python/concepts/CryptoAlgorithms.qll",
Expand Down
2 changes: 2 additions & 0 deletions cpp/autobuilder/Semmle.Autobuild.Cpp/Program.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
using System;

using Semmle.Autobuild.Shared;
using Semmle.Util;

namespace Semmle.Autobuild.Cpp
{
Expand Down
6 changes: 6 additions & 0 deletions cpp/ql/lib/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
## 0.12.7

### Minor Analysis Improvements

* Added destructors for named objects to the intermediate representation.

## 0.12.6

### New Features
Expand Down
11 changes: 2 additions & 9 deletions cpp/ql/lib/IDEContextual.qll
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,13 @@
*/

import semmle.files.FileSystem
private import codeql.util.FileSystem

/**
* Returns the `File` matching the given source file name as encoded by the VS
* Code extension.
*/
cached
File getFileBySourceArchiveName(string name) {
// The name provided for a file in the source archive by the VS Code extension
// has some differences from the absolute path in the database:
// 1. colons are replaced by underscores
// 2. there's a leading slash, even for Windows paths: "C:/foo/bar" ->
// "/C_/foo/bar"
// 3. double slashes in UNC prefixes are replaced with a single slash
// We can handle 2 and 3 together by unconditionally adding a leading slash
// before replacing double slashes.
name = ("/" + result.getAbsolutePath().replaceAll(":", "_")).replaceAll("//", "/")
result = IdeContextual<File>::getFileBySourceArchiveName(name)
}
5 changes: 5 additions & 0 deletions cpp/ql/lib/change-notes/released/0.12.7.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## 0.12.7

### Minor Analysis Improvements

* Added destructors for named objects to the intermediate representation.
2 changes: 1 addition & 1 deletion cpp/ql/lib/codeql-pack.release.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
lastReleaseVersion: 0.12.6
lastReleaseVersion: 0.12.7
2 changes: 1 addition & 1 deletion cpp/ql/lib/qlpack.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: codeql/cpp-all
version: 0.12.6
version: 0.12.7
groups: cpp
dbscheme: semmlecode.cpp.dbscheme
extractor: cpp
Expand Down
2 changes: 2 additions & 0 deletions cpp/ql/lib/semmle/code/cpp/Enclosing.qll
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,6 @@ Element exprEnclosingElement(Expr e) {
)
else result = de.getDeclaration()
)
or
result.(Stmt).getAnImplicitDestructorCall() = e
}
2 changes: 1 addition & 1 deletion cpp/ql/lib/semmle/code/cpp/controlflow/SubBasicBlocks.qll
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// NOTE: There are two copies of this file, and they must be kept identical:
// - semmle/code/cpp/controlflow/SubBasicBlocks.qll
// - semmle/code/cpp/dataflow/internal/SubBasicBlocks.qll
// - semmle/code/cpp/dataflow/internal/SubBasicBlocks.qll [now DEPRECATED]
//
// The second one is a private copy of the `SubBasicBlocks` library for
// internal use by the data flow library. Having an extra copy prevents
Expand Down
2 changes: 2 additions & 0 deletions cpp/ql/lib/semmle/code/cpp/dataflow/internal/AddressFlow.qll
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*
* Provides a local analysis for identifying where a variable address
* is effectively taken. Array-like offsets are allowed to pass through but
* not field-like offsets.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*/

private import cpp
private import DataFlowPrivate
private import DataFlowUtil
Expand Down
4 changes: 4 additions & 0 deletions cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl.qll
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*/

private import DataFlowImplSpecific
private import codeql.dataflow.internal.DataFlowImpl
import MakeImpl<CppOldDataFlow>
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*/

private import DataFlowImplSpecific
private import codeql.dataflow.internal.DataFlowImplCommon
import MakeImplCommon<CppOldDataFlow>
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*
* Provides consistency queries for checking invariants in the language-specific
* data-flow classes and predicates.
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*
* Provides C++-specific definitions for use in the data flow library.
*/

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*/

private import cpp
private import DataFlowUtil
private import DataFlowDispatch
Expand Down
2 changes: 2 additions & 0 deletions cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowUtil.qll
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*
* Provides C++-specific definitions for use in the data flow library.
*/

Expand Down
2 changes: 2 additions & 0 deletions cpp/ql/lib/semmle/code/cpp/dataflow/internal/FlowVar.qll
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*
* Provides a class for handling variables in the data flow analysis.
*/

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// NOTE: There are two copies of this file, and they must be kept identical:
// - semmle/code/cpp/controlflow/SubBasicBlocks.qll
// - semmle/code/cpp/dataflow/internal/SubBasicBlocks.qll
// - semmle/code/cpp/dataflow/internal/SubBasicBlocks.qll [now DEPRECATED]
//
// The second one is a private copy of the `SubBasicBlocks` library for
// internal use by the data flow library. Having an extra copy prevents
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
/**
* DEPRECATED: Use `semmle.code.cpp.dataflow.new.DataFlow` instead.
*
* Provides C++-specific definitions for use in the taint tracking library.
*/

Expand Down
Loading