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

Reply via email to