Hi devs,
We now have GitHub - xwiki/.github: GitHub configuration shared by the XWiki repositories: default community health files, reusable workflows and the Renovate preset · GitHub for the xwiki org (see New .github repo in the XWiki GH organization). xwiki-contrib is a separate GitHub organization, so it needs its own xwiki-contrib/.github repo, which doesn’t exist yet.
How it works
Community health files (CONTRIBUTING.md, SECURITY.md, PR template, etc.) placed in an org’s .github repo apply to every public repo of that org that doesn’t have its own copy. A repo that keeps its own file still wins, so nothing changes for projects that need something specific.
Why
Today these files are copied into each repo by the github-template-repository, so only repos created from it have them. Out of the 373 non-archived contrib repos, 44 have a SECURITY.md, 40 a PR template and 2 a CONTRIBUTING.md. With org defaults all of them get these files, and a change is made once instead of per repo.
Proposal
Create xwiki-contrib/.github with:
.github/CONTRIBUTING.md: points to https://contrib.xwiki.org (contributing to an existing project, requesting a new one, dev practices being the dev.xwiki.org ones) and says that each project’s issue tracker is linked from its README, since GitHub Issues are disabled on contrib repos. GitHub links it when someone opens a PR..github/SECURITY.md: same content as in the template repo, pointing to the XWiki Security Policy, which already covers contrib extensions. Every contrib repo gets a security policy..github/pull_request_template.md: the same template as inxwiki/.githuband the template repo. Every contrib PR gets it.profile/README.md: displayed on XWiki Contrib · GitHub, which currently has no description at all. A few lines saying what XWiki Contrib is, that its projects aren’t maintained by the XWiki core dev team, and linking to contrib.xwiki.org.xwikidoesn’t have one, but for contrib the org page is the entry point to 370+ repos.
Then remove SECURITY.md and the PR template from the template repo so that new repos use the defaults instead of starting with a copy that drifts.
I’m not proposing FUNDING.yml: the XWiki Open Collective funds XWiki, not individual contrib projects. A shared Renovate preset (as @tmortagne mentioned in Keeping files identical across our repos) could also live there, but that’s a separate discussion.
WDYT? +1s welcome.
Thanks