Skip to content

Commit 1f3ed1c

Browse files
committed
Merge remote-tracking branch 'upstream/main' into simplify
2 parents 6fca350 + ce441ad commit 1f3ed1c

File tree

1,351 files changed

+18103
-58058
lines changed

Some content is hidden

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

1,351 files changed

+18103
-58058
lines changed

.github/labeler.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,11 @@ documentation:
4343
"QL-for-QL":
4444
- ql/**/*
4545
- .github/workflows/ql-for-ql*
46+
47+
# Since these are all shared files that need to be synced, just pick _one_ copy of each.
48+
"DataFlow Library":
49+
- "java/ql/lib/semmle/code/java/dataflow/internal/DataFlowImpl.qll"
50+
- "java/ql/lib/semmle/code/java/dataflow/internal/DataFlowImplCommon.qll"
51+
- "java/ql/lib/semmle/code/java/dataflow/internal/tainttracking1/TaintTrackingImpl.qll"
52+
- "java/ql/lib/semmle/code/java/dataflow/internal/DataFlowImplConsistency.qll"
53+
- "java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImpl.qll"
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: ATM Check Queries Run
2+
3+
# This check is required, therefore we must run it on all PRs, even if only Markdown has changed.
4+
on:
5+
workflow_dispatch:
6+
7+
jobs:
8+
hello-world:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
- name: foo
13+
run: echo "Hello world"
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: "Swift: Build and test Xcode autobuilder"
2+
3+
on:
4+
pull_request:
5+
paths:
6+
- "swift/xcode-autobuilder/**"
7+
- "misc/bazel/**"
8+
- "*.bazel*"
9+
- .github/workflows/swift-autobuilder.yml
10+
branches:
11+
- main
12+
13+
jobs:
14+
autobuilder:
15+
runs-on: macos-latest
16+
steps:
17+
- uses: actions/checkout@v3
18+
- uses: bazelbuild/setup-bazelisk@v2
19+
- uses: actions/setup-python@v4
20+
with:
21+
python-version-file: 'swift/.python-version'
22+
- name: Build the Xcode autobuilder
23+
run: |
24+
bazel build //swift/xcode-autobuilder
25+
- name: Test the Xcode autobuilder
26+
run: |
27+
bazel test //swift/xcode-autobuilder/tests

.github/workflows/swift-codegen.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ on:
1010
- .github/actions/fetch-codeql/action.yml
1111
branches:
1212
- main
13+
defaults:
14+
run:
15+
working-directory: swift
1316

1417
jobs:
1518
codegen:
@@ -18,7 +21,9 @@ jobs:
1821
- uses: actions/checkout@v3
1922
- uses: ./.github/actions/fetch-codeql
2023
- uses: bazelbuild/setup-bazelisk@v2
21-
- uses: actions/setup-python@v3
24+
- uses: actions/setup-python@v4
25+
with:
26+
python-version-file: 'swift/.python-version'
2227
- uses: pre-commit/[email protected]
2328
name: Check that python code is properly formatted
2429
with:

.github/workflows/swift-integration-tests.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,9 @@ jobs:
2828
- uses: actions/checkout@v3
2929
- uses: ./.github/actions/fetch-codeql
3030
- uses: bazelbuild/setup-bazelisk@v2
31-
- uses: actions/setup-python@v3
31+
- uses: actions/setup-python@v4
32+
with:
33+
python-version-file: 'swift/.python-version'
3234
- name: Build Swift extractor
3335
run: |
3436
bazel run //swift:create-extractor-pack

.github/workflows/swift-qltest.yml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,30 @@ jobs:
2323
- uses: ./.github/actions/fetch-codeql
2424
- name: Check QL formatting
2525
run: find ql "(" -name "*.ql" -or -name "*.qll" ")" -print0 | xargs -0 codeql query format --check-only
26+
qltest-test:
27+
runs-on: ubuntu-latest
28+
steps:
29+
- uses: actions/checkout@v3
30+
- uses: bazelbuild/setup-bazelisk@v2
31+
- uses: actions/setup-python@v4
32+
with:
33+
python-version-file: 'swift/.python-version'
34+
- name: Test qltest.sh
35+
run: |
36+
bazel test //swift/tools/test/qltest
2637
qltest:
2738
runs-on: ${{ matrix.os }}
2839
strategy:
2940
fail-fast: false
3041
matrix:
31-
os : [ubuntu-20.04, macos-latest]
42+
os: [ ubuntu-20.04, macos-latest ]
3243
steps:
3344
- uses: actions/checkout@v3
3445
- uses: ./.github/actions/fetch-codeql
3546
- uses: bazelbuild/setup-bazelisk@v2
47+
- uses: actions/setup-python@v4
48+
with:
49+
python-version-file: 'swift/.python-version'
3650
- name: Build Swift extractor
3751
run: |
3852
bazel run //swift:create-extractor-pack

