Hello guys, This is just forwarded email from our private discussion. Herve remarked with good idea that this might be worth information for everyone in dev@. ...
I have completed all issues in surefire 2.19. If you have any wishes in the release, I can postpone it. btw, in 2014 we planned an experimental release of 2.19 using SPI which extends current Surefire API and enables users to implement some features (test list processor) by themselve. It was found out as not easy fix because Test List Processor did not have Filter API to filter out unwanted tests (classes, methods, suites). It was implemented as String parser everywhere in the code and of course buggy. Since April 2015 we have it! It took me 3 months to complete in clear code. I remember the time of initial implementation when a lot of ITs failed and I realized how Surefire worked. Now it is fully object oriented implementation, located in one place and independent of ay provider - TestNG and JUnit. The best thing is that now includes(File)/excludes(File)/tests parameter can specify the same CSV patterns, possibly using regex, using the same implementation of filter. Next step was terribly difficult - concurrent test streamer. We planned [1] to have in Surefire 3.0. I realized that modifying current implementation [1] may go with fixing [2] and [3]. I did not realize that I am going spend so much time on it. Since July it is fully concurrent with no lock (only semaphore and seldom called R/W lock), and the best thing is the ability to dispatch commands instead of classes. [1] https://github.com/apache/maven-surefire/pull/74 [2] SUREFIRE-580 [3] SUREFIRE-524 We fixed a lot of stability issues. Several contributors participated. The benefit from this release is the fact we have got an overview of new contributors and their experiences with Surefire project. This enables me to send you a list of candidates of new Committers. Finally I can continue with experimental release of 2.20 using SPI. We already have the idea of extensions implemented in s1 branch. -- Cheers Tibor
