Skip to main content

🐍 Pyscan

CI Liscense PyPI GitHub issues Top Language

A dependency vulnerability scanner for your python projects, straight from the terminal.
  • 🚀 blazingly fast scanner that can be used within large projects quickly.
  • 🤖 automatically uses requirements.txt, pyproject.toml or, the source code.
  • 🧑‍💻 can be integrated into existing build processes.
  • 💽 In its alpha stage, some features may not work correctly. 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

Docker

[WARNING: docker subcommand currently does not work, if you are installing pyscan solely for that purpose. It will be fixed and released in the next version. Thanks for the patience, people with actual jobs (i dont know anyone else who actually uses docker)]

Pyscan can scan inside docker images given you provide the correct path inside. This is still in its early stage and may break easily.

> pyscan docker -n my-docker-image -p /path/inside/container/to/source

by "source" I mean requirements.txt, pyproject.toml or your python files. Note: Your docker engine/daemon should be running as pyscan utilizes the docker create command.


Here's the order of precedence for a "source" file:
  • requirements.txt
  • pyproject.toml
  • your python source code (.py) [highly discouraged]

Pyscan will find dependency versions from pip if not provided within the source file. Even though, Make sure you version-ize your requirements and use proper pep-508 syntax.

Building

pyscan requires a rust version of < v1.70, as it uses once_cell which is unstable on previous releases. There's an overview of the codebase coming soon for people who wanna contribute. Appreciate all the help so far.

🦀 Note

pyscan uses OSV as its database for now. There are plans to add a few more.

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

🐰 Todo

As of June 27, 2023:

  • Gather time to work on it (incredible task as a high schooler)
  • Multi-threading
  • Better display, search, filter of vulns
  • Plethora of output options (stick to >> for now)
  • Architecture write-up

🐹 Sponsor

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

Metadata

Release files for pyscan-rs 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyscan-rs 0.1.5
File Size Uploaded
pyscan_rs-0.1.5.tar.gz 613.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyscan-rs 0.1.5
File
pyscan_rs-0.1.5-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
pyscan_rs-0.1.5-py3-none-win32.whl Python 3 none Windows x86-32 Details
pyscan_rs-0.1.5-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details
pyscan_rs-0.1.5-py3-none-macosx_10_7_x86_64.whl Python 3 none macOS 10.7+ x86-64 Details

Total release size: 11.1 MB

Release files / pyscan_rs-0.1.5.tar.gz

Download URL pyscan_rs-0.1.5.tar.gz
Size 613.5 kB
Tags Source
SHA-256 checksum
How to use checksums
1a3204d4559e37dfeca9af1e967085d670aab74a01bfa4234ea53702a5b0d372
BLAKE2b-256 checksum
How to use checksums
b951df4d6b8e29755306d898595df3876171ca0fc0cb63dd0e54bba55ef91c10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.1.0

Release files / pyscan_rs-0.1.5-py3-none-win_amd64.whl

Download URL pyscan_rs-0.1.5-py3-none-win_amd64.whl
Size 2.5 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
82435f1f1388afc5191f38b445b41bedef4b2e5eb17c3fa00b1117aad7deabc8
BLAKE2b-256 checksum
How to use checksums
b49f7b0b5e04a5f500777e8ebb4635c8b6162b97bab1d6bb022fceab567a58be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.1.0

Release files / pyscan_rs-0.1.5-py3-none-win32.whl

Download URL pyscan_rs-0.1.5-py3-none-win32.whl
Size 2.3 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
effac8ebb192b8c9b9a13047f7f9ede7384442fa57699bec4ead3ca223f1dd13
BLAKE2b-256 checksum
How to use checksums
170e07d0bc7a3aff0dfead3be1d6d0da13437eed40f9a1f477a669f75e7f89fc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.1.0

Release files / pyscan_rs-0.1.5-py3-none-macosx_11_0_arm64.whl

Download URL pyscan_rs-0.1.5-py3-none-macosx_11_0_arm64.whl
Size 2.8 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1beee54595b10557524c724e638d19efb06a2d741f08dfd9013762358f2beafa
BLAKE2b-256 checksum
How to use checksums
4937edff1f3080223f82cc2163ac6a0108daf3ee0a84b841dbc744284d08b699
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.1.0

Release files / pyscan_rs-0.1.5-py3-none-macosx_10_7_x86_64.whl

Download URL pyscan_rs-0.1.5-py3-none-macosx_10_7_x86_64.whl
Size 3.0 MB
Tags Python 3 macOS 10.7+ x86-64
SHA-256 checksum
How to use checksums
57467cb6f84e36b3f1f0c2199609a5e7c7d9a654405703016b2d4d17b78f1b74
BLAKE2b-256 checksum
How to use checksums
87f94e1fcfd9b0c39492452d94ddc03c915a679bba39bea562146999b9b56cb2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.1.0

Release history Release notifications | RSS feed

2.1.2

14 release files

2.1.1

14 release files

2.1.0

14 release files

2.0.0

14 release files

0.1.8

13 release files

0.1.7

6 release files

0.1.6

6 release files

This release

0.1.5 This release

5 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page