Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from github:main #11

Open
wants to merge 10,000 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
d0ed0fd
Add download to Express
Kwstubbs Feb 12, 2025
f5521ca
Formatting
Kwstubbs Feb 12, 2025
bf1a9af
Merge pull request #18694 from microsoft/csharp-update-MaD-upstream
michaelnebel Feb 12, 2025
bf9563e
Rust: Add data flow tests using `ref` patterns
paldepind Feb 12, 2025
c602e82
Rust: use tracing-subscriber
aibaars Jan 23, 2025
0442d24
Rust: drop tracing:: qualifiers
aibaars Feb 11, 2025
3218fae
Rust: make flame_log a config option
aibaars Feb 11, 2025
5621eec
Rust: config: replace verbose with verbosity
aibaars Feb 11, 2025
64f0908
Rust: keep FlushGuard in a variable
aibaars Feb 12, 2025
654c6bf
Merge pull request #18735 from asgerf/inline-test-non-location
asgerf Feb 12, 2025
333b183
Merge branch 'main' into http
geoffw0 Feb 12, 2025
f46a2a1
Exclude some decorators
joefarebrother Feb 12, 2025
5da1425
Rust: Include names in patterns in the CFG
paldepind Feb 12, 2025
a21dfc9
Merge pull request #18306 from github/go/1.24
mbg Feb 12, 2025
2806e07
Model additions to `encoding` in Go 1.24
owen-mc Jan 8, 2025
79232da
Add models for `weak` package, added in Go 1.24
owen-mc Jan 8, 2025
eac7703
Update go version required for stdlib tests
owen-mc Jan 9, 2025
01ea4bd
Add change note
owen-mc Jan 9, 2025
cfcc6c8
Rust: Rename model file.
geoffw0 Feb 12, 2025
2762272
Pretty-print models in a test
owen-mc Feb 12, 2025
bc1805c
Rust: .yaml -> .yml
geoffw0 Feb 12, 2025
dbad4df
Update change note
owen-mc Feb 12, 2025
19fcf3c
Merge pull request #18454 from owen-mc/go/mad/encoding-and-weak
owen-mc Feb 12, 2025
9054f16
Merge pull request #18753 from geoffw0/fix
paldepind Feb 12, 2025
7476aea
Rust: Handle `ref` patterns in data flow
paldepind Feb 12, 2025
f5b247d
Merge branch 'main' into rust-ref-pattern
paldepind Feb 12, 2025
498828e
Rust: Implement `TypeParam.to(Abbreviated)String`
hvitved Feb 12, 2025
ef9676f
Rust: Accept changes
paldepind Feb 12, 2025
d0e0a7b
Merge branch 'main' into http
geoffw0 Feb 12, 2025
aa43d50
Merge pull request #18671 from geoffw0/http
geoffw0 Feb 12, 2025
18cf39d
Rust: add verbosity and flamegraph as extractor options
aibaars Feb 12, 2025
234d63b
Rust: avoid panic from `line_index` crate
Feb 12, 2025
e07b25c
Merge pull request #18577 from GeekMasher/rust-rusqlite
geoffw0 Feb 12, 2025
98c755d
Merge pull request #18759 from github/redsun82/rust-avoid-linecol-panic
redsun82 Feb 12, 2025
253882c
Update javascript/ql/lib/change-notes/2025-02-12-express-download.md
Kwstubbs Feb 12, 2025
958c7d6
Add changed framework coverage reports
github-actions[bot] Feb 13, 2025
cb91fbf
C#: Update the documentation on supported C# language versions and fr…
michaelnebel Feb 13, 2025
b2ad98a
Merge pull request #18755 from hvitved/rust/type-param-to-string
hvitved Feb 13, 2025
eea295a
C#: Add change-note.
michaelnebel Feb 13, 2025
c537246
Merge pull request #18761 from github/workflow/coverage/update
owen-mc Feb 13, 2025
63a853d
Add more modeled frameworks to docs
owen-mc Feb 13, 2025
dd102c4
Merge pull request #18645 from fabienpe/main
owen-mc Feb 13, 2025
f531f44
JS: Add test for URL and URLSearchParams
asgerf Feb 13, 2025
26dcbf7
JS: Migrate URLSearchParams model to flow summaries
asgerf Feb 13, 2025
c4724f4
JS: Change note
asgerf Feb 13, 2025
e9c2503
Rust: Use `Field` MaD token instead of `Variant`, `Struct`, `Tuple`
hvitved Feb 13, 2025
02fd23e
Rust extractors: Normalize drive letter paths with a trailing `/`
hvitved Feb 13, 2025
a1069b1
Rust: Add examples with methods called as functions
paldepind Feb 13, 2025
3f19279
Rust: Adjust argument position when call expression is for method
paldepind Feb 13, 2025
f597ea9
C++: Delete the unnecessary IPA type of definitions.
MathiasVP Feb 13, 2025
75b6855
C++: Move useful predicates from the old IPA type for the 'Definition…
MathiasVP Feb 13, 2025
f9732c7
C++: Patch up various places that depended on the old IPA type.
MathiasVP Feb 13, 2025
aff03bd
C++: Delete confusing class synonym.
MathiasVP Feb 13, 2025
be1af88
C++: Add more QLDoc.
MathiasVP Feb 13, 2025
50584c8
Merge pull request #18764 from michaelnebel/csharp/updatedocumentation
michaelnebel Feb 13, 2025
09c4461
Rename "named type" to "defined type"
owen-mc Jan 14, 2025
64c3f70
Add change note
owen-mc Feb 12, 2025
1cfc8f6
Merge pull request #18769 from hvitved/rust/mad-field-token
hvitved Feb 13, 2025
bd9eb7d
Merge pull request #18770 from hvitved/shared/windows-drive-letter-tr…
hvitved Feb 13, 2025
9f9857b
QL4QL: Add query suggestion use of inline test expectations
hvitved Feb 13, 2025
024fbf8
Rename "named" to "defined" in dbscheme
owen-mc Feb 13, 2025
29f94f4
Add upgrade/downgrade scripts
owen-mc Feb 13, 2025
f9a87cd
Rename "namedtype" to "definedtype" in stats file
owen-mc Feb 13, 2025
c08bb25
Print diff when dbscheme upgrade fails
owen-mc Feb 13, 2025
84131dd
Add `Client::Watch`
egregius313 Feb 13, 2025
8fca150
Merge pull request #18774 from owen-mc/go/print-dbscheme-upgrade-diff
owen-mc Feb 13, 2025
1a52398
Address review comments
owen-mc Feb 13, 2025
74f16ee
Merge branch 'main' into path-sanitizers
Kwstubbs Feb 14, 2025
25314b6
JS: Update nodes/edges output
asgerf Feb 14, 2025
7df3e64
JS: Use US spelling
asgerf Feb 14, 2025
f28140b
Merge branch 'main' into redsun82/env-dump-integration-test
redsun82 Feb 14, 2025
e1f92b4
Merge pull request #18608 from github/aibaars/tracing
redsun82 Feb 14, 2025
a61d42e
JS: Make inline CG tests report call target if NONE was given
asgerf Feb 14, 2025
4043765
JS: Avoid ambiguity in an inline CG annotation
asgerf Feb 14, 2025
9321d69
JS: Add CG test showing lack of calls down to subclasses
asgerf Feb 14, 2025
aff458d
JS: Also add tests for upward calls and overriding
asgerf Feb 14, 2025
b8b2b9a
JS: Resolve calls downward in the class hierarchy
asgerf Feb 14, 2025
250cbb6
Change location of postprocess queries
owen-mc Feb 14, 2025
347e5ed
Update model in test expectation
owen-mc Feb 14, 2025
d3c4b5d
JS: Add test with spurious flow due to up-down calls
asgerf Feb 14, 2025
ff7bc7c
JS: Track types of classes in data flow
asgerf Feb 14, 2025
632e0c8
Rust: Generate sources and sinks
paldepind Feb 14, 2025
ab5fc9f
JS: Implement viableImplInCallContext
asgerf Feb 14, 2025
9a29ceb
Fix docker SHA false positive
martincostello Feb 14, 2025
71bc89b
Fix query
martincostello Feb 14, 2025
9cfd339
C++: Move 'getImpl' to a private non-member predicate.
MathiasVP Feb 14, 2025
083c756
Merge pull request #18766 from owen-mc/go/update-framework-docs
owen-mc Feb 14, 2025
d8fe4d2
Merge pull request #18489 from owen-mc/go/rename-namedtype-definedtype
owen-mc Feb 14, 2025
a9b9410
Merge pull request #17759 from Kwstubbs/path-sanitizers
owen-mc Feb 14, 2025
28cb373
Rust: delete dead code.
aschackmull Feb 14, 2025
c84087c
Ruby: Deprecate dependencies of deprecated predicates for clarity.
aschackmull Feb 14, 2025
cf8abb7
Add change note
martincostello Feb 14, 2025
99bb0f0
Use if then else
martincostello Feb 14, 2025
9a7ed7f
Re-order conditions
martincostello Feb 14, 2025
5d2409e
Fix query
martincostello Feb 14, 2025
89fd287
Merge pull request #18773 from MathiasVP/cleanup-ssa-internals-2
MathiasVP Feb 14, 2025
283954d
JS: Do not store into arrays implicitly
asgerf Feb 14, 2025
ea0bd74
Merge pull request #18567 from github/redsun82/env-dump-integration-test
redsun82 Feb 14, 2025
979d604
Apply suggestions from code review
martincostello Feb 14, 2025
f172332
Format Document
martincostello Feb 14, 2025
c0ebeb9
Java: use AdditionalTaintStep
Feb 14, 2025
31913c4
Fix test
martincostello Feb 14, 2025
5f4871d
Merge pull request #18785 from martincostello/gh-18782
adityasharad Feb 14, 2025
2bb6a39
Java: update tests
Feb 14, 2025
61a184c
Java: update more tests
Feb 14, 2025
1fe46cc
fix table alignment
saritai Feb 14, 2025
4097aa9
JS: Added ecma2021, thus extractor now can deal with RegExp v flag
Napalys Nov 21, 2024
3ec038e
JS: Added predicate to check if v flag is used on regular expression
Napalys Nov 21, 2024
01d70a6
add test of the new `v` flag
erik-krogh Feb 16, 2025
55b8e8b
fix the ECMAScript version to be ES2024
erik-krogh Feb 16, 2025
6ebffd5
add change-note
erik-krogh Feb 16, 2025
5af60bb
Add changed framework coverage reports
github-actions[bot] Feb 17, 2025
e02577d
Merge pull request #18768 from asgerf/js/url-search-params
asgerf Feb 17, 2025
180e45d
Merge pull request #18599 from joefarebrother/python-qual-not-named-s…
joefarebrother Feb 17, 2025
3644de0
Merge pull request #18767 from hvitved/ql4ql/inline-expectations
hvitved Feb 17, 2025
97eb09f
JS: Accept updated test output
asgerf Feb 17, 2025
b8f48aa
JS: Change note
asgerf Feb 17, 2025
0ca9b22
Merge pull request #18740 from asgerf/js/more-precise-diff-informed
asgerf Feb 17, 2025
d79f429
JS: Update changes to nodes/edges/subpaths
asgerf Feb 17, 2025
8b3c1ab
Merge branch 'main' into rust-ref-pattern
paldepind Feb 17, 2025
91b3d10
Python: upgrade cargo dependencies
Feb 17, 2025
e8d1703
JS: Add test for flow through Buffer.concat
asgerf Feb 17, 2025
d87534c
JS: Model Array#toString
asgerf Feb 17, 2025
a74b203
JS: Add test with implicit array stringification
asgerf Feb 17, 2025
33ab7db
JS: Handle Array.prototype.toString calls
asgerf Feb 17, 2025
352924f
JS: Handle a few other stringification contexts
asgerf Feb 17, 2025
08b9d93
JS: Add a negative test
asgerf Feb 17, 2025
6045d9b
Merge pull request #18792 from github/workflow/coverage/update
owen-mc Feb 17, 2025
4e325d9
JS: Convert some exception steps to legacy
asgerf Feb 17, 2025
4b53e1c
Merge pull request #18304 from yoff/ruby/performance-queries
yoff Feb 17, 2025
dcfe65b
Rust: Address review comments
paldepind Feb 17, 2025
b08f535
Merge pull request #18772 from paldepind/rust-method-call
paldepind Feb 17, 2025
12a5766
Sanitize path when generating MaD files
paldepind Feb 17, 2025
a90bd68
Merge pull request #18786 from aschackmull/ssa/cleanup
aschackmull Feb 17, 2025
7fa41c4
Merge pull request #18794 from erik-krogh/v-flag
erik-krogh Feb 17, 2025
a253b77
Rust: Add clarifying comment
paldepind Feb 17, 2025
df305d6
Python: run bazel vendoring
Feb 17, 2025
6e074c3
JS: Port lodash callback steps to flow summaries
asgerf Feb 17, 2025
a54f0a7
JS: Target post-update node instead of getALocalSource
asgerf Feb 17, 2025
7551401
Rust: support glob members in workspaces
Feb 17, 2025
342bff6
Python: undo tree-sitter update
Feb 17, 2025
6f4562f
Release preparation for version 2.20.5
invalid-email-address Feb 17, 2025
975881c
Merge pull request #18803 from github/release-prep/2.20.5
igfoo Feb 17, 2025
ad24f94
Post-release preparation for codeql-cli-2.20.5
invalid-email-address Feb 17, 2025
c958702
JS: Accept some unproblematic consistency warnings
asgerf Feb 17, 2025
9bb5fe8
Java: address review comments
Feb 17, 2025
02249af
Merge pull request #18804 from github/post-release-prep/codeql-cli-2.…
igfoo Feb 17, 2025
e610683
JS: Linter fix
asgerf Feb 18, 2025
82a4b17
JS: Change note
asgerf Feb 18, 2025
24e7aad
JS: Overriden -> Overridden
asgerf Feb 18, 2025
38efd4a
Python: downgrade `tree-sitter` back to `0.20.4`
Feb 18, 2025
530bfcc
Merge branch 'main' into redsun82/update-py-deps
Feb 18, 2025
53557db
Merge pull request #18800 from paldepind/generate-model-script
paldepind Feb 18, 2025
b3f7cd9
JS: Extract TS snippets with no tsconfig.json file
asgerf Feb 18, 2025
f3a393f
Rust: Add more path resolution tests
hvitved Feb 18, 2025
ab74d90
Rust: Path resolution for inherited functions
hvitved Feb 18, 2025
d94dc5a
Merge pull request #18504 from jcogs33/jcogs33/java/file-constructor-…
jcogs33 Feb 18, 2025
3822d14
SSA: Elaborate qldoc.
aschackmull Feb 11, 2025
36613e1
SSA: Remove superfluous conjunct (implied by refRank).
aschackmull Feb 11, 2025
b62432f
SSA: Remove superfluous boolean.
aschackmull Feb 14, 2025
c5e2884
SSA: Remove superfluous column from liveAtRank.
aschackmull Feb 14, 2025
5723d27
SSA: Make inReadDominanceFrontier a bit smaller without affecting phi…
aschackmull Feb 14, 2025
f80cd97
SSA: Factor out phi-read construction in its own predicate.
aschackmull Feb 17, 2025
81b3035
SSA: Inline predicate
aschackmull Feb 17, 2025
613323e
SSA: Copy parts of SsaDefReaches verbatim to new module.
aschackmull Feb 17, 2025
ea08c60
SSA: Copy 3 predicates from the outer scope verbatim into the new Rea…
aschackmull Feb 17, 2025
6e272d0
SSA: Ignore phi-reads in the new def-reaches module.
aschackmull Feb 17, 2025
77ccff6
SSA: Replace exported def-reaches predicates (behaviour-preserving).
aschackmull Feb 17, 2025
7e441d9
SSA: Fold getImmediateBasicBlockDominator into loop-invariant predicate.
aschackmull Feb 17, 2025
a4fee2e
SSA: Minor perf tweak to reduce tuple duplication.
aschackmull Feb 17, 2025
d5ac5b4
SSA: Replace uncertainWriteDefinitionInput implementation.
aschackmull Feb 17, 2025
11166fc
SSA: Restrict phi-read creation to be based on reachable reads.
aschackmull Feb 17, 2025
411aff6
SSA: Refactor ranking into parameterised module.
aschackmull Feb 17, 2025
d6dc91d
SSA: Inline predicate to simplify negation.
aschackmull Feb 17, 2025
35f50ba
SSA: Reimplement use-use.
aschackmull Feb 17, 2025
194afbb
Java: Simplify SSA for variable capture.
aschackmull Feb 18, 2025
e40ee82
JS: Update a qldoc comment
asgerf Feb 18, 2025
ad4522c
JS: Make 'typeStrongerThan' transitive
asgerf Feb 18, 2025
7486742
JS: Fix model of _.sortBy
asgerf Feb 18, 2025
804a1a6
JS: Handle array of sorting criteria
asgerf Feb 18, 2025
2d991fc
Updata Java CCR suite
rvermeulen Feb 18, 2025
9865577
Merge pull request #18811 from rvermeulen/rvermeulen/update-java-ccr-…
rvermeulen Feb 19, 2025
e1c2805
Merge pull request #18749 from Kwstubbs/express
asgerf Feb 19, 2025
faef735
Rust: Move equality into disjunction
paldepind Feb 19, 2025
2cd9bd8
Go: Move `IsGolangVendorDirectory` to `util` package
mbg Nov 4, 2024
b372af5
Go: Allow `FindAllFilesWithName` to use predicate functions for `dirs…
mbg Nov 4, 2024
4fa0019
Go: Add `vendor` directory to `mixed-layout` test with `go.work` file
mbg Nov 4, 2024
462b6e6
Bazel: Add `--test_output all`
mbg Feb 19, 2025
58c8b5f
Merge pull request #18790 from asgerf/js/no-implicit-array-taint
asgerf Feb 19, 2025
3c00dc4
Merge pull request #18802 from github/redsun82/rust-glob-members
redsun82 Feb 19, 2025
a5fde9c
Merge pull request #18807 from asgerf/js/vue-without-tsconfig-fixup
asgerf Feb 19, 2025
ebd6fd4
Merge pull request #18814 from github/mbg/bazel/test-output-all
mbg Feb 19, 2025
1d9a3db
Go: Make `go` happy with the `vendor` folder
mbg Feb 19, 2025
ae7e15d
Merge pull request #18754 from paldepind/rust-ref-pattern
paldepind Feb 19, 2025
fe4ee54
Go: Add more logging for `go.mod` files to workspace discovery
mbg Feb 19, 2025
11e3a08
Go: Check for `modules.txt` or `glide.yaml` to exclude `vendor` dirs
mbg Feb 19, 2025
ce234bb
Add changed framework coverage reports
github-actions[bot] Feb 19, 2025
7d3cc2e
Merge pull request #18797 from github/redsun82/update-py-deps
yoff Feb 19, 2025
54ebe9a
Rust: Path resolution for inherited associated items
hvitved Feb 19, 2025
bc6ce32
Merge pull request #18812 from github/workflow/coverage/update
smowton Feb 19, 2025
75d3204
Merge branch 'main' into ruby/add-DBCallInLoop-to-CCR-suite
yoff Feb 19, 2025
cf2136f
SSA: Export simple firstUse and adjacentUseUse predicates.
aschackmull Feb 18, 2025
5379506
Java: Use firstUse and adjacentUseUse predicates.
aschackmull Feb 18, 2025
291ea6f
Java: Move SSA data flow test and extend it to cover phi-read input e…
aschackmull Feb 18, 2025
ed40035
C#/Ruby/Rust: Fix bug in adjacentReadPairSameVar.
aschackmull Feb 19, 2025
17ae747
C#: Switch use-use predicates to new implementation.
aschackmull Feb 19, 2025
b0a5e62
C#: Clean up unused.
aschackmull Feb 19, 2025
4ddc5c9
Ruby: Switch use-use predicates to new implementation.
aschackmull Feb 19, 2025
7e59603
Rust: Switch use-use predicates to new implementation.
aschackmull Feb 19, 2025
b76e5f5
SSA: Deprecate unused predicate.
aschackmull Feb 19, 2025
485ee5c
Merge pull request #18692 from jcogs33/jcogs33/spring-csrf-qhelp-update
jcogs33 Feb 19, 2025
c22021a
Merge pull request #18808 from hvitved/rust/path-resolution-inherited…
hvitved Feb 19, 2025
22bf1af
Merge pull request #18730 from yoff/ruby/add-DBCallInLoop-to-CCR-suite
rvermeulen Feb 19, 2025
a1b7096
Merge pull request #18783 from asgerf/js/downward-calls
asgerf Feb 20, 2025
52515dd
Rust: Add more CFG tests for patterns
paldepind Feb 19, 2025
3bf424b
CFG: Prune `ConditionalCompletionSplitting` for unnecessary splits
hvitved Feb 17, 2025
9d8e997
C#: Update expected test output
hvitved Feb 18, 2025
889ef33
Rust: Update expected test output
hvitved Feb 18, 2025
a8bb37c
Swift: Update expected test output
hvitved Feb 18, 2025
1038f7c
Rust: add licensing information to crates and extractor pack
redsun82 Feb 20, 2025
8e609b1
Ruby: Accept qltest change.
aschackmull Feb 20, 2025
4a01a4d
Rust: Remove nonsensical no-match CFG edges
paldepind Feb 20, 2025
be6162e
Add test for XML extraction with GBK charset
smowton Jan 21, 2025
9162ce7
Add test for extraction of a Java file with a non-UTF-8 charset
smowton Feb 19, 2025
22ed2e5
Merge pull request #18799 from hvitved/cfg/cond-split-prune
hvitved Feb 20, 2025
8c0cc07
Ssa: Fix qldoc duplicate word.
aschackmull Feb 20, 2025
7b6a91e
Fix bad join order in `comparesFirstCharacter`
owen-mc Feb 20, 2025
cd49df0
Merge pull request #18784 from paldepind/rust-generate-sources-sinks
paldepind Feb 20, 2025
fe34aa3
Merge pull request #18699 from github/smowton/admin/update-license
smowton Feb 20, 2025
4567e02
Regularise extractor pack licenses to all cite the MIT license that c…
smowton Feb 20, 2025
a1ba584
Autoformat
smowton Feb 20, 2025
311c1e1
Merge pull request #18829 from smowton/smowton/admin/regularise-extra…
smowton Feb 20, 2025
45baceb
Merge pull request #18821 from github/redsun82/rust-license
redsun82 Feb 20, 2025
f7e094e
Move depstubber line to test file
egregius313 Feb 20, 2025
26da997
Merge pull request #18809 from github/saritai/docs-formatting-fix
saritai Feb 20, 2025
8aa9dd7
Move go generate comment
owen-mc Feb 21, 2025
44c5df5
Force global value fanout to go last
owen-mc Feb 21, 2025
1c616d1
Merge pull request #18819 from aschackmull/ssa/refactor-phiread3
aschackmull Feb 21, 2025
65bce9d
Rust: Add CFG test with tuple struct pattern
paldepind Feb 21, 2025
df2a110
Rust: Changes based on PR comments
paldepind Feb 21, 2025
b77b5fc
Update CHANGELOG.md
coadaflorin Feb 21, 2025
38f538e
Update 3.1.1.md
coadaflorin Feb 21, 2025
967c1ad
Merge pull request #18832 from github/coadaflorin/csharp-changelog-clean
coadaflorin Feb 21, 2025
0f627ae
Merge branch 'main' into rust-fewer-no-match
paldepind Feb 21, 2025
e6e4ff1
Rust: Accept changes to expected files
paldepind Feb 21, 2025
4ef64cd
Merge pull request #18820 from paldepind/rust-fewer-no-match
paldepind Feb 21, 2025
c93fb4c
Merge pull request #18493 from egregius313/egregius313/go/mad/databas…
egregius313 Feb 21, 2025
721b8c4
Merge pull request #18826 from owen-mc/go/join-order-fixes
owen-mc Feb 21, 2025
32e4c74
Merge pull request #18554 from smowton/smowton/admin/test-gbk-xml-ext…
smowton Feb 21, 2025
1b2d842
Merge pull request #17900 from github/mbg/go/fix/project-files-in-vendor
mbg Feb 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
38 changes: 35 additions & 3 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -1,9 +1,41 @@
common --enable_platform_specific_config
# because we use --override_module with `%workspace%`, the lock file is not stable
common --lockfile_mode=off

# Build release binaries by default, can be overwritten to in local.bazelrc and set to `fastbuild` or `dbg`
build --compilation_mode opt

# 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++

build:linux --cxxopt=-std=c++20
build:macos --cxxopt=-std=c++20 --cpu=darwin_x86_64
build:windows --cxxopt=/std:c++20 --cxxopt=/Zc:preprocessor
# print test output, like sembuild does.
# Set to `errors` if this is too verbose.
test --test_output all
# we use transitions that break builds of `...`, so for `test` to work with that we need the following
test --build_tests_only

# this requires developer mode, but is required to have pack installer functioning
startup --windows_enable_symlinks
common --enable_runfiles

# with the above, we can avoid building python zips which is the default on windows as that's expensive
build --nobuild_python_zip

common --registry=file:///%workspace%/misc/bazel/registry
common --registry=https://bcr.bazel.build

common --@rules_dotnet//dotnet/settings:strict_deps=false

# Reduce this eventually to empty, once we've fixed all our usages of java, and https://github.com/bazel-contrib/rules_go/issues/4193 is fixed
common --incompatible_autoload_externally="+@rules_java,+@rules_shell"

build --java_language_version=17
build --tool_java_language_version=17
build --tool_java_runtime_version=remotejdk_17
build --java_runtime_version=remotejdk_17

try-import %workspace%/local.bazelrc
10 changes: 10 additions & 0 deletions .bazelrc.internal
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# this file should contain bazel settings required to build things from `semmle-code`

common --registry=file:///%workspace%/ql/misc/bazel/registry
common --registry=https://bcr.bazel.build

# See bazelbuild/rules_dotnet#413: strict_deps in C# also appliy to 3rd-party deps, and when we pull
# in (for example) the xunit package, there's no code in this at all, it just depends transitively on
# its implementation packages without providing any code itself.
# We either can depend on internal implementation details, or turn of strict deps.
common --@rules_dotnet//dotnet/settings:strict_deps=false
2 changes: 1 addition & 1 deletion .bazelversion
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.3.1
8.0.0
1 change: 1 addition & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DisableFormat: true
1 change: 1 addition & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"image": "mcr.microsoft.com/devcontainers/base:ubuntu-24.04",
"extensions": [
"rust-lang.rust-analyzer",
"bungcip.better-toml",
Expand Down
9 changes: 0 additions & 9 deletions .devcontainer/swift/Dockerfile

This file was deleted.

25 changes: 0 additions & 25 deletions .devcontainer/swift/devcontainer.json

This file was deleted.

22 changes: 0 additions & 22 deletions .devcontainer/swift/root.sh

This file was deleted.

20 changes: 0 additions & 20 deletions .devcontainer/swift/update-codeql.sh

This file was deleted.

13 changes: 0 additions & 13 deletions .devcontainer/swift/user.sh

This file was deleted.

39 changes: 28 additions & 11 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -50,24 +50,41 @@
*.dll -text
*.pdb -text

java/ql/test/stubs/**/*.java linguist-generated=true
java/ql/test/experimental/stubs/**/*.java linguist-generated=true
/java/ql/test/stubs/**/*.java linguist-generated=true
/java/ql/test/experimental/stubs/**/*.java linguist-generated=true
/java/kotlin-extractor/deps/*.jar filter=lfs diff=lfs merge=lfs -text

# Force git not to modify line endings for go or html files under the go/ql directory
go/ql/**/*.go -text
go/ql/**/*.html -text
/go/ql/**/*.go -text
/go/ql/**/*.html -text
# Force git not to modify line endings for go dbschemes
go/*.dbscheme -text
/go/*.dbscheme -text
# Preserve unusual line ending from codeql-go merge
go/extractor/opencsv/CSVReader.java -text
/go/extractor/opencsv/CSVReader.java -text

# For some languages, upgrade script testing references really old dbscheme
# files from legacy upgrades that have CRLF line endings. Since upgrade
# resolution relies on object hashes, we must suppress line ending conversion
# for those testing dbscheme files.
*/ql/lib/upgrades/initial/*.dbscheme -text
/*/ql/lib/upgrades/initial/*.dbscheme -text

# Generated test files - these are synced from the standard JavaScript libraries using
# `javascript/ql/experimental/adaptivethreatmodeling/test/update_endpoint_test_files.py`.
javascript/ql/experimental/adaptivethreatmodeling/test/endpoint_large_scale/autogenerated/**/*.js linguist-generated=true -merge
javascript/ql/experimental/adaptivethreatmodeling/test/endpoint_large_scale/autogenerated/**/*.ts linguist-generated=true -merge
# 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

# auto-generated files for the C# build
/csharp/paket.lock linguist-generated=true
# needs eol=crlf, as `paket` touches this file and saves it as crlf
/csharp/.paket/Paket.Restore.targets linguist-generated=true eol=crlf
/csharp/paket.main.bzl linguist-generated=true
/csharp/paket.main_extension.bzl linguist-generated=true

# ripunzip tool
/misc/ripunzip/ripunzip-* filter=lfs diff=lfs merge=lfs -text

# swift prebuilt resources
/swift/third_party/resources/*.zip filter=lfs diff=lfs merge=lfs -text
/swift/third_party/resources/*.tar.zst filter=lfs diff=lfs merge=lfs -text
1 change: 1 addition & 0 deletions .github/codeql/codeql-config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@ paths-ignore:
- '/python/'
- '/javascript/ql/test'
- '/javascript/extractor/tests'
- '/rust/ql'
23 changes: 23 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,26 @@ updates:
ignore:
- dependency-name: '*'
update-types: ['version-update:semver-patch', 'version-update:semver-minor']

- package-ecosystem: "gomod"
directory: "go/extractor"
schedule:
interval: "daily"
allow:
- dependency-name: "golang.org/x/mod"
- dependency-name: "golang.org/x/tools"
groups:
extractor-dependencies:
patterns:
- "golang.org/x/*"
reviewers:
- "github/codeql-go"

- package-ecosystem: "gomod"
directory: "go/ql/test"
schedule:
interval: "monthly"
ignore:
- dependency-name: "*"
reviewers:
- "github/codeql-go"
21 changes: 11 additions & 10 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ Java:
- change-notes/**/*java.*

JS:
- any: [ 'javascript/**/*', '!javascript/ql/experimental/adaptivethreatmodeling/**/*' ]
- any: [ 'javascript/**/*' ]
- change-notes/**/*javascript*

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

Python:
- python/**/*
Expand All @@ -30,10 +30,18 @@ Ruby:
- ruby/**/*
- change-notes/**/*ruby*

Rust:
- rust/**/*
- change-notes/**/*rust*

Swift:
- swift/**/*
- change-notes/**/*swift*

Actions:
- actions/**/*
- change-notes/**/*actions*

documentation:
- "**/*.qhelp"
- "**/*.md"
Expand All @@ -45,11 +53,4 @@ documentation:

# Since these are all shared files that need to be synced, just pick _one_ copy of each.
"DataFlow Library":
- "java/ql/lib/semmle/code/java/dataflow/internal/DataFlowImpl.qll"
- "java/ql/lib/semmle/code/java/dataflow/internal/DataFlowImplCommon.qll"
- "java/ql/lib/semmle/code/java/dataflow/internal/tainttracking1/TaintTrackingImpl.qll"
- "java/ql/lib/semmle/code/java/dataflow/internal/DataFlowImplConsistency.qll"
- "java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll"

"ATM":
- javascript/ql/experimental/adaptivethreatmodeling/**/*
- "shared/dataflow/**/*"
74 changes: 74 additions & 0 deletions .github/workflows/build-ripunzip.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Build runzip

on:
workflow_dispatch:
inputs:
ripunzip-version:
description: "what reference to checktout from google/runzip"
required: false
default: v1.2.1
openssl-version:
description: "what reference to checkout from openssl/openssl for Linux"
required: false
default: openssl-3.3.0

jobs:
build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, macos-13, windows-2019]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
with:
repository: google/ripunzip
ref: ${{ inputs.ripunzip-version }}
# we need to avoid ripunzip dynamically linking into libssl
# see https://github.com/sfackler/rust-openssl/issues/183
- if: runner.os == 'Linux'
name: checkout openssl
uses: actions/checkout@v4
with:
repository: openssl/openssl
path: openssl
ref: ${{ inputs.openssl-version }}
- if: runner.os == 'Linux'
name: build and install openssl with fPIC
shell: bash
working-directory: openssl
run: |
./config -fPIC --prefix=$HOME/.local --openssldir=$HOME/.local/ssl
make -j $(nproc)
make install_sw -j $(nproc)
- if: runner.os == 'Linux'
name: build (linux)
shell: bash
run: |
env OPENSSL_LIB_DIR=$HOME/.local/lib64 OPENSSL_INCLUDE_DIR=$HOME/.local/include OPENSSL_STATIC=yes cargo build --release
mv target/release/ripunzip ripunzip-linux
- if: runner.os == 'Windows'
name: build (windows)
shell: bash
run: |
cargo build --release
mv target/release/ripunzip ripunzip-windows
- name: build (macOS)
if: runner.os == 'macOS'
shell: bash
run: |
rustup target install x86_64-apple-darwin
rustup target install aarch64-apple-darwin
cargo build --target x86_64-apple-darwin --release
cargo build --target aarch64-apple-darwin --release
lipo -create -output ripunzip-macos \
-arch x86_64 target/x86_64-apple-darwin/release/ripunzip \
-arch arm64 target/aarch64-apple-darwin/release/ripunzip
- uses: actions/upload-artifact@v4
with:
name: ripunzip-${{ runner.os }}
path: ripunzip-*
- name: Check built binary
shell: bash
run: |
./ripunzip-* --version
28 changes: 28 additions & 0 deletions .github/workflows/buildifier.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Check bazel formatting

on:
pull_request:
paths:
- "**.bazel"
- "**.bzl"
branches:
- main
- "rc/*"

permissions:
contents: read

jobs:
check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check bazel formatting
uses: pre-commit/action@646c83fcd040023954eafda54b4db0192ce70507
with:
extra_args: >
buildifier --all-files 2>&1 ||
(
echo -e "In order to format all bazel files, please run:\n bazel run //misc/bazel/buildifier"; exit 1
)
Loading
Loading