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!

A tool for detecting bit rot in files.

Project Description

A small utility for checking for bit rot. This project is heavily influenced by chkbit and bitrot. Both projects had things I liked about them and other things that I didn’t. I took what I liked and made something myself.

The focus of Rotten Bites is scalability and speed. To achieve this, small files (.bit_check) are placed in every directory. I know, no one wants a “bunch of turdy files sprinkled all over your hard drive”, but in my opinion it is the best way to allow for flexibility (folders can be moved around without any problem because all paths are relative to that directory) and scalability (having one central database with all files stored does not scale well).

There are two components to Rotten Bites: the CLI and library. I designed Rotten Bites to be callback based so it makes it easy to extend. See the CLI (rotten_bites/ and, for examples.


pip install rotten_bites


Usage: rotten_bites [OPTIONS] DIRECTORY

  Given a directory, rotten bites calculates the sha1 hash of every file and
  stores it in .bit_check files. Once stored, subsequent checks will see if
  the hash has changed, detecting bit rot.

  Status codes:

      'E'     error, sha1 mismatch

      'a'     add to index

      'u'     update sha1

      ' '     not modified (shown only with verbose)

      '?'     could not read file (permission denied or file no longer

  --delete                Delete all .bit_check files.
  -n, --dry-run           Run without making any changes. No .bit_check files
                          are created or updated
  --ignore-list FILENAME  List of files and folders to ignore. Similar syntax
                          to .gitignore files. "-" can be used to read from
  -q, --quiet             Turn off all output except for hash errors.
  -v, --verbose           Display all files that are scanned, even if they
                          haven't changed
  --verify                Verify hashes without updating.
  --help                  Show this message and exit.
Release History

Release History

This version
History Node


Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
rotten_bites-1.0.0.tar.gz (6.6 kB) Copy SHA256 Checksum SHA256 Source Jul 21, 2016

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