Andrew Eisenberg
66c1629974
Merge pull request #7285 from github/post-release-prep-2.7.3-ddd4ccbb
...
Post-release preparation 2.7.3
2021-12-10 09:59:45 -08:00
Tom Hvitved
657cd89286
Merge pull request #7347 from hvitved/cfg/more-consistency-tests
...
Shared CFG: Add two more consistency queries
2021-12-10 10:50:39 +01:00
Arthur Baars
13f7fd88f1
Merge pull request #7283 from aibaars/ruby-pattern-matching-cfg
...
Ruby: pattern matching: CFG
2021-12-10 10:24:38 +01:00
Tom Hvitved
70f76d06c7
Shared CFG: Add two more consistency queries
2021-12-10 09:56:50 +01:00
Arthur Baars
fd4915a564
Ruby: CFG: add default implementation for getAnInnerCompatibleCompletion
2021-12-09 15:23:26 +01:00
Arthur Baars
9d288c90a5
Ruby: CFG: better return type for getAMatchingSuccessorType
2021-12-09 15:23:26 +01:00
Arthur Baars
a7b3f1370f
Ruby: CFG: add test case
2021-12-09 15:23:26 +01:00
Arthur Baars
d0aa307bd3
Ruby: CFG: fix multiple successors failure for default parameters
2021-12-09 15:23:26 +01:00
Tom Hvitved
b887165005
Ruby: Code review suggestions
2021-12-09 15:23:26 +01:00
Arthur Baars
3689481c18
Ruby: CFG: make Completion.isValidFor work for getSugared AST nodes
2021-12-09 15:23:26 +01:00
Arthur Baars
660e52f2bf
Ruby: CFG: make VariableReferencePattern a PreOrder node
2021-12-09 15:23:26 +01:00
Arthur Baars
e9e3ef3ea2
Ruby: 'self' is not really a local variable
2021-12-09 15:23:26 +01:00
Arthur Baars
799c945299
Ruby: fix CFG for AsPattern
2021-12-09 15:23:26 +01:00
Arthur Baars
95f8f85aa2
Ruby: fix allowed completions for desugared CasePatterns
2021-12-09 15:23:26 +01:00
Arthur Baars
aacba0b522
Ruby: CFG: add test cases for pattern matching
2021-12-09 15:23:26 +01:00
Arthur Baars
513fe09dbb
Treat class names in array/find/hash patterns as sub-patterns
2021-12-09 15:23:26 +01:00
Arthur Baars
d17c055139
CFG
2021-12-09 15:23:25 +01:00
Arthur Baars
44a615839d
Add test case with rest variable and no prefix elements
2021-12-09 15:23:25 +01:00
Arthur Baars
f08eb8e616
Revert "Temporarily allow CFG inconsistencies"
...
This reverts commit dca1e34cd8 .
2021-12-09 15:23:25 +01:00
Tom Hvitved
cbc96dba8a
Shared CFG: Add another consistency test
...
Finds nodes with multiple normal successors, where one is the special simple
successor. For example, this would flag a node that has both a "simple" and
a "true" successor.
2021-12-09 15:08:19 +01:00
Tom Hvitved
9ffa236c51
Merge pull request #7288 from hvitved/cfg/enclosing-scope
...
Shared CFG: Include CFG scope in `TElementNode`
2021-12-09 13:39:48 +01:00
Tom Hvitved
b49ca6a24c
Merge pull request #7335 from hvitved/ruby/dataflow/hide-desugared-nodes
...
Ruby: Hide desugared nodes in data-flow paths
2021-12-08 17:39:48 +01:00
Anders Schack-Mulligen
38d0bb4a60
Merge pull request #7260 from hvitved/dataflow/argument-parameter-matching
...
Data flow: Introduce `ParameterPosition` and `ArgumentPosition`
2021-12-08 12:49:08 +01:00
Alex Ford
ede1503cc6
Merge pull request #7328 from github/ruby/customizations
...
Ruby: add `Customizations.qll` file
2021-12-08 10:54:23 +00:00
Tom Hvitved
283173ad02
Address review comments
2021-12-08 11:26:44 +01:00
Tom Hvitved
5735bb698d
Ruby: Hide desugared nodes in data-flow paths
2021-12-08 09:00:16 +01:00
Alex Ford
ea7063f3c6
Ruby: make Customizations import private
2021-12-07 19:43:08 +00:00
Tom Hvitved
490872173a
Data flow: Sync files
2021-12-07 20:29:18 +01:00
Alex Ford
bf0ecded04
Merge pull request #7326 from github/ginsbach/FixInstanceof
...
fix dependency cycle by removing superfluous classes
2021-12-07 17:05:26 +00:00
Alex Ford
f85a47d41f
Ruby: add Customizations.qll file
2021-12-07 15:37:04 +00:00
Tom Hvitved
a2dc505c26
Merge pull request #7317 from hvitved/ruby/param-node-refactor
...
Ruby: Restructure `ParameterNode(Impl)`
2021-12-07 16:29:49 +01:00
Tom Hvitved
5183290439
Merge pull request #7315 from hvitved/ruby/inline-flow-test
...
Ruby: Add `InlineFlowTest.qll`
2021-12-07 16:29:34 +01:00
Philip Ginsbach
b2c1b55c0c
rephrase extensions as aliases
2021-12-07 13:09:25 +00:00
Tom Hvitved
b17a93eaad
Merge pull request #7316 from hvitved/ruby/is-private-join
...
Ruby: Tweak `Method::isPrivate` join-orders
2021-12-07 13:58:19 +01:00
Tom Hvitved
4d797d6b3d
Merge pull request #7324 from github/hmac/empty-else-cfg
...
Ruby: Include empty StmtSequences in CFG
2021-12-07 13:19:15 +01:00
Philip Ginsbach
da43984ba4
fix dependency cycle by removing superfluous classes
2021-12-07 11:59:04 +00:00
Erik Krogh Kristensen
3c59aa319e
Merge pull request #7245 from erik-krogh/explicit-this-all-the-places
...
All langs: apply the explicit-this patch to all remaining code
2021-12-07 10:40:26 +01:00
Harry Maclean
6f42153eac
Ruby: Include empty StmtSequences in CFG
...
Empty StmtSequences appear, for example, in the `else` branch of `if`
statements like the following:
foo
if cond
bar
else
end
baz
Before this change, the CFG for this code would look like this:
foo
│
│
▼
cond
│
true │
▼
bar
│
│
▼
if
│
│
▼
baz
i.e. there is linear flow through the condition, the `then` branch, and
out of the if. This doesn't account for the possibility that the
condition is false and `bar` is not executed. After this change, the CFG
looks like this:
foo
│
│
▼
cond
│ │
true │ │ false
▼ │
bar │
│ │
│ │
▼ ▼
if
│
│
▼
baz
i.e. we correctly account for the `false` condition.
2021-12-07 16:01:50 +13:00
Tom Hvitved
5dbbb86d46
Ruby: Restructure ParameterNode(Impl)
2021-12-06 13:43:19 +01:00
Tom Hvitved
728e3abee5
Ruby: Tweak Method::isPrivate join-orders
2021-12-06 13:36:48 +01:00
Tom Hvitved
36569f997f
Ruby: Add InlineFlowTest.qll
2021-12-06 13:35:07 +01:00
Alex Ford
6adfea2365
Merge pull request #7163 from github/ruby/file-reader-extend
...
Ruby: Extend `FileSystemReadAccess` to include more potential sources of input from the filesystem
2021-12-05 23:32:43 +00:00
Arthur Baars
0805daaa56
Update ruby/ql/lib/codeql/ruby/ast/Pattern.qll
...
Add missing backticks
2021-12-03 18:44:21 +01:00
Arthur Baars
51998294ad
Ruby: add AST classes for parenthesized patterns
2021-12-03 18:13:53 +01:00
Arthur Baars
205233b42f
Add trivial upgrade
2021-12-03 17:04:00 +01:00
Arthur Baars
3e1ebb954f
Ruby: update generated dbscheme and library
2021-12-03 17:02:08 +01:00
Arthur Baars
0cec59e043
Ruby: update tree-sitter grammar
2021-12-03 17:01:12 +01:00
Nick Rolfe
5a2ef8321c
Merge pull request #7120 from github/nickrolfe/regexp_g_anchor
...
Ruby/Python: parse anchors in regexes as special characters
2021-12-03 15:24:38 +00:00
Arthur Baars
802faf1197
Merge pull request #7296 from intrigus-lgtm/patch-7
...
Fix QL Doc typo.
2021-12-03 11:54:22 +01:00
Tom Hvitved
d9704d7b39
Ruby: Adapt to shared CFG changes
2021-12-03 09:37:41 +01:00