Skip to main content

A convenience utility for software source code validation and linting

Project description

VVV is a tool for easy validation and linting integration for your software project. With a single command validate all files, no matter in which programming language, in a source tree against a policy you specify in a simple configuration file. VVV prevents bad stuff to be committed in your software source control or makes cleaning it up easier.

Benefits

  • Enforce coding conventions across multiple developers

  • Enable linting and validators support for your software project with a single command

  • Automatically guide committers to policy guidelines and let them fix errors themselves, instead of having post-commit personal coaching.

  • Provide sane default validation and linting options for all popular programming languages and file formats

  • Run VVV as continuous integration service with systems like Travis CI or Jenkins and shoot down bad code push-ins

What VVV doesn’t do

  • This is not automated testing tool. We just scan files against a policy, not for programming errors. Linting tools tend to pick up programming errors, too though, like mistyped names.

Features

  • Set-up for your software repository with two files validation-options.yaml (configuration) and validation-files.yaml (whitelist/blacklist)

  • VVV automatically downloads and locally installs required software - you don’t need to spend time hunting downloads or distribution packages

  • Check file against hard tabs and whitespace policies - no more different tab width ever

  • Prevent committing hard source code breakpoints, like Python’s import pdb ; pdb.set_trace()

  • Support (on its way) for Subversion, Git, Github, Travis CI, Jenkings and other popular version control and continuous integration systems

Documentation and code

Please see the VVV documentation.

Source code is available on Github. Please use Github issue tracker to contact the authors.

Explore different linting and validators available.

Continuous integration status

Current trunk continuous integration status with Travis CI

https://secure.travis-ci.org/miohtama/vvv.png

Author

Mikko Ohtamaa (blog, Twitter)

Please use Github issue tracker to contact the authors in the project related matters.

Changelog

0.2 - 0.2.2

  • Smarter way to detect vvv command location when installing a precommit hook [miohtama]

  • Integration documentation updates [miohtama]

0.2 - 0.2.1

  • Fixed changelog formatting now that PyPi README page is intact again

0.1.1 - 0.2

  • pylint-command option added [miohtama]

  • Ghetto-CI continuous integration script [miohtama]

  • Configuration file reader refactored to something more beautiful [miohtama]

  • Now you can VVV individual files [miohtama]

  • VVV can walk up in the directory tree to find validation-options.yaml file [miohtama]

  • Set zip_safe = False on the egg just in case [miohtama]

0.1 - 0.1.1

  • Added Github links to README [miohtama]

0.1

  • 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

vvv-0.2.2.zip (78.1 kB view details)

Uploaded Source

File details

Details for the file vvv-0.2.2.zip.

File metadata

  • Download URL: vvv-0.2.2.zip
  • Upload date:
  • Size: 78.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for vvv-0.2.2.zip
Algorithm Hash digest
SHA256 ca1f1074cc83ff1a5ac3f975db53258ab1fd31eb43ea8d27b87d0086bef1f5d6
MD5 a3d3e78b3d2e29fed1dfa98c238d3950
BLAKE2b-256 ab62d5c6bde4f3ce0d47d96e0e025b6061ec345425966104d43aa3f664026159

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