Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce MAINTAINERS.md #1560

Open
wants to merge 15 commits into
base: master
Choose a base branch
from

Conversation

pavelkumbrasev
Copy link
Contributor

Description

This document introduces public roles for the project and the process to achieve one of these roles.

Other information

@kboyarinov @isaevil @sarathnandu @dnmokhov

Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
@pavelkumbrasev
Copy link
Contributor Author

For some reason GitHub cannot use colors for md files.
This is how VS code renders it:
image
image

And this is GitHub:
image

Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
MAINTAINERS.md Outdated
Comment on lines 44 to 46
| Can suggest Milestones during planning | ✓ | ✓ | ✓ |
| Can choose Milestones for specific component | ✗ | ✓ | ✓ |
| Paticipate in project's Milestones planning | ✗ | ✗ | ✓ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am confused here a little bit. How can Contributor suggest milestones during planning but at the same time they cannot participate in project's planning?

Copy link
Contributor

@isaevil isaevil Nov 14, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is also a typo:
Paticipate -> Participate

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am confused here a little bit. How can Contributor suggest milestones during planning but at the same time they cannot participate in project's planning?

Technically, during a PR submission a Contributor can say smth like "I'd like this fix to be included into the next oneTBB release".

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@omalyshe
But it does not mean we will actually will do it for the next release.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I wanted to say here: different stages of influence of decision making.
E.g. contributor can suggest something != we actually will consider this for the next release.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the verb "choose" in "choose Milestones" is too strong for Code Owner if you don't want to imply that Code Owners participate in Milestones planning.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@omalyshe But it does not mean we will actually will do it for the next release.

Yes, I agree with this. Suggestions from contributors will be considered but not necessarily included in the release.

The process of becoming a Code Owner is:
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
including name, Github username, and affiliation.
2. At least two specific component Maintainers approve the PR.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, there is only one Maintainer right now in oneTBB Core component, for example. How is it possible for "at least two" Maintainers to ACK such PR? :)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also it states earlier that Code Owners "participate in promotions of Code Owners", how do they participate if that cannot approve these. I think maybe "specific component Maintainer" -> "Code Owners of that component or Maintainers"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That was an error, code-owners cannot participate in promotion process

MAINTAINERS.md Outdated
Comment on lines 115 to 122
| Konstantin Boyarinov | @kboyarinov | Intel Corporation | Code Owner |
| Aleksei Fedotov | @aleksei-fedotov | Intel Corporation | Code Owner |
| Ilya Isaev | @isaevil | Intel Corporation | Code Owner |
| Sarath Nandu R | @sarathnandu | Intel Corporation | Code Owner |
| Dmitri Mokhov | @dnmokhov | Intel Corporation | Code Owner |
| Michael Voss | @vossmjp | Intel Corporation | Maintainer |
| Alexey Kukanov | @akukanov | Intel Corporation | Code Owner |
| Pavel Kumbrasev | @pavelkumbrasev | Intel Corporation | Code Owner |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe sort this list by Role?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest sorting the list by name as those are usually unique and does not depend on the account ID in case the project would move to another platform someday.

Also, what about e-mail addresses of people in the list? Do we want to list them here as well so that anyone interested can reach out to them in case of a need or we think that tagging a person in a GitHub Issue is enough?

MAINTAINERS.md Outdated Show resolved Hide resolved
Co-authored-by: Ilya Isaev <ilya.isaev@intel.com>
MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated
Comment on lines 44 to 46
| Can suggest Milestones during planning | ✓ | ✓ | ✓ |
| Can choose Milestones for specific component | ✗ | ✓ | ✓ |
| Paticipate in project's Milestones planning | ✗ | ✗ | ✓ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am confused here a little bit. How can Contributor suggest milestones during planning but at the same time they cannot participate in project's planning?

Technically, during a PR submission a Contributor can say smth like "I'd like this fix to be included into the next oneTBB release".

MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated
| Follow Contribution Guidelines | ✓ | ✓ | ✓ |
| Enforce Contribution Guidelines | ✗ | ✓ | ✓ |
| Co-own component or aspect of the library,<br> including contributing: bug fixes, implementing features,<br> and performance optimizations | ✗ | ✓ | ✓ |
| Co-own on technical direction of component or<br> aspect of the library | ✗ | ✗ | ✓ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code-owners do not co-own technical direction of their specific component?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if we expect this from the code-owners.

MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated
Comment on lines 44 to 46
| Can suggest Milestones during planning | ✓ | ✓ | ✓ |
| Can choose Milestones for specific component | ✗ | ✓ | ✓ |
| Paticipate in project's Milestones planning | ✗ | ✗ | ✓ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the verb "choose" in "choose Milestones" is too strong for Code Owner if you don't want to imply that Code Owners participate in Milestones planning.

The process of becoming a Code Owner is:
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
including name, Github username, and affiliation.
2. At least two specific component Maintainers approve the PR.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also it states earlier that Code Owners "participate in promotions of Code Owners", how do they participate if that cannot approve these. I think maybe "specific component Maintainer" -> "Code Owners of that component or Maintainers"

