Hi,

I am trying to gather documentation to help non-commiters test their changes before sending them to review.

When run locally some tests fail with a lot of errors and is hard for a developer to filter the errors generated by his/her changes.

Ex:
 * twistedchecker 
 * pyflakes
 * api-reference

 I have created patches to clean pyflakes and I also plan to start cleaning the api-reference build errors

From information gathered from #twisted-dev it seems that twistedchecker is not maintained and that some of its errors are invalid... so one should not try to fix all its errors.
... I wander why twistedchecker is still used ?

I would like to investigate how we can fix api-reference build errors.

------

I have created a travis-ci configuration file which can be used as a reference for running tests. It somehow copies the builders observed on buildbot.twistedmatrix.com

A sample build result can be found here:
https://travis-ci.org/chevah/twisted/builds/19803969

Code changes are here. If you find them useful I can refine them into a public patch.
https://github.com/chevah/twisted/pull/1/files

Only python 2.7 and 3.3 builders are enabled... but 2.6 builders can also be enabled.
py-select-gc tests are not enabled since they are very, very slow.

Running all tests on a single process could take about 1 hour.
I guess that running only tests with default reactor and then pyflakes/pydoctor on changed files should cover most errors. 

A developer should run at least the following tests before sending a patch for review:

 * trial with default reactor
 * pyflakes for changed files
 * pydoctor for changed files

If documentation was changed he/she should also run documentation tests.

----

Running pydoctor on my computer takes about 3 minutes... a bit long for my taste.
I hope that pydoctor can be run on a independent python files so that I can create
a separate linter test which will run pyflakes and pydoctor only on changes files.
This should provide a big improvements in speed.

I used travis-ci as it provides  an isolated / reference test environment. Once the configuration is ok, it can be translated into tox [1],  private buildbot [2] or custom script to allow developers to run test on their computers. 

If a Twisted developer has time, I need some help to check the current travis-ci errors and suggest how to fix them.

Thanks!

[1] https://github.com/msabramo/python-panci
[2] https://github.com/isotoma/buildbot_travis

--
Adi Roiban