Skip to main content

Scan for TODO's

Project description

TODO-finder

Build Status codecov

It finds TODOs!

Requirements

Python 3.8

To install, run pip install todofinder.

Usage

Specify a glob pattern with -g and use -o to specify where to store the CSV report.

python -m todofinder -g <glob_pattern> ... <glob_pattern> -o FILE

The CSV file will have the following fields, and it will have a header with these field names:

  • file: absolute path to the file
  • line_number: the TODO's line number
  • text: The text after "TODO:" (colon optional)
  • token: The matched token (either TODO or FIXME)
  • full_line: The complete line (newlines stripped)
  • filetype: The file's file type (part after the first dot).

Plugins

You can use -p or --plugins to enable language-specific parsers that will prevent false positives and skip over lines without comments. Currently available plugins:

  • Python: -p py
  • C: -p c

You can have one or more active plugins (e.g. -p py c) or all at once (-p all)

Blame

You can use -b or --blame to run git blame on all files with TODOs and extract info. This will add the following fields to the CSV report:

  • author: The name of the person who last touched the line
  • date: The date at which the last commit touching the line was made
  • commit: The commit hash
  • message: The first line of the commit message

Note that using --blame will make the script run much, much slower, since it shells out to git for every file.

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

todofinder-1.2.0.tar.gz (8.7 kB view details)

Uploaded Source

Built Distribution

todofinder-1.2.0-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file todofinder-1.2.0.tar.gz.

File metadata

  • Download URL: todofinder-1.2.0.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0.post20200106 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1

File hashes

Hashes for todofinder-1.2.0.tar.gz
Algorithm Hash digest
SHA256 c299882ebca45e17cedc6154d03244a9d2e94cb28450df393729e53dfea7537d
MD5 23d02bcd28de8c99f73ec1eae3a7bb10
BLAKE2b-256 03d1bce5740bbc5364f54cf37e13e4c11d74844d9692d6445813fd69a2d2f858

See more details on using hashes here.

File details

Details for the file todofinder-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: todofinder-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0.post20200106 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.1

File hashes

Hashes for todofinder-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2b6a79fbc7484f9c995bc57a9a8688f8ef69dc0d73fe0650e75fea52d0c540a5
MD5 47cc49b9ad53e3bd5b27255e2e6c7e93
BLAKE2b-256 5e5c66a76662ea73cc5c65f07eabe19e1c0c8285fb0609916561a3eea0eae0a5

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