Skip to content

Commit 59098be

Browse files
authored
Merge branch 'main' into change/adjust-extracted-files-diagnostics
2 parents b26fef8 + 1fba345 commit 59098be

File tree

598 files changed

+205821
-23090
lines changed

Some content is hidden

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

598 files changed

+205821
-23090
lines changed

.gitattributes

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,3 +71,6 @@ go/extractor/opencsv/CSVReader.java -text
7171
# `javascript/ql/experimental/adaptivethreatmodeling/test/update_endpoint_test_files.py`.
7272
javascript/ql/experimental/adaptivethreatmodeling/test/endpoint_large_scale/autogenerated/**/*.js linguist-generated=true -merge
7373
javascript/ql/experimental/adaptivethreatmodeling/test/endpoint_large_scale/autogenerated/**/*.ts linguist-generated=true -merge
74+
75+
# Auto-generated modeling for Python
76+
python/ql/lib/semmle/python/frameworks/data/internal/subclass-capture/*.yml linguist-generated=true

.github/workflows/mad_modelDiff.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ on:
1212
- main
1313
paths:
1414
- "java/ql/src/utils/modelgenerator/**/*.*"
15+
- "misc/scripts/models-as-data/*.*"
1516
- ".github/workflows/mad_modelDiff.yml"
1617

1718
permissions:
@@ -61,8 +62,9 @@ jobs:
6162
DATABASE=$2
6263
cd codeql-$QL_VARIANT
6364
SHORTNAME=`basename $DATABASE`
64-
python java/ql/src/utils/modelgenerator/GenerateFlowModel.py --with-summaries --with-sinks $DATABASE ${SHORTNAME}.temp.model.yml
65-
mv java/ql/lib/ext/generated/${SHORTNAME}.temp.model.yml $MODELS/${SHORTNAME}Generated_${QL_VARIANT}.model.yml
65+
python java/ql/src/utils/modelgenerator/GenerateFlowModel.py --with-summaries --with-sinks $DATABASE $SHORTNAME/$QL_VARIANT
66+
mkdir -p $MODELS/$SHORTNAME
67+
mv java/ql/lib/ext/generated/$SHORTNAME/$QL_VARIANT $MODELS/$SHORTNAME
6668
cd ..
6769
}
6870
@@ -85,16 +87,16 @@ jobs:
8587
set -x
8688
MODELS=`pwd`/tmp-models
8789
ls -1 tmp-models/
88-
for m in $MODELS/*_main.model.yml ; do
90+
for m in $MODELS/*/main/*.model.yml ; do
8991
t="${m/main/"pr"}"
9092
basename=`basename $m`
91-
name="diff_${basename/_main.model.yml/""}"
93+
name="diff_${basename/.model.yml/""}"
9294
(diff -w -u $m $t | diff2html -i stdin -F $MODELS/$name.html) || true
9395
done
9496
- uses: actions/upload-artifact@v3
9597
with:
9698
name: models
97-
path: tmp-models/*.model.yml
99+
path: tmp-models/**/**/*.model.yml
98100
retention-days: 20
99101
- uses: actions/upload-artifact@v3
100102
with:

cpp/downgrades/cf72c8898d19eb1b3374432cf79d8276cb07ad43/upgrade.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
description: Support C++17 if and switch initializers
22
compatibility: partial
3+
constexpr_if_initialization.rel: delete
34
if_initialization.rel: delete
45
switch_initialization.rel: delete
56
exprparents.rel: run exprparents.qlo

cpp/ql/lib/CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,24 @@
1+
## 0.12.3
2+
3+
### Deprecated APIs
4+
5+
* The `isUserInput`, `userInputArgument`, and `userInputReturned` predicates from `SecurityOptions` have been deprecated. Use `FlowSource` instead.
6+
7+
### New Features
8+
9+
* `UserDefineLiteral` and `DeductionGuide` classes have been added, representing C++11 user defined literals and C++17 deduction guides.
10+
11+
### Minor Analysis Improvements
12+
13+
* Changed the output of `Node.toString` to better reflect how many indirections a given dataflow node has.
14+
* Added a new predicate `Node.asDefinition` on `DataFlow::Node`s for selecting the dataflow node corresponding to a particular definition.
15+
* The deprecated `DefaultTaintTracking` library has been removed.
16+
* The `Guards` library has been replaced with the API-compatible `IRGuards` implementation, which has better precision in some cases.
17+
18+
### Bug Fixes
19+
20+
* Under certain circumstances a function declaration that is not also a definition could be associated with a `Function` that did not have the definition as a `FunctionDeclarationEntry`. This is now fixed when only one definition exists, and a unique `Function` will exist that has both the declaration and the definition as a `FunctionDeclarationEntry`.
21+
122
## 0.12.2
223

324
No user-facing changes.

cpp/ql/lib/change-notes/2022-11-21-ir-guards-replacement.md

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

cpp/ql/lib/change-notes/2023-11-25-default-taint-tracking-removal.md

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

cpp/ql/lib/change-notes/2023-11-30-as-definition.md

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

cpp/ql/lib/change-notes/2023-12-08-ususerinput-deprecation.md

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

cpp/ql/lib/change-notes/2023-12-14-dataflow-tostring.md

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

cpp/ql/lib/change-notes/2023-12-22-unique-function.md

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

0 commit comments

Comments
 (0)