<div dir="ltr">Hello,<br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Feb 21, 2019 at 10:47 AM Daniel Stone <<a href="mailto:daniel@fooishbar.org">daniel@fooishbar.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
One of Weston's goals is to be a reference compositor. As an active<br>
implementation, it serves as a useful neutral ground for the rest of<br>
the ecosystem: we try to be exhaustively correct in what we do<br>
implement, and gets used as a litmus test for clients and compositors<br>
both to compare their behaviour against (who's interpreted the spec<br>
incorrectly?). We take that responsibility pretty seriously, which<br>
places a ceiling on the rate of change as well as the breadth of<br>
functionality we can implement.<br>
<br>
There used to be a rule (observed in all but extremis) that any common<br>
protocol had to have a Weston implementation, as the closest analogue<br>
we had to a conformance test suite. That was abandoned long ago, since<br>
there are some protocols for which it wasn't practical to do so. That<br>
was the point beyond which we moved from Weston being _the_ reference<br>
compositor for the entire ecosystem, to just being a useful resource.<br>
(I get that Weston's README still says 'Weston is the reference<br>
implementation of a Wayland compositor' as literally its first words.<br>
I'd personally be OK with changing that.)<br>
<br>
Weston is also useful as a demonstration vehicle for new low-level<br>
graphics functionality, particularly for EGL and KMS features. We were<br>
the first to do overlay planes, full damage tracking (and now<br>
per-plane KMS damage tracking), dmabuf, buffer modifiers, explicit<br>
fencing, atomic modesetting, same-CRTC clone mode (AFAIK),<br>
aspect-ratio modes, and so on. I'm pretty happy with how that's going,<br>
even if we do still have some feature gaps.<br><br></blockquote><div><br></div><div>Speaking on an entirely personal level (i.e., unrelated to any project or employer) and as someone who has spent an amount of time writing both compositors and clients using Wayland protocols--and also writing those protocols, I found this to be very accurate. My ability to successfully implement protocols in compositors and clients has benefited tremendously over the years from the existence of Weston and its clients, even despite their noted shortcomings. I'll also go a step further and challenge anyone who has done similar work to deny having similarly benefited from Weston.</div><div><br></div><div>If anything, I think devoting more time and energy to improving Weston and underlying layers would only serve to help the Wayland-using community. Better documentation and better reference code lowers barriers to entry and improves the ecosystem: this is something I know all too well from some of the projects that I've worked on.</div><div><br></div><div><br></div><div>Regards,</div><div>Mike</div></div></div>