Skip to main content

Override Poetry's update command to audit packages before they are updated

Project description

Customs Inspector

Customs Inspector is a Python tool that hooks into Poetry's package management system to allow for manual auditing of package changes during updates. When you run poetry update, Customs Inspector will open a browser with a GitHub diff like view, requesting you to confirm or reject the update before proceeding.

Note:

TESTED ONLY ON Poetry v1.4.x
This is a proof of concept. Poetry explicitly says to not use the plugin system to modify existing commands. If this is something that is considered valuable, I would love to discuss this with Poetry's authors to potentially integrate it.

Why?

Developers are lazy, we'd rather not audit source code...
Well, we cannot afford that anymore. I am also not interested in the snake oil automated analysis companies are selling (for now).

What if auditing was really easy to do so?
What if, we could harness the community's collective effort to find malicious packages?

Usage

See: how to install plugins

poetry update

Upcoming:

  • Increase speed
  • Add language server support to make auditing even easier
  • Add file filtering, to hide test folders, for example
  • Add rules for quick auditing, for example when new sensitive APIs are used (socket, os, sys)

Contributions

Feedback, contributions and suggestions welcome.

License

GPL-3.0

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

customs_inspector-0.2.1.tar.gz (3.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

customs_inspector-0.2.1-py3-none-any.whl (3.4 MB view details)

Uploaded Python 3

File details

Details for the file customs_inspector-0.2.1.tar.gz.

File metadata

  • Download URL: customs_inspector-0.2.1.tar.gz
  • Upload date:
  • Size: 3.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.10.2 Linux/5.10.0-21-amd64

File hashes

Hashes for customs_inspector-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c3dcb55e0bad4802bbe98c6e63e92b0c413493d2049ae9ea389935bee411aad4
MD5 135aa7d4c766159787c1c5e4a63a1e46
BLAKE2b-256 c06110a2947dbeb6606c708951b907d0085591d2d94d9faaf1bdf445e6dbbcbf

See more details on using hashes here.

File details

Details for the file customs_inspector-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: customs_inspector-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.10.2 Linux/5.10.0-21-amd64

File hashes

Hashes for customs_inspector-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a61d734a0725a30e1a386185b19e401abaccda0ba6c41366667895e3f9752e57
MD5 40bc116ad2db89d1f6d4cb46b7b7a781
BLAKE2b-256 5e17eb82e010cf6f89d43dda94f296fa802722e7b981a95c242d999e813c57d7

See more details on using hashes here.

Supported by

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