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

Merge CODEOWNERS Part 2 #1415

Closed
wants to merge 13 commits into from
Closed

Merge CODEOWNERS Part 2 #1415

wants to merge 13 commits into from

Conversation

chevdor
Copy link
Contributor

@chevdor chevdor commented Sep 6, 2023

Description

This PR:

  • merge the CODEOWNERS from each former repos
  • add catch-alls and default owners

@chevdor chevdor added the R0-silent Changes should not be mentioned in any release notes label Sep 6, 2023
@chevdor chevdor requested review from a team September 6, 2023 08:55
@chevdor chevdor changed the title Merge codeowners Merge CODEOWNERS Sep 6, 2023
.github/CODEOWNERS Outdated Show resolved Hide resolved
.github/CODEOWNERS Show resolved Hide resolved
.github/CODEOWNERS Outdated Show resolved Hide resolved
chevdor and others added 2 commits September 6, 2023 12:09
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
@ggwpez
Copy link
Member

ggwpez commented Sep 6, 2023

This actually closes #1164.
There are more similar ones in the Polkadot-SDK (Repo) or Monorepo projects.

/cumulus @paritytech/cumulus-locks-review @paritytech/core-devs
/docker @paritytech/ci @paritytech/release-engineering
/docs @paritytech/docs-audit
/polkadot @paritytech/polkadot-review
Copy link
Member

Choose a reason for hiding this comment

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

hmm, I think this was previously only needed for runtime files, which are going to be migrated to https://github.com/polkadot-fellows/runtimes

#1239 (comment)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Are you suggesting using core-devs for /polkadot as catch-all as well ?

Copy link
Member

@ordian ordian Sep 6, 2023

Choose a reason for hiding this comment

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

yeah, probably start with not too strict rules and enforce other rules via PRCR

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes the idea here is not to be too strict but have "full" coverage for the relevant files (ie all files but things like .gitignore, etc...)

Copy link
Contributor

Choose a reason for hiding this comment

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

This is definitely too strict

Copy link
Member

@bkchr bkchr left a comment

Choose a reason for hiding this comment

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

Please stop introducing random rules that weren't present before.

/.github @paritytech/ci @paritytech/release-engineering
/.gitlab @paritytech/ci
/bridges @paritytech/bridges-core
/cumulus @paritytech/cumulus-locks-review @paritytech/core-devs
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
/cumulus @paritytech/cumulus-locks-review @paritytech/core-devs

/cumulus @paritytech/cumulus-locks-review @paritytech/core-devs
/docker @paritytech/ci @paritytech/release-engineering
/docs @paritytech/docs-audit
/polkadot @paritytech/polkadot-review
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
/polkadot @paritytech/polkadot-review

/docs @paritytech/docs-audit
/polkadot @paritytech/polkadot-review
/scripts/ci @paritytech/ci @paritytech/release-engineering
/substrate @paritytech/SubstrateTeamLeads
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
/substrate @paritytech/SubstrateTeamLeads

Copy link
Contributor

@franciscoaguirre franciscoaguirre left a comment

Choose a reason for hiding this comment

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

We could add a new rule /polkadot/xcm/ and tag the XCM team, or Keith, Just and me

/cumulus @paritytech/cumulus-locks-review @paritytech/core-devs
/docker @paritytech/ci @paritytech/release-engineering
/docs @paritytech/docs-audit
/polkadot @paritytech/polkadot-review
Copy link
Contributor

Choose a reason for hiding this comment

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

This is definitely too strict

@chevdor
Copy link
Contributor Author

chevdor commented Sep 7, 2023

@bkchr, the idea is to have some fallback/catch-all for:

  • /substrate
  • /polkadot
  • /cumulus

Ideally, those catch-all never trigger because we have more accurate rules to cover the content of the folders mentioned above. They should be covered nonetheless in case CODEOWNERS rules end up not covering everything* (that can easily happen as the project grows and new content is added).

  • with the current state of the PR, I did not try 100% coverage, but those top level folder should be covered.
    This is why I would rather not keep those empty.

We could add a new rule /polkadot/xcm/ and tag the XCM team, or Keith, Just and me

@franciscoaguirre Yes, totally and we should.
I think it is better to use teams but we may not have all those we needs defined.
In your case with xcm, there is https://github.com/orgs/paritytech/teams/xcm. So if you 3 are fine, we can add that rule. Just let me know and I will add it or feel free to commit into the PR.

Co-authored-by: Aaro Altonen <48052676+altonen@users.noreply.github.com>
@bkchr
Copy link
Member

bkchr commented Sep 7, 2023

Why do we need these fallback catch all? For what exactly?
Who told you that we need this?

@chevdor
Copy link
Contributor Author

chevdor commented Sep 8, 2023

Having full coverage with the CODEOWNERS allows matching any relevant file to an owner (or a set of ~).

CODEOWNERS is mainly used to define who should review but also helps notify people about relevant content. As a side effect, it helps figuring out who is the right contact for a given piece of code, documentation, script, etc...
For regular contributors, it is often trivial and they know who to contact. Looking at the history of changes can also help but reflects only the past. For new contributors and automation however, a proper coverage via CODEOWNERS is very helpful.

Without a catch-all in place, we will only match those patterns that are defined for as long as they are valid.

Currently we have quite such rules for substrate but not much for the rest and none of the code for polkadot

If my initial proposal for the top level owner can be improved, please propose better choices but keep in mind that those are only cath-all and should have no effect if we have good rules for the content.

On that last point, I see already quite some suggestions in this thread but I recon it may take a while to make it complete.

I can split this PR into 2, in order to deal with #1164 first and deal with further discussions in a follow-up PR:

@franciscoaguirre
Copy link
Contributor

@chevdor I added the XCM team to the file but it's showing an error.
It might be the XCM team needs write access to polkadot-sdk? Right now under repositories I only see paritytech/xcm

@chevdor
Copy link
Contributor Author

chevdor commented Sep 8, 2023

@franciscoaguirre

It might be the XCM team needs write access to polkadot-sdk? Right now under repositories I only see paritytech/xcm

yes indeed, this is mentioned here:

The people you choose as code owners must have write permissions for the repository. When the code owner is a team, that team must be visible and it must have write permissions, even if all the individual members of the team already have write permissions directly, through organization membership, or through another team membership.

@chevdor chevdor changed the title Merge CODEOWNERS Merge CODEOWNERS Part 2 Sep 8, 2023
@chevdor chevdor mentioned this pull request Sep 8, 2023
@chevdor
Copy link
Contributor Author

chevdor commented Sep 8, 2023

I extracted the simple merge as #1472

@franciscoaguirre
Copy link
Contributor

@chevdor Yes, I think I don't have permissions to add it. Do you? If not, I'll ask around

@chevdor
Copy link
Contributor Author

chevdor commented Sep 8, 2023

@franciscoaguirre no I don't, sorry

@bkchr
Copy link
Member

bkchr commented Sep 9, 2023

For regular contributors, it is often trivial and they know who to contact. Looking at the history of changes can also help but reflects only the past. For new contributors and automation however, a proper coverage via CODEOWNERS is very helpful.

Not sure how a catch all should be helpful to know who to contact. I'm against this pr. I don't see any reason for this. Having individual parts beinged covered by CODEOWNERS is fine, while this also already isn't working. People are getting pinged any mainly ignore it. I'm going to close this issue. If someone finds this ultra important, the discussion with a proper proposal and issue description can continue in an issue.

@bkchr bkchr closed this Sep 9, 2023
@bkchr bkchr deleted the wk-230906-codeowners branch September 9, 2023 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
R0-silent Changes should not be mentioned in any release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.