CODEOWNERS

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@
2020
/java/ql/src/semmle/code/java/dataflow/internal/tainttracking2/TaintTrackingImpl.qll @github/codeql-java @github/codeql-go
2121

2222
# CodeQL tools and associated docs
23-
/docs/codeql-cli/ @github/codeql-cli-reviewers
24-
/docs/codeql-for-visual-studio-code/ @github/codeql-vscode-reviewers
25-
/docs/ql-language-reference/ @github/codeql-frontend-reviewers
23+
/docs/codeql/codeql-cli/ @github/codeql-cli-reviewers
24+
/docs/codeql/codeql-for-visual-studio-code/ @github/codeql-vscode-reviewers
25+
/docs/codeql/ql-language-reference/ @github/codeql-frontend-reviewers
2626
/docs/query-*-style-guide.md @github/codeql-analysis-reviewers
2727

2828
# QL for QL reviewers

change-notes/1.20/analysis-javascript.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@
5252
| Unneeded defensive code | More true positive and fewer false positive results | This query now recognizes additional defensive code patterns. |
5353
| Unsafe dynamic method access | Fewer false positive results | This query no longer flags concatenated strings as unsafe method names. |
5454
| Unused parameter | Fewer false positive results | This query no longer flags parameters with leading underscore. |
55-
| Unused variable, import, function or class | Fewer false positive results | This query now flags fewer variables that are implictly used by JSX elements. It no longer flags variables with a leading underscore and variables in dead code. |
55+
| Unused variable, import, function or class | Fewer false positive results | This query now flags fewer variables that are implicitly used by JSX elements. It no longer flags variables with a leading underscore and variables in dead code. |
5656
| Unvalidated dynamic method call | More true positive results | This query now flags concatenated strings as unvalidated method names in more cases. |
5757
| Useless assignment to property. | Fewer false positive results | This query now treats assignments with complex right-hand sides correctly. |
5858
| Useless conditional | Fewer results | Additional defensive coding patterns are now ignored. |

change-notes/1.23/analysis-cpp.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ The following changes in version 1.23 affect C/C++ analysis in all applications.
1919
| Hard-coded Japanese era start date in call (`cpp/japanese-era/constructor-or-method-with-exact-era-date`) | Deprecated | This query has been deprecated. Use the new combined query Hard-coded Japanese era start date (`cpp/japanese-era/exact-era-date`) instead. |
2020
| Hard-coded Japanese era start date in struct (`cpp/japanese-era/struct-with-exact-era-date`) | Deprecated | This query has been deprecated. Use the new combined query Hard-coded Japanese era start date (`cpp/japanese-era/exact-era-date`) instead. |
2121
| Hard-coded Japanese era start date (`cpp/japanese-era/exact-era-date`) | More correct results | This query now checks for the beginning date of the Reiwa era (1st May 2019). |
22-
| Non-constant format string (`cpp/non-constant-format`) | Fewer false positive results | Fixed false positive results triggrered by mismatching declarations of a formatting function. |
22+
| Non-constant format string (`cpp/non-constant-format`) | Fewer false positive results | Fixed false positive results triggered by mismatching declarations of a formatting function. |
2323
| Sign check of bitwise operation (`cpp/bitwise-sign-check`) | Fewer false positive results | Results involving `>=` or `<=` are no longer reported. |
2424
| Too few arguments to formatting function (`cpp/wrong-number-format-arguments`) | Fewer false positive results | Fixed false positive results triggered by mismatching declarations of a formatting function. |
2525
| Too many arguments to formatting function (`cpp/too-many-format-arguments`) | Fewer false positive results | Fixed false positive results triggered by mismatching declarations of a formatting function. |

change-notes/1.24/analysis-javascript.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@
9191

9292
## Changes to libraries
9393

94-
* The predicates `RegExpTerm.getSuccessor` and `RegExpTerm.getPredecessor` have been changed to reflect textual, not operational, matching order. This only makes a difference in lookbehind assertions, which are operationally matched backwards. Previously, `getSuccessor` would mimick this, so in an assertion `(?<=ab)` the term `b` would be considered the predecessor, not the successor, of `a`. Textually, however, `a` is still matched before `b`, and this is the order we now follow.
94+
* The predicates `RegExpTerm.getSuccessor` and `RegExpTerm.getPredecessor` have been changed to reflect textual, not operational, matching order. This only makes a difference in lookbehind assertions, which are operationally matched backwards. Previously, `getSuccessor` would mimic this, so in an assertion `(?<=ab)` the term `b` would be considered the predecessor, not the successor, of `a`. Textually, however, `a` is still matched before `b`, and this is the order we now follow.
9595
* An extensible model of the `EventEmitter` pattern has been implemented.
9696
* Taint-tracking configurations now interact differently with the `data` flow label, which may affect queries
9797
that combine taint-tracking and flow labels.

0 commit comments

Comments
 (0)