ChanServ changed the topic of #wayland to: https://wayland.freedesktop.org | Discussion about the Wayland protocol and its implementations, plus libinput | register your nick to speak
WhizzWr has quit [Quit: Bye!]
ybogdano has quit [Ping timeout: 480 seconds]
columbarius has joined #wayland
co1umbarius has quit [Ping timeout: 480 seconds]
bodiccea has quit [Ping timeout: 480 seconds]
ybogdano has joined #wayland
zebrag has joined #wayland
ybogdano has quit [Ping timeout: 480 seconds]
PuercoPop has joined #wayland
Company has quit [Quit: Leaving]
PuercoPop has quit [Ping timeout: 480 seconds]
zebrag has quit [Quit: Konversation terminated!]
jgrulich has joined #wayland
flibit has joined #wayland
bim9262 has quit [Ping timeout: 480 seconds]
flibitijibibo has quit [Ping timeout: 480 seconds]
dcz_ has joined #wayland
kts has joined #wayland
bim9262 has joined #wayland
rv1sr has joined #wayland
hardening has joined #wayland
MajorBiscuit has joined #wayland
danvet has joined #wayland
Major_Biscuit has joined #wayland
MajorBiscuit has quit [Ping timeout: 480 seconds]
tzimmermann has joined #wayland
jekstrand has quit [Ping timeout: 480 seconds]
<pq>
bl4ckb0ne, in a Wayland, because object version is usually inherited from the parent/factory object, bumping a child interface version *requires* bumping also the parent/factory interface version.
<pq>
bl4ckb0ne, we just don't bother documenting all child interface *also* in all parent interfaces. :-)
<pq>
bl4ckb0ne, so, you see what requests wl_compositor has, you see what new object types it can create, so you know where to look for version changes.
<pq>
bl4ckb0ne, your code needs to explicitly handle all interface versions between 1 and the maximum version you support.
<pq>
There is always the possibility that the the program on the other side of the connection will do only some lower version.
<pq>
libwayland does automatically only very basic version checks: does this message exist or not. Everything else is up to you.
<pq>
automatic wayland doc generators could collect a rough summary about version bumps to a global interface: which messages were added in which version of which child interface. The problem with that is that that may not be all the changes. Not all changes are machine-detectable, some are only spec wording.
<pq>
parsing git history could work, though
jgrulich has quit [Remote host closed the connection]
rasterman has joined #wayland
jgrulich has joined #wayland
gschwind has joined #wayland
Lucretia has quit [Read error: Connection reset by peer]
Lucretia has joined #wayland
rv1sr has quit []
rv1sr has joined #wayland
jgrulich has quit [Remote host closed the connection]
Leopold_ has quit [Remote host closed the connection]
fmuellner has quit []
Leopold_ has joined #wayland
fmuellner has joined #wayland
fmuellner has quit [Read error: Connection reset by peer]
flibit has quit []
flibitijibibo has joined #wayland
Leopold_ has quit []
Company has joined #wayland
<bl4ckb0ne>
pq: thanks for the clarification
<bl4ckb0ne>
i guess binding v5 or v1 for the wl_compositor doesnt matter that much, im tempted to just use what `version` gives
tzimmermann has quit [Quit: Leaving]
bodiccea has joined #wayland
<emersion>
noooooooo
<emersion>
never do this
<emersion>
if we upgrade wl_compositor to v6, and add a new event to any of the child objects, then your client crashes
<emersion>
has happened with wl_output :(
<emersion>
and multiple broken clients
<bl4ckb0ne>
yeah i remember the tidal wave of sway issue from chromium users
* bl4ckb0ne
puts 1 to make emersion happy
<MrCooper>
this kind of mistake was a classic with X11 as well :/
Lucretia has quit []
Lucretia has joined #wayland
<kennylevinsen>
bl4ckb0ne: I usually always pick the current version at the time of writing the client
<kennylevinsen>
It's just a way to avoid being broken by future changes to the protocol before you've had time to account for them, not something where you should pick a "right" version.
jgrulich has quit [Remote host closed the connection]
Major_Biscuit has quit [Ping timeout: 480 seconds]
<dottedmag>
emersion: I'm sorry, I'm not sure what is the exact situation. Client sending the version from the global, and being unable to handle new events?
<emersion>
dottedmag: yes
<dottedmag>
thnx
kts has quit [Quit: Leaving]
jekstrand has joined #wayland
professorclueless35 has joined #wayland
Major_Biscuit has joined #wayland
Narrat has joined #wayland
professorclueless35_ has joined #wayland
professorclueless35 has quit [Ping timeout: 480 seconds]
Major_Biscuit has quit [Ping timeout: 480 seconds]
jmdaemon has joined #wayland
markbolhuis has joined #wayland
markbolhuis has quit []
professorclueless35 has joined #wayland
professorclueless35_ has quit [Ping timeout: 480 seconds]
professorclueless35 has quit [Ping timeout: 480 seconds]