From the repo
Wayland Protocols has long had a problem with new protocols sitting for months, to years at a time for even basic functionality.
This is hugely problematic when some protocols implement very primitive and basic functionality such as
frog-fifo-v1
, which is needed for VSync to not cause GPU starvation under Wayland and also fix the dreaded application freezing when windows are occluded with FIFO/VSync enabled.
We need to get protocols into end-users hands quicker! The main reason many users are still using X11 is because of missing functionality that we can be shipping today, but is blocked for one reason or another.
Mesa MR to add support for the 'frog-fifo-v1' protocol :(https://github.com/misyltoad/frog-protocols)
Yay, another set of protocols that will just lead to more and more fragmentation.
You do acknowledge one issue with Wayland, probably the biggest issue with Wayland, but then fail to acknowledge the second biggest issue with Wayland being fragmentation.
Solve one issue by making another issue worse.
Wayland's approach has always been to make 3rd party protocols easier to opt in and out of. Sway and Hyprland both used custom protocols whilst official solutions were being designed iirc. Nothing stopping anyone from switching from one protocol to another if they implement the same thing down the line.
At least this way, compositors may be able to use something like frog as a shared "experimental branch" which can be enabled for users who need them, but otherwise disabled whilst Wayland core isn't pressured to work faster.
It's up to Wayland to make these projects obsolete if it causes them or users a problem.
that's just the thing, This is again, more fragmentation, Some compositors support always on top, some don't, you choose x protocol for your app, and now your app works great on sway, but not on KDE or gnome, or it works great on gnome and not kde or sway etc. As an app developer the situation is a bloody joke. My current stance is "just use xwayland because wayland will never be suitable" and thankfully with cosmic and kde both supporting "don't scale xwayland" this seems to work well.
EDIT: they also make enough deviances from the upstream protocols that this can't really be considered a "experimental branch"
EX: https://github.com/misyltoad/frog-protocols/blob/main/frog-protocols/frog-color-management-v1.xml vs https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/14/diffs
I can't help but feel that they like Wayland the way it is, seeing as it's certainly not changed course
this is pretty much how it works in some cases, you need to port from one protocol to another, or to a different system altogether.
I like the approach here, but the requirements are a little vague and prone to bikeshedding. Stuff like "could this be used by multiple clients" might mean a protocol is held in limbo whilst it's given extra scope for example.
It'll need some strong moderation which might rub people the wrong way, but if this keeps Wayland's cutting edge moving whilst the official solutions are found, I'm all for it.