Organisation

From Minetest Developer Wiki
Revision as of 11:48, 2 January 2014 by Celeron55 (talk | contribs) (→‎System)
Jump to navigation Jump to search

System

With the goal of lessening the likeliness of pull requests being left hanging around, making it clearer who knows what, giving more motivation via responsibility and change for the sake of change, Minetest's organization update of 2014-01-02:

The engine is split into virtual "subsystems" based on the most easily definable but still meaningful parts of the code (mostly each file should belong to one subsystem, but this is not strictly possible).

Each subsystem is allocated to one "subsystem maintainer", who is responsible for making sure pull requests get handled and fixing the subsystem if it doesn't work. Subsystem maintainers are trusted to give their permissions and/or responsibiltiies to someone else too if they see fit.

Subsystem maintainers can be proposed to the core team by anyone (preferably by themselves or by the previous one), and they are not-so-officially majority voted. The person on "maintainer conflicts" can turn down proposals on the basis of wrong direction or too much controversy (as rarely as possible).

Subsystems

Developer Subsystem
celeron55 maintainer conflicts
sapier server/client/env
kahrl startup/config/util
ShadowNinja script API
hmmmm mapgen
celeron55 client/audiovisuals
sapier low-level network
thexyz build system
proller masterserver
ShadowNinja Documentation

Those positions will maybe be assigned in the future:
releases
voting/community

Subsystem Files

(TODO)