* Commits to being responsible for that specific area.

The process of becoming a Code Owner is:
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can a contributor nominate themselves?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can a contributor nominate themselves?

I think it is acceptable.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure.

pavelkumbrasev and others added 2 commits November 19, 2024 09:23
Co-authored-by: Mike Voss <michaelj.voss@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
Copy link
Contributor

@omalyshe omalyshe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also address earlier comments.

MAINTAINERS.md Outdated
Comment on lines 44 to 46
| Can suggest Milestones during planning | ✓ | ✓ | ✓ |
| Can choose Milestones for specific component | ✗ | ✓ | ✓ |
| Paticipate in project's Milestones planning | ✗ | ✗ | ✓ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@omalyshe But it does not mean we will actually will do it for the next release.

Yes, I agree with this. Suggestions from contributors will be considered but not necessarily included in the release.

* Commits to being responsible for that specific area.

The process of becoming a Code Owner is:
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can a contributor nominate themselves?

I think it is acceptable.

MAINTAINERS.md Outdated
| _Responsibilities_ | | | |
| Follow the Code of Conduct | ✓ | ✓ | ✓ |
| Follow Contribution Guidelines | ✓ | ✓ | ✓ |
| Enforce Contribution Guidelines | ✗ | ✓ | ✓ |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider removing the ✗ signs to reduce cluttering.

Suggested change
| Enforce Contribution Guidelines | |||
| Enforce Contribution Guidelines | |||

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated
Comment on lines 115 to 122
| Konstantin Boyarinov | @kboyarinov | Intel Corporation | Code Owner |
| Aleksei Fedotov | @aleksei-fedotov | Intel Corporation | Code Owner |
| Ilya Isaev | @isaevil | Intel Corporation | Code Owner |
| Sarath Nandu R | @sarathnandu | Intel Corporation | Code Owner |
| Dmitri Mokhov | @dnmokhov | Intel Corporation | Code Owner |
| Michael Voss | @vossmjp | Intel Corporation | Maintainer |
| Alexey Kukanov | @akukanov | Intel Corporation | Code Owner |
| Pavel Kumbrasev | @pavelkumbrasev | Intel Corporation | Code Owner |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest sorting the list by name as those are usually unique and does not depend on the account ID in case the project would move to another platform someday.

Also, what about e-mail addresses of people in the list? Do we want to list them here as well so that anyone interested can reach out to them in case of a need or we think that tagging a person in a GitHub Issue is enough?

pavelkumbrasev and others added 2 commits November 19, 2024 12:32
Co-authored-by: Aleksei Fedotov <aleksei.fedotov@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
MAINTAINERS.md Outdated
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
including name, Github username, and affiliation.
2. At least two specific component Maintainers approve the PR.
3. CODEOWNERS.md file is updated to represent corresponding areas of responsibility.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be MAINTAINERS.md as well instead of a separate file where the areas are recorded?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be MAINTAINERS.md as well instead of a separate file where the areas are recorded?

It is possible to use automatic reviewer assignment using CODEOWNERS file - https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#about-code-owners. We probably want to use it feature.

@omalyshe
Copy link
Contributor

@pavelkumbrasev Check the codespell result

MAINTAINERS.md Outdated
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
including name, Github username, and affiliation.
2. At least two specific component Maintainers approve the PR.
3. CODEOWNERS.md file is updated to represent corresponding areas of responsibility.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be MAINTAINERS.md as well instead of a separate file where the areas are recorded?

It is possible to use automatic reviewer assignment using CODEOWNERS file - https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners#about-code-owners. We probably want to use it feature.

MAINTAINERS.md Outdated Show resolved Hide resolved
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
MAINTAINERS.md Outdated Show resolved Hide resolved
* [Maintainer](#maintainer)

[permissions]: https://docs.github.com/en/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization#permissions-for-each-role

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i would make 2 separate sections (responsibilities and roles) with the corresponding tables within

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and: i would first put the contributor, code owner, and maintainer sections, and after it show the tables with differences

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated Show resolved Hide resolved
* Demonstrated broad knowledge of the project across multiple areas.
* Commits to using privileges responsibly for the good of the project.
* Is able to exercise judgment for the good of the project, independent of
their employer, friends, or team.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how it can be measured though?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps, maintainer would need to present proofs.
I'm not sure how to measure this :)

MAINTAINERS.md Outdated Show resolved Hide resolved
MAINTAINERS.md Outdated Show resolved Hide resolved
Co-authored-by: Alexandra <alexandra.epanchinzeva@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
Signed-off-by: pavelkumbrasev <pavel.kumbrasev@intel.com>
omalyshe
omalyshe previously approved these changes Nov 22, 2024
Copy link
Contributor

@omalyshe omalyshe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is a good enough to get merged.

MAINTAINERS.md Outdated Show resolved Hide resolved
Co-authored-by: Aleksei Fedotov <aleksei.fedotov@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants