From c09b143d791eddaa3990fd36ab24e3c24b518e43 Mon Sep 17 00:00:00 2001 From: Michael Baentsch <57787676+baentsch@users.noreply.github.com> Date: Sat, 7 Oct 2023 12:21:08 +0200 Subject: [PATCH 1/6] add new issue template [skip ci] --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- .github/ISSUE_TEMPLATE/discussion.md | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 .github/ISSUE_TEMPLATE/discussion.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 22234bd7..08658392 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -2,7 +2,7 @@ name: Bug report about: Create a report to help us improve title: '' -labels: '' +labels: 'bug' assignees: '' --- diff --git a/.github/ISSUE_TEMPLATE/discussion.md b/.github/ISSUE_TEMPLATE/discussion.md new file mode 100644 index 00000000..6c0a6b09 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/discussion.md @@ -0,0 +1,25 @@ +--- +name: Question, Feature, Documentation +labels: 'question' +about: Ask question, request feature or documentation update +--- + +### Thank you for taking the time to share your thoughts with us. + +We welcome all suggestions for new features or documentation updates +helping others to make better use of this project. + +As with any other topic you'd like to discuss with the community, +we'd primarily like to invite you to [open a discussion](https://github.com/openssl/openssl/discussions) +item with your concern. + +If you have a bug to report please use the [Bug report template](https://github.com/open-quantum-safe/oqs-provider/issues/new?assignees=&labels=&projects=&template=bug_report.md&title=). + +If you have an issue with the project that does not qualify as a bug +and have already explored the code to the extent that you can make a +proposal how to handle the issue, please feel free to open a +"blank issue" providing all information you have already collected. + +Please remember to tell us which code version/branch you are using and +then briefly describe the issue and proposal how to resolve it if +available. From 057e11322dca6f83e5c90e8baab46c6ffb25e338 Mon Sep 17 00:00:00 2001 From: Michael Baentsch <57787676+baentsch@users.noreply.github.com> Date: Sat, 7 Oct 2023 12:31:54 +0200 Subject: [PATCH 2/6] add CONTRIBUTING policy [skip ci] --- CONTRIBUTING | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 CONTRIBUTING diff --git a/CONTRIBUTING b/CONTRIBUTING new file mode 100644 index 00000000..fc00765d --- /dev/null +++ b/CONTRIBUTING @@ -0,0 +1,57 @@ +# Contributing (policy) + +This file documents the contribution guidelines used for this project. + +## Roles + +The following roles exist in the project: + +1. Maintainer: Person with github administrative rights. + +2. Committer: Person with github "Write" privileges; this entails the right and obligation to review PRs by Contributors and to actively participate in discussions. + +3. Contributor: Person that has contributed code. + +4. Users: Person using the project passively or actively, e.g., by participating in discussions. + +## Relationships between roles + +Any User may also be Contributor. Any Contributor may also be Committer. Any Committer may also be Maintainer. A Maintainer must be a Committer. + +## Change of role + +Any User may become Contributor by creating a pull request (PR) and getting it successfully reviewed and merged by Committers. + +Any Contributor can become Committer by contributing sufficient code and displaying deep subject matter knowledge in discussions such that a majority of Committers vote for this change of role. A Maintainer can veto such vote. Such veto can be overruled by a 2/3 majority of Committers. + +As such voting decision may be considered subjective, Contributors striving to become Committers are encouraged to ask for advice by Committers as to what --if anything-- should be done (additionally to already documented knowledge in contributions) to attain this status. Baseline requirements for contributions are documented in [CONTRIBUTING.md](CONTRIBUTING.md). Any Contributor can create a discussion item to request a vote to become Committer. + +Any Committer can become Maintainer by majority vote of voting Committers. A current Maintainer can veto such vote. Such veto can be overruled by a 2/3 majority of all Committers. + +A Maintainer is not permitted to remove another Maintainer's github privileges. + +A Committer automatically may be moved to Contributor status if not actively contributing by discussion or PR review during the last 90 days or if voluntarily suspending this status (leave of absence etc.). If a Maintainer loses the Committer status (or voluntarily steps down from this role) the Committers have to determine whether a new Maintainer needs to be elected. + +## Voting + +Votes are to be executed by way of open github discussions. No quorum is needed for votes open for 4 weeks. Urgent matters may be decided by majority vote among Maintainers or 2/3 majority by all Committers within an arbitrary voting period. + +Any Committer may voluntarily temporarily for a documented period step down from the role losing voting rights for the specified period. If such period extends beyond one year, the Committer permanently loses role and rights. The period is documented in this file next to the person's name below. + +## Documentation of roles + +Current Maintainer(s) and Committer(s) are to be documented below by way of reference to their github handles. + +### Maintainer(s) + +@baentsch + +### Committer(s) + +@baentsch +@levitte +@bhess +@dstebila +@thb-sb +@christianpacquin + From ce0c13c899818ce3a34e6cf6ea04fa8cd0d5e723 Mon Sep 17 00:00:00 2001 From: Michael Baentsch <57787676+baentsch@users.noreply.github.com> Date: Mon, 16 Oct 2023 08:38:17 +0200 Subject: [PATCH 3/6] correct maintainer status [skip ci] --- CONTRIBUTING | 1 + 1 file changed, 1 insertion(+) diff --git a/CONTRIBUTING b/CONTRIBUTING index fc00765d..d0815e1b 100644 --- a/CONTRIBUTING +++ b/CONTRIBUTING @@ -45,6 +45,7 @@ Current Maintainer(s) and Committer(s) are to be documented below by way of refe ### Maintainer(s) @baentsch +@dstebila ### Committer(s) From 5c8a26af0f6bfcd85431413ac9f4dc9bbc2ce173 Mon Sep 17 00:00:00 2001 From: Michael Baentsch <57787676+baentsch@users.noreply.github.com> Date: Wed, 18 Oct 2023 08:29:08 +0200 Subject: [PATCH 4/6] feedback by @levitte incorporated [skip ci] --- CONTRIBUTING | 59 +-------------------------------------------------- GOVERNANCE.md | 57 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+), 58 deletions(-) create mode 100644 GOVERNANCE.md diff --git a/CONTRIBUTING b/CONTRIBUTING index d0815e1b..242d7f46 100644 --- a/CONTRIBUTING +++ b/CONTRIBUTING @@ -1,58 +1 @@ -# Contributing (policy) - -This file documents the contribution guidelines used for this project. - -## Roles - -The following roles exist in the project: - -1. Maintainer: Person with github administrative rights. - -2. Committer: Person with github "Write" privileges; this entails the right and obligation to review PRs by Contributors and to actively participate in discussions. - -3. Contributor: Person that has contributed code. - -4. Users: Person using the project passively or actively, e.g., by participating in discussions. - -## Relationships between roles - -Any User may also be Contributor. Any Contributor may also be Committer. Any Committer may also be Maintainer. A Maintainer must be a Committer. - -## Change of role - -Any User may become Contributor by creating a pull request (PR) and getting it successfully reviewed and merged by Committers. - -Any Contributor can become Committer by contributing sufficient code and displaying deep subject matter knowledge in discussions such that a majority of Committers vote for this change of role. A Maintainer can veto such vote. Such veto can be overruled by a 2/3 majority of Committers. - -As such voting decision may be considered subjective, Contributors striving to become Committers are encouraged to ask for advice by Committers as to what --if anything-- should be done (additionally to already documented knowledge in contributions) to attain this status. Baseline requirements for contributions are documented in [CONTRIBUTING.md](CONTRIBUTING.md). Any Contributor can create a discussion item to request a vote to become Committer. - -Any Committer can become Maintainer by majority vote of voting Committers. A current Maintainer can veto such vote. Such veto can be overruled by a 2/3 majority of all Committers. - -A Maintainer is not permitted to remove another Maintainer's github privileges. - -A Committer automatically may be moved to Contributor status if not actively contributing by discussion or PR review during the last 90 days or if voluntarily suspending this status (leave of absence etc.). If a Maintainer loses the Committer status (or voluntarily steps down from this role) the Committers have to determine whether a new Maintainer needs to be elected. - -## Voting - -Votes are to be executed by way of open github discussions. No quorum is needed for votes open for 4 weeks. Urgent matters may be decided by majority vote among Maintainers or 2/3 majority by all Committers within an arbitrary voting period. - -Any Committer may voluntarily temporarily for a documented period step down from the role losing voting rights for the specified period. If such period extends beyond one year, the Committer permanently loses role and rights. The period is documented in this file next to the person's name below. - -## Documentation of roles - -Current Maintainer(s) and Committer(s) are to be documented below by way of reference to their github handles. - -### Maintainer(s) - -@baentsch -@dstebila - -### Committer(s) - -@baentsch -@levitte -@bhess -@dstebila -@thb-sb -@christianpacquin - +For Linux Foundation contract adherence, consider the contents of the file [GOVERNANCE.md](GOVERNANCE.md) instead. diff --git a/GOVERNANCE.md b/GOVERNANCE.md new file mode 100644 index 00000000..71e1e00e --- /dev/null +++ b/GOVERNANCE.md @@ -0,0 +1,57 @@ +# Contributing (policy) + +This file documents the contribution guidelines used for this project. + +## Roles + +The following roles exist in the project: + +1. Maintainer: Person with github administrative rights. + +2. Committer: Person with github "Write" privileges; this entails the right and obligation to review PRs by Contributors and to actively participate in discussions. + +3. Contributor: Person that has contributed code. + +4. Users: Person using the project passively or actively, e.g., by participating in discussions. + +## Relationships between roles + +Any User may also be Contributor. Any Contributor may also be Committer. Any Committer may also be Maintainer. A Maintainer must be a Committer. + +## Change of role + +Any User may become Contributor by creating a pull request (PR) and getting it successfully reviewed and merged by Committers. + +Any Contributor can become Committer by contributing sufficient code and displaying deep subject matter knowledge in discussions such that a majority of Committers vote for this change of role. A Maintainer can veto such vote. Such veto can be overruled by a 2/3 majority of Committers. + +As such voting decision may be considered subjective, Contributors striving to become Committers are encouraged to ask for advice by Committers as to what --if anything-- should be done (additionally to already documented knowledge in contributions) to attain this status. Baseline requirements for contributions are documented in [CONTRIBUTING.md](CONTRIBUTING.md). Any Contributor can create a discussion item to request a vote to become Committer. + +Any Committer can become Maintainer by majority vote of voting Committers. A current Maintainer can veto such vote. Such veto can be overruled by a 2/3 majority of all Committers. + +A Maintainer is not permitted to remove another Maintainer's github privileges. + +A Committer automatically may be moved to Contributor status if not actively contributing by discussion or PR review during the last 90 days or if voluntarily suspending this status (leave of absence etc.). If a Maintainer loses the Committer status (or voluntarily steps down from this role) the Committers have to determine whether a new Maintainer needs to be elected. + +## Voting + +Votes are to be executed by way of open github discussions. No quorum is needed for votes open for 4 weeks. Urgent matters may be decided by majority vote among Maintainers or 2/3 majority by all Committers within an arbitrary voting period. + +Any Committer may voluntarily temporarily for a documented period step down from the role losing voting rights for the specified period. If such period extends beyond one year, the Committer permanently loses role and rights. The period is documented in this file next to the person's name below. + +## Documentation of roles + +Current Maintainer(s) and Committer(s) are to be documented below by way of reference to their github handles. + +### Maintainer(s) + +@baentsch +@dstebila + +### Committer(s) + +@baentsch +@bhess +@dstebila +@thb-sb +@christianpacquin + From 6467f43428ab5bde1586cfb7aaecf0a604dc1e06 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Wed, 18 Oct 2023 17:36:02 +0200 Subject: [PATCH 5/6] Details in GOVERNANCE.md (#287) The title and explanation aren't right, and what voting includes isn't clear. --- GOVERNANCE.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/GOVERNANCE.md b/GOVERNANCE.md index 71e1e00e..d42f2b15 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -1,6 +1,6 @@ -# Contributing (policy) +# Governance -This file documents the contribution guidelines used for this project. +This file documents the governance guidelines used for this project. ## Roles @@ -34,6 +34,8 @@ A Committer automatically may be moved to Contributor status if not actively con ## Voting +Change of role or changes to this document is subject to voting. + Votes are to be executed by way of open github discussions. No quorum is needed for votes open for 4 weeks. Urgent matters may be decided by majority vote among Maintainers or 2/3 majority by all Committers within an arbitrary voting period. Any Committer may voluntarily temporarily for a documented period step down from the role losing voting rights for the specified period. If such period extends beyond one year, the Committer permanently loses role and rights. The period is documented in this file next to the person's name below. From 1b35f93be0f217c0896295db7600f7834d8c29ea Mon Sep 17 00:00:00 2001 From: Michael Baentsch <57787676+baentsch@users.noreply.github.com> Date: Sun, 22 Oct 2023 18:39:47 +0200 Subject: [PATCH 6/6] updates following SustainOSS feedback --- GOVERNANCE.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/GOVERNANCE.md b/GOVERNANCE.md index d42f2b15..402d06d2 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -30,7 +30,11 @@ Any Committer can become Maintainer by majority vote of voting Committers. A cur A Maintainer is not permitted to remove another Maintainer's github privileges. -A Committer automatically may be moved to Contributor status if not actively contributing by discussion or PR review during the last 90 days or if voluntarily suspending this status (leave of absence etc.). If a Maintainer loses the Committer status (or voluntarily steps down from this role) the Committers have to determine whether a new Maintainer needs to be elected. +A Committer automatically may be moved to Contributor status if not actively contributing by discussion or PR review during the last 90 days or if voluntarily suspending this status (leave of absence etc.). If a Maintainer loses the Committer status and with this, the Maintainer status (or voluntarily steps down from this role) the Committers have to determine whether a new Maintainer needs to be elected. + +Any person violating the [code of conduct](CODE_OF_CONDUCT.md], consistently not fulfilling the role responsibilities or other reasons can lose the role held if a simple majority of Committers votes for such removal and no Maintainer vetos that decision. If a Maintainer is to be removed from that role a 2/3 majority of Committers must agree. + +Depending on the reason for removal, a Maintainer may be converted to Emeritus status. Emeritus Maintainers may still be consulted on some project matters, and can be returned to Maintainer status if their availability changes and a simple majority of Committers agrees. ## Voting