Our commit rules in the wiki say that only the default client is
required to be kept up-to-date with every commit, and it's the job of
gui-maintainers to keep up with the general development. That,
obviously, assumes that there's active gui maintainers. Which is not
the case today. So, we should have an agreement how to develop in
respect to each gui. I'll start discussion with this proposal.
This is mainly about features that have an interface to freeciv
outside the client gui itself - anything initiated by the server, or
read from the common data files. Improvements to the any gui itself
can be made, it makes no sense to require some other gui to get the
feature first (especially if it's something that is technologically
harder to implement on that other client, but is cheap in particular
gtk-clients are the primary clients, which must get support for new
features on initial commit (if any client gets). It's hard to say
which one is more important at the moment. There's not much point in
adding features to gtk2-client, going to be obsolete at some point,
but leaving out from gtk3-client that's going to be the future.
Neither does it make much sense to leave feature out from gtk2-client
that is currently the default one. Good thing is that porting features
between the two is usually easy.
Qt- and sdl2-clients are in "no regressions allowed" -state. While
these clients are only catching up in general, they should support any
new features as soon as possible. They should be catching up, not
constantly behind the gtk-clients. When a new feature is added, there
should be at least plan (and tickets created) to add it to these
clients even if not added in the initial commit. Failures of Qt- or
sdl2-client to support some feature added to freeciv in that version
should be considered stable release blockers.
sdl-client is not as important as it's going away anyway, but often
porting from sdl2-client is so easy it's worth it.
xaw-client should be kept in compiling state
Freeciv-dev mailing list