wayland-protocols scope and governance

Pekka Paalanen ppaalanen at gmail.com
Wed Apr 10 08:10:26 UTC 2019


On Mon, 8 Apr 2019 23:14:32 +1200
Scott Anderson <scott.anderson at collabora.com> wrote:

> Do we want anything formal regarding the removal of protocols?
> 
> The one comes to mind currently is xdg-shell-unstable-v5, which most (if 
> not all?) compositors have dropped support for.
> 
> If something previously widespread falls out of usage and compositors 
> remove their implementations, is there grounds for removing it from the 
> registry? Should there be different treatment for protocols that are 
> marked stable or unstable?
> 
> I don't think people would strongly object to xdg-shell-unstable-v5 
> being removed, but hypothetically, if something like wl_shell was an 
> extension, should it be removed? It has been completely supplanted by 
> xdg-shell, and we don't want to encourage clients to use it.
> wl_shell is core, so it wouldn't actually get removed, but the idea is 
> if a similar situation happens again between extension protocols.
> 
> I suppose the real question is whether the registry is an up-to-date and 
> relevant list of extensions that clients should realistically use or 
> simply a list extensions that only gets added to over time.
> 
> Perhaps the solution is to keep the extensions but to just formally mark 
> them as obsolescent and specify what they should be doing instead. It 
> would be nice to not keep several versions of old unstable protocols, 
> though.

Hi Scott,

wayland-protocols' README does mention deprecated category. It has
never been used before.

I think the reason to move a protocol from unstable or stable into
deprecated is to force all users of that protocol to re-evaluate their
use through intentionally breaking their source builds. IOW, if we want
to send a strong message that hey, you really should consider stop
using or implementing this extension, then we would do the move.

While doing that, we should also make sure to not break already built
binaries, which means that e.g. renaming interfaces is not possible. If
we rename interfaces, projects that adapt their sources and keep on
using the deprecated extensions will no longer be compatible with
binaries that were never rebuilt.

Still, I think the move should be considered a harsh action not to be
done lightly. I don't think any extension should ever be completely
removed from wayland-protocols, so moving into deprecated is the
closest we could do for removal.

Another question is whether deprecated protocols should be installed. I
think they should, at first at least, so that downstream has a real
choice of keep using them. We might consider not installing them
anymore later, while still keeping the files in the repository for
archiving.


Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20190410/19b329ee/attachment.sig>


More information about the wayland-devel mailing list