|
1 | 1 | # Pip Detection |
| 2 | + |
2 | 3 | ## Requirements |
| 4 | + |
3 | 5 | Pip detection depends on the following to successfully run: |
4 | 6 |
|
5 | | -- Python 2 or Python 3. |
6 | | -- Internet connection. |
7 | | -- One or more <em>setup.py</em> or *requirements.txt* files. |
| 7 | +- Python 2 or Python 3 |
| 8 | +- Internet connection |
| 9 | +- One or more `setup.py` or `requirements.txt` files |
8 | 10 |
|
9 | 11 | ## Detection strategy |
10 | | -Pip detection is performed by running the following code snippet on every <em>setup.py</em>: |
| 12 | + |
| 13 | +Pip detection is performed by running the following code snippet on every *setup.py*: |
11 | 14 |
|
12 | 15 | ```python |
13 | 16 | import distutils.core; |
14 | 17 | setup = distutils.core.run_setup({setup.py}); |
15 | 18 | print(setup.install_requires); |
16 | 19 | ``` |
17 | 20 |
|
18 | | -The code above allows Pip detection to detect any runtime dependendies. |
| 21 | +The code above allows Pip detection to detect any runtime dependencies. |
19 | 22 |
|
20 | | -*requirements.txt* files are parsed; a Git component is created for every *git+* url. |
| 23 | +`requirements.txt` files are parsed; a Git component is created for every `git+` url. |
21 | 24 |
|
22 | | -For every top level component, Pip detection makes http calls to Pip in order to determine latest version available, as well as to resolve the dependency tree by parsing the *METADATA* file on a given release's *bdist_wheel* or *bdist_egg*. |
| 25 | +For every top level component, Pip detection makes http calls to Pip in order to determine latest version available, as well as to resolve the dependency tree by parsing the `METADATA` file on a given release's `bdist_wheel` or `bdist_egg`. |
23 | 26 |
|
24 | 27 | Full dependency graph generation is supported. |
25 | 28 |
|
26 | 29 | ## Known limitations |
27 | | -*Dev dependency* tagging is not supported. |
28 | 30 |
|
29 | | -Pip detection will not run if *python* is unavailable. |
| 31 | +Dev dependency tagging is not supported. |
| 32 | + |
| 33 | +Pip detection will not run if `python` is unavailable. |
30 | 34 |
|
31 | | -If no *bdist_wheel* or *bdist_egg* are available for a given component, dependencies will not be fetched. |
| 35 | +If no `bdist_wheel` or `bdist_egg` are available for a given component, dependencies will not be fetched. |
32 | 36 |
|
33 | | -If no internet connection or a component cannot be found in Pypi, said component and its dependencies will be skipped. |
| 37 | +If no internet connection or a component cannot be found in Pypi, said component and its dependencies will be skipped. |
0 commit comments