requirements-detector 1.2.1__py3-none-any.whl → 1.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,6 +8,7 @@ we don't expect relative file paths to exist, for example. Note that the parsing
8
8
  is also intentionally more lenient - it is not our job to validate the requirements
9
9
  list.
10
10
  """
11
+
11
12
  import os
12
13
  import re
13
14
  from pathlib import Path
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: requirements-detector
3
- Version: 1.2.1
3
+ Version: 1.3.0
4
4
  Summary: Python tool to find and list requirements of a Python project
5
5
  Home-page: https://github.com/landscapeio/requirements-detector
6
6
  License: MIT
@@ -19,13 +19,9 @@ Classifier: Programming Language :: Python :: 3.8
19
19
  Classifier: Programming Language :: Python :: 3.9
20
20
  Classifier: Programming Language :: Python :: 3.10
21
21
  Classifier: Programming Language :: Python :: 3.11
22
- Classifier: Programming Language :: Python :: 3.10
23
- Classifier: Programming Language :: Python :: 3.11
24
- Classifier: Programming Language :: Python :: 3.7
25
- Classifier: Programming Language :: Python :: 3.8
26
- Classifier: Programming Language :: Python :: 3.9
22
+ Classifier: Programming Language :: Python :: 3.12
27
23
  Classifier: Topic :: Software Development :: Quality Assurance
28
- Requires-Dist: astroid (>=2.0,<3.0)
24
+ Requires-Dist: astroid (>=2.0)
29
25
  Requires-Dist: packaging (>=21.3)
30
26
  Requires-Dist: semver (>=3.0.0,<4.0.0)
31
27
  Requires-Dist: toml (>=0.10.2,<0.11.0)
@@ -1,5 +1,3 @@
1
- LICENSE,sha256=548oOCrCNqQty8Fsqqry522lXdxnBTqLyzqr38ct-cw,1040
2
- README.md,sha256=KLAWCcKJil6_oQnBX1Q7d6RsFVtFB3FUsVXl8PB9RCA,2577
3
1
  requirements_detector/__init__.py,sha256=XbBRnMPYhG2Eq2IhZQAzOA9d-9OTYMXJwRiaZhLFAEY,269
4
2
  requirements_detector/__main__.py,sha256=U6nHQrMwd11auXYgQsT0wqqqKyyGKXxHZ_SDaaOi878,59
5
3
  requirements_detector/detect.py,sha256=2RP-kNQe6hEXfLSknWuHP2BOo7nwe9Bhpb8QSmaLH48,5880
@@ -15,10 +13,10 @@ requirements_detector/poetry_semver/version.py,sha256=ErVXM8tgotWJ74G7kmh5TzJcVQ
15
13
  requirements_detector/poetry_semver/version_constraint.py,sha256=VNpYqS7JhEW1P_QiJVJ0Os4oK2M9z4kpGRwaHWW4wOw,870
16
14
  requirements_detector/poetry_semver/version_range.py,sha256=dm7mgZL5H0Xn0vKG2YuM8ScBn2qARTBeHaJUYNk2kEo,13179
17
15
  requirements_detector/poetry_semver/version_union.py,sha256=MmYBSED7hyb2H5sxuL0i6feWTc6x1tYVrVvGraon1g0,7931
18
- requirements_detector/requirement.py,sha256=XuKspLsLY_sZOVKupXSjGFMxV1u3NHaTgjb-kRXbzFg,5548
16
+ requirements_detector/requirement.py,sha256=9440kErBKTbvXTNrdQ5Sf_gnUKqPRURC63XQP1x7CPo,5549
19
17
  requirements_detector/run.py,sha256=8AjUalMAmCgK4HAsswSoxVG4N_uhYrvGMhZnfQUf8X8,861
20
- requirements_detector-1.2.1.dist-info/METADATA,sha256=KMSfN8j5dDFCkmjILkL8DaRxkwGu4M0cXGG2yOOWGvQ,3938
21
- requirements_detector-1.2.1.dist-info/WHEEL,sha256=vVCvjcmxuUltf8cYhJ0sJMRDLr1XsPuxEId8YDzbyCY,88
22
- requirements_detector-1.2.1.dist-info/LICENSE,sha256=548oOCrCNqQty8Fsqqry522lXdxnBTqLyzqr38ct-cw,1040
23
- requirements_detector-1.2.1.dist-info/entry_points.txt,sha256=c1Pyo5EK49kT1g7Wac3vwl0bVs0QBZeQ8Zia1WVL1do,69
24
- requirements_detector-1.2.1.dist-info/RECORD,,
18
+ requirements_detector-1.3.0.dist-info/LICENSE,sha256=548oOCrCNqQty8Fsqqry522lXdxnBTqLyzqr38ct-cw,1040
19
+ requirements_detector-1.3.0.dist-info/METADATA,sha256=jwolECKWuEref7DTpO6lCmcn5Q7IKRYODLrRs7gOPNA,3732
20
+ requirements_detector-1.3.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
21
+ requirements_detector-1.3.0.dist-info/entry_points.txt,sha256=c1Pyo5EK49kT1g7Wac3vwl0bVs0QBZeQ8Zia1WVL1do,69
22
+ requirements_detector-1.3.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.4.0
2
+ Generator: poetry-core 1.9.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
README.md DELETED
@@ -1,59 +0,0 @@
1
- # Requirements Detector
2
-
3
- ## Status
4
-
5
- [![Latest Version](https://img.shields.io/pypi/v/requirements-detector.svg?label=version&style=flat)](https://pypi.python.org/pypi/requirements-detector)
6
- [![Build Satus](https://github.com/landscapeio/requirements-detector/actions/workflows/ci.yaml/badge.svg)](https://github.com/landscapeio/requirements-detector/actions/workflows/ci.yaml)
7
- [![Health](https://landscape.io/github/landscapeio/requirements-detector/master/landscape.svg?style=flat)](https://landscape.io/github/landscapeio/requirements-detector/master)
8
- [![Coverage Status](https://img.shields.io/coveralls/landscapeio/requirements-detector.svg?style=flat)](https://coveralls.io/r/landscapeio/requirements-detector)
9
- [![Documentation](https://readthedocs.org/projects/requirements-detector/badge/?version=master)](https://readthedocs.org/projects/requirements-detector/)
10
-
11
- ## About
12
-
13
- `requirements-detector` is a simple Python tool which attempts to find and list the requirements of a Python project.
14
-
15
- When run from the root of a Python project, it will try to ascertain which libraries and the versions of those libraries that the project depends on.
16
-
17
- It uses the following methods in order, in the root of the project:
18
-
19
- 1. Parse `setup.py` (if this is successful, the remaining steps are skipped)
20
- 2. Parse `pyproject.yoml` (if a `tool.poetry.dependencies` section is found, the remaining steps are skipped)
21
- 3. Parse `requirements.txt` or `requirements.pip`
22
- 4. Parse all `*.txt` and `*.pip` files inside a folder called `requirements`
23
- 5. Parse all files in the root folder matching `*requirements*.txt` or `reqs.txt` (so for example, `pip_requirements.txt` would match, as would `requirements_common.txt`)
24
-
25
- ### Usage
26
-
27
- ```
28
- detect-requirements [path]
29
- ```
30
- If `path` is not specified, the current working directory will be used.
31
-
32
- ### Output
33
-
34
- The output will be plaintext, and match that of a [pip requirements file](http://www.pip-installer.org/en/latest/logic.html), for example:
35
-
36
- ```
37
- Django==1.5.2
38
- South>=0.8
39
- anyjson
40
- celery>=2.2,<3
41
- ```
42
-
43
- ### Usage From Python
44
-
45
- ```
46
- >>> import os
47
- >>> from requirements_detector import find_requirements
48
- >>> find_requirements(os.getcwd())
49
- [DetectedRequirement:Django==1.5.2, DetectedRequirement:South>=0.8, ...]
50
- ```
51
-
52
-
53
- If you know the relevant file or directory, you can use `from_requirements_txt`, `from_setup_py` or `from_requirements_dir` directly.
54
-
55
- ```
56
- >>> from requirements_detector import from_requirements_txt
57
- >>> from_requirements_txt("/path/to/requirements.txt")
58
- [DetectedRequirement:Django==1.5.2, DetectedRequirement:South>=0.8, ...]
59
- ```
@@ -1,19 +0,0 @@
1
- The MIT License
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.