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]

Reply via email to