Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

System dependency version checker.

Project Description

Unix: Windows: Metrics: Usage:


…chews through your system dependencies, spitting out incompatible versions.

When onboarding new team members, ensuring their computer has everything needed to work on the project can be painful. Verchew is a command-line program and embeddable Python script to check the versions of your project’s system dependencies. Its only external dependency is any Python interpreter, which should already be installed on macOS and most Linux-based operating systems.



  • Python 2.7+ or Python 3.3+


Install verchew with pip:

$ pip install verchew

or directly from the source code:

$ git clone
$ cd verchew
$ python install

or embedded the script in your project using this guide.


Run verchew init to generate a sample configuration file.

Update this file (.verchew.ini) to include your project’s system dependencies:

[Working Program]

cli = working-program
version = 1.2.

[Newer Working Program]

cli = working-program
versions =  4.1. | 4.2.
message = Version 4.x is required to get the special features.

[Broken Program]

cli = broken-program
version = 1.2.3

[Optional Missing Program]

cli = missing-program
version = 1.2.3
optional = true

[Missing Program]

cli = missing-program
version = 1.2.3

Run verchew to see if you have the expected versions installed:

$ verchew

Checking for Working Program...

$ working-program --version
✔ MATCHED: 1.2.

Checking for Newer Working Program...

$ working-program --version
✘ EXPECTED: 4.1. | 4.2.
⭑ MESSAGE: Version 4.x is required to get the special features.

Checking for Broken Program...

$ broken-program --version
An error occurred.
✘ EXPECTED: 1.2.3

Checking for Optional Missing Program...

$ missing-program --version
sh: command not found: missing-program
⚠ EXPECTED: 1.2.3

Checking for Missing Program...

$ missing-program --version
sh: command not found: missing-program
✘ EXPECTED: 1.2.3

Results: ✔ ✘ ✘ ⚠ ✘

Revision History

1.3 (2018/02/08)

  • Added support for checking for multiple versions of programs.

1.2 (2017/09/13)

  • Added optional = true settings to downgrade errors to warnings.
  • Added message setting to display optional message for missing programs.

1.1 (2017/05/17)

  • Added --init command to generate a sample configuration file.

1.0 (2017/01/09)

  • Initial stable release.

0.5 (2016/11/02)

  • Added --exit-code option to return non-zero exit codes on failure.

0.4 (2016/10/20)

  • Added support for custom version arguments.
  • Fixed handling of internal versions matches.

0.3 (2016/10/18)

  • Added support for detecting missing and broken programs.

0.2.1 (2016/10/18)

  • Now stripping whitespace after calling --version on a program.

0.2 (2016/10/17)

  • Added --version command.

0.1 (2016/10/17)

  • Initial release.

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

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

File Name & Hash SHA256 Hash Help Version File Type Upload Date
(12.9 kB) Copy SHA256 Hash SHA256
py2.py3 Wheel Feb 9, 2018
(12.7 kB) Copy SHA256 Hash SHA256
Source Feb 9, 2018

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting