Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
635601a
Add --insecure option #62
TG1999 Aug 31, 2022
af5e120
Address review comments
TG1999 Aug 31, 2022
87d6971
global: initial project structure
lnielsen Oct 5, 2015
e3b85bb
global: initial import of requirements
crepererum Oct 5, 2015
fbcc778
cli: click instead of argparse support
lnielsen Oct 5, 2015
771d119
global: package style improvements
jirikuncar Oct 6, 2015
e0517a9
global: inveniosoftware.org
tiborsimko Jun 28, 2016
f6fb257
global: prefill globals with the '__file__' constant
greut Sep 7, 2016
c87641c
global: add setup.py directory into the PYTHONPATH
greut Sep 7, 2016
78e57ba
travis: secure PyPI deploy password
jirikuncar Sep 7, 2016
71f864f
release: v0.2.0
jirikuncar Sep 7, 2016
b771d77
docs: move to readthedocs.io
tiborsimko Sep 25, 2016
2c291b1
docs: MAINTAINERS file and LGTM configuration
jirikuncar Sep 30, 2016
9d7bd5e
cli: "extras" accepting comma separated values
jirikuncar Oct 21, 2016
7175461
global: support for Python 2.6 and 3.6
greut Jan 23, 2017
8eea5de
cli: accepting extra package from devel
greut Jan 23, 2017
9fb0bdd
release: v0.2.1
jirikuncar Jan 23, 2017
0b02ccf
global: support for version markers
Jan 31, 2017
dc93d3d
Yapf auto-formatting configuration.
greut Jan 27, 2017
149374d
release: v0.2.2
lnielsen Feb 1, 2017
5fc74e7
global: environment markers in extra_require
lnielsen Mar 9, 2017
20ac9c8
release: v0.2.3
lnielsen Mar 9, 2017
d8aa53e
global: upper requirements fix
lnielsen Mar 10, 2017
d61edc0
release: v0.2.4
lnielsen Mar 10, 2017
665d744
cli: no setup.py if req.txt is provided.
greut Apr 2, 2017
71a353e
installation: upgrade click to >=6.1.0
greut Apr 2, 2017
42cd9d6
global: recursive requirements files fix
greut Apr 2, 2017
59ff2bc
release: v0.2.5
egabancho Apr 11, 2017
39260a8
global: removal of Python 2.6
jirikuncar Jun 27, 2017
dee256d
global: setup() under __main__ fix
lhupfeldt Jul 10, 2017
169b0a8
release: v0.2.6
lnielsen Jul 13, 2017
902eaff
global: accepts ~= selector
greut Mar 22, 2018
c020660
global: fix ~= selector output
slint May 16, 2018
289c232
global: inclusions of package extras in results
slint May 16, 2018
6a01d6c
release: v0.3.0
jirikuncar May 17, 2018
4b624a4
travis: enable build on pypy3
greut Aug 6, 2018
9da3dac
tox: remove Python 3.4 and 2.7
greut Mar 6, 2020
ab1682d
migrate to setup.cfg
greut May 2, 2020
a2df7c3
read requirements from setup.cfg too
greut May 4, 2020
5e4e37c
fix: versions working with python2
greut May 25, 2020
a3092b8
global: remove unused files
lnielsen May 25, 2020
e41544c
global: fix configparser import for Python 2
slint May 25, 2020
e9d6946
global: migrate from Travis CI to GitHub Actions
avivace Dec 8, 2020
e92a168
setup: update dependencies in setup.cfg
mvidalgarcia Dec 11, 2020
bc4b210
Move files to their target locations
pombredanne Aug 30, 2022
ebb125b
Add ABOUT file and move to target location
pombredanne Aug 31, 2022
7da295a
Move file to correct location and add ABOUT files
pombredanne Aug 31, 2022
1ba7601
Add tests for live_eval
TG1999 Sep 1, 2022
37375d2
Address review comments
TG1999 Sep 20, 2022
3e59fe5
Fix tests
TG1999 Sep 20, 2022
111b6db
Add changelog
TG1999 Sep 20, 2022
0a32984
Provide insecure parsing for top level dependencies
TG1999 Sep 20, 2022
6381577
Address review comments
TG1999 Sep 20, 2022
426b929
Address review comments
TG1999 Sep 27, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,28 +1,44 @@
Changelog
=========


