If you think it's better to go ahead, your call. Just wanted to note it. I haven't yet decided what the proper fix is yet. I'm tempted to just roll back the PR that added a new default method, but if we ship it then that does limit our options.
On Sun, Oct 11, 2026 at 8:33 PM Sylwester Lachiewicz <[email protected]> wrote: > > Hi Elliotte, > > You're right that the loop is real, and the generate(Sink, Locale) / > generate(Sink, SinkFactory, Locale) pair has the same shape (#91). > > PR #72 is part of the move to getOutputPath(). The reports in our plugins > (surefire, plugin-tools, changes, jxr, dependency, invoker and others) now > implement getOutputPath() and keep getOutputName() only as a deprecated > delegate, because 4.0.0 still declared it abstract. With the default in > place, they can drop it. > > It does not break existing reports. Through 4.0.0, getOutputName() and > generate(Sink, Locale) were abstract, so every report built against an > earlier API already implemented them. I spot-checked about 30 public > implementers on GitHub (DependencyCheck, jacoco, the Felix bundle plugin, > scoverage, openclover, spf4j, and the Maven plugins on AbstractMavenReport) > and found none that rely on either default. The risk is a new report that > implements neither: it compiles, then fails at runtime with > StackOverflowError instead of failing to compile. > > I'd prefer to let this vote run and ship your fix for #92 > https://github.com/apache/maven-reporting-api/pull/93 together with #91 in > 4.1.1. If you see it as a blocker, say so, and I'll cancel and re-roll with > the fix. > > Sylwester > > On Sun, Oct 11, 2026 06:17 PM, Elliotte Rusty Harold <[email protected]> > wrote: > > > On Sun, Oct 11, 2026 at 3:35 PM Slawomir Jaranowski > > <[email protected]> wrote: > > > > > > On Sun, 11 Oct 2026 at 17:29, Elliotte Rusty Harold <[email protected]> > > > wrote: > > > > > > > https://github.com/apache/maven-reporting-api/pull/72 introduced an > > > > infinite recursion. Might be worth waiting for a fix. > > > > > > > > > > If one of the methods will be implemented there will be no recursion. > > > > > > and if neither is there will be. > > > > > > > > -- > > Elliotte Rusty Harold > > [email protected] > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > -- Elliotte Rusty Harold [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
