Skip to main content

System dependency version checker.

Project description

Unix: Unix Build Status Windows: Windows Build StatusMetrics: Coverage Status Scrutinizer Code QualityUsage: PyPI Version

Overview

…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.

Setup

Requirements

  • Python 2.7+ or Python 3.3+

Installation

Install verchew with pip:

$ pip install verchew

or directly from the source code:

$ git clone https://github.com/jacebrowning/verchew.git
$ cd verchew
$ python setup.py install

or embedded the script in your project using this guide.

Usage

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
1.2.3
 MATCHED: 1.2.

Checking for Newer Working Program...

$ working-program --version
1.2.3
 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.4 (2018/03/06)

  • Updated cli_version_arg to be blank for programs with no version argument.

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.

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

verchew-1.4.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

verchew-1.4-py2.py3-none-any.whl (13.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file verchew-1.4.tar.gz.

File metadata

  • Download URL: verchew-1.4.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for verchew-1.4.tar.gz
Algorithm Hash digest
SHA256 dd8c31f60e073f95e5281819809e7ce7b48d392432bc8e1d9f4a35bcf789398a
MD5 891e9a797d175c6d838c4fa307384616
BLAKE2b-256 c23414d7006eb47ba2eddb4ff302f13c0bda8085ab52264393b76b2854eeb98f

See more details on using hashes here.

File details

Details for the file verchew-1.4-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for verchew-1.4-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a6c44d07a228b73adeafdf9b80be584275ee1879cbcc2e803959159a203c049d
MD5 a3e3b977defcfe3e96f0455498b49061
BLAKE2b-256 44c0efc51574a19b451934f926f6905d07ccd64a94ca7d1bcdebd7bca970530d

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