Unity-Technologies / qstat

New official qstat repository
Artistic License 2.0
121 stars 33 forks source link

[discuss] Replace custom cfg format by key-value .ini, use GLib for parsing #31

Closed vorot93 closed 7 years ago

vorot93 commented 9 years ago

Current .cfg format is very confusing (to put it mildly), gametype PREYM new extend DM3M is not something easily understandable by end-user. At the same time the essence of it are good old key-value pairs.

glib is a very neat and cross-platform helper library for C. One of the features it offers is parsing INI-files compliant with XDG Desktop File specification. While used for .desktop files for various Linux DE, this format is very much applicable for any key-value setting types. It is very straightforward and simple to understand as well as standard for Unix desktops.

See this file for example. It is used by Obozrenie game server browser and has been solid so far.

We could use this for qstat config file. It will allow us to lighten the codebase and make config files clearer.

The downside is that it will introduce glib dependency. While lightweight on its own and required package on every Linux desktop, things may get ugly with OS X / Windows. On the other hand, perhaps it's time to reevaluate non-GNU / BSD platforms?....

stevenh commented 7 years ago

Yes but this is a significant effort and would backwards incompatible so would be better to do with a different project if I'm honest.

We're considering a new golang library which is much better suited for moving forward.