Taus
ce914019c5
Python: Add getMaDRepresentation()
...
This adds a convenient way of getting the Models-as-Data representation
of a particular type of content. This avoids repeating the same
construction over and over in our various summaries. Currently this is
defined for all types of content except the captured variable content,
which to my knowledge doesn't have any representation in Models-as-Data.
2024-10-15 11:50:38 +00:00
Taus
e16405c675
Python: Add test for copy.replace
...
This test demonstrates the current state of affairs: that `copy.replace`
essentially blocks all flow of taint through it, because it has not been
modelled yet.
2024-10-15 11:48:43 +00:00
Taus
417e60a466
Python: Update extractor version
2024-10-15 11:22:54 +00:00
Taus
d905010aa8
Python: Add change note
2024-10-15 11:22:34 +00:00
Taus
8630f57710
Python: Add up-/downgrade scripts
...
Adds up- and downgrade scripts for the support for type parameter
defaults.
In the upgrade direction we do nothing, matching the behaviour of
`getDefault` not having a result for old databases.
In the downgrade direction, we explicitly remove the relevant child (via
the `py_exprs` database relation) for `TypeVar`, `TypeVarTuple`, and
`ParamSpec` parameters.
2024-10-15 11:22:33 +00:00
Taus
819b3d77ab
Python: Update test expectations
...
Note that this still includes the somewhat puzzling parsing of
`Spam[**P2]` as an exponentiation with an empty left hand side. When we
fix that bug, we should also update this test to contain actually valid
syntax.
2024-10-15 11:22:33 +00:00
Taus
182a192cc0
Python: Regenerate dbscheme/AST
2024-10-15 11:22:33 +00:00
Taus
36d89745f9
Python: Fix dbscheme/AST autogeneration
...
There was an errant `ql` in the relevant paths, a leftover from the move
from the internal repo. Also, we can no longer rely on an intree version
of the CodeQL CLI, so from now on we'll just assume it's present in the
path. (On Codespaces, `gh codeql` is a decent replacement, especially if
using the `install-stub` functionality.
2024-10-15 11:22:32 +00:00
Taus
2af0d78435
Python: Add default field to the relevant AST nodes
2024-10-15 11:22:32 +00:00
Taus
55ee3eb36b
Python: Add TSG support for type defaults
2024-10-15 11:22:31 +00:00
Taus
6545bfffa7
Python: Regenerate parser files
...
Two new files -- alloc.h and array.h -- suddenly appeared. Presumably
they are used by the somewhat newer version of tree-sitter. To be safe,
I included them in this commit.
2024-10-15 11:22:31 +00:00
Taus
882249ef82
Python: Add grammar support for type defaults
...
Also fixes an oversight in the grammar: starred expressions should be
allowed inside the subscript of an `Index` expression.
2024-10-15 11:22:30 +00:00
Taus
1ced5b44d7
Python: Add test for type parameter defaults
2024-10-15 11:22:30 +00:00
Arthur Baars
9ba8045837
Fix typos in changelog entries
2024-10-15 11:06:20 +00:00
Rasmus Lerchedahl Petersen
195b70aca6
python: Add test for functional-like programming
...
This can also serve for a place to add tests for
constructs like threading.Thread, mulitprocess.Process, concurrent.futures.ThreadPoolExecutor, and concurrent.futures.ProcessPoolExecutor.
2024-10-15 12:54:30 +02:00
github-actions[bot]
255f55cf1a
Release preparation for version 2.19.2
2024-10-15 10:29:25 +00:00
yoff
da5e9ac18c
python: more adjustments...
2024-10-14 14:54:33 +00:00
yoff
9d8d7ab237
python: update extractor expectations
2024-10-14 14:14:40 +00:00
Rasmus Lerchedahl Petersen
3402a729d0
Python: adjust test expectations for extractor test
2024-10-14 12:36:56 +02:00
yoff
8f681154ce
Merge pull request #17683 from yoff/python/flip-default-for-stdlib-extraction
...
Python: Flip default for stdlib extraction
2024-10-11 18:34:44 +02:00
Rasmus Lerchedahl Petersen
5650694313
Python: update tests
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
e2eb08b543
Python: improve messaging
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
22588c9f85
Python: update ectractor version
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
c013d4a59c
Python: update test expectations
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
4a291147e0
Python: only look for the py2 stdlib if we extract std lib
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
bb78c2a67e
Python: update test expectations
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
e91efaa92e
python: do not extract stdlib by default
2024-10-11 15:36:44 +02:00
Rasmus Lerchedahl Petersen
6bd46148e7
Python: add change note
2024-10-09 16:27:52 +02:00
Rasmus Lerchedahl Petersen
0ac4a10345
Python: model that finditer returns iterable of re.Match objects
2024-10-09 12:42:38 +02:00
Rasmus Lerchedahl Petersen
494b8bd7e1
python: model string property of resultof finditer
2024-10-09 12:40:47 +02:00
Rasmus Lerchedahl Petersen
073189ed6b
python: add test for re.Match objects returned from finditer
2024-10-09 12:32:51 +02:00
yoff
6ffdf576d0
Merge pull request #17708 from yoff/python/ignore-extractor-test-output
...
Python: ignore some extractor test output
2024-10-09 12:31:42 +02:00
yoff
0b0e8a4bf5
Update python/extractor/tests/parser/.gitignore
...
As suggested by @tausbn
2024-10-09 12:22:17 +02:00
Rasmus Lerchedahl Petersen
ad630bc6ff
Python: ignore some extractor test output
...
If you test the extractor locally, you want to ignore these files.
2024-10-09 11:34:58 +02:00
yoff
1f1b1b7aab
Merge pull request #17653 from yoff/python/typetracking-through-comprehensions
2024-10-08 19:39:21 +02:00
Taus
92bca9c268
Python: Update CORS query tags and change note
...
Makes it more clear that the query is experimental.
2024-10-08 15:44:29 +00:00
Rasmus Lerchedahl Petersen
6f5b949ec8
Python: adjust test expectations
...
note that we do retain precision in
`test_dict_from_keyword()`
2024-10-04 15:30:02 +02:00
Rasmus Lerchedahl Petersen
a4c1a622b7
Merge branch 'main' of https://github.com/github/codeql into python/add-comprehension-capture-flow
2024-10-04 14:53:03 +02:00
yoff
306b087b6e
Merge pull request #17566 from yoff/python/dict-can-take-multiple-args
...
Python: All dict constructor args are relevant
2024-10-04 14:30:10 +02:00
Rasmus Lerchedahl Petersen
977767b0d6
Python: comment around dictionary comprehensions
2024-10-04 14:14:30 +02:00
Rasmus Lerchedahl Petersen
201c4aad13
Python: add comment
2024-10-04 14:09:33 +02:00
yoff
c064a9e092
Update python/ql/lib/semmle/python/frameworks/Stdlib.qll
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2024-10-04 14:01:18 +02:00
Tom Hvitved
b3b9406e45
Python: Update test
2024-10-04 08:35:32 +02:00
Rasmus Lerchedahl Petersen
777279dc29
Python: MaD test expectations
2024-10-03 13:29:56 +02:00
Rasmus Lerchedahl Petersen
768d866e72
python: model urllib.parse.parse_qs
2024-10-03 12:20:40 +02:00
Rasmus Lerchedahl Petersen
0462809edc
Python: add taint test for urllib
2024-10-03 12:20:38 +02:00
Rasmus Lerchedahl Petersen
5c68bad2f1
Python: add comments
2024-10-03 12:17:59 +02:00
yoff
56d0affe38
Update python/ql/lib/semmle/python/frameworks/Stdlib.model.yml
...
Co-authored-by: Rasmus Wriedt Larsen <rasmuswriedtlarsen@gmail.com >
2024-10-03 10:18:25 +02:00
Rasmus Lerchedahl Petersen
6d486f9931
Python: move change note to the right place
2024-10-03 10:15:55 +02:00
Rasmus Lerchedahl Petersen
9e808c17af
Python: add change note
2024-10-03 10:09:59 +02:00