Purpose of this document
------------------------
This document contains a list of minor features and technical stuff that should
be implemented when time permits it. The TODO list is updated frequently as new
ideas crop up during programming.

For a broader view of how the project will develop over time, you should see
the Roadmap document.


Release blockers
----------------
None


Priority 1 (important)
----------------------
- use third-party source and check whether the test result files in
  tests/testdata/result contain the correct hash values
- check if all algorithms return the correct value for needBytesInput()
- fix TODOs in the code
- fix mkroesti-test so that the test of the interactive input method always
  succeeds (currently the test fails sometimes); this is important because an
  unreliable test suite does not inspire very much confidence; remove comment
  in TESTING document if this is fixed


Priority 2 (nice to have)
-------------------------
- use doxygen to generate man page (instead of/in addditon to pandoc); document
  how to do this in README
- try to improve handling of large inputs
- find out why adler32 and crc32 checksums (provided by zlib module) are not correct
  - adler32 for "foo": expected = 45018202 (hex, i.e. dec = 1157726722), actual = 42074437 (dec)
  - crc32 for "foo": expected = A5C4FE49 (hex, i.e. dec = 2781150793), actual = -1938594527 (dec)
  - see issue 1202: http://bugs.python.org/issue1202
    - as per standard, the result should always be an unsigned number
    - python 2.x implementation always returns a signed number
- file a bug with Distutils: "./setup.py test -h" uses the command class' name
  in its output. The correct thing to do would be to use the key of the
  cmdclass dictionary specified to the setup() function. For instance,
  "./setup.py --help-commands" uses the correct name. The issue here is that I
  am forced to choose a class name that is suitable for display to the user.
  The reported behaviour exists in Python 2.5, Python 2.6 and Python 3.0.


Priority 3 (not important)
-------------------------
- register with PyPI
