Skip to content
task management & automation tool
Python
Pull request Compare This branch is 3 commits ahead, 31 commits behind master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
doc
doit
tests
.coveragerc
.gitignore
.travis.yml
AUTHORS
CHANGES
CONTRIBUTING.md
LICENSE
README.rst
TODO.txt
appveyor.yml
bash_completion_doit
dev_requirements.txt
doc_requirements.txt
dodo.py
pylintrc
setup.py
zsh_completion_doit

README.rst

README

https://travis-ci.org/pydoit/doit.png?branch=master https://coveralls.io/repos/pydoit/doit/badge.png?branch=master Join the chat at https://gitter.im/pydoit/doit

doit - automation tool

doit comes from the idea of bringing the power of build-tools to execute any kind of task

Project Details

license

The MIT License Copyright (c) 2008-2015 Eduardo Naufel Schettino

see LICENSE file

developers / contributors

see AUTHORS file

install

doit is tested on python 2.7, 3.3, 3.4.

$ python setup.py install

dependencies

  • six
  • pyinotify (linux)
  • macfsevents (mac)
  • configparser (python2 only - backport of py3 configparser)

Tools required for development:

  • git * VCS
  • py.test * unit-tests
  • mock * unit-tests
  • coverage * code coverage
  • epydoc * API doc generator
  • sphinx * doc tool
  • pyflakes * syntax checker
  • doit-py * helper to run dev tasks

development setup

The best way to setup an environment to develop doit itself is to create a virtualenv...

doit$ virtualenv dev
(dev)doit$ dev/bin/activate

install doit as "editable", and add development dependencies from dev_requirements.txt:

(dev)doit$ pip install --editable .
(dev)doit$ pip install --requirement dev_requirements.txt

Note

Windows developers: Due to a bug in wheel distributions pytest must not be installed from a wheel.

e.g.:

pip install pytest --no-use-wheel

See for more information:

tests

Use py.test - http://pytest.org

$ py.test

documentation

doc folder contains ReST documentation based on Sphinx.

doc$ make html

They are the base for creating the website. The only difference is that the website includes analytics tracking. To create it (after installing doit):

$ doit website

The website will also includes epydoc generated API documentation.

spell checking

All documentation is spell checked using the task spell:

$ doit spell

It is a bit annoying that code snippets and names always fails the check, these words must be added into the file doc/dictionary.txt.

The spell checker currently uses hunspell, to install it on debian based systems install the hunspell package: apt-get install hunspell.

profiling

python -m cProfile -o output.pstats `which doit` list

gprof2dot -f pstats output.pstats | dot -Tpng -o output.png

contributing

On github create pull requests using a named feature branch.

Something went wrong with that request. Please try again.