Skip to content

Commit 239b6d8

Browse files
committed
Merge branch 'main' into redsun82/kotlin
2 parents 52a015f + 5c74beb commit 239b6d8

File tree

357 files changed

+4614
-4204
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

357 files changed

+4614
-4204
lines changed

.bazelrc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@ build:linux --cxxopt=-std=c++20
1414
build:macos --cxxopt=-std=c++20 --cpu=darwin_x86_64
1515
build:windows --cxxopt=/std:c++20 --cxxopt=/Zc:preprocessor
1616

17+
# this requires developer mode, but is required to have pack installer functioning
18+
startup --windows_enable_symlinks
19+
common --enable_runfiles
20+
1721
common --registry=file:///%workspace%/misc/bazel/registry
1822
common --registry=https://bcr.bazel.build
1923

.github/workflows/buildifier.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,5 @@ jobs:
2424
extra_args: >
2525
buildifier --all-files 2>&1 ||
2626
(
27-
echo -e "In order to format all bazel files, please run:\n bazel run //:buildifier"; exit 1
27+
echo -e "In order to format all bazel files, please run:\n bazel run //misc/bazel:buildifier"; exit 1
2828
)

.lfsconfig

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
[lfs]
2+
# codeql is publicly forked by many users, and we don't want any LFS file polluting their working
3+
# copies. We therefore exclude everything by default.
4+
# For files required by bazel builds, use rules in `misc/bazel/lfs.bzl` to download them on demand.
5+
fetchinclude = /nothing

.pre-commit-config.yaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,14 @@ repos:
2626
name: Format bazel files
2727
files: \.(bazel|bzl)
2828
language: system
29-
entry: bazel run //:buildifier
29+
entry: bazel run //misc/bazel:buildifier
30+
pass_filenames: false
31+
32+
- id: go-gen
33+
name: Check checked in generated files in go
34+
files: ^go/.*
35+
language: system
36+
entry: bazel run //go:gen
3037
pass_filenames: false
3138

3239
- id: codeql-format

BUILD.bazel

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +0,0 @@
1-
load("@buildifier_prebuilt//:rules.bzl", "buildifier")
2-
3-
buildifier(
4-
name = "buildifier",
5-
exclude_patterns = [
6-
"./.git/*",
7-
],
8-
lint_mode = "fix",
9-
)

MODULE.bazel

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ local_path_override(
1313

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

16-
bazel_dep(name = "platforms", version = "0.0.8")
16+
bazel_dep(name = "platforms", version = "0.0.9")
17+
bazel_dep(name = "rules_go", version = "0.47.0")
1718
bazel_dep(name = "rules_pkg", version = "0.10.1")
1819
bazel_dep(name = "rules_nodejs", version = "6.0.3")
1920
bazel_dep(name = "rules_python", version = "0.31.0")
@@ -22,6 +23,7 @@ bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "absl")
2223
bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "json")
2324
bazel_dep(name = "fmt", version = "10.0.0")
2425
bazel_dep(name = "rules_kotlin", version = "1.9.4-codeql.1")
26+
bazel_dep(name = "gazelle", version = "0.36.0")
2527

2628
bazel_dep(name = "buildifier_prebuilt", version = "6.4.0", dev_dependency = True)
2729

@@ -98,6 +100,9 @@ use_repo(
98100
"kotlin-stdlib-2.0.0-RC1",
99101
)
100102

103+
go_sdk = use_extension("@rules_go//go:extensions.bzl", "go_sdk")
104+
go_sdk.download(version = "1.22.2")
105+
101106
register_toolchains(
102107
"@nodejs_toolchains//:all",
103108
)

cpp/ql/lib/CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,20 @@
1+
## 0.13.0
2+
3+
### Breaking Changes
4+
5+
* Deleted the deprecated `GlobalValueNumberingImpl.qll` implementation.
6+
7+
### New Features
8+
9+
* Models-as-Data support has been added for C/C++. This feature allows flow sources, sinks and summaries to be expressed in compact strings as an alternative to modelling each source / sink / summary with explicit QL. See `dataflow/ExternalFlow.qll` for documentation and specification of the model format, and `models/implementations/ZMQ.qll` for a simple example of models. Importing models from `.yml` is not yet supported.
10+
11+
### Minor Analysis Improvements
12+
13+
* Source models have been added for the standard library function `getc` (and variations).
14+
* Source, sink and flow models for the ZeroMQ (ZMQ) networking library have been added.
15+
* Parameters of functions without definitions now have `ParameterNode`s.
16+
* The alias analysis used internally by various libraries has been improved to answer alias questions more conservatively. As a result, some queries may report fewer false positives.
17+
118
## 0.12.11
219

320
No user-facing changes.

cpp/ql/lib/change-notes/2024-04-05-sound-ir.md

Lines changed: 0 additions & 4 deletions
This file was deleted.

cpp/ql/lib/change-notes/2024-04-18-param-nodes.md

Lines changed: 0 additions & 4 deletions
This file was deleted.

cpp/ql/lib/change-notes/2024-10-04-getc.md

Lines changed: 0 additions & 4 deletions
This file was deleted.

0 commit comments

Comments
 (0)