v0.7.0
------

- Enable live evaluation of the "setup.py" that use computed arguments.
When this occurs, a live evaluation of the Python code is the only working
solution short of a full installation. Because this can be a security issue,
there is a new "--analyze-setup-py-insecurely" command line option to enable this feature.
Note that this not more insecure than actually installing a PyPI package.
- Add metadata for packages.


v0.6.5
------

- Add --version option.


v0.6.4
------

- Add support for setup.py


v0.6.3
------

- Ensure to filter out top level dependencies on the basis of their environment markers
- Do not ignore files on basis of name


v0.6.2
------

- Ignore invalid requirement files on basis of name
- Use netrc file from home directory if not present


v0.6.1
------

Expand Down
93 changes: 93 additions & 0 deletions requirements_builder.ABOUT
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
[metadata]
name = python-inspector
license = Apache-2.0

# description must be on ONE line https://github.com/pypa/setuptools/issues/1390
description = python-inspector is is a collection of utilities to collect PyPI package metadata and resolve packages dependencies.
long_description = file:README.rst
long_description_content_type = text/x-rst
url = https://github.com/nexB/python-inspector

author = nexB. Inc. and others
author_email = info@aboutcode.org

classifiers =
Development Status :: 4 - Beta
Intended Audience :: Developers
Programming Language :: Python :: 3
Programming Language :: Python :: 3 :: Only
Topic :: Software Development
Topic :: Utilities

keywords =
open source
scan
package
dependency
pypi
python
SBOM
sca
dependencies
dependency resolution
resolver
resolvelib
pip
requirements

license_files =
apache-2.0.LICENSE
NOTICE
AUTHORS.rst
CHANGELOG.rst
CODE_OF_CONDUCT.rst

[options]
package_dir =
=src
packages = find:
include_package_data = true
zip_safe = false

setup_requires = setuptools_scm[toml] >= 4

python_requires = >=3.6.*

install_requires =
attrs >= 18.1, !=20.1.0
click > 7.0
colorama >= 0.3.9
commoncode >= 30.0.0
dparse2 >= 0.6.1
importlib_metadata >= 4.12.0
packageurl_python >= 0.9.0
pkginfo2 >= 30.0.0
pip-requirements-parser >= 31.2.0
requests >= 2.18.0
resolvelib >= 0.8.1
saneyaml >= 0.5.2
tinynetrc >= 1.3.1
toml >= 0.10.0
mock >= 3.0.5

[options.packages.find]
where = src

[options.entry_points]
console_scripts =
python-inspector = python_inspector.resolve_cli:resolve_dependencies

[options.extras_require]
testing =
pytest >= 6, != 7.0.0
pytest-xdist >= 2
aboutcode-toolkit >= 7.0.2
twine
black
isort
pycodestyle

docs =
Sphinx >= 3.3.1
sphinx-rtd-theme >= 0.5.0
doc8 >= 0.8.1
1 change: 1 addition & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ install_requires =
saneyaml >= 0.5.2
tinynetrc >= 1.3.1
toml >= 0.10.0
mock >= 3.0.5

[options.packages.find]
where = src
Expand Down
2 changes: 2 additions & 0 deletions src/python_inspector/package_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,8 @@ def get_pypi_data_from_purl(
from python_inspector.resolution import get_response

response = get_response(api_url)
if not response:
return []
info = response.get("info") or {}
homepage_url = info.get("home_page")
license = info.get("license")
Expand Down
Loading