On Sun, 1 Mar 2026 at 09:12, Michael Osipov <[email protected]> wrote: > > On 2026/02/04 01:48:18 Olivier Lamy wrote: > > Hi there, > > Finally back after a few months of work (Thanks a lot to Sebastian > > Tiemann for the huge help on this topic!), the branch is ready. > > There is still a weird Windows test failure. > > I wish we could be Java 9+ to be able to use ProcessHandle and really > > simplify the class PpidChecker, which mixes parsing of ps on unix and > > wmic for Windows. > > This wmic looks to be broken on modern Windows see [1]. > > But I have a very very limited knowledge of this operating system, so > > relying on ProcessHandle would be much simpler (sorry the off-topic > > this could of another thread but I like to express my frustration via > > some ranting :) ) > > > > So what I would like to do now as a plan to move forward: > > - make release of master (3.5.5) > > - having a 3.5.x branch > > - merge the giant PR (master will be 3.6.x) having something 4.0.x > > could be better when we will be using Maven 4.x api. > > - cut a release 3.6.0.M1 could be alpha-1, beta-1 (or even broken-1 > > as I expect a significant amount of issues even if we have a very > > large collection of ITs) > > - then fixing the bugs :) for another release. (looping here) > > > > WDYT? > > As someone who has worked on Surefire for quite some time I do not fully > understand your motivation. I do understand that ProcessHandle will make life > easier -- true, but the PpidHandler is just fraction of Surefire there is so > much more that is not tied to the Maven version at all. The plugin is just > the glue to make it run within Maven. To my understanding, 90% is agnostic > and maintaining two branches 4.x and 3.x for just the tip of the iceberg > seems too much effort. > > Can you explain what would actually be an improvement to Surefire -- next to > ProcessHandle -- when Maven 4 related changes are done? >
The main motivation for the branches isn't related to Maven 4 or the ProcessHandle change (which is a minor issue in the grand scheme of things). The real driver is the significant simplification of the code through the removal of obsolete providers. These can be replaced by a single one, which greatly streamlines the codebase (see PR[1] and the many discussions in this thread; there’s been broad agreement across the community on this direction; I don't think we need to reopen this discussion). The plan I have in mind, and I expect this to stay for quite a while: - maven-3.5.x (stable branch from last 3.5.5) - master (with the simplification PR merged), which will have 3.6.x versioning. In the long term (but only until the master branch stabilises), something similar to what we do for other "core" plugins (compiler, resources, clean, etc.) could be implemented. Like those plugins, the master branch could support Maven 4 APIs, allowing for a maven-3.x branch. But that’s well down the track. I probably shouldn’t have mentioned it earlier, as I might’ve just added a bit of confusion and noise :) Regarding PpidHandler, it's unrelated to the branches strategy; I'm unsure where the confusion is. As you mentioned, I agree it's a very small part of Surefire, and it’s not even enabled by default, so it's probably not really a factor in this discussion. Hopefully, that clears things up and answers your question. Happy to clarify further if needed. Cheers, Olivier [1] https://github.com/apache/maven-surefire/pull/3179 > Michael > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
