Yes, thank you Enrico.

After a long time, we found a good reason to fix annoying issues which
requires reworking some parts of the code. And also we were able to let the
users use their implementation without asking us in Apache.
We touched the milestone release where we could introduce the feature and
let the people enable a new functionality.

Maybe you guys know that the Surefire and Failsafe plugins were using
std/in and std/out (pipes) as interprocess communication between Maven
process and forked JVM.
Often the users, especially the OSGi users, claimed that these pipes should
be used by the tests.
Additionally, there was a request, from one of our users at GitHub, that
the Surefire fork VMs should be capable of distributing the load in
horizontal direction (hardware) which would first of all require a new
abstraction and communication facilities.
Today we are able to accomplish this!

We have introduced an abstraction which allows the users to implement their
own communication facilities for their purposes.
Of course, we provided two internal implementations.
One defaults to the traditional pipes, and the second is using TCP/IP
channels with authentication.
The second implementation is especially interesting because you can enable
a new way of communication using the TCP sockets:

<forkNode
implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>


The std/out and std/err would be ready for use in your tests.
One may ask, why we did not enable this TCP/IP channel by default.
We want to let the users adapt first and check it out.
Feel free to let us know about your findings.

This approach gave you a certain freedom. For instance you can configure
your extension.
In the future we may introduce "bindAddress" in SurefireForkNodeFactory but
this can be also done by the user:

<forkNode
implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory">

    <bindAddress>192.168.10.15</bindAddress>
</forkNode>

In the references you can find the documentation to the Extension API and
SPI.
This may help you out on implementing your own extensions.

References:
https://github.com/apache/maven-surefire/blob/master/maven-surefire-plugin/src/site/apt/examples/process-communication.vm






On Sat, Jun 13, 2020 at 9:15 PM Enrico Olivelli <eolive...@gmail.com> wrote:

> (I will cast my final vote on Monday)
> Tibor
> It is worth to note that this release includes the new communication
> protocol between Maven and the forked JVM.
> Can you please share a bit of help about how to try it?
>
> This is a great release of surefire, it is a big milestone for Maven and
> Surefire
>
>
> Enrico
>
> Il Sab 13 Giu 2020, 20:50 Michael Osipov <micha...@apache.org> ha scritto:
>
> > Am 2020-06-13 um 15:46 schrieb Tibor Digana:
> > > Hi,
> > >
> > > We solved 40 issues:
> > >
> >
> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12317927&version=12344612
> > >
> > > There are still a couple of issues left in JIRA:
> > >
> >
> https://issues.apache.org/jira/issues/?jql=project%20%3D%20SUREFIRE%20AND%20status%20%3D%20Open%20ORDER%20BY%20priority%20DESC
> > >
> > > Staging repo:
> > > https://repository.apache.org/content/repositories/maven-1590/
> > >
> >
> https://repository.apache.org/content/repositories/maven-1590/org/apache/maven/surefire/surefire/3.0.0-M5/surefire-3.0.0-M5-source-release.zip
> > >
> > > Source release checksum(s):
> > > surefire-3.0.0-M5-source-release.zip  sha1:
> > > 687a89ceb4a1b2e5dd472deec8d3843f2a98b68f
> > > surefire-3.0.0-M5-source-release.zip  sha512:
> > >
> >
> e88ced058923b349acfe1948d4c4a7ff6f4bef08e5685f2f2ac73cfb26ad35fd6578f05309f091081f01986b19bbca38a2fe6bf0fbd16980cd6f41228c529ee7
> > >
> > > Staging site:
> > > http://maven.apache.org/surefire-archives/surefire-LATEST/
> > >
> > > Guide to testing staged releases:
> > > http://maven.apache.org/guides/development/guide-testing-releases.html
> > >
> > > Vote open for 72 hours.
> >
> > Massive and impressive!
> >
> > +1
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> > For additional commands, e-mail: dev-h...@maven.apache.org
> >
> >
>

Reply via email to