Difference between revisions of "Organisation"

From Minetest Developer Wiki
Jump to navigation Jump to search
(Meeting discussion 2024-02-18 (related cleanup))
 
(39 intermediate revisions by 7 users not shown)
Line 1: Line 1:
== System ==
+
== Contributors ==
Minetest's organization update of 2014-01-02:
+
A contributor is anyone who has made a pull request that has been merged, or successfully sent a patch to be applied otherwise.
  
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).
+
== Core developers ==
 +
Core developers have special privileges and responsibilities compared to other contributors:
 +
* Can vote for and against merging pull requests (See also [[Git Guidelines]])
 +
* Has write access to the Minetest team's repositories on GitHub
  
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.
+
The core team should all be people who are trusted and capable of reviewing C++ code if you ask them to. They don't necessarily need to have the time. However, if a core developer doesn't write or review any code for a long time, the trust disappears.
  
== Subsystems ==
+
==== Assignment ====
 +
Core developers are assigned and unassigned by celeron55, based on these rules:
 +
* Only people who have already contributed to the project can be assigned to be core developers.
 +
* The person themselves or anyone else can propose someone to become or stop being a core developer. Do this by "/msg celeron55 blah blah", or by email.
 +
* Celeron55 accepts complaints about core developers and ultimately decides on unassignments.
 +
* Core developers, like other contributors, should document and publish their work in a way that allows another contributor to pick up on it if the core developer stops working on the project due to any reason.
 +
* If a person doesn't use their core developer privileges for 6 months, the privileges will be revoked for security reasons.
  
{| class="wikitable" style="background-color: #ff6600;" width="80%"
+
== Past major changes ==
|Developer
+
2015-11-02: The subsystem maintainer method was officially taken out of use. It had already been unofficially out of use for a long time. See the history of this page for details about how it worked.
|Subsystem
 
|- style="background-color: #ffddaa;" width="80%"
 
|celeron55
 
|maintainer conflicts
 
|- style="background-color: #ffffff;" width="80%"
 
|sapier
 
|server/client/env
 
|- style="background-color: #ffddaa;" width="80%"
 
|kahrl
 
|startup/config/util
 
|- style="background-color: #ffffff;" width="80%"
 
|ShadowNinja
 
|script API
 
|- style="background-color: #ffddaa;" width="80%"
 
|hmmmm
 
|mapgen
 
|- style="background-color: #ffffff;" width="80%"
 
|celeron55
 
|client/audiovisuals
 
|- style="background-color: #ffddaa;" width="80%"
 
|sapier
 
|low-level network
 
|- style="background-color: #ffffff;" width="80%"
 
|thexyz
 
|build system
 
|- style="background-color: #ffddaa;" width="80%"
 
|proller
 
|masterserver
 
|- style="background-color: #ffffff;" width="80%"
 
|ShadowNinja
 
|Documentation
 
|}
 
  
Those positions will maybe be assigned in the future:<br>
+
[[Category:Rules and Guidelines]]
releases<br>
+
[[Category:Root-Category]]
voting/community<br>
+
[[Category:Organisation]]
 
 
== Subsystem Files ==
 
 
 
(To be specified here)
 

Latest revision as of 15:31, 18 February 2024

Contributors

A contributor is anyone who has made a pull request that has been merged, or successfully sent a patch to be applied otherwise.

Core developers

Core developers have special privileges and responsibilities compared to other contributors:

  • Can vote for and against merging pull requests (See also Git Guidelines)
  • Has write access to the Minetest team's repositories on GitHub

The core team should all be people who are trusted and capable of reviewing C++ code if you ask them to. They don't necessarily need to have the time. However, if a core developer doesn't write or review any code for a long time, the trust disappears.

Assignment

Core developers are assigned and unassigned by celeron55, based on these rules:

  • Only people who have already contributed to the project can be assigned to be core developers.
  • The person themselves or anyone else can propose someone to become or stop being a core developer. Do this by "/msg celeron55 blah blah", or by email.
  • Celeron55 accepts complaints about core developers and ultimately decides on unassignments.
  • Core developers, like other contributors, should document and publish their work in a way that allows another contributor to pick up on it if the core developer stops working on the project due to any reason.
  • If a person doesn't use their core developer privileges for 6 months, the privileges will be revoked for security reasons.

Past major changes

2015-11-02: The subsystem maintainer method was officially taken out of use. It had already been unofficially out of use for a long time. See the history of this page for details about how it worked.