Skip to content

Commit ad35c01

Browse files
committed
Python: purge old references
1 parent 0ab4e3e commit ad35c01

File tree

3 files changed

+6
-41
lines changed

3 files changed

+6
-41
lines changed

.vscode/settings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
{
2-
"omnisharp.autoStart": false
2+
"omnisharp.autoStart": false,
3+
"restructuredtext.confPath": "${workspaceFolder}/docs/codeql"
34
}

docs/codeql/codeql-language-guides/codeql-library-for-python.rst

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ The CodeQL library for Python incorporates a large number of classes. Each class
2020

2121
- **Syntactic** - classes that represent entities in the Python source code.
2222
- **Control flow** - classes that represent entities from the control flow graphs.
23-
- **Type inference** - classes that represent the inferred values and types of entities in the Python source code.
2423

2524
Syntactic classes
2625
-----------------
@@ -290,40 +289,6 @@ The classes in the control-flow part of the library are:
290289
- `BasicBlock <https://codeql.github.com/codeql-standard-libraries/python/semmle/python/Flow.qll/type.Flow$BasicBlock.html>`__ – A non branching list of control-flow nodes.
291290

292291

293-
Type-inference classes
294-
----------------------
295-
296-
The CodeQL library for Python also supplies some classes for accessing the inferred types of values. The classes ``Value`` and ``ClassValue`` allow you to query the possible classes that an expression may have at runtime.
297-
298-
Example
299-
^^^^^^^
300-
301-
For example, which ``ClassValue``\ s are iterable can be determined using the query:
302-
303-
**Find iterable "ClassValue"s**
304-
305-
.. code-block:: ql
306-
307-
import python
308-
309-
from ClassValue cls
310-
where cls.hasAttribute("__iter__")
311-
select cls
312-
313-
➤ `See this in the query console on LGTM.com <https://lgtm.com/query/5151030165280978402/>`__ This query returns a list of classes for the projects analyzed. If you want to include the results for ``builtin`` classes, which do not have any Python source code, show the non-source results. For more information, see `builtin classes <https://docs.python.org/3/library/stdtypes.html>`__ in the Python documentation.
314-
315-
Summary
316-
^^^^^^^
317-
318-
- `Value <https://codeql.github.com/codeql-standard-libraries/python/semmle/python/objects/ObjectAPI.qll/type.ObjectAPI$Value.html>`__
319-
320-
- ``ClassValue``
321-
- ``CallableValue``
322-
- ``ModuleValue``
323-
324-
For more information about these classes, see ":doc:`Pointer analysis and type inference in Python <pointer-analysis-and-type-inference-in-python>`."
325-
326-
327292
Further reading
328293
---------------
329294

docs/codeql/writing-codeql-queries/about-data-flow-analysis.rst

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
About data flow analysis
44
########################
55

6-
Data flow analysis is used to compute the possible values that a variable can hold at various points in a program, determining how those values propagate through the program and where they are used.
6+
Data flow analysis is used to compute the possible values that a variable can hold at various points in a program, determining how those values propagate through the program and where they are used.
77

88
Overview
99
********
@@ -20,13 +20,13 @@ See the following tutorials for more information about analyzing data flow in sp
2020
- ":ref:`Analyzing data flow in C# <analyzing-data-flow-in-csharp>`"
2121
- ":ref:`Analyzing data flow in Java <analyzing-data-flow-in-java>`"
2222
- ":ref:`Analyzing data flow in JavaScript/TypeScript <analyzing-data-flow-in-javascript-and-typescript>`"
23-
- ":ref:`Analyzing data flow and tracking tainted data in Python <analyzing-data-flow-and-tracking-tainted-data-in-python>`"
23+
- ":ref:`Analyzing data flow in Python <analyzing-data-flow-in-python>`"
2424

2525
.. pull-quote::
2626

2727
Note
2828

29-
Data flow analysis is used extensively in path queries. To learn more about path queries, see ":doc:`Creating path queries <creating-path-queries>`."
29+
Data flow analysis is used extensively in path queries. To learn more about path queries, see ":doc:`Creating path queries <creating-path-queries>`."
3030

3131
.. _data-flow-graph:
3232

@@ -78,11 +78,10 @@ The normal data flow libraries are used to analyze the information flow in which
7878
For example, if you are tracking an insecure object ``x`` (which might be some untrusted or potentially malicious data), a step in the program may 'change' its value. So, in a simple process such as ``y = x + 1``, a normal data flow analysis will highlight the use of ``x``, but not ``y``.
7979
However, since ``y`` is derived from ``x``, it is influenced by the untrusted or 'tainted' information, and therefore it is also tainted. Analyzing the flow of the taint from ``x`` to ``y`` is known as taint tracking.
8080

81-
In QL, taint tracking extends data flow analysis by including steps in which the data values are not necessarily preserved, but the potentially insecure object is still propagated.
81+
In QL, taint tracking extends data flow analysis by including steps in which the data values are not necessarily preserved, but the potentially insecure object is still propagated.
8282
These flow steps are modeled in the taint-tracking library using predicates that hold if taint is propagated between nodes.
8383

8484
Further reading
8585
***************
8686

8787
- ":ref:`Exploring data flow with path queries <exploring-data-flow-with-path-queries>`"
88-

0 commit comments

Comments
 (0)