EdgeTX Project By-Laws
The name of this open source project is EdgeTX.
The purpose of EdgeTX is to provide an open source software that allows users to choose freely from a number of compatible vendors and run their Radio Control (RC) models freely, without being bound to closed source systems. EdgeTX allows users to experiment and develop new features without limitations and restrictions by vendors and their commercial interests.
The source code for EdgeTX is maintained in GitHub Project EdgeTX. The primary GitHub repository is the edgetx repository.
Project Steering Committee
The EdgeTX Project Steering Committee (PSC) is the official governing body of the EdgeTX open source project and is responsible for all management aspects. The PSC is responsible for setting the overall direction of the project and its releases, determining what features go in, managing the documentation, assigning and revoking commit rights, etc.
The section that follows describes how the (PSC) is formed and operates to make decisions on all aspects (both technical and non-technical) of the EdgeTX project.
Current Project Steering Committee
The current committee members (and their discord usernames) are:
- Raphael Coeffic (pafleraf) - Committee Chair
- Robert Janiszewski (JimB40)
- Peter Feerick (pfeerick)
- Risto Kõiva (Risto)
- Richard Li (Richard Li)
- Phil Eville (EZRipFPV)
- Malte Langermann (Malte)
The PSC is made up of individuals who are either developers, users, or other stakeholders. Members are elected to participate in the PSC based on merit irrespective of their organizational ties. It is desirable but not strictly required of the PSC to be made up of an odd number of members to prevent ties in the voting process. The PSC should consist of at least 3 members, but no more than 7 to prevent too much bureaucracy.
One member of the PSC is appointed the Chair, who has additional responsibilities to organize regular meetings and to resolve tie votes should they occur. The Chair may also appoint one member to act as Secretary. In the case where the Chair’s position is vacated, the committee will elect a new Chair.
Positions in the PSC have a term of 1 year. Terms will expire at the beginning of the calendar year, although committee members should continue to serve until a replacement has been officially voted in. The PSC second term will expire on 31 Dec 2023.
Committee Member Elections
When a vacancy in the PSC is created, any member of the PSC may nominate someone for the PSC. Nominees must indicate acceptance of the nomination to be eligible for election. A self-nomination is treated as already being accepted by the nominee.
Once all nominations for a PSC position have been made, a vote will be taken from the current PSC. The nominee with the most votes from the majority of the voting PSC members will be added to the PSC.
PSC Voting Process
For actions that require a PSC vote (ie. new PSC members, removal of members, the appointment of PSC Chair, project administrative decisions or disputed technical decisions) a vote will be called during a PSC meeting.
Votes regarding PSC members must be announced prior to the PSC meeting so that all PCS members have the opportunity to vote during the meeting or via proxy. Additionally, all votes regarding PSC members must achieve a 2/3s quorum of the active PSC members to be valid.
Once a vote has been completed, the results of the election will be posted publically on the announcements Discord channel.
Stepping Down and Removal
If for any reason a PSC member is not able to fully participate then they may step down. If a PSC member is not active in the project (e.g. attending PSC meetings, not participating in discussions, not contributing to the project, etc.) for a period of two months then the PSC reserves the right to remove that individual on the PSC and seek nominations to fill that position. Should that person become active again, they would need to be re-elected to participate on the PSC again. Removing members for any reason (inactivity, a person that counteracts the goals of the project, etc.) requires a majority vote from the PSC. Any vacancy created through resignation or removal must be filled as soon as possible as described previously.
The PSC is responsible for all aspects of managing the EdgeTX open source project including setting the overall direction of the project and releases. The PSC should meet at least quarterly. This section outlines the responsibilities of the PSC as a whole and the responsibilities of its members.
Feature Development and Release Management
The PSC is responsible for defining the project roadmap, deciding which new features and significant code changes are accepted into the project, and into which release the change will appear. Refer to the # Versioning, Branch and Release Strategy for further information on versioning, branch and release management.
Project Policies and Procedures
The PSC is responsible for defining the policies and procedures, including:
- Code reviews
- Documentation requirements
- Granting and revoking commit access
- Testing requirements
- Branch practice
- Release schedule (frequency and timing)
- Version numbering
- Reviewing the issues and bugs on GitHub and making assignments to address them
- Amending the PSC guiding document as needed
- Deciding on project and expenditures
The chair has the extra responsibility to set up development and PSC meetings regarding future work, whenever he deems it necessary. The chair must schedule at least one PSC meeting every quarter. PSC meetings are for members of the PSC committee to discuss issues related to the project roadmap and governance.
The chair is responsible for closing votes and summarizing PSC member votes or appointing another PSC member to do so. The chair is responsible for adjudicating should there be a voting dispute.
The chair may appoint one member of the PSC committee as secretary to take minutes during the meetings or any other administrative tasks as agreed.
Code of Conduct
All members of the community are expected to adhere to the Community Guildlines in all activities related to EdgeTX. PSC members help maintain user adherence to the community guidelines and can recommend the “time out” or removal of offenders, to be decided by the PSC.
Changes to this governing document can be proposed on during the regular planned PSC meeting. If no meeting is planned, then a special PSC meeting will be held to review the proposal. In order for a proposal to be considered for voting, a quorum of 2/3 of the PSC members must be present.
Adapted from Tethys Platform - Project By-Laws.