Dear *, Am 08.07.2013 21:46, schrieb Robert Burrell Donkin: > I wonder whether it would be simpler and more conventional to factor out > three phases: > > 1. scan the source, building a strongly-typed, immutable domain model
+1 Scanning could be done multithreadedly with a status output on console > 2. analyse this model against policies, building a strongly-typed, > immutable report model > 3. use the report to output descriptive text or XML, or errors and warnings +1 I don't know enough about maven restrictions - but maybe it's possible to generate a special report that makes it easier to integrate a rat-check in CI/Jenkins to only see files that are incorrect and the cause, but not the whole mvn output on console. > I also think that Rat would benefit from > > * using more conventional dependency injection (see, for example, > http://www.martinfowler.com/articles/injection.html) replacing the > static methods that litter the code > * immutable domain objects with builders +1 I would prefer more configuration options to use Rat on projects that are not Apache2-licensed only. This could be done when all configuration objects have interfaces and user-specific implementations can be injected or chosen as defaults. Apart from the stuff you mentioned I'd prefer to inject the configuration as well to not pollute pom.xml files with that - currently it's quite a pain to use the tool since you have to configure rat twice. Cheers Phil