I found a combination by adding the find_packages rule and writing out the MANIFEST.in rules , i.e. prune tests
Note that for python 3.2 and find_packages you must have __init__.py in the root tests, for the find_packages consider the test folder as a package.
find_packages example exclude command in setup.py
packages=find_packages( exclude=["*.tests", "*.tests.*", "tests.*", "tests"]),
Example MANIFEST.in
include *.txt *.ini *.cfg *.rst recursive-include fmcc *.ico *.png *.css *.gif *.jpg *.pt *.txt *.mak *.mako *.js *.html *.xml prune tests
source share