Skip to main content

python dependency vulnerability scanner

Project description

🐍 Pyscan

CI Liscense PyPI GitHub issues Top Language

A dependency vulnerability scanner for your python projects, straight from the terminal.
  • can be used within large projects. (see benchmarks)
  • automatically finds dependencies either from configuration files or within source code.
  • support for poetry,hatch,filt,pdm and can be integrated into existing build processes.
  • hasn't been battle-hardened yet. PRs and issue makers welcome.

🕊️ Install

pip install pyscan-rs

look out for the "-rs" part or

cargo install pyscan

check out the releases.

🐇 Usage

Go to your python source directory (or wherever you keep your requirements.txt/pyproject.toml) and run:

> pyscan

or

> pyscan -d path/to/src

Pyscan will find any dependencies added through poetry, hatch, filt, pdm, etc. Here's the order of precedence for a source/config file:
  • requirements.txt
  • pyproject.toml
  • your source code (.py)

Pyscan will use your pip to find unknown versions, otherwise pypi.org for the latest version. Still, Make sure you version-ize your requirements and use proper pep-508 syntax.

Building

pyscan requires a rust version of < v1.70, and might be unstable on previous releases. There's an overview of the codebase at architecture. Grateful for all the contributions so far.

🦀 Note

pyscan doesn't make sure your code is safe from everything. Use all resources available to you like safety Dependabot, pip-audit, trivy and the likes.

🐰 Todo

As of October 15, 2023:

  • Gather time to work on it (incredible task as a high schooler)
  • Persistent state representation of a project's security.
  • Graphical analysis of dependencies and their dependencies, and so on.
  • Better display, search, filter of vulns

🐹 Donate

While not coding, I am a broke high school student with nothing else to do. I appreciate all the help I can get.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyscan_rs-0.1.6.tar.gz (1.2 MB view details)

Uploaded Source

Built Distributions

pyscan_rs-0.1.6-py3-none-win_amd64.whl (2.5 MB view details)

Uploaded Python 3 Windows x86-64

pyscan_rs-0.1.6-py3-none-win32.whl (2.3 MB view details)

Uploaded Python 3 Windows x86

pyscan_rs-0.1.6-py3-none-manylinux_2_34_x86_64.whl (24.9 MB view details)

Uploaded Python 3 manylinux: glibc 2.34+ x86-64

pyscan_rs-0.1.6-py3-none-macosx_11_0_arm64.whl (2.8 MB view details)

Uploaded Python 3 macOS 11.0+ ARM64

pyscan_rs-0.1.6-py3-none-macosx_10_7_x86_64.whl (3.0 MB view details)

Uploaded Python 3 macOS 10.7+ x86-64

File details

Details for the file pyscan_rs-0.1.6.tar.gz.

File metadata

  • Download URL: pyscan_rs-0.1.6.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.3.0

File hashes

Hashes for pyscan_rs-0.1.6.tar.gz
Algorithm Hash digest
SHA256 8102a51d8f52787f24f946fbcdd5b0c130ded0e2cff7ecd08a2746d8fc855a0f
MD5 50813d7f8fdfcf6cbb48e6f1530bd78c
BLAKE2b-256 5e9d24eb6b2d734e00de5d2af1757abf4f18af6b3f506b6ec499713ad696b957

See more details on using hashes here.

File details

Details for the file pyscan_rs-0.1.6-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for pyscan_rs-0.1.6-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 e6cfaee0d9af368b95e70fff33282bc79f8159fe8279697fc3d71a7bd62efd0d
MD5 f8312c552cbdccf920b4e061c3b2e9ff
BLAKE2b-256 cfffe55b9db0241149e4518c20386163402f41abaaf91ab6ad16248034a9ceb1

See more details on using hashes here.

File details

Details for the file pyscan_rs-0.1.6-py3-none-win32.whl.

File metadata

  • Download URL: pyscan_rs-0.1.6-py3-none-win32.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.3.0

File hashes

Hashes for pyscan_rs-0.1.6-py3-none-win32.whl
Algorithm Hash digest
SHA256 f888cad16b13c49ff1b698724a3092348565776e68b17607b7645ca59e727912
MD5 538ec415c83269b39b976a465890baf9
BLAKE2b-256 1010b6946e614f891dd0a38747a5791a5836ed6d905324419d5b277acc2cdc2c

See more details on using hashes here.

File details

Details for the file pyscan_rs-0.1.6-py3-none-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pyscan_rs-0.1.6-py3-none-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 d67902ce524df8ada716fa7ec3118c200a5000b3cb13e0be8dfeea664425358c
MD5 860e0f75ca4c10c0ccc145a71cf03ac4
BLAKE2b-256 273d25ed135808342bb0bcbbf76727ecff3b6ee966b453940fb530d24475e816

See more details on using hashes here.

File details

Details for the file pyscan_rs-0.1.6-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for pyscan_rs-0.1.6-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f5b18b3ed4e1a07bd4171ece221d15d2dc6190ff2ec601c8d70a1c3b77238638
MD5 126aadf1eda2af7ce9043dbe87672b94
BLAKE2b-256 6c0b583a3ee4f12ecf34e3077872814c09cd083e3bec4fbfaec1a47d10eaf9c3

See more details on using hashes here.

File details

Details for the file pyscan_rs-0.1.6-py3-none-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for pyscan_rs-0.1.6-py3-none-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 3817087612e25c446f03cda60b38b91f4cf4e3d443ab431889ea58853f4492ab
MD5 ee26df1d46b3a56c62682c203b735873
BLAKE2b-256 649fdd51b2c27a1bfcc617fc9aad39033829e32dc052d7de1736d10d495aba01